#include <GaudiKernel/MsgStream.h>
Collaboration diagram for MsgStream:
Public Member Functions | |
MsgStream (IMessageSvc *svc, int buffer_length=128) | |
Standard constructor: Connect to message service for output. | |
MsgStream (IMessageSvc *svc, const std::string &source, int buffer_length=128) | |
Standard constructor: Connect to message service for output. | |
MsgStream (const MsgStream &msg) | |
Copy constructor. | |
virtual | ~MsgStream () |
Standard destructor. | |
MsgStream & | report (int lvl) |
Initialize report of new message: activate if print level is sufficient. | |
virtual MsgStream & | doOutput () |
Output method. | |
const std::string & | buffer () const |
Access string buffer. | |
std::ostringstream & | stream () |
Access string MsgStream. | |
void | setMsgSvc (IMessageSvc *svc) |
Update IMessageSvc pointer. | |
void | setLevel (int level) |
Update outputlevel. | |
MSG::Level | level () |
Retrieve output level. | |
MSG::Level | currentLevel () |
Retrieve current stream output level. | |
void | activate () |
Activate MsgStream. | |
void | deactivate () |
Deactivate MsgStream. | |
bool | isActive () const |
Accessor: is MsgStream active. | |
MsgStream & | flush () |
MsgStream & | write (const char *buff, int len) |
MsgStream & | operator<< (MsgStream &(*_f)(MsgStream &)) |
Accept MsgStream modifiers. | |
MsgStream & | operator<< (std::ostream &(*_f)(std::ostream &)) |
Accept oMsgStream modifiers. | |
MsgStream & | operator<< (std::ios &(*_f)(std::ios &)) |
Accept ios modifiers. | |
MsgStream & | operator<< (MSG::Level level) |
Accept MsgStream activation using MsgStreamer operator. | |
MsgStream & | operator<< (longlong arg) |
MsgStream & | operator<< (std::ios_base &(*_f)(std::ios_base &)) |
Accept ios base class modifiers. | |
long | flags () const |
IOS emulation. | |
long | flags (FLAG_TYPE v) |
long | setf (FLAG_TYPE v) |
int | width () const |
int | width (int v) |
char | fill () const |
char | fill (char v) |
int | precision () const |
int | precision (int v) |
int | rdstate () const |
int | good () const |
int | eof () const |
int | bad () const |
long | setf (FLAG_TYPE _f, FLAG_TYPE _m) |
void | unsetf (FLAG_TYPE _l) |
void | clear (STATE_TYPE _i=std::ios_base::failbit) |
void | setColor (MSG::Color col) |
Set the text color. | |
void | setColor (MSG::Color fg, MSG::Color bg) |
Set the foreground and background colors. | |
void | resetColor () |
Reset the colors to defaults. | |
Protected Attributes | |
IMessageSvc * | m_service |
Pointer to message service if buffer has send. | |
std::string | m_buffer |
Use standard string for information buffering. | |
std::string | m_source |
Use std::string for source information to be passed to the message service. | |
std::ostringstream | m_stream |
String MsgStream associated to buffer. | |
bool | m_active |
Flag set to true if formatting engine is active. | |
MSG::Level | m_level |
Debug level of the message service. | |
MSG::Level | m_currLevel |
Current debug level. | |
bool | m_useColors |
use colors | |
Private Types | |
typedef std::ios_base::fmtflags | FLAG_TYPE |
Error return code in case ios modification is requested for inactive streams. | |
typedef std::ios_base::iostate | STATE_TYPE |
This class is intended to ease the use of error logging to the message service
Sebastien Ponce
Definition at line 25 of file MsgStream.h.
typedef std::ios_base::fmtflags MsgStream::FLAG_TYPE [private] |
Error return code in case ios modification is requested for inactive streams.
Definition at line 30 of file MsgStream.h.
typedef std::ios_base::iostate MsgStream::STATE_TYPE [private] |
Definition at line 31 of file MsgStream.h.
MsgStream::MsgStream | ( | IMessageSvc * | svc, | |
int | buffer_length = 128 | |||
) |
Standard constructor: Connect to message service for output.
MsgStream::MsgStream | ( | IMessageSvc * | svc, | |
const std::string & | source, | |||
int | buffer_length = 128 | |||
) |
Standard constructor: Connect to message service for output.
MsgStream::MsgStream | ( | const MsgStream & | msg | ) | [inline] |
Copy constructor.
Definition at line 55 of file MsgStream.h.
00056 : m_service(msg.m_service), 00057 m_source(msg.m_source), 00058 m_active(msg.m_active), 00059 m_level(msg.m_level), 00060 m_useColors(msg.m_useColors) 00061 { 00062 }
virtual MsgStream::~MsgStream | ( | ) | [virtual] |
Standard destructor.
MsgStream& MsgStream::report | ( | int | lvl | ) | [inline] |
Initialize report of new message: activate if print level is sufficient.
Definition at line 66 of file MsgStream.h.
00066 { 00067 lvl = (lvl >= MSG::NUM_LEVELS) ? 00068 MSG::ALWAYS : (lvl<MSG::NIL) ? MSG::NIL : lvl; 00069 ((m_currLevel=MSG::Level(lvl)) >= level()) ? activate() : deactivate(); 00070 return *this; 00071 }
virtual MsgStream& MsgStream::doOutput | ( | ) | [virtual] |
Output method.
const std::string& MsgStream::buffer | ( | ) | const [inline] |
Access string buffer.
Definition at line 75 of file MsgStream.h.
00075 { 00076 return m_buffer; 00077 }
std::ostringstream& MsgStream::stream | ( | ) | [inline] |
Access string MsgStream.
Definition at line 79 of file MsgStream.h.
00079 { 00080 return m_stream; 00081 }
void MsgStream::setMsgSvc | ( | IMessageSvc * | svc | ) | [inline] |
Update IMessageSvc
pointer.
Definition at line 83 of file MsgStream.h.
00083 { 00084 m_service = svc; 00085 }
void MsgStream::setLevel | ( | int | level | ) | [inline] |
Update outputlevel.
Definition at line 87 of file MsgStream.h.
00087 { 00088 level = (level >= MSG::NUM_LEVELS) ? 00089 MSG::ALWAYS : (level<MSG::NIL) ? MSG::NIL : level; 00090 m_level = MSG::Level(level); 00091 }
MSG::Level MsgStream::level | ( | ) | [inline] |
Retrieve output level.
Definition at line 93 of file MsgStream.h.
00093 { 00094 return m_level; 00095 }
MSG::Level MsgStream::currentLevel | ( | ) | [inline] |
Retrieve current stream output level.
Definition at line 97 of file MsgStream.h.
00097 { 00098 return m_currLevel; 00099 }
void MsgStream::activate | ( | ) | [inline] |
Activate MsgStream.
Definition at line 101 of file MsgStream.h.
00101 { 00102 m_active = true; 00103 }
void MsgStream::deactivate | ( | ) | [inline] |
Deactivate MsgStream.
Definition at line 105 of file MsgStream.h.
00105 { 00106 m_active = false; 00107 }
bool MsgStream::isActive | ( | ) | const [inline] |
Accessor: is MsgStream active.
Definition at line 109 of file MsgStream.h.
00109 { 00110 return m_active; 00111 }
MsgStream& MsgStream::flush | ( | ) | [inline] |
MsgStream& MsgStream::write | ( | const char * | buff, | |
int | len | |||
) | [inline] |
Accept MsgStream modifiers.
Definition at line 123 of file MsgStream.h.
00123 { 00124 if ( isActive() ) _f(*this); 00125 return *this; 00126 }
MsgStream& MsgStream::operator<< | ( | std::ostream &(*)(std::ostream &) | _f | ) | [inline] |
MsgStream& MsgStream::operator<< | ( | std::ios &(*)(std::ios &) | _f | ) | [inline] |
MsgStream& MsgStream::operator<< | ( | MSG::Level | level | ) | [inline] |
Definition at line 141 of file MsgStream.h.
00141 { 00142 if(isActive()) { 00143 #ifdef _WIN32 00144 int flg = m_stream.flags(); 00145 char buf[128]; 00146 (flg & std::ios::hex) ? 00147 ::sprintf(buf,"%I64x",arg) : ::sprintf(buf,"%I64d",arg); 00148 m_stream << buf; 00149 #else 00150 m_stream << arg; 00151 #endif 00152 } 00153 return *this; 00154 }
MsgStream& MsgStream::operator<< | ( | std::ios_base &(*)(std::ios_base &) | _f | ) | [inline] |
long MsgStream::flags | ( | ) | const [inline] |
long MsgStream::flags | ( | FLAG_TYPE | v | ) | [inline] |
long MsgStream::setf | ( | FLAG_TYPE | v | ) | [inline] |
int MsgStream::width | ( | ) | const [inline] |
int MsgStream::width | ( | int | v | ) | [inline] |
char MsgStream::fill | ( | ) | const [inline] |
char MsgStream::fill | ( | char | v | ) | [inline] |
int MsgStream::precision | ( | ) | const [inline] |
int MsgStream::precision | ( | int | v | ) | [inline] |
int MsgStream::rdstate | ( | ) | const [inline] |
int MsgStream::good | ( | ) | const [inline] |
int MsgStream::eof | ( | ) | const [inline] |
int MsgStream::bad | ( | ) | const [inline] |
void MsgStream::unsetf | ( | FLAG_TYPE | _l | ) | [inline] |
void MsgStream::clear | ( | STATE_TYPE | _i = std::ios_base::failbit |
) | [inline] |
void MsgStream::setColor | ( | MSG::Color | col | ) |
Set the text color.
void MsgStream::setColor | ( | MSG::Color | fg, | |
MSG::Color | bg | |||
) |
Set the foreground and background colors.
void MsgStream::resetColor | ( | ) |
Reset the colors to defaults.
IMessageSvc* MsgStream::m_service [protected] |
std::string MsgStream::m_buffer [protected] |
std::string MsgStream::m_source [protected] |
Use std::string for source information to be passed to the message service.
Definition at line 38 of file MsgStream.h.
std::ostringstream MsgStream::m_stream [protected] |
bool MsgStream::m_active [protected] |
MSG::Level MsgStream::m_level [protected] |
MSG::Level MsgStream::m_currLevel [protected] |
bool MsgStream::m_useColors [protected] |