Message.cpp
Go to the documentation of this file.
1 // ============================================================================
2 // INCLUDE
3 // ============================================================================
4 #include "Messages.h"
5 // ============================================================================
6 // BOOST:
7 // ============================================================================
8 #include <boost/foreach.hpp>
9 #include <boost/format.hpp>
10 // ============================================================================
11 // Namespaces:
12 // ============================================================================
13 namespace gp = Gaudi::Parsers;
14 // ============================================================================
15 // ============================================================================
16 void gp::Messages::AddMessage(MSG::Level level,
17  const std::string& message) {
18  stream_ << level << message << endmsg;
19 }
20 // ============================================================================
21 void gp::Messages::AddMessage(MSG::Level level,
22  const Position& pos, const std::string& message) {
23  if (pos.filename() != m_currentFilename) {
24  stream_ << level << "# =======> " << pos.filename() << endmsg;
25  m_currentFilename = pos.filename();
26  }
27  std::string str_msg = str(boost::format("(%1%,%2%): %3%")
28  % pos.line() % pos.column() % message);
29  stream_ << level << "# " << str_msg << endmsg;
30 }
31 // ============================================================================
MsgStream & endmsg(MsgStream &s)
MsgStream Modifier: endmsg. Calls the output method of the MsgStream.
Definition: MsgStream.h:244
unsigned column() const
Definition: Position.h:20
unsigned line() const
Definition: Position.h:19
const std::string & filename() const
Definition: Position.h:18
GAUDI_API std::string format(const char *,...)
MsgStream format utility "a la sprintf(...)".
Definition: MsgStream.cpp:133