#include "TLog.hh" #ifdef __CINT__ #pragma link off all globals; #pragma link off all classes; #pragma link off all functions; #pragma link C++ class TLog; // #pragma link C++ function TLog::operator<<(TLog::Level); // #pragma link C++ global gLog; #endif TLog gLog; ClassImp(TLog) TLog::TLog() : TObject() { g_level = VERBOSE; _level = VERBOSE; s_Level[VERBOSE] = "VERBOSE"; s_Level[DEBUG] = "DEBUG"; s_Level[INFO] = "INFO"; s_Level[WARNING] = "WARNING"; s_Level[ERROR] = "ERROR"; } TLog::TLog(const TLog& _tlog) : TObject() { g_level = _tlog.g_level; _level = _tlog._level; } TLog::~TLog() { } TLog& TLog::operator<<(Level level){ if( level!=TLog::END ) SetLocalLogLevel(level); else if( ostr.str()!="" ) { std::cout << "TLog::" << s_Level[_level] << "\t" << ostr.str() << std::endl; ostr.str(""); } return *this; }; // template // TLog& TLog::operator<<(myNumber val){ // if( g_level <= _level ) ostr << val; // return *this; // };