|
Gaudi Framework, version v22r2 |
| Home | Generated: Tue May 10 2011 |
Define general base for Gaudi exception. More...
#include <GaudiKernel/GaudiException.h>


Public Member Functions | |
| GaudiException (const std::string &Message, const std::string &Tag, const StatusCode &Code) | |
| Constructor (1) | |
| GaudiException (const std::string &Message, const std::string &Tag, const StatusCode &Code, const GaudiException &Exception) | |
| Constructor (2) | |
| GaudiException (const std::string &Message, const std::string &Tag, const StatusCode &Code, const std::exception &Exception) | |
| Constructor (3) | |
| GaudiException (const GaudiException &Exception) | |
| Copy constructor (deep copying!) | |
| virtual | ~GaudiException () throw () |
| destructor (perform the deletion of "previous" field!) | |
| GaudiException & | operator= (const GaudiException &Exception) |
| assignment operator | |
| virtual const std::string & | message () const |
| error message to be printed | |
| virtual const std::string & | setMessage (const std::string &newMessage) |
| update the error message to be printed | |
| virtual const std::string & | tag () const |
| name tag for the exception, or exception type | |
| virtual const std::string & | setTag (const std::string &newTag) |
| update name tag | |
| virtual const StatusCode & | code () const |
| StatusCode for Exception. | |
| virtual const StatusCode & | setCode (const StatusCode &newStatus) |
| update the status code for the exception | |
| virtual GaudiException * | previous () const |
| get the previous exception ( "previous" element in the linked list) | |
| virtual std::ostream & | printOut (std::ostream &os=std::cerr) const |
| methods for overloaded printout to std::ostream& and MsgStream& | |
| virtual MsgStream & | printOut (MsgStream &os) const |
| Output the exception to the Gaudi MsgStream. | |
| virtual GaudiException * | clone () const |
| clone operation | |
| virtual const char * | what () const throw () |
| method from std::exception | |
Protected Attributes | |
| std::string | m_message |
| std::string | m_tag |
| error message | |
| StatusCode | m_code |
| exception tag | |
| GaudiException * | m_previous |
| status code for exception | |
Static Protected Attributes | |
| static bool | s_proc |
| "previous" element in the linked list | |
Friends | |
| class | StatusCode |
| std::ostream & | operator<< (std::ostream &os, const GaudiException &ge) |
| overloaded printout to std::ostream | |
| std::ostream & | operator<< (std::ostream &os, const GaudiException *pge) |
| MsgStream & | operator<< (MsgStream &os, const GaudiException &ge) |
| overloaded printout to MsgStream | |
| MsgStream & | operator<< (MsgStream &os, const GaudiException *pge) |
| overloaded printout to MsgStream | |
Define general base for Gaudi exception.
Definition at line 24 of file GaudiException.h.
| GaudiException::GaudiException | ( | const std::string & | Message, |
| const std::string & | Tag, | ||
| const StatusCode & | Code | ||
| ) | [inline] |
Constructor (1)
| Message | error message |
| Tag | "name tag", or exeption type |
| Code | status code |
Definition at line 42 of file GaudiException.h.
| GaudiException::GaudiException | ( | const std::string & | Message, |
| const std::string & | Tag, | ||
| const StatusCode & | Code, | ||
| const GaudiException & | Exception | ||
| ) | [inline] |
Constructor (2)
| Message | error message |
| Tag | "name tag", or exeption type |
| Code | status code |
| Exception | "previous" exception |
Definition at line 57 of file GaudiException.h.
| GaudiException::GaudiException | ( | const std::string & | Message, |
| const std::string & | Tag, | ||
| const StatusCode & | Code, | ||
| const std::exception & | Exception | ||
| ) | [inline] |
Constructor (3)
| Message | error message |
| Tag | "name tag", or exeption type |
| Code | status code |
| Exception | "previous" exception (used to improve the error message) |
Definition at line 73 of file GaudiException.h.
: m_message ( Message ) , m_tag ( Tag ) , m_code ( Code ) , m_previous ( 0 ) { s_proc = true; m_message += ": " + System::typeinfoName(typeid(Exception)) + ", " + Exception.what(); }
| GaudiException::GaudiException | ( | const GaudiException & | Exception ) | [inline] |
Copy constructor (deep copying!)
Definition at line 88 of file GaudiException.h.
| virtual GaudiException::~GaudiException | ( | ) | throw () [inline, virtual] |
destructor (perform the deletion of "previous" field!)
Definition at line 99 of file GaudiException.h.
{
m_code.setChecked();
if( 0 != m_previous ) { delete m_previous ; m_previous = 0 ; }
s_proc = false;
}
| virtual GaudiException* GaudiException::clone | ( | ) | const [inline, virtual] |
clone operation
Reimplemented in UpdateManagerException.
Definition at line 167 of file GaudiException.h.
{ return new GaudiException(*this); };
| virtual const StatusCode& GaudiException::code | ( | ) | const [inline, virtual] |
| virtual const std::string& GaudiException::message | ( | ) | const [inline, virtual] |
| GaudiException& GaudiException::operator= | ( | const GaudiException & | Exception ) | [inline] |
assignment operator
Definition at line 106 of file GaudiException.h.
{
if ( &Exception == this ) { return *this; }
m_message = Exception.message() ;
m_tag = Exception.tag () ;
m_code = Exception.code () ;
if( 0 != m_previous ) { delete m_previous; m_previous = 0 ; }
m_previous = ( 0 == Exception.previous() ) ?
0 : Exception.previous()->clone() ;
return *this;
}
| virtual GaudiException* GaudiException::previous | ( | ) | const [inline, virtual] |
get the previous exception ( "previous" element in the linked list)
Definition at line 142 of file GaudiException.h.
{ return m_previous ; }
| virtual std::ostream& GaudiException::printOut | ( | std::ostream & | os = std::cerr ) |
const [inline, virtual] |
methods for overloaded printout to std::ostream& and MsgStream&
Definition at line 145 of file GaudiException.h.
{
os << tag() << " \t " << message() ;
switch( code() ) {
case StatusCode::SUCCESS : os << "\t StatusCode=SUCCESS" ; break ;
case StatusCode::FAILURE : os << "\t StatusCode=FAILURE" ; break ;
default : os << "\t StatusCode=" << code() ; break ;
}
return ( 0 != previous() ) ? previous()->printOut( os << std::endl ) : os ;
};
Output the exception to the Gaudi MsgStream.
Definition at line 156 of file GaudiException.h.
{
os << tag() << "\t" << message() ;
switch( code() ) {
case StatusCode::SUCCESS : os << "\t StatusCode=SUCCESS" ; break ;
case StatusCode::FAILURE : os << "\t StatusCode=FAILURE" ; break ;
default : os << "\t StatusCode=" << code().getCode() ; break ;
}
return ( 0 != previous() ) ? previous()->printOut( os << endmsg ) : os ;
}
| virtual const StatusCode& GaudiException::setCode | ( | const StatusCode & | newStatus ) | [inline, virtual] |
update the status code for the exception
Definition at line 137 of file GaudiException.h.
| virtual const std::string& GaudiException::setMessage | ( | const std::string & | newMessage ) | [inline, virtual] |
update the error message to be printed
Definition at line 121 of file GaudiException.h.
| virtual const std::string& GaudiException::setTag | ( | const std::string & | newTag ) | [inline, virtual] |
update name tag
Definition at line 129 of file GaudiException.h.
| virtual const std::string& GaudiException::tag | ( | ) | const [inline, virtual] |
name tag for the exception, or exception type
Definition at line 126 of file GaudiException.h.
{ return m_tag; }
| virtual const char* GaudiException::what | ( | ) | const throw () [inline, virtual] |
method from std::exception
Reimplemented from std::exception.
Definition at line 170 of file GaudiException.h.
{ return message().c_str() ; }
| std::ostream& operator<< | ( | std::ostream & | os, |
| const GaudiException & | ge | ||
| ) | [friend] |
overloaded printout to std::ostream
Definition at line 180 of file GaudiException.h.
{
return ge.printOut( os );
}
| MsgStream& operator<< | ( | MsgStream & | os, |
| const GaudiException * | pge | ||
| ) | [friend] |
overloaded printout to MsgStream
Definition at line 192 of file GaudiException.h.
{
return (0 == pge) ?
( os << " GaudiException* points to NULL!" ) : ( os << *pge );
}
| MsgStream& operator<< | ( | MsgStream & | os, |
| const GaudiException & | ge | ||
| ) | [friend] |
overloaded printout to MsgStream
Definition at line 188 of file GaudiException.h.
{
return ge.printOut( os );
}
| std::ostream& operator<< | ( | std::ostream & | os, |
| const GaudiException * | pge | ||
| ) | [friend] |
Definition at line 183 of file GaudiException.h.
{ return (0 == pge) ?
( os << " GaudiException* points to NULL!" ) : ( os << *pge ); }
friend class StatusCode [friend] |
Definition at line 34 of file GaudiException.h.
StatusCode GaudiException::m_code [mutable, protected] |
exception tag
Definition at line 174 of file GaudiException.h.
std::string GaudiException::m_message [mutable, protected] |
Definition at line 172 of file GaudiException.h.
GaudiException* GaudiException::m_previous [mutable, protected] |
status code for exception
Definition at line 175 of file GaudiException.h.
std::string GaudiException::m_tag [mutable, protected] |
error message
Definition at line 173 of file GaudiException.h.
bool GaudiException::s_proc [static, protected] |
"previous" element in the linked list
Definition at line 176 of file GaudiException.h.