iceoryx2
C++ Language Bindings
Loading...
Searching...
No Matches
iox2::legacy::log::ConsoleLogger Class Reference

A minimal logger implementation which outputs the log messages to the console. More...

#include <console_logger.hpp>

Public Member Functions

virtual ~ConsoleLogger ()=default
 
 ConsoleLogger (const ConsoleLogger &)=delete
 
 ConsoleLogger (ConsoleLogger &&)=delete
 
ConsoleLoggeroperator= (const ConsoleLogger &)=delete
 
ConsoleLoggeroperator= (ConsoleLogger &&)=delete
 

Static Public Member Functions

static LogLevel getLogLevel () noexcept
 Obtain the current log level.
 
static void setLogLevel (const LogLevel logLevel) noexcept
 Sets a new log level.
 

Protected Member Functions

 ConsoleLogger () noexcept=default
 
virtual void initLogger (const LogLevel) noexcept
 
virtual void createLogMessageHeader (const bb::detail::SourceLocation location, const LogLevel logLevel) noexcept
 
virtual void flush () noexcept
 
LogBuffer getLogBuffer () const noexcept
 
void assumeFlushed () noexcept
 
void logString (const char *message) noexcept
 
void logChar (const char value) noexcept
 
void logBool (const bool value) noexcept
 
template<typename T , typename std::enable_if_t< std::is_arithmetic< T >::value, bool > = 0>
void logDec (const T value) noexcept
 
template<typename T , typename std::enable_if_t<(std::is_integral< T >::value &&std::is_unsigned< T >::value)||std::is_floating_point< T >::value||std::is_pointer< T >::value, bool > = 0>
void logHex (const T value) noexcept
 
template<typename T , typename std::enable_if_t< std::is_integral< T >::value &&std::is_unsigned< T >::value, bool > = 0>
void logOct (const T value) noexcept
 
template<typename T , typename std::enable_if_t< std::is_integral< T >::value &&std::is_unsigned< T >::value, bool > = 0>
void logBin (const T value) noexcept
 
void logRaw (const void *const data, const uint64_t size) noexcept
 

Detailed Description

A minimal logger implementation which outputs the log messages to the console.

Definition at line 30 of file console_logger.hpp.

Constructor & Destructor Documentation

◆ ~ConsoleLogger()

virtual iox2::legacy::log::ConsoleLogger::~ConsoleLogger ( )
virtualdefault

◆ ConsoleLogger() [1/3]

iox2::legacy::log::ConsoleLogger::ConsoleLogger ( const ConsoleLogger )
delete

◆ ConsoleLogger() [2/3]

iox2::legacy::log::ConsoleLogger::ConsoleLogger ( ConsoleLogger &&  )
delete

◆ ConsoleLogger() [3/3]

iox2::legacy::log::ConsoleLogger::ConsoleLogger ( )
protecteddefaultnoexcept

Member Function Documentation

◆ assumeFlushed()

void iox2::legacy::log::ConsoleLogger::assumeFlushed ( )
protectednoexcept

◆ createLogMessageHeader()

virtual void iox2::legacy::log::ConsoleLogger::createLogMessageHeader ( const bb::detail::SourceLocation  location,
const LogLevel  logLevel 
)
protectedvirtualnoexcept

◆ flush()

virtual void iox2::legacy::log::ConsoleLogger::flush ( )
protectedvirtualnoexcept

◆ getLogBuffer()

LogBuffer iox2::legacy::log::ConsoleLogger::getLogBuffer ( ) const
protectednoexcept

◆ getLogLevel()

static LogLevel iox2::legacy::log::ConsoleLogger::getLogLevel ( )
staticnoexcept

Obtain the current log level.

Returns
the current log level
Note
In case this class is used as template for a custom logger implementation keep in mind that this method must not have any side effects
Todo:
iox-#1755 update the design document with the requirement that this method must not have side effects

◆ initLogger()

virtual void iox2::legacy::log::ConsoleLogger::initLogger ( const LogLevel  )
protectedvirtualnoexcept

◆ logBin()

template<typename T , typename std::enable_if_t< std::is_integral< T >::value &&std::is_unsigned< T >::value, bool > = 0>
void iox2::legacy::log::ConsoleLogger::logBin ( const T  value)
protectednoexcept

◆ logBool()

void iox2::legacy::log::ConsoleLogger::logBool ( const bool  value)
protectednoexcept

◆ logChar()

void iox2::legacy::log::ConsoleLogger::logChar ( const char  value)
protectednoexcept

◆ logDec()

template<typename T , typename std::enable_if_t< std::is_arithmetic< T >::value, bool > = 0>
void iox2::legacy::log::ConsoleLogger::logDec ( const T  value)
protectednoexcept

◆ logHex()

template<typename T , typename std::enable_if_t<(std::is_integral< T >::value &&std::is_unsigned< T >::value)||std::is_floating_point< T >::value||std::is_pointer< T >::value, bool > = 0>
void iox2::legacy::log::ConsoleLogger::logHex ( const T  value)
protectednoexcept

◆ logOct()

template<typename T , typename std::enable_if_t< std::is_integral< T >::value &&std::is_unsigned< T >::value, bool > = 0>
void iox2::legacy::log::ConsoleLogger::logOct ( const T  value)
protectednoexcept

◆ logRaw()

void iox2::legacy::log::ConsoleLogger::logRaw ( const void *const  data,
const uint64_t  size 
)
protectednoexcept

◆ logString()

void iox2::legacy::log::ConsoleLogger::logString ( const char message)
protectednoexcept

◆ operator=() [1/2]

ConsoleLogger & iox2::legacy::log::ConsoleLogger::operator= ( ConsoleLogger &&  )
delete

◆ operator=() [2/2]

ConsoleLogger & iox2::legacy::log::ConsoleLogger::operator= ( const ConsoleLogger )
delete

Referenced by logRaw().

◆ setLogLevel()

static void iox2::legacy::log::ConsoleLogger::setLogLevel ( const LogLevel  logLevel)
staticnoexcept

Sets a new log level.

Parameters
[in]logLevelto be used after the call

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