otsdaq  3.03.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 
13 {
14  public:
15  enum class RunStopType
16  {
17  HALT,
18  STOP,
19  ERROR,
20  PAUSE,
21  RESUME,
22  START
23  };
24 
27  RunInfoVInterface(const std::string& interfaceUID)
28  : //, const ConfigurationTree& theXDAQContextConfigTree, const std::string& configurationPath) :
29  // Configurable(theXDAQContextConfigTree, configurationPath)
30  //,
31  mfSubject_(interfaceUID)
34  {
35  ;
36  }
37  virtual ~RunInfoVInterface(void) { ; }
38 
39  virtual unsigned int insertRunCondition(
40  const std::string& runInfoConditions = "") = 0;
41  virtual unsigned int claimNextRunNumber(
42  unsigned int conditionID, const std::string& runInfoConditions = "") = 0;
43  virtual void updateRunInfo(unsigned int runNumber,
44  RunInfoVInterface::RunStopType runStopType) = 0;
45 
46  //start queryFilter with 'AND' to fiter more the selection
47  virtual std::vector<std::vector<std::string>> getRunRecords(
48  unsigned int startTime,
49  unsigned int endTime,
50  const std::string& queryFilter = "") = 0;
51 
52  virtual std::vector<std::vector<std::string>> getRunConditionByID(
53  uint64_t conditionID) = 0;
54 
55  private:
56  const std::string mfSubject_;
57  // ConfigurationTree theXDAQContextConfigTree_;
58  // std::string configurationPath_;
59 };
60 
61 } // namespace ots
62 
63 #endif
< : public Configurable
RunInfoVInterface(const std::string &interfaceUID)