public LogDevice(LoggingLevel level, dynamic device, WriteLogDelegate action, TerminationDelegate termination = null) { Level = level; Device = device; Action = action; Termination = termination; }
/// <summary> /// Add logging device class /// </summary> /// <param name="level">Logging level</param> /// <param name="dev">Device class as dynamic</param> /// <param name="writeDelegate">Delegate to write message to the device</param> /// <param name="termDelegate">Delegate to terminate the device</param> /// /// Set lower log level if you want to log less important messages. /// Set higher log level for digest to log only important messages. /// /// Terminanation delegate is called when the logger is terminated. public void AddLogDevice(LoggingLevel level, dynamic dev, WriteLogDelegate writeDelegate, TerminationDelegate termDelegate = null) { Debug.Assert(_deviceMutex != null, nameof(_deviceMutex) + " != null"); lock (_deviceMutex) { _devices.Add(new LogDevice(level, dev, writeDelegate, termDelegate)); } }