// SPDX-FileCopyrightText: 2023 Unity Technologies and the glTFast authors // SPDX-License-Identifier: Apache-2.0 using System; using UnityEngine; namespace GLTFast.Logging { /// /// A logger that can receive log messages of severeness levels /// public interface ICodeLogger { /// /// Dispatches a critical error message. /// /// Message's log code /// Additional, optional message parts void Error(LogCode code, params string[] messages); /// /// Dispatches a warning message. /// /// Message's log code /// Additional, optional message parts void Warning(LogCode code, params string[] messages); /// /// Dispatches an informational message. /// /// Message's log code /// Additional, optional message parts void Info(LogCode code, params string[] messages); /// /// Dispatches an informational message. /// /// Type of message e.g. warn or error etc. /// Message's log code /// Additional, optional message parts public void Log(LogType logType, LogCode code, params string[] messages) #if UNITY_2021_3_OR_NEWER { switch (logType) { case LogType.Log: Info(code, messages); break; case LogType.Warning: Warning(code, messages); break; default: Error(code, messages); break; } } #else ; #endif /// /// Dispatches a critical error message. /// /// Message to send void Error(string message); /// /// Dispatches a warning message. /// /// Message to send void Warning(string message); /// /// Dispatches an informational message. /// /// Message to send void Info(string message); } }