| # Gaudi Framework, version v21r9 |

Home |  | Generated: 3 May 2010

# IStateful.h

Go to the documentation of this file.

    00001 // $Id: IStateful.h,v 1.1 2008/06/02 14:20:38 marcocle Exp $
    00002 #ifndef GAUDIKERNEL_ISTATEFUL_H
    00003 #define GAUDIKERNEL_ISTATEFUL_H
    00004
    00005 // Include Files
    00006 #include "GaudiKernel/IInterface.h"
    00007 #include "GaudiKernel/StateMachine.h"
    00008 #include <string>
    00009
    00017 class GAUDI_API IStateful: virtual public IInterface {
    00018 public:
    00020   DeclareInterfaceID(IStateful,1,0);
    00021
    00022   virtual ~IStateful(){} //< Virtual destructor.
    00023
    00026   virtual StatusCode configure() = 0;
    00027
    00030   virtual StatusCode initialize() = 0;
    00031
    00034   virtual StatusCode start() = 0;
    00035
    00038   virtual StatusCode stop() = 0;
    00039
    00042   virtual StatusCode finalize() = 0;
    00043
    00046   virtual StatusCode terminate() = 0;
    00047
    00048
    00051   virtual StatusCode reinitialize() = 0;
    00052
    00055   virtual StatusCode restart() = 0;
    00056
    00059   virtual Gaudi::StateMachine::State FSMState() const = 0;
    00060
    00064   virtual Gaudi::StateMachine::State targetFSMState() const = 0;
    00065
    00066 };
    00067
    00068 #endif // GAUDIKERNEL_ISTATEFUL_H