MAGE  v0.171.0
Matthias Advanced Game Engine
mage::LoggingConfiguration Class Reference

#include <logging.hpp>

Public Member Functions

constexpr LoggingConfiguration (bool quiet=false, bool verbose=true) noexcept
 
constexpr LoggingConfiguration (const LoggingConfiguration &configuration) noexcept=default
 
constexpr LoggingConfiguration (LoggingConfiguration &&configuration) noexcept=default
 
 ~LoggingConfiguration ()=default
 
LoggingConfigurationoperator= (const LoggingConfiguration &configuration) noexcept=default
 
LoggingConfigurationoperator= (LoggingConfiguration &&configuration) noexcept=default
 
constexpr bool IsQuiet () const noexcept
 
constexpr bool IsVerbose () const noexcept
 

Static Public Member Functions

static LoggingConfigurationGet () noexcept
 

Private Attributes

bool m_quiet
 
bool m_verbose
 

Static Private Attributes

static LoggingConfiguration s_logging_configuration
 

Detailed Description

A class of logging configurations of the engine processing.

Constructor & Destructor Documentation

◆ LoggingConfiguration() [1/3]

constexpr mage::LoggingConfiguration::LoggingConfiguration ( bool  quiet = false,
bool  verbose = true 
)
explicitnoexcept

Constructs a logging configuration.

Parameters
[in]quietFlag indicating whether quiet logging is preferred.
[in]verboseFlag indicating whether verbose logging is preferred.

◆ LoggingConfiguration() [2/3]

constexpr mage::LoggingConfiguration::LoggingConfiguration ( const LoggingConfiguration configuration)
defaultnoexcept

Constructs a logging configuration from the given logging configuration.

Parameters
[in]configurationA reference to the logging configuration to copy.

◆ LoggingConfiguration() [3/3]

constexpr mage::LoggingConfiguration::LoggingConfiguration ( LoggingConfiguration &&  configuration)
defaultnoexcept

Constructs a logging configuration by moving the given logging configuration.

Parameters
[in]configurationA reference to the logging configuration to move.

◆ ~LoggingConfiguration()

mage::LoggingConfiguration::~LoggingConfiguration ( )
default

Destructs this logging configuration.

Member Function Documentation

◆ Get()

static LoggingConfiguration& mage::LoggingConfiguration::Get ( )
staticnoexcept

Returns the global logging configuration.

Returns
A reference to the global logging configuration.

◆ IsQuiet()

constexpr bool mage::LoggingConfiguration::IsQuiet ( ) const
noexcept

Checks whether the logging of the engine processing is quiet.

Returns
true if the logging of the engine processing is quiet. false otherwise.

◆ IsVerbose()

constexpr bool mage::LoggingConfiguration::IsVerbose ( ) const
noexcept

Checks wheter the logging of the engine processing is verbose.

Returns
true if the logging of the engine processing is verbose. false otherwise.

◆ operator=() [1/2]

LoggingConfiguration& mage::LoggingConfiguration::operator= ( const LoggingConfiguration configuration)
defaultnoexcept

Copies the given logging configuration to this logging configuration.

Parameters
[in]configurationA reference to the logging configuration to copy.
Returns
A reference to the copy of the given logging configuration (i.e. this logging configuration).

◆ operator=() [2/2]

LoggingConfiguration& mage::LoggingConfiguration::operator= ( LoggingConfiguration &&  configuration)
defaultnoexcept

Moves the given logging configuration to this logging configuration.

Parameters
[in]configurationA reference to the logging configuration to move.
Returns
A reference to the moved logging configuration (i.e. this logging configuration).

Member Data Documentation

◆ m_quiet

bool mage::LoggingConfiguration::m_quiet
private

Flag indicating the logging of the engine processing is quiet.

◆ m_verbose

bool mage::LoggingConfiguration::m_verbose
private

Flag indicating the logging of the engine processing is verbose.

◆ s_logging_configuration

LoggingConfiguration mage::LoggingConfiguration::s_logging_configuration
staticprivate

The global logging configuration.