Gaudi Framework, version v20r2

Generated: 18 Jul 2008

StatusCode Class Reference

#include <GaudiKernel/StatusCode.h>

Collaboration diagram for StatusCode:

Collaboration graph
[legend]
List of all members.

Detailed Description

This class is used for returning status codes from appropriate routines.

Author:
Iain Last

Pere Mato

Sebastien Ponce

Definition at line 23 of file StatusCode.h.

Public Types

enum  { FAILURE = 0, SUCCESS = 1, RECOVERABLE = 2 }

Public Member Functions

 StatusCode ()
 Constructor.
 StatusCode (unsigned long code, const IssueSeverity &)
 StatusCode (unsigned long code, bool checked=false)
 StatusCode (const StatusCode &sc)
 ~StatusCode ()
 Destructor.
bool isSuccess () const
 Test for a status code of SUCCESS.
bool isFailure () const
 Test for a status code of FAILURE.
bool isRecoverable () const
unsigned long getCode () const
 Get the status code by value.
void setCode (unsigned long)
 Set the status code by value.
void setChecked () const
 Ignore the checking code;.
void ignore () const
 operator unsigned long () const
 Cast operator.
const IssueSeverityseverity () const
 Severity.
StatusCodeoperator= (unsigned long value)
 Assignment operator.
StatusCodeoperator= (const StatusCode &rhs)
 operator IgnoreError () const

Static Public Member Functions

static void enableChecking ()
static void disableChecking ()

Static Protected Member Functions

static IssueSeveritycloneSeverity (const IssueSeverity *)

Protected Attributes

unsigned long d_code
 The status code. The status code.
bool m_checked
 If the Status code has been checked.
IssueSeveritym_severity
 Pointer to a IssueSeverity.

Static Protected Attributes

static bool s_checking
 Global flag to control if StatusCode need to be checked.

Friends

bool operator< (const StatusCode &a, const StatusCode &b)
 Comparison operator.
bool operator> (const StatusCode &a, const StatusCode &b)
 Comparison operator.


Member Enumeration Documentation

anonymous enum

Enumerator:
FAILURE 
SUCCESS 
RECOVERABLE 

Definition at line 25 of file StatusCode.h.

00025        {
00026     FAILURE = 0,
00027     SUCCESS = 1,
00028     RECOVERABLE = 2
00029   };


Constructor & Destructor Documentation

StatusCode::StatusCode (  )  [inline]

Constructor.

Definition at line 101 of file StatusCode.h.

00101                              : 
00102   d_code(SUCCESS), m_checked(false), m_severity(0) {}

StatusCode::StatusCode ( unsigned long  code,
const IssueSeverity  
) [inline]

Definition at line 107 of file StatusCode.h.

00107                                                                             : 
00108   d_code(code),m_checked(false), m_severity(cloneSeverity(&sev)) {
00109 }

StatusCode::StatusCode ( unsigned long  code,
bool  checked = false 
) [inline]

Definition at line 104 of file StatusCode.h.

00104                                                                 : 
00105   d_code(code),m_checked(checked), m_severity(0) {}

StatusCode::StatusCode ( const StatusCode sc  )  [inline]

Definition at line 111 of file StatusCode.h.

References cloneSeverity(), d_code, m_checked, and m_severity.

00111                                                      {
00112   d_code = rhs.d_code;
00113   m_checked = rhs.m_checked;
00114   rhs.m_checked = true;
00115   m_severity = rhs.m_severity ? cloneSeverity(rhs.m_severity) : 0;
00116 }

StatusCode::~StatusCode (  ) 

Destructor.

Definition at line 38 of file StatusCode.cpp.

References System::backTrace(), std::cout, std::endl(), endmsg(), System::getStackLevel(), isFailure(), m_checked, m_severity, IStatusCodeSvc::regFnc(), IInterface::release(), s_checking, Gaudi::svcLocator(), and MSG::WARNING.

00038                         {
00039   if(s_checking) {
00040 
00041     if (!m_checked ) {      
00042 
00043       IMessageSvc* msg = 0 ;
00044       if(Gaudi::svcLocator()->service("MessageSvc", msg, true).isFailure()) {
00045         msg = 0 ; // one cannot rely on the returned value on the previous line
00046       }
00047 
00048       IStatusCodeSvc *scs = 0 ;
00049       if (Gaudi::svcLocator()->service("StatusCodeSvc",scs,true).isFailure()) {
00050         scs = 0 ; // one cannot rely on the returned value on the previous line
00051       }
00052 
00053       const size_t depth = 21;
00054       void* addresses[depth];
00055       
00056       std::string lib, fnc;
00057       void* addr = 0;
00058 
00059       if ( addresses && System::backTrace(addresses, depth)) {      
00060         
00061         if (System::getStackLevel(addresses[2], addr, fnc, lib)) {
00062           
00063           if (scs) {
00064             scs->regFnc(fnc,lib);
00065           } else {
00066             if (msg) {
00067               MsgStream log(msg,"StatusCode");
00068               log << MSG::WARNING << "Unchecked in " << fnc << " " << lib << endmsg;
00069             } else {
00070               std::cout << MSG::WARNING << "Unchecked in " << fnc << " " << lib << std::endl;
00071             }
00072           }
00073 
00074         }
00075 
00076       }
00077       if (msg) msg->release();
00078       if (scs) scs->release();
00079     }
00080   }
00081   if (m_severity) delete m_severity;
00082 }


Member Function Documentation

bool StatusCode::isSuccess (  )  const [inline]

Test for a status code of SUCCESS.

N.B. This is the only case where a function has succeeded.

Definition at line 126 of file StatusCode.h.

References d_code, m_checked, and SUCCESS.

Referenced by PersistencySvc::addCnvService(), ConversionSvc::addConverter(), ServiceManager::addService(), DataStreamTool::addStream(), DataStreamTool::addStreams(), GFALDataStreamTool::addStreams(), GaudiPython::Helper::algorithm(), Sequencer::append(), MultiStoreSvc::attachServices(), NTupleSvc::attachTuple(), HbookCnv::HRWNTupleCnv::book(), NTupleSvc::book(), RootHistCnv::RConverter::changeDirectory(), DataStreamTool::clear(), DetDataSvc::clearStore(), DataSvc::clearSubTree(), InputCopyStream::collectLeaves(), OutputStream::collectObjects(), InputCopyStream::collectObjects(), ApplicationMgr::configure(), TagCollectionSvc::connect(), NTupleSvc::connect(), CollectionCloneAlg::connect(), AIDATupleSvc::connect(), TagCollectionStream::connectAddress(), EventCollectionSelector::connectCollection(), OutputStream::connectConversionSvc(), Gaudi::IODataManager::connectDataIO(), HistogramSvc::connectInput(), DataStreamTool::connectStream(), EventCollectionSelector::connectTuple(), ConversionSvc::converter(), MultiStoreSvc::create(), CounterSvc::create(), RootHistCnv::RConverter::createAddress(), HbookCnv::HConverter::createAddress(), EventSelector::createAddress(), EventCollectionSelector::createAddress(), PoolDbEvtSelector::createAddress(), AlgorithmManager::createAlgorithm(), Sequencer::createAndAppend(), EventCollectionSelector::createContext(), HbookCnv::HConverter::createDirectory(), NTupleSvc::createDirectory(), HistogramSvc::createDirectory(), AIDATupleSvc::createDirectory(), Gaudi::createInstance(), RootHistCnv::RNTupleCnv::createObj(), HbookCnv::HNTupleCnv::createObj(), PoolDbDatabaseCnv::createObj(), PoolDbBaseCnv::createObj(), HistogramSvc::createPath(), AIDATupleSvc::createPath(), PoolDbBaseCnv::createReferences(), RootHistCnv::RNTupleCnv::createRep(), HbookCnv::PersSvc::createRep(), HbookCnv::HNTupleCnv::createRep(), HbookCnv::HConverter::createRep(), PoolDbNTupleCnv::createRep(), PoolDbBaseCnv::createRep(), DataStreamTool::createSelector(), TagCollectionSvc::createService(), NTupleSvc::createService(), ServiceLocatorHelper::createService(), GaudiPython::Helper::dataobject(), OutputStream::decodeAlgorithms(), ApplicationMgr::decodeCreateSvcNameList(), ApplicationMgr::decodeExtSvcNameList(), Sequencer::decodeNames(), GaudiSequencer::decodeNames(), MinimalEventLoopMgr::decodeOutStreams(), MinimalEventLoopMgr::decodeTopAlgs(), HistogramSvc::destroy(), Gaudi::IODataManager::establishConnection(), EvtCollectionStream::execute(), CollectionCloneAlg::execute(), PartitionSwitchAlg::execute(), Sequencer::execute(), GaudiSequencer::execute(), EventLoopMgr::executeEvent(), MinimalEventLoopMgr::executeEvent(), MinimalEventLoopMgr::executeRun(), StoreExplorerAlg::explore(), Tuples::TupleObj::fill(), RootHistCnv::RDirectoryCnv::fillObjRefs(), PoolDbNTupleCnv::fillRepRefs(), PartPropSvc::finalize(), HistorySvc::finalize(), EventLoopMgr::finalize(), AIDATupleSvc::finalize(), PoolDbEvtSelector::finalize(), PoolDbCnvSvc::finalize(), MinimalEventLoopMgr::finalize(), GFALDataStreamTool::finalize(), SmartDataObjectPtr::findObject(), DataSvc::findObject(), EventSelector::firstOfNextStream(), GaudiMain(), RndmGenSvc::generator(), EventLoopMgr::getEventRoot(), GaudiCommon< PBASE >::getFastContainer(), EventCollectionSelector::getNextRecord(), GaudiHandle< IToolSvc >::getObject(), EventCollectionSelector::getPreviousRecord(), ServiceManager::getService(), ApplicationMgr::GoToState(), GslSvc::handle(), GaudiPython::Helper::histo1D(), GaudiPython::Helper::histo2D(), GaudiPython::Helper::histo3D(), HistogramSvc::i_book(), ApplicationMgr::i_startup(), RootHistCnv::RNTupleCnv::initialize(), HbookCnv::PersSvc::initialize(), HbookCnv::HNTupleCnv::initialize(), HbookCnv::HFileCnv::initialize(), Gaudi::IODataManager::initialize(), StatusCodeSvc::initialize(), RndmGenSvc::initialize(), RndmEngine::initialize(), HepRndm::Generator< Rndm::DefinedPdf >::initialize(), HepRndm::Generator< TYPE >::initialize(), HepRndm::Engine< TYPE >::initialize(), TagCollectionStream::initialize(), PersistencySvc::initialize(), OutputStream::initialize(), HistogramPersistencySvc::initialize(), EvtCollectionStream::initialize(), NTupleSvc::initialize(), CollectionCloneAlg::initialize(), JobOptionsSvc::initialize(), HistogramSvc::initialize(), FastContainersSvc::initialize(), EventSelector::initialize(), EventCollectionSelector::initialize(), StoreExplorerAlg::initialize(), PartitionSwitchTool::initialize(), PartitionSwitchAlg::initialize(), MultiStoreSvc::initialize(), EventLoopMgr::initialize(), AppMgrRunable::initialize(), ApplicationMgr::initialize(), AIDATupleSvc::initialize(), PoolDbEvtSelector::initialize(), PoolDbCnvSvc::initialize(), PoolDbCacheSvc::initialize(), PoolDbBaseCnv::initialize(), DataListenerSvc::initialize(), MinimalEventLoopMgr::initialize(), EventSelectorDataStream::initialize(), DataSvc::initialize(), DataStreamTool::initialize(), GFALDataStreamTool::initialize(), GaudiSequencer::initialize(), ServiceManager::initializeServices(), DataStreamTool::initializeStream(), isValidInterface(), EventSelector::lastOfPreviousStream(), DataSvc::linkObject(), HbookCnv::HRWNTupleCnv::load(), HbookCnv::HCWNTupleCnv::load(), PoolDbCacheSvc::loadDictionary(), DataSvc::loadObject(), ServiceLocatorHelper::locateService(), ConversionSvc::makeCall(), MultiStoreSvc::makePartitions(), ServiceManager::makeService(), PoolDbCnvSvc::markUpdate(), MemStatAuditor::MemStatAuditor(), ToolSvc::nameTool(), EventSelector::next(), EventLoopMgr::nextEvent(), Rndm::Numbers::Numbers(), NTuple::Selector::operator()(), operator<<(), Gaudi::Parsers::Parser::parseFile(), DataSvc::preLoad(), EventSelector::previous(), GaudiCommon< PBASE >::Print(), GaudiPython::Helper::profile1D(), GaudiPython::Helper::profile2D(), Gaudi::IODataManager::read(), PoolDbCnvSvc::read(), NTupleSvc::readRecord(), Gaudi::IODataManager::reconnect(), DataSvc::registerAddress(), DataSvc::registerObject(), THistSvc::regTree(), MultiStoreSvc::reinitialize(), EventLoopMgr::reinitialize(), MinimalEventLoopMgr::reinitialize(), DataSvc::reinitialize(), ServiceManager::reinitializeServices(), EventSelector::releaseContext(), Gaudi::Parsers::Utils::removeEnvironment(), MinimalEventLoopMgr::restart(), ServiceManager::restartServices(), DataSvc::retrieveEntry(), AIDATupleSvc::retrieveObject(), SmartDataObjectPtr::retrieveObject(), DataSvc::retrieveObject(), ApplicationMgr::run(), NTupleSvc::save(), PoolDbStatCnv::saveDescription(), Gaudi::IODataManager::seek(), PersistencySvc::service(), Service::Service(), ISvcLocator::service(), Auditor::service(), GaudiPython::Helper::service(), PoolDbCnvSvc::setDataProvider(), Auditor::setProperties(), AlgTool::setProperties(), Algorithm::setProperties(), PoolDbBaseCnv::setReferences(), DetDataSvc::setupDetectorDescription(), THistSvc::setupInputFile(), THistSvc::setupOutputFile(), ApplicationMgr::start(), MinimalEventLoopMgr::start(), ServiceManager::startServices(), GslSvc::status(), ApplicationMgr::stop(), MinimalEventLoopMgr::stop(), ServiceManager::stopServices(), Gaudi::svcLocator(), Service::sysFinalize(), Auditor::sysFinalize(), AlgTool::sysFinalize(), Algorithm::sysFinalize(), Service::sysInitialize(), Auditor::sysInitialize(), AlgTool::sysInitialize(), Service::sysStart(), AlgTool::sysStart(), Service::sysStop(), AlgTool::sysStop(), ApplicationMgr::terminate(), GaudiPython::Helper::tool(), DataSvc::traverseSubTree(), DataSvc::unlinkObject(), DataSvc::unregisterObject(), NTupleSvc::updateDirectories(), DetDataSvc::updateObject(), SmartDataObjectPtr::updateObject(), DataSvc::updateObject(), PoolDbKeyedContainerCnv::updateObjRefs(), PoolDbDirectoryCnv::updateObjRefs(), GFALDataStreamTool::updateStreams(), GFALDataStreamTool::updateStreamTurls(), Gaudi::IODataManager::write(), TagCollectionStream::writeData(), TagCollectionStream::writeObjects(), OutputStream::writeObjects(), NTupleSvc::writeRecord(), and TagCollectionStream::writeTuple().

00126                                         {
00127   m_checked = true;
00128   return (d_code == SUCCESS );
00129 }

bool StatusCode::isFailure (  )  const [inline]

Test for a status code of FAILURE.

N.B. This is a specific type of failure where there aren't any more appropriate staus codes. To test for any failure use : if ( !StatusCode.isSuccess() ) ...

Definition at line 131 of file StatusCode.h.

References d_code, m_checked, and SUCCESS.

Referenced by OutputStream::acceptAlgsHandler(), ApplicationMgr::addMultiSvc(), ParticlePropertySvc::addParticles(), Gaudi::Parsers::Catalogue::addProperty(), Tuples::TupleObj::addresses(), GFALDataStreamTool::addStreams(), AlgTool::AlgTool(), Service::auditorSvc(), AlgTool::auditorSvc(), Algorithm::auditorSvc(), Sequencer::beginRun(), HistorySvc::captureState(), Algorithm::chronoSvc(), DetDataSvc::clearStore(), Tuples::TupleObj::column(), ApplicationMgr::configure(), DataOnDemandSvc::configureHandler(), ToolSvc::create(), Gaudi::createApplicationMgrEx(), EventSelector::createContext(), RootHistCnv::PersSvc::createRep(), Algorithm::createSubAlgorithm(), ApplicationMgr::declareMultiSvcType(), ApplicationMgr::decodeMultiThreadSvcNameList(), Algorithm::detCnvSvc(), Algorithm::detSvc(), Algorithm::eventCnvSvc(), Algorithm::eventSvc(), Gaudi::Guards::ExceptionGuard::ExceptionGuard(), Algorithm::exceptionSvc(), DataOnDemandSvc::execHandler(), Tuples::TupleObj::fArray(), Tuples::TupleObj::fill(), THistSvc::finalize(), IncidentSvc::finalize(), PythonScriptingSvc::finalize(), FuncMinimum::finalize(), EqSolver::finalize(), GaudiTool::finalize(), AlgorithmManager::finalizeAlgorithms(), Tuples::TupleObj::floats(), Tuples::TupleObj::fMatrix(), GaudiHandleArrayProperty::fromString(), PropertyWithValue< TYPE >::fromString(), Algorithm::histoSvc(), PartPropSvc::initialize(), RootHistCnv::PersSvc::initialize(), HbookCnv::HFileCnv::initialize(), VFSSvc::initialize(), ToolSvc::initialize(), THistSvc::initialize(), ParticlePropertySvc::initialize(), MessageSvc::initialize(), IssueLogger::initialize(), IncidentSvc::initialize(), DataOnDemandSvc::initialize(), HistorySvc::initialize(), ExceptionSvc::initialize(), EventSelector::initialize(), DetDataSvc::initialize(), PartitionSwitchAlg::initialize(), ChronoStatSvc::initialize(), AuditorSvc::initialize(), AlgContextSvc::initialize(), PythonScriptingSvc::initialize(), Converter::initialize(), GslSvc::initialize(), FuncMinimum::initialize(), EqSolver::initialize(), AlgContextAuditor::initialize(), Sequencer::initialize(), GaudiTool::initialize(), GaudiCommon< PBASE >::initialize(), GaudiAlgorithm::initialize(), TimingAuditor::initialize(), GaudiTuples< PBASE >::initialize(), GaudiHistos< PBASE >::initialize(), AlgorithmManager::initializeAlgorithms(), Tuples::TupleObj::ints(), DLLClassManager::loadModule(), Gaudi::Parsers::Parser::matchAssign(), ServiceHandle< IToolSvc >::messageSvc(), Service::msgSvc(), Converter::msgSvc(), Algorithm::msgSvc(), AuditorSvc::newAuditor_(), GFALDataStreamTool::nextBlockStage(), Algorithm::ntupleSvc(), ParticlePropertySvc::parse(), Gaudi::Parsers::Parser::parseFile(), GaudiCommon< PBASE >::put(), Algorithm::randSvc(), DataOnDemandSvc::reinitialize(), EventSelector::reinitialize(), ApplicationMgr::reinitialize(), Service::reinitialize(), AlgTool::reinitialize(), Algorithm::reinitialize(), AlgorithmManager::reinitializeAlgorithms(), GaudiCommon< PBASE >::releaseTool(), OutputStream::requireAlgsHandler(), Gaudi::Parsers::Parser::resolveReferences(), ApplicationMgr::restart(), Service::restart(), AlgTool::restart(), Algorithm::restart(), AlgorithmManager::restartAlgorithms(), ToolSvc::retrieve(), EventSelector::rewind(), ApplicationMgr::run(), Service::setProperties(), AlgTool::setProperties(), Algorithm::setProperties(), PropertyMgr::setProperty(), DataOnDemandSvc::setup(), DetDataSvc::setupDetectorDescription(), THistSvc::setupInputFile(), THistSvc::setupOutputFile(), IssueLogger::setupStreams(), Sequencer::start(), AlgorithmManager::startAlgorithms(), AlgorithmManager::stopAlgorithms(), Algorithm::sysBeginRun(), Algorithm::sysEndRun(), Algorithm::sysExecute(), Algorithm::sysInitialize(), Algorithm::sysReinitialize(), Algorithm::sysRestart(), Algorithm::sysStart(), Algorithm::sysStop(), GaudiCommon< PBASE >::tool(), AlgTool::toolSvc(), Algorithm::toolSvc(), OutputStream::vetoAlgsHandler(), and ~StatusCode().

00131                                         {
00132   m_checked = true;
00133   return (d_code != SUCCESS );
00134 }

bool StatusCode::isRecoverable (  )  const [inline]

Definition at line 136 of file StatusCode.h.

References d_code, m_checked, and RECOVERABLE.

Referenced by AlgErrorAuditor::afterExecute(), and operator<<().

00136                                             {
00137   m_checked = true;
00138   return (d_code == RECOVERABLE);
00139 }

unsigned long StatusCode::getCode (  )  const [inline]

Get the status code by value.

Definition at line 141 of file StatusCode.h.

References d_code, and m_checked.

Referenced by PartitionSwitchTool::_check(), PartitionSwitchAlg::_check(), PoolDbBaseCnv::createObj(), operator<<(), GaudiCommon< PBASE >::Print(), GaudiException::printOut(), and MessageSvc::reportMessage().

00141                                                {
00142   m_checked = true;
00143   return d_code;
00144 }

void StatusCode::setCode ( unsigned  long  )  [inline]

Set the status code by value.

Definition at line 146 of file StatusCode.h.

References d_code, and m_checked.

00146                                                    {
00147   m_checked = false;
00148   d_code = value;
00149 }

void StatusCode::setChecked (  )  const [inline]

Ignore the checking code;.

Definition at line 151 of file StatusCode.h.

References m_checked.

Referenced by ServiceManager::createService(), and EventSelector::firstOfNextStream().

00151                                          {
00152   m_checked = true;
00153 }

void StatusCode::ignore (  )  const [inline]

Definition at line 155 of file StatusCode.h.

References m_checked.

Referenced by PersistencySvc::addCnvService(), ConversionSvc::addConverter(), Gaudi::Parsers::Catalogue::addProperty(), ServiceManager::addService(), GaudiCommon< PBASE >::addToServiceList(), Algorithm::Algorithm(), AlgorithmManager::AlgorithmManager(), HistorySvc::captureState(), ChronoAuditor::ChronoAuditor(), DataStreamTool::clear(), MultiStoreSvc::clearPartitions(), DetDataSvc::clearStore(), MultiStoreSvc::clearStore(), ConversionSvc::configureConverter(), Gaudi::IODataManager::connectDataIO(), EventCollectionSelector::connectStatement(), ConversionSvc::ConversionSvc(), ToolSvc::create(), EventSelector::createContext(), GaudiSequencer::decodeNames(), DLLClassManager::DLLClassManager(), PoolDbDataObjectHandler::end(), Sequencer::execute(), RootHistCnv::RDirectoryCnv::fillObjRefs(), RndmGenSvc::finalize(), DataOnDemandSvc::finalize(), HistorySvc::finalize(), DetDataSvc::finalize(), MultiStoreSvc::finalize(), EvtDataSvc::finalize(), CounterSvc::finalize(), AuditorSvc::finalize(), EventLoopMgr::finalize(), ApplicationMgr::finalize(), PoolDbCnvSvc::finalize(), Rndm::Numbers::finalize(), DataSvc::finalize(), DataStreamTool::finalize(), GFALDataStreamTool::finalize(), ServiceManager::finalizeServices(), GFALDataStreamTool::getNextStream(), DataSvc::i_setRoot(), ApplicationMgr::i_startup(), IssueSeverity::init(), GaudiCommon< PBASE >::initGaudiCommonConstructor(), OutputStream::initialize(), HistogramSvc::initialize(), GaudiCommon< PBASE >::initialize(), HistorySvc::listProperties(), DLLClassManager::loadModule(), PersistencySvc::makeCall(), ConversionSvc::makeCall(), MultiStoreSvc::makePartitions(), ServiceManager::makeService(), GaudiSequencer::membershipHandler(), MinimalEventLoopMgr::MinimalEventLoopMgr(), AlgorithmManager::msgSvc(), SmartIF< IPartitionControl >::operator=(), GaudiHandle< IToolSvc >::operator=(), Gaudi::Parsers::Parser::parse(), DataSvc::preLoad(), HistogramPersistencySvc::reinitialize(), DataSvc::reinitialize(), Service::release(), GaudiCommon< PBASE >::releaseTool(), CounterSvc::remove(), ServiceManager::removeService(), FastContainersSvc::resetStore(), RndmGen::RndmGen(), ApplicationMgr::run(), Service::Service(), ISvcLocator::service(), DataSvc::setDataLoader(), Converter::setDataProvider(), ServiceManager::setPriority(), Auditor::setProperties(), Gaudi::Utils::setProperty(), DataSvc::setRoot(), PoolDbDirectoryCnv::updateObjRefs(), AIDATupleSvc::~AIDATupleSvc(), Gaudi::Utils::AlgContext::~AlgContext(), CounterSvc::~CounterSvc(), DataSvc::~DataSvc(), Gaudi::Guards::ExceptionGuard::~ExceptionGuard(), HistogramSvc::~HistogramSvc(), MultiStoreSvc::~MultiStoreSvc(), and Rndm::Numbers::~Numbers().

00155                                      {
00156   m_checked = true;
00157 }

StatusCode::operator unsigned long (  )  const [inline]

Cast operator.

Definition at line 159 of file StatusCode.h.

References d_code, and m_checked.

00159                                                  {
00160   m_checked = true;
00161   return d_code;
00162 }

const IssueSeverity & StatusCode::severity (  )  const

Severity.

Definition at line 32 of file StatusCode.cpp.

References m_severity.

00032                                                 {
00033   static IssueSeverity dummy;
00034   if (m_severity) return *m_severity;
00035   else            return dummy;
00036 }

StatusCode & StatusCode::operator= ( unsigned long  value  )  [inline]

Assignment operator.

Definition at line 164 of file StatusCode.h.

References d_code, and m_checked.

00164                                                               {
00165   d_code = value;
00166   m_checked = false;
00167   return *this;
00168 }

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

Definition at line 118 of file StatusCode.h.

References cloneSeverity(), d_code, m_checked, and m_severity.

00118                                                               {
00119   d_code = rhs.d_code;
00120   m_checked = rhs.m_checked;
00121   rhs.m_checked = true;
00122   m_severity = rhs.m_severity ? cloneSeverity(rhs.m_severity): 0;
00123   return *this;
00124 }

StatusCode::operator IgnoreError (  )  const [inline]

Definition at line 81 of file StatusCode.h.

References m_checked.

00081                                {
00082     m_checked = true;
00083     return IgnoreError();
00084   }

void StatusCode::enableChecking (  )  [static]

Definition at line 18 of file StatusCode.cpp.

References s_checking.

Referenced by ApplicationMgr::configure().

00018                                 {
00019   s_checking = true;
00020 }

void StatusCode::disableChecking (  )  [static]

Definition at line 22 of file StatusCode.cpp.

References s_checking.

Referenced by ApplicationMgr::configure(), ApplicationMgr::finalize(), and configGenerator::genConfig().

00022                                  {
00023   s_checking = false;
00024 }

IssueSeverity * StatusCode::cloneSeverity ( const IssueSeverity  )  [static, protected]

Definition at line 26 of file StatusCode.cpp.

Referenced by operator=(), and StatusCode().

00027 {
00028   if( sev ) return new IssueSeverity(*sev);
00029   else      return 0;
00030 }


Friends And Related Function Documentation

bool operator< ( const StatusCode a,
const StatusCode b 
) [friend]

Comparison operator.

Definition at line 170 of file StatusCode.h.

00170                                                                    {
00171   return a.d_code < b.d_code;
00172 }

bool operator> ( const StatusCode a,
const StatusCode b 
) [friend]

Comparison operator.

Definition at line 174 of file StatusCode.h.

00174                                                                    {
00175   return a.d_code > b.d_code;
00176 }


Member Data Documentation

unsigned long StatusCode::d_code [protected]

The status code. The status code.

Definition at line 92 of file StatusCode.h.

Referenced by getCode(), isFailure(), isRecoverable(), isSuccess(), operator unsigned long(), operator<(), operator=(), operator>(), setCode(), and StatusCode().

bool StatusCode::m_checked [mutable, protected]

If the Status code has been checked.

Definition at line 93 of file StatusCode.h.

Referenced by getCode(), ignore(), isFailure(), isRecoverable(), isSuccess(), operator IgnoreError(), operator unsigned long(), operator=(), setChecked(), setCode(), StatusCode(), and ~StatusCode().

IssueSeverity* StatusCode::m_severity [protected]

Pointer to a IssueSeverity.

Definition at line 94 of file StatusCode.h.

Referenced by operator=(), severity(), StatusCode(), and ~StatusCode().

bool StatusCode::s_checking [static, protected]

Global flag to control if StatusCode need to be checked.

Definition at line 96 of file StatusCode.h.

Referenced by disableChecking(), enableChecking(), and ~StatusCode().


The documentation for this class was generated from the following files:
Generated at Fri Jul 18 12:09:23 2008 for Gaudi Framework, version v20r2 by Doxygen version 1.5.1 written by Dimitri van Heesch, © 1997-2004