otsdaq  3.11.00
RunInfoVInterface.h
1 #ifndef _ots_RunInfoVInterface_h_
2 #define _ots_RunInfoVInterface_h_
3 
4 #include <string>
5 #include "otsdaq/Configurable/Configurable.h"
6 #include "otsdaq/Macros/CoutMacros.h"
7 #include "otsdaq/Macros/StringMacros.h"
8 
9 namespace ots
10 {
11 
12 // clang-format off
13 
38 {
39  public:
40  enum class RunTransitionType
41  {
42  HALT,
43  STOP,
44  ERROR,
45  PAUSE,
46  RESUME,
47  START,
48  STOP_COMPLETE,
49  HALT_COMPLETE
50  };
51 
52  RunInfoVInterface (const std::string& runInfoPluginClassName,
53  const std::string& activeStateMachineName)
54  :
55  mfSubject_(runInfoPluginClassName),
56  activeStateMachineName_(activeStateMachineName)
57  {;}
58  virtual ~RunInfoVInterface (void) { ; }
59 
60 
61 
63 
64  virtual unsigned int insertConfigureCondition (const std::string& /*blob*/,
65  const std::string& /*comment*/) { __SS__ << "insertConfigureCondition() Not implemented by the Run Info Plugin (" << mfSubject_ << ")!!"; __SS_THROW__; };
66  virtual unsigned int claimNextRunNumber (unsigned int /* configureConditionID */,
67  const std::string& /* comment */) { __SS__ << "claimNextRunNumber() Not implemented by the Run Info Plugin (" << mfSubject_ << ")!!"; __SS_THROW__; };
68  virtual unsigned int insertRunCondition (unsigned int /* runNumber */,
69  const std::map<std::string /* subsystem */,
70  std::map<std::string /*type/name/field */,
71  std::string /* value */>>&
72  /* runConditionMap */,
73  unsigned int /* configureConditionID */,
74  const std::string& /* comment */) { __SS__ << "insertRunCondition() Not implemented by the Run Info Plugin (" << mfSubject_ << ")!!"; __SS_THROW__; };
75 
76  virtual void updateRunInfo (unsigned int /* runConditionID */,
77  RunTransitionType /* runTransitionType */,
78  const std::string& /* comment */,
79  const std::string& /* metadata */ = "") { __SS__ << "updateRunInfo() Not implemented by the Run Info Plugin (" << mfSubject_ << ")!!"; __SS_THROW__; };
80 
81 
83 
84  const std::string& getActiveStateMachineName (void) const { return activeStateMachineName_; }
85 
86  //start queryFilter with 'AND' to fiter more the selection
87  virtual std::vector<std::vector<std::string>>
88  getRunRecords (unsigned int /* startTime */,
89  unsigned int /* endTime */,
90  const std::string& queryFilter = "",
91  const std::string& runType = "") { __SS__ << "getRunRecords() Not implemented by the Run Info Plugin (" << mfSubject_ << ")!!" << (queryFilter == "" && runType == ""/* use variables */?"":""); __SS_THROW__;};
92 
93  virtual std::vector<std::vector<std::string>>
94  getRunConditionByID (uint64_t /* conditionID*/) { __SS__ << "getRunConditionByID() Not implemented by the Run Info Plugin (" << mfSubject_ << ")!!"; __SS_THROW__; };
95 
96  virtual std::vector<std::vector<std::string>>
97  getRunConfigSubsystemInfo (uint64_t /* configID */) { __SS__ << "getRunConfigSubsystemInfo() Not implemented by the Run Info Plugin (" << mfSubject_ << ")!!"; __SS_THROW__; };
98 
99  protected:
100  const std::string mfSubject_;
101  const std::string activeStateMachineName_;
102 };
103 // clang-format on
104 
105 } // namespace ots
106 
107 #endif
< : public Configurable
const std::string mfSubject_
Unique identifier for decorating trace printouts.
const std::string & getActiveStateMachineName(void) const
Get functions -—.
virtual unsigned int insertConfigureCondition(const std::string &, const std::string &)
Set functions -—.
defines used also by OtsConfigurationWizardSupervisor