Gaudi Framework, version v21r8

Home   Generated: 17 Mar 2010

IssueSeverity Class Reference

#include <IssueSeverity.h>

Collaboration diagram for IssueSeverity:

Collaboration graph
[legend]

List of all members.

Public Types

enum  Level {
  NIL = 0, VERBOSE, DEBUG, DEBUG1,
  DEBUG2, DEBUG3, INFO, WARNING,
  RECOVERABLE, ERROR, FATAL, ALWAYS,
  NUM_LEVELS
}

Public Member Functions

 IssueSeverity ()
 IssueSeverity (const IssueSeverity::Level &level, int line, const std::string &file, const std::string &msg="")
 IssueSeverity (const IssueSeverity::Level &level, const std::string &msg="")
 IssueSeverity (const IssueSeverity &es)
 IssueSeverity (IssueSeverity *es)
IssueSeverityoperator= (const IssueSeverity &rhs)
 ~IssueSeverity ()
void setLevel (const IssueSeverity::Level &l)
void setMsg (const std::string &m)
IssueSeverity::Level getLevel () const
std::string getMsg () const
std::string getOrigin () const
void report ()
 operator StatusCode () const

Static Private Member Functions

static void init ()

Private Attributes

int m_line
std::string m_file
IssueSeverity::Level m_level
std::string m_msg
bool m_reported

Static Private Attributes

static bool m_init
static IIssueLoggerm_ers

Friends

std::ostreamoperator<< (std::ostream &, const IssueSeverity &)


Detailed Description

Definition at line 42 of file IssueSeverity.h.


Member Enumeration Documentation

Enumerator:
NIL 
VERBOSE 
DEBUG 
DEBUG1 
DEBUG2 
DEBUG3 
INFO 
WARNING 
RECOVERABLE 
ERROR 
FATAL 
ALWAYS 
NUM_LEVELS 

Definition at line 46 of file IssueSeverity.h.

00046              {
00047     NIL = 0,
00048     VERBOSE,
00049     DEBUG,
00050     DEBUG1,
00051     DEBUG2,
00052     DEBUG3,
00053     INFO,
00054     WARNING,
00055     RECOVERABLE,
00056     ERROR,
00057     FATAL,
00058     ALWAYS,
00059     NUM_LEVELS
00060   };


Constructor & Destructor Documentation

IssueSeverity::IssueSeverity (  )  [inline]

Definition at line 109 of file IssueSeverity.h.

00109                                    : m_line(0), m_file(""),
00110                                        m_level(IssueSeverity::NIL),
00111                                        m_msg(""), m_reported(true) {}

IssueSeverity::IssueSeverity ( const IssueSeverity::Level level,
int  line,
const std::string file,
const std::string msg = "" 
) [inline]

Definition at line 113 of file IssueSeverity.h.

00115                                                          :
00116   m_line(line), m_file(file), m_level(level), m_msg(msg), m_reported(false) {
00117 
00118   init();
00119   report();
00120 
00121 }

IssueSeverity::IssueSeverity ( const IssueSeverity::Level level,
const std::string msg = "" 
) [inline]

Definition at line 123 of file IssueSeverity.h.

00124                                                          :
00125   m_line(0), m_file("??"), m_level(level), m_msg(msg), m_reported(false) {
00126 
00127   init();
00128   report();
00129 
00130 }

IssueSeverity::IssueSeverity ( const IssueSeverity es  )  [inline]

Definition at line 132 of file IssueSeverity.h.

00132                                                               {
00133   m_line = rhs.m_line;
00134   m_file = rhs.m_file;
00135   m_level = rhs.m_level;
00136   m_msg   = rhs.m_msg;
00137   m_reported = true;
00138 }

IssueSeverity::IssueSeverity ( IssueSeverity es  )  [inline]

Definition at line 140 of file IssueSeverity.h.

00140                                                         {
00141   m_line = rhs->m_line;
00142   m_file = rhs->m_file;
00143   m_level = rhs->m_level;
00144   m_msg   = rhs->m_msg;
00145   m_reported = true;
00146 }

IssueSeverity::~IssueSeverity (  ) 

Definition at line 22 of file IssueSeverity.cpp.

00022                               {
00023 
00024   if (!m_reported) {
00025     report();
00026     // do stuff
00027   }
00028 
00029 }


Member Function Documentation

IssueSeverity & IssueSeverity::operator= ( const IssueSeverity rhs  )  [inline]

Definition at line 148 of file IssueSeverity.h.

00148                                                                        {
00149   m_line = rhs.m_line;
00150   m_file = rhs.m_file;
00151   m_level = rhs.m_level;
00152   m_msg   = rhs.m_level;
00153   m_reported = true;
00154   return *this;
00155 }

void IssueSeverity::setLevel ( const IssueSeverity::Level l  )  [inline]

Definition at line 75 of file IssueSeverity.h.

00075                                              {
00076     m_level = l;
00077   }

void IssueSeverity::setMsg ( const std::string m  )  [inline]

Definition at line 78 of file IssueSeverity.h.

00078                                   {
00079     m_msg = m;
00080   }

IssueSeverity::Level IssueSeverity::getLevel (  )  const [inline]

Definition at line 82 of file IssueSeverity.h.

00082 { return m_level; }

std::string IssueSeverity::getMsg (  )  const [inline]

Definition at line 83 of file IssueSeverity.h.

00083 { return m_msg; }

std::string IssueSeverity::getOrigin (  )  const

Definition at line 45 of file IssueSeverity.cpp.

00045                                {
00046   std::ostringstream ost;
00047   ost << m_file << ":" << m_line;
00048   return ost.str();
00049 }

void IssueSeverity::report (  ) 

Definition at line 32 of file IssueSeverity.cpp.

00032                       {
00033 
00034   if (m_ers != 0) {
00035     m_ers->report(this);
00036   } else {
00037     std::cerr << *this << std::endl;
00038   }
00039   m_reported = true;
00040 
00041 }

IssueSeverity::operator StatusCode (  )  const

Definition at line 51 of file IssueSeverity.cpp.

00051                                          {
00052   if (m_level == IssueSeverity::RECOVERABLE) {
00053     return StatusCode(StatusCode::RECOVERABLE, *this);
00054   } else if (m_level < IssueSeverity::ERROR) {
00055     return StatusCode(StatusCode::SUCCESS, *this);
00056   } else {
00057     return StatusCode(StatusCode::FAILURE, *this);
00058   }
00059 }

void IssueSeverity::init (  )  [static, private]

Definition at line 15 of file IssueSeverity.cpp.

00015                          {
00016   if (!m_init) {
00017     m_init = true;
00018     m_ers = Gaudi::svcLocator()->service<IIssueLogger>("IssueLogger").get();
00019   }
00020 }


Friends And Related Function Documentation

std::ostream& operator<< ( std::ostream os,
const IssueSeverity rhs 
) [friend]

Definition at line 157 of file IssueSeverity.h.

00157                                                                      {
00158   os << "ISSUE:  level " << rhs.getLevel() << " from: " << rhs.getOrigin()
00159      << " msg: " << rhs.getMsg();
00160   return os;
00161 }


Member Data Documentation

int IssueSeverity::m_line [private]

Definition at line 95 of file IssueSeverity.h.

Definition at line 96 of file IssueSeverity.h.

bool IssueSeverity::m_init [static, private]

Definition at line 98 of file IssueSeverity.h.

IIssueLogger * IssueSeverity::m_ers [static, private]

Definition at line 99 of file IssueSeverity.h.

Definition at line 101 of file IssueSeverity.h.

Definition at line 102 of file IssueSeverity.h.

Definition at line 103 of file IssueSeverity.h.


The documentation for this class was generated from the following files:

Generated at Wed Mar 17 18:18:21 2010 for Gaudi Framework, version v21r8 by Doxygen version 1.5.6 written by Dimitri van Heesch, © 1997-2004