ATLAS Offline Software
Public Member Functions | Private Member Functions | Private Attributes | List of all members
LogFileMsgStream Class Reference

#include <LogFileMsgStream.h>

Inheritance diagram for LogFileMsgStream:
Collaboration diagram for LogFileMsgStream:

Public Member Functions

 LogFileMsgStream (IMessageSvc *svc, const std::string &source, const std::string &filename, bool startlogging)
 
 ~LogFileMsgStream ()
 
LogFileMsgStreamoperator<< (MSG::Level level)
 Accept MsgStream activation using MsgStreamer operator. More...
 
template<class T >
MsgStream & operator<< (const T &arg)
 General templated stream operator. More...
 
MsgStream & doOutput ()
 
void setFormat (const std::string &str)
 

Private Member Functions

 LogFileMsgStream ()
 

Private Attributes

std::ofstream m_logfile
 
std::string m_FormatString
 

Detailed Description

Definition at line 24 of file LogFileMsgStream.h.

Constructor & Destructor Documentation

◆ LogFileMsgStream() [1/2]

LogFileMsgStream::LogFileMsgStream ( IMessageSvc *  svc,
const std::string &  source,
const std::string &  filename,
bool  startlogging 
)
inline

Definition at line 27 of file LogFileMsgStream.h.

30  :
31  MsgStream(svc, source), m_FormatString("")
32  {
33  if(startlogging)
34  m_logfile.open(filename.c_str(),
35  std::ofstream::out | std::ofstream::app);
36  };

◆ ~LogFileMsgStream()

LogFileMsgStream::~LogFileMsgStream ( )
inline

Definition at line 39 of file LogFileMsgStream.h.

39  {
40  if(m_logfile.is_open())
41  m_logfile.close();
42  };

◆ LogFileMsgStream() [2/2]

LogFileMsgStream::LogFileMsgStream ( )
private

Member Function Documentation

◆ doOutput()

MsgStream& LogFileMsgStream::doOutput ( )
inline

Definition at line 62 of file LogFileMsgStream.h.

62  {
63  Message msg(m_source,m_currLevel,m_stream.str());
64  if(m_FormatString!="")
65  msg.setFormat(m_FormatString);
66  if(m_logfile.is_open())
67  m_logfile << msg << "\n";
68  return MsgStream::doOutput();
69  }

◆ operator<<() [1/2]

template<class T >
MsgStream& LogFileMsgStream::operator<< ( const T &  arg)
inline

General templated stream operator.

Definition at line 55 of file LogFileMsgStream.h.

55  {
56  if(isActive()) m_stream << arg;
57  return *this;
58  }

◆ operator<<() [2/2]

LogFileMsgStream& LogFileMsgStream::operator<< ( MSG::Level  level)
inline

Accept MsgStream activation using MsgStreamer operator.

Definition at line 46 of file LogFileMsgStream.h.

46  {
48  }

◆ setFormat()

void LogFileMsgStream::setFormat ( const std::string &  str)
inline

Definition at line 71 of file LogFileMsgStream.h.

71  {
73  }

Member Data Documentation

◆ m_FormatString

std::string LogFileMsgStream::m_FormatString
private

Definition at line 81 of file LogFileMsgStream.h.

◆ m_logfile

std::ofstream LogFileMsgStream::m_logfile
private

Definition at line 79 of file LogFileMsgStream.h.


The documentation for this class was generated from the following file:
LogFileMsgStream
Definition: LogFileMsgStream.h:24
python.AthDsoLogger.out
out
Definition: AthDsoLogger.py:71
checkTP.report
report
Definition: checkTP.py:127
python.iconfTool.models.loaders.level
level
Definition: loaders.py:20
Handler::svc
AthROOTErrorHandlerSvc * svc
Definition: AthROOTErrorHandlerSvc.cxx:10
create_dcsc_inputs_sqlite.arg
list arg
Definition: create_dcsc_inputs_sqlite.py:48
python.CaloScaleNoiseConfig.str
str
Definition: CaloScaleNoiseConfig.py:78
LogFileMsgStream::m_FormatString
std::string m_FormatString
Definition: LogFileMsgStream.h:81
CaloCellTimeCorrFiller.filename
filename
Definition: CaloCellTimeCorrFiller.py:24
LogFileMsgStream::m_logfile
std::ofstream m_logfile
Definition: LogFileMsgStream.h:79
python.AutoConfigFlags.msg
msg
Definition: AutoConfigFlags.py:7
run.Message
Message
Definition: run.py:57