EduArt Sensor Ring Library 3.0.1
Loading...
Searching...
No Matches

Centralized class to collect all log messages and relay them to the registered observers. The Logger is implemented as a singleton. More...

#include <Logger.hpp>

Public Member Functions

 ~Logger ()=default
 Destructor.
void registerClient (LoggerClient *client) noexcept
 Register a new LoggerClient to be notified of future log messages.
void unregisterClient (LoggerClient *client) noexcept
 Unregister a new LoggerClient to no longer be notified of log messages.
void log (const LogVerbosity verbosity, const std::string &msg) const
 Log a message that will be relayed to all registered observers.
void log (const LogVerbosity verbosity, const std::stringstream &msg) const
 Log a message that will be relayed to all registered observers.

Static Public Member Functions

static Logger * getInstance () noexcept
 Get a reference to the instance of the Logger singleton.

Detailed Description

Centralized class to collect all log messages and relay them to the registered observers. The Logger is implemented as a singleton.

Member Function Documentation

◆ getInstance()

Logger * eduart::logger::Logger::getInstance ( )
staticnoexcept

Get a reference to the instance of the Logger singleton.

Returns
Pointer to the Logger instance

◆ log() [1/2]

void eduart::logger::Logger::log ( const LogVerbosity verbosity,
const std::string & msg ) const

Log a message that will be relayed to all registered observers.

Parameters
[in]verbosityLog verbosity of the message
[in]msgLog message
Exceptions
Throwsstd::runtime_error when a message with LogVerbosity::Exception is logged

◆ log() [2/2]

void eduart::logger::Logger::log ( const LogVerbosity verbosity,
const std::stringstream & msg ) const

Log a message that will be relayed to all registered observers.

Parameters
[in]verbosityLog verbosity of the message
[in]msgLog message
Exceptions
Throwsstd::runtime_error when a message with LogVerbosity::Exception is logged

◆ registerClient()

void eduart::logger::Logger::registerClient ( LoggerClient * client)
noexcept

Register a new LoggerClient to be notified of future log messages.

Parameters
[in]clientLoggerClient that will be registered

◆ unregisterClient()

void eduart::logger::Logger::unregisterClient ( LoggerClient * client)
noexcept

Unregister a new LoggerClient to no longer be notified of log messages.

Parameters
[in]clientLoggerClient that will be unregistered

The documentation for this class was generated from the following file: