Electroneum
Loading...
Searching...
No Matches
tools::scoped_message_writer Class Reference

#include <scoped_message_writer.h>

Public Member Functions

 scoped_message_writer (epee::console_colors color=epee::console_color_default, bool bright=false, std::string &&prefix=std::string(), el::Level log_level=el::Level::Info)
 scoped_message_writer (scoped_message_writer &&rhs)
 scoped_message_writer (scoped_message_writer &rhs)=delete
scoped_message_writeroperator= (scoped_message_writer &rhs)=delete
scoped_message_writeroperator= (scoped_message_writer &&rhs)=delete
template<typename T>
std::ostream & operator<< (const T &val)
 ~scoped_message_writer ()

Detailed Description

Definition at line 49 of file scoped_message_writer.h.

Constructor & Destructor Documentation

◆ scoped_message_writer() [1/3]

tools::scoped_message_writer::scoped_message_writer ( epee::console_colors color = epee::console_color_default,
bool bright = false,
std::string && prefix = std::string(),
el::Level log_level = el::Level::Info )
inline

Definition at line 58 of file scoped_message_writer.h.

64 : m_flush(true)
65 , m_color(color)
66 , m_bright(bright)
67 , m_log_level(log_level)
68 {
69 m_oss << prefix;
70 }
Here is the caller graph for this function:

◆ scoped_message_writer() [2/3]

tools::scoped_message_writer::scoped_message_writer ( scoped_message_writer && rhs)
inline

Definition at line 72 of file scoped_message_writer.h.

73 : m_flush(std::move(rhs.m_flush))
74#if defined(_MSC_VER)
75 , m_oss(std::move(rhs.m_oss))
76#else
77 // GCC bug: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=54316
78 , m_oss(rhs.m_oss.str(), std::ios_base::out | std::ios_base::ate)
79#endif
80 , m_color(std::move(rhs.m_color))
81 , m_log_level(std::move(rhs.m_log_level))
82 {
83 rhs.m_flush = false;
84 }
Here is the call graph for this function:

◆ scoped_message_writer() [3/3]

tools::scoped_message_writer::scoped_message_writer ( scoped_message_writer & rhs)
delete
Here is the call graph for this function:

◆ ~scoped_message_writer()

tools::scoped_message_writer::~scoped_message_writer ( )
inline

Definition at line 97 of file scoped_message_writer.h.

98 {
99 if (m_flush)
100 {
101 m_flush = false;
102
103 MCLOG_FILE(m_log_level, "msgwriter", m_oss.str());
104
106 if (epee::console_color_default == m_color)
107 {
108 std::cout << m_oss.str();
109 }
110 else
111 {
112 set_console_color(m_color, m_bright);
113 std::cout << m_oss.str();
115 }
116 std::cout << std::endl;
117 }
118 }
#define MCLOG_FILE(level, cat, x)
Definition misc_log_ex.h:48
void set_console_color(int color, bool bright)
Definition mlog.cpp:341
void reset_console_color()
Definition mlog.cpp:460
@ console_color_default
#define PAUSE_READLINE()
Here is the call graph for this function:

Member Function Documentation

◆ operator<<()

template<typename T>
std::ostream & tools::scoped_message_writer::operator<< ( const T & val)
inline

Definition at line 91 of file scoped_message_writer.h.

92 {
93 m_oss << val;
94 return m_oss;
95 }

◆ operator=() [1/2]

scoped_message_writer & tools::scoped_message_writer::operator= ( scoped_message_writer && rhs)
delete
Here is the call graph for this function:

◆ operator=() [2/2]

scoped_message_writer & tools::scoped_message_writer::operator= ( scoped_message_writer & rhs)
delete
Here is the call graph for this function:

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