carb::logging::ScopedLevelThreadOverride

Defined in carb/logging/LoggingUtils.h

class ScopedLevelThreadOverride

A RAII object for overriding a thread’s log level for a given type in StandardLogger while in scope.

When this object is constructed, StandardLogger2::setLevelThresholdThreadOverride() is called as long as the given logger object is not nullptr. Upon destruction, StandardLogger2::clearLevelThresholdThreadOverride() is called.

Public Functions

inline ScopedLevelThreadOverride(StandardLogger *logger, OutputType type, int32_t level)

Converting constructor for StandardLogger.

Warning

It is not recommended to use this from within a carb.tasking task across context switches.

Parameters
  • logger – The StandardLogger instance to override. If nullptr no action is taken.

  • type – The OutputType to override.

  • level – The overriding Log Levels.

inline ScopedLevelThreadOverride(StandardLogger2 *logger, OutputType type, int32_t level)

Constructor for overriding a log level for the calling thread.

Warning

It is not recommended to use this from within a carb.tasking task across context switches.

Parameters
  • logger – The StandardLogger2 instance to override. If nullptr no action is taken.

  • type – The OutputType to override.

  • level – The overriding Log Levels.

inline ~ScopedLevelThreadOverride()

Destructor which clears the override for the current thread.