30#ifndef ROOT_TMVA_MsgLogger
31#define ROOT_TMVA_MsgLogger
62 MsgLogger(
const std::string& source, EMsgType minType = kINFO );
78 MsgLogger&
operator= (
const MsgLogger& parent );
81 static MsgLogger&
Endmsg( MsgLogger& logger );
84 MsgLogger& operator<< ( MsgLogger& ( *_f )( MsgLogger& ) );
85 MsgLogger& operator<< ( std::ostream& ( *_f )( std::ostream& ) );
86 MsgLogger& operator<< ( std::ios& ( *_f )( std::ios& ) );
92 template <
class T>
MsgLogger& operator<< ( T arg ) {
93 *(std::ostringstream*)
this << arg;
117 static std::atomic<const std::map<EMsgType, std::string>*>
fgTypeMap;
118 static std::atomic<const std::map<EMsgType, std::string>*>
fgColorMap;
#define ClassDef(name, id)
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t Float_t Float_t Int_t Int_t UInt_t UInt_t Rectangle_t Int_t Int_t Window_t TString Int_t GCValues_t GetPrimarySelectionOwner GetDisplay GetScreen GetColormap GetNativeEvent const char const char dpyName wid window const char font_name cursor keysym reg const char only_if_exist regb h Point_t winding char text const char depth char const char Int_t count const char ColorStruct_t color const char Pixmap_t Pixmap_t PictureAttributes_t attr const char char ret_data h unsigned char height h Atom_t Int_t ULong_t ULong_t unsigned char prop_list Atom_t Atom_t Atom_t Time_t type
ostringstream derivative to redirect and format output
void SetMinType(EMsgType minType)
static const UInt_t fgMaxSourceSize
maximum length of source name
static const std::string fgPrefix
the prefix of the source name
void SetSource(const std::string &source)
MsgLogger & operator=(const MsgLogger &parent)
assignment operator
std::string GetPrintedSource() const
the full logger prefix
std::string fStrSource
alternative string source
static std::atomic< Bool_t > fgOutputSupressed
disable the output globally (used by generic booster)
static std::atomic< const std::map< EMsgType, std::string > * > fgColorMap
matches output types with terminal colors
MsgLogger & operator<<(MsgLogger &(*_f)(MsgLogger &))
static UInt_t GetMaxSourceSize()
returns the maximum source size
static void InhibitOutput()
const TObject * fObjSource
the source TObject (used for name)
static const std::string fgSuffix
suffix following source name
static void EnableOutput()
EMsgType fMinType
minimum type for output
static std::atomic< const std::map< EMsgType, std::string > * > fgTypeMap
matches output types with strings
std::string GetSource() const
std::string GetFormattedSource() const
make sure the source name is no longer than fgMaxSourceSize:
void InitMaps()
Create the message type and color maps.
EMsgType fActiveType
active type
void WriteMsg(EMsgType type, const std::string &line) const
putting the output string, the message type, and the color switcher together into a single string
static MsgLogger & Endmsg(MsgLogger &logger)
end line
static std::atomic< Bool_t > fgInhibitOutput
flag to suppress all output
void Send()
activates the logger writer
EMsgType GetMinType() const
Mother of all ROOT objects.
create variable transformations
MsgLogger & Endl(MsgLogger &ml)