Belle II Software  release-05-01-25
ERecoMasterCallback.h
1 #ifndef _Belle2_RFMasterCallback_h
2 #define _Belle2_RFMasterCallback_h
3 
4 #include <daq/slc/runcontrol/RCState.h>
5 #include <daq/slc/runcontrol/RCCallback.h>
6 
7 #include <daq/slc/nsm/NSMData.h>
8 #include <daq/slc/base/ConfigFile.h>
9 #include <daq/slc/base/StringUtil.h>
10 
11 #include <vector>
12 
13 namespace Belle2 {
19  class ERecoRunControlCallback;
20 
22 
23  public:
25  virtual ~ERecoMasterCallback() {}
26 
27  public:
28  virtual void initialize(const DBObject& obj);
29  virtual void configure(const DBObject& obj);
30  virtual void monitor();
31  virtual void ok(const char* node, const char* data);
32  virtual void error(const char* node, const char* data);
33  virtual void load(const DBObject& obj, const std::string& runtype);
34  virtual void start(int expno, int runno);
35  virtual void stop();
36  virtual void recover(const DBObject& obj, const std::string& runtype);
37  virtual bool resume(int subno);
38  virtual bool pause();
39  virtual void abort();
40  virtual bool perform(NSMCommunicator& com);
41 
42  public:
43  void setState(NSMNode& node, const RCState& state);
44  void setCallback(ERecoRunControlCallback* callback) { m_callback = callback; }
45  void addData(const std::string& dataname, const std::string& format);
46 
47  private:
48  ERecoRunControlCallback* m_callback;
49  StringList m_dataname;
50  typedef std::vector<NSMNode> NSMNodeList;
51  NSMNodeList m_nodes;
52  NSMNode m_rcnode;
53  std::string m_script;
54  };
55 
57 }
58 
59 #endif
Belle2::NSMNode
Definition: NSMNode.h:14
Belle2::DBObject
Definition: DBObject.h:14
Belle2::RCCallback
Definition: RCCallback.h:18
Belle2::NSMCommunicator
Definition: NSMCommunicator.h:25
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::ERecoMasterCallback
Definition: ERecoMasterCallback.h:21
Belle2::ERecoRunControlCallback
Definition: ERecoRunControlCallback.h:14
Belle2::ConfigFile
Definition: ConfigFile.h:15
Belle2::RCState
Definition: RCState.h:12