using FishNet.Documenting;
using System;
using System.Runtime.CompilerServices;
using UnityEngine;
namespace FishNet.Managing.Logging
{
///
/// Base for logging configurations.
///
public abstract class LoggingConfiguration : ScriptableObject
{
#region Serialized.
///
/// True to use logging features. False to disable all logging.
///
[Tooltip("True to use logging features. False to disable all logging.")]
public bool LoggingEnabled = true;
#endregion
///
/// Initializes script for use.
///
///
public virtual void InitializeOnce() { }
///
/// True if can log for loggingType.
///
/// Type of logging being filtered.
///
public abstract bool CanLog(LoggingType loggingType);
///
/// Logs a common value if can log.
///
public abstract void Log(string value);
///
/// Logs a warning value if can log.
///
public abstract void LogWarning(string value);
///
/// Logs an error value if can log.
///
public abstract void LogError(string value);
///
/// Clones this logging configuration.
///
///
public abstract LoggingConfiguration Clone();
}
}