otsdaq  3.06.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  };
49 
50  RunInfoVInterface (const std::string& runInfoPluginClassName,
51  const std::string& activeStateMachineName)
52  :
53  mfSubject_(runInfoPluginClassName),
54  activeStateMachineName_(activeStateMachineName)
55  {;}
56  virtual ~RunInfoVInterface (void) { ; }
57 
58 
59 
61 
62  virtual unsigned int insertConfigureCondition (const std::string& /*blob*/,
63  const std::string& /*comment*/) { __SS__ << "insertConfigureCondition() Not implemented by the Run Info Plugin (" << mfSubject_ << ")!!"; __SS_THROW__; };
64  virtual unsigned int claimNextRunNumber (unsigned int /* configureConditionID */,
65  const std::string& /* comment */) { __SS__ << "claimNextRunNumber() Not implemented by the Run Info Plugin (" << mfSubject_ << ")!!"; __SS_THROW__; };
66  virtual unsigned int insertRunCondition (unsigned int /* runNumber */,
67  const std::map<std::string /* subsystem */,
68  std::map<std::string /*type/name/field */,
69  std::string /* value */>>&
70  /* runConditionMap */,
71  unsigned int /* configureConditionID */,
72  const std::string& /* comment */) { __SS__ << "insertRunCondition() Not implemented by the Run Info Plugin (" << mfSubject_ << ")!!"; __SS_THROW__; };
73 
74  virtual void updateRunInfo (unsigned int /* runConditionID */,
75  RunTransitionType /* runTransitionType */,
76  const std::string& /* comment */) { __SS__ << "updateRunInfo() Not implemented by the Run Info Plugin (" << mfSubject_ << ")!!"; __SS_THROW__; };
77 
78 
79 
81 
82  const std::string& getActiveStateMachineName (void) const { return activeStateMachineName_; }
83 
84  //start queryFilter with 'AND' to fiter more the selection
85  virtual std::vector<std::vector<std::string>>
86  getRunRecords (unsigned int /* startTime */,
87  unsigned int /* endTime */,
88  const std::string& queryFilter = "",
89  const std::string& runType = "") { __SS__ << "getRunRecords() Not implemented by the Run Info Plugin (" << mfSubject_ << ")!!" << (queryFilter == "" && runType == ""/* use variables */?"":""); __SS_THROW__;};
90 
91  virtual std::vector<std::vector<std::string>>
92  getRunConditionByID (uint64_t /* conditionID*/) { __SS__ << "getRunConditionByID() Not implemented by the Run Info Plugin (" << mfSubject_ << ")!!"; __SS_THROW__; };
93 
94  virtual std::vector<std::vector<std::string>>
95  getRunConfigSubsystemInfo (uint64_t /* configID */) { __SS__ << "getRunConfigSubsystemInfo() Not implemented by the Run Info Plugin (" << mfSubject_ << ")!!"; __SS_THROW__; };
96 
97  protected:
98  const std::string mfSubject_;
99  const std::string activeStateMachineName_;
100 };
101 // clang-format on
102 
103 } // namespace ots
104 
105 #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