All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
IStateful Class Referenceabstract

Interface for classes that implement the Gaudi State Machine. More...

#include <GaudiKernel/IStateful.h>

Inheritance diagram for IStateful:
Collaboration diagram for IStateful:

Public Member Functions

 DeclareInterfaceID (IStateful, 1, 0)
 InterfaceID. More...
 
virtual ~IStateful ()
 
virtual StatusCode configure ()=0
 Configuration (from OFFLINE to CONFIGURED). More...
 
virtual StatusCode initialize ()=0
 Initialization (from CONFIGURED to INITIALIZED). More...
 
virtual StatusCode start ()=0
 Start (from INITIALIZED to RUNNING). More...
 
virtual StatusCode stop ()=0
 Stop (from RUNNING to INITIALIZED). More...
 
virtual StatusCode finalize ()=0
 Finalize (from INITIALIZED to CONFIGURED). More...
 
virtual StatusCode terminate ()=0
 Initialization (from CONFIGURED to OFFLINE). More...
 
virtual StatusCode reinitialize ()=0
 Initialization (from INITIALIZED or RUNNING to INITIALIZED, via CONFIGURED). More...
 
virtual StatusCode restart ()=0
 Initialization (from RUNNING to RUNNING, via INITIALIZED). More...
 
virtual Gaudi::StateMachine::State FSMState () const =0
 Get the current state. More...
 
virtual Gaudi::StateMachine::State targetFSMState () const =0
 When we are in the middle of a transition, get the state where the transition is leading us. More...
 
- Public Member Functions inherited from IInterface
virtual void * i_cast (const InterfaceID &) const =0
 main cast function More...
 
virtual std::vector< std::string > getInterfaceNames () const =0
 Returns a vector of strings containing the names of all the implemented interfaces. More...
 
virtual unsigned long addRef ()=0
 Increment the reference count of Interface instance. More...
 
virtual unsigned long release ()=0
 Release Interface instance. More...
 
virtual unsigned long refCount () const =0
 Current reference count. More...
 
virtual StatusCode queryInterface (const InterfaceID &ti, void **pp)=0
 Set the void** to the pointer to the requested interface of the instance. More...
 
virtual ~IInterface ()
 Virtual destructor. More...
 

Additional Inherited Members

- Public Types inherited from IInterface
enum  Status { SUCCESS = 1, NO_INTERFACE, VERSMISMATCH, LAST_ERROR }
 Return status. More...
 
typedef Gaudi::InterfaceId
< IInterface, 0, 0 > 
iid
 Interface ID. More...
 
typedef mpl::set1< iidext_iids
 Extra interfaces. More...
 
- Static Public Member Functions inherited from IInterface
static const InterfaceIDinterfaceID ()
 Return an instance of InterfaceID identifying the interface. More...
 

Detailed Description

Interface for classes that implement the Gaudi State Machine.

Author
Marco Clemencic
Date
2008-05-15

Definition at line 17 of file IStateful.h.

Constructor & Destructor Documentation

virtual IStateful::~IStateful ( )
inlinevirtual

Definition at line 22 of file IStateful.h.

22 {} //< Virtual destructor.

Member Function Documentation

virtual StatusCode IStateful::configure ( )
pure virtual

Configuration (from OFFLINE to CONFIGURED).

Implemented in Algorithm, ApplicationMgr, AlgTool, Service, and ComponentManager.

IStateful::DeclareInterfaceID ( IStateful  ,
,
 
)
virtual StatusCode IStateful::finalize ( )
pure virtual

Finalize (from INITIALIZED to CONFIGURED).

Implemented in GaudiHistos< GaudiAlgorithm >, GaudiHistos< GaudiTool >, GaudiCommon< Algorithm >, GaudiCommon< AlgTool >, MultiStoreSvc, Gaudi::Utils::StopSignalHandler, DataSvc, GaudiTuples< GaudiHistoTool >, GaudiTuples< GaudiHistoAlg >, PersistencySvc, StoreExplorerAlg, CollectionCloneAlg, HistogramSvc, DataOnDemandSvc, Algorithm, Gaudi::RootCnvSvc, OutputStream, GslSvc, GaudiAlgorithm, GaudiTool, TagCollectionStream, EventCollectionSelector, ServiceManager, EventSelector, ConversionSvc, Gaudi::RootPerfMonSvc, StoreSnifferAlg, Gaudi::ParticlePropertySvc, MinimalEventLoopMgr, Gaudi::IODataManager, ApplicationMgr, EventLoopMgr, AlgorithmManager, GaudiHistoTool, Sequencer, GaudiTupleTool, PartitionSwitchAlg, GaudiTupleAlg, GaudiHistoAlg, RndmGenSvc, Gaudi::MultiFileCatalog, CounterSvc, PartitionSwitchTool, AlgTool, RndmEngine, IncidentSvc, HistogramPersistencySvc, Gaudi::RootEvtSelector, Service, EvtCollectionStream, GaudiPython::PyAlgorithm, StalledEventMonitor, SequencerTimerTool, ComponentManager, DataStreamTool, AppMgrRunable, IoComponentMgr, MessageSvc, FuncMinimum, HistorySvc, AlgContextSvc, ChronoStatSvc, NTupleSvc, EvtPersistencySvc, GslErrorCount, RandomNumberAlg, DetDataSvc, DataSvcFileEntriesTool, EqSolver, ExceptionSvc, HepRndm::Engine< TYPE >, FileMgr, GaudiSequencer, InputCopyStream, ToolSvc, JobOptionsSvc, TagCollectionSvc, AuditorSvc, THistSvc, RecordDataSvc, VFSSvc, PartPropSvc, RecordOutputStream, ReplayOutputStream, Prescaler, PythonScriptingSvc, RootHistCnv::PersSvc, CallgrindProfile, WriteAlg, EventCounter, HelloWorld, PropertyAlg, RecordStream, RunRecordStream, IssueLogger, EvtDataSvc, StatusCodeSvc, and DetPersistencySvc.

virtual Gaudi::StateMachine::State IStateful::FSMState ( ) const
pure virtual

Get the current state.

Implemented in Algorithm, ApplicationMgr, AlgTool, ComponentManager, and Service.

virtual StatusCode IStateful::initialize ( )
pure virtual

Initialization (from CONFIGURED to INITIALIZED).

Implemented in GaudiHistos< GaudiAlgorithm >, GaudiHistos< GaudiTool >, GaudiCommon< Algorithm >, GaudiCommon< AlgTool >, MultiStoreSvc, DataSvc, Gaudi::Utils::StopSignalHandler, GaudiTuples< GaudiHistoTool >, GaudiTuples< GaudiHistoAlg >, PersistencySvc, StoreExplorerAlg, HistogramSvc, DataOnDemandSvc, CollectionCloneAlg, Algorithm, Gaudi::RootCnvSvc, OutputStream, GslSvc, GaudiTool, TagCollectionStream, GaudiAlgorithm, EventCollectionSelector, EventSelector, ServiceManager, ConversionSvc, Gaudi::RootPerfMonSvc, Gaudi::ParticlePropertySvc, StoreSnifferAlg, Gaudi::IODataManager, MinimalEventLoopMgr, ApplicationMgr, EventLoopMgr, AlgorithmManager, GaudiHistoTool, GaudiTupleTool, GaudiTupleAlg, RndmGenSvc, Gaudi::MultiFileCatalog, GaudiHistoAlg, IncidentSvc, AlgTool, RndmEngine, HistogramPersistencySvc, Gaudi::RootEvtSelector, PartitionSwitchAlg, Service, EvtCollectionStream, Sequencer, IoComponentMgr, SequencerTimerTool, FuncMinimum, MessageSvc, HistorySvc, GaudiPython::PyAlgorithm, AlgContextSvc, ChronoStatSvc, AppMgrRunable, PartitionSwitchTool, EvtPersistencySvc, DataStreamTool, ComponentManager, NTupleSvc, EqSolver, RandomNumberAlg, StalledEventMonitor, ExceptionSvc, FileMgr, HepRndm::Engine< TYPE >, DataSvcFileEntriesTool, DetDataSvc, GaudiSequencer, InputCopyStream, JobOptionsSvc, TagCollectionSvc, ToolSvc, THistSvc, AuditorSvc, RecordDataSvc, VFSSvc, PartPropSvc, RecordOutputStream, Prescaler, ReplayOutputStream, CallgrindProfile, PythonScriptingSvc, WriteAlg, RootHistCnv::PersSvc, EventCounter, HelloWorld, PropertyAlg, IssueLogger, EvtDataSvc, StatusCodeSvc, and DetPersistencySvc.

virtual StatusCode IStateful::restart ( )
pure virtual

Initialization (from RUNNING to RUNNING, via INITIALIZED).

Implemented in Algorithm, ServiceManager, ApplicationMgr, MinimalEventLoopMgr, AlgorithmManager, AlgTool, ComponentManager, and Service.

virtual Gaudi::StateMachine::State IStateful::targetFSMState ( ) const
pure virtual

When we are in the middle of a transition, get the state where the transition is leading us.

Otherwise it returns the same state as state().

Implemented in Algorithm, ApplicationMgr, ComponentManager, AlgTool, and Service.

virtual StatusCode IStateful::terminate ( )
pure virtual

Initialization (from CONFIGURED to OFFLINE).

Implemented in Algorithm, ApplicationMgr, AlgTool, Service, and ComponentManager.


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