Electroneum
el::base::Writer Class Reference

Main entry point of each logging. More...

#include <easylogging++.h>

Inheritance diagram for el::base::Writer:
Collaboration diagram for el::base::Writer:

Public Member Functions

 Writer (Level level, const char *file, base::type::LineNumber line, const char *func, base::DispatchAction dispatchAction=base::DispatchAction::NormalLog, base::type::VerboseLevel verboseLevel=0)
 
 Writer (LogMessage *msg, base::DispatchAction dispatchAction=base::DispatchAction::NormalLog)
 
virtual ~Writer (void)
 
template<typename T >
std::enable_if< std::is_integral< T >::value, Writer & >::type operator<< (T log)
 
template<typename T >
std::enable_if<!std::is_integral< T >::value, Writer & >::type operator<< (const T &log)
 
Writeroperator<< (std::ostream &(*log)(std::ostream &))
 
 operator bool ()
 
Writerconstruct (Logger *logger, bool needLock=true)
 
Writerconstruct (int count, const char *loggerIds,...)
 
Writerconstruct (const char *loggerId)
 

Protected Member Functions

void initializeLogger (const std::string &loggerId, bool lookup=true, bool needLock=true)
 
void initializeLogger (Logger *logger, bool needLock=true)
 
void processDispatch ()
 
void triggerDispatch (void)
 

Protected Attributes

LogMessagem_msg
 
Level m_level
 
const char * m_file
 
const base::type::LineNumber m_line
 
const char * m_func
 
base::type::VerboseLevel m_verboseLevel
 
Loggerm_logger
 
bool m_proceed
 
base::MessageBuilder m_messageBuilder
 
base::DispatchAction m_dispatchAction
 
std::vector< std::string > m_loggerIds
 

Friends

class el::Helpers
 

Detailed Description

Main entry point of each logging.

Definition at line 3239 of file easylogging++.h.

Constructor & Destructor Documentation

◆ Writer() [1/2]

el::base::Writer::Writer ( Level  level,
const char *  file,
base::type::LineNumber  line,
const char *  func,
base::DispatchAction  dispatchAction = base::DispatchAction::NormalLog,
base::type::VerboseLevel  verboseLevel = 0 
)
inline

Definition at line 3241 of file easylogging++.h.

3243  :
3244  m_msg(nullptr), m_level(level), m_file(file), m_line(line), m_func(func), m_verboseLevel(verboseLevel),
3245  m_logger(nullptr), m_proceed(false), m_dispatchAction(dispatchAction) {
3246  }
const char * m_file
base::type::VerboseLevel m_verboseLevel
LogMessage * m_msg
base::DispatchAction m_dispatchAction
const char * m_func
const base::type::LineNumber m_line

◆ Writer() [2/2]

el::base::Writer::Writer ( LogMessage msg,
base::DispatchAction  dispatchAction = base::DispatchAction::NormalLog 
)
inline

Definition at line 3248 of file easylogging++.h.

3248  :
3249  m_msg(msg), m_level(msg != nullptr ? msg->level() : Level::Unknown),
3250  m_line(0), m_logger(nullptr), m_proceed(false), m_dispatchAction(dispatchAction) {
3251  }
Represents unknown level.
LogMessage * m_msg
base::DispatchAction m_dispatchAction
const base::type::LineNumber m_line

◆ ~Writer()

virtual el::base::Writer::~Writer ( void  )
inlinevirtual

Definition at line 3253 of file easylogging++.h.

3253  {
3254  processDispatch();
3255  }
void processDispatch()
Here is the call graph for this function:

Member Function Documentation

◆ construct() [1/3]

Writer& el::base::Writer::construct ( Logger logger,
bool  needLock = true 
)

◆ construct() [2/3]

Writer& el::base::Writer::construct ( int  count,
const char *  loggerIds,
  ... 
)

◆ construct() [3/3]

Writer& el::base::Writer::construct ( const char *  loggerId)

◆ initializeLogger() [1/2]

void el::base::Writer::initializeLogger ( const std::string &  loggerId,
bool  lookup = true,
bool  needLock = true 
)
protected

◆ initializeLogger() [2/2]

void el::base::Writer::initializeLogger ( Logger logger,
bool  needLock = true 
)
protected

◆ operator bool()

el::base::Writer::operator bool ( )
inline

Definition at line 3288 of file easylogging++.h.

3288  {
3289  return true;
3290  }

◆ operator<<() [1/3]

template<typename T >
std::enable_if<std::is_integral<T>::value, Writer&>::type el::base::Writer::operator<< ( T  log)
inline

Definition at line 3259 of file easylogging++.h.

3259  {
3260 #if ELPP_LOGGING_ENABLED
3261  if (m_proceed) {
3262  m_messageBuilder << log;
3263  }
3264 #endif // ELPP_LOGGING_ENABLED
3265  return *this;
3266  }
base::MessageBuilder m_messageBuilder

◆ operator<<() [2/3]

template<typename T >
std::enable_if<!std::is_integral<T>::value, Writer&>::type el::base::Writer::operator<< ( const T log)
inline

Definition at line 3270 of file easylogging++.h.

3270  {
3271 #if ELPP_LOGGING_ENABLED
3272  if (m_proceed) {
3273  m_messageBuilder << log;
3274  }
3275 #endif // ELPP_LOGGING_ENABLED
3276  return *this;
3277  }
base::MessageBuilder m_messageBuilder

◆ operator<<() [3/3]

Writer& el::base::Writer::operator<< ( std::ostream &(*)(std::ostream &)  log)
inline

Definition at line 3279 of file easylogging++.h.

3279  {
3280 #if ELPP_LOGGING_ENABLED
3281  if (m_proceed) {
3282  m_messageBuilder << log;
3283  }
3284 #endif // ELPP_LOGGING_ENABLED
3285  return *this;
3286  }
base::MessageBuilder m_messageBuilder

◆ processDispatch()

void el::base::Writer::processDispatch ( )
protected
Here is the caller graph for this function:

◆ triggerDispatch()

void el::base::Writer::triggerDispatch ( void  )
protected

Friends And Related Function Documentation

◆ el::Helpers

friend class el::Helpers
friend

Definition at line 3307 of file easylogging++.h.

Member Data Documentation

◆ m_dispatchAction

base::DispatchAction el::base::Writer::m_dispatchAction
protected

Definition at line 3305 of file easylogging++.h.

◆ m_file

const char* el::base::Writer::m_file
protected

Definition at line 3298 of file easylogging++.h.

◆ m_func

const char* el::base::Writer::m_func
protected

Definition at line 3300 of file easylogging++.h.

◆ m_level

Level el::base::Writer::m_level
protected

Definition at line 3297 of file easylogging++.h.

◆ m_line

const base::type::LineNumber el::base::Writer::m_line
protected

Definition at line 3299 of file easylogging++.h.

◆ m_logger

Logger* el::base::Writer::m_logger
protected

Definition at line 3302 of file easylogging++.h.

◆ m_loggerIds

std::vector<std::string> el::base::Writer::m_loggerIds
protected

Definition at line 3306 of file easylogging++.h.

◆ m_messageBuilder

base::MessageBuilder el::base::Writer::m_messageBuilder
protected

Definition at line 3304 of file easylogging++.h.

◆ m_msg

LogMessage* el::base::Writer::m_msg
protected

Definition at line 3296 of file easylogging++.h.

◆ m_proceed

bool el::base::Writer::m_proceed
protected

Definition at line 3303 of file easylogging++.h.

◆ m_verboseLevel

base::type::VerboseLevel el::base::Writer::m_verboseLevel
protected

Definition at line 3301 of file easylogging++.h.


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