mirror of
https://github.com/FairRootGroup/FairMQ.git
synced 2025-10-13 08:41:16 +00:00
git-svn-id: https://subversion.gsi.de/fairroot/fairbase/trunk@20162 0381ead4-6506-0410-b988-94b70fbc4730
33 lines
637 B
C++
33 lines
637 B
C++
/*
|
|
* FairMQStateMachine.h
|
|
*
|
|
* Created on: Oct 25, 2012
|
|
* Author: dklein
|
|
*/
|
|
|
|
#ifndef FAIRMQSTATEMACHINE_H_
|
|
#define FAIRMQSTATEMACHINE_H_
|
|
|
|
|
|
class FairMQStateMachine
|
|
{
|
|
private:
|
|
int fState;
|
|
public:
|
|
enum {
|
|
START, INIT, BIND, CONNECT, RUN, PAUSE, SHUTDOWN, END
|
|
};
|
|
FairMQStateMachine();
|
|
virtual void Init() = 0;
|
|
virtual void Bind() = 0;
|
|
virtual void Connect() = 0;
|
|
virtual void Run() = 0;
|
|
virtual void Pause() = 0;
|
|
virtual void Shutdown() = 0;
|
|
bool ChangeState(int new_state);
|
|
void RunStateMachine();
|
|
virtual ~FairMQStateMachine();
|
|
};
|
|
|
|
#endif /* FAIRMQSTATEMACHINE_H_ */
|