otsdaq  v1_01_03
 All Classes Namespaces Functions
Configurations.h
1 #ifndef _ots_Configurations_h_
2 #define _ots_Configurations_h_
3 
4 #include "otsdaq-core/ConfigurationDataFormats/ConfigurationBase.h"
5 #include "otsdaq-core/ConfigurationDataFormats/ConfigurationGroupKey.h"
6 #include "otsdaq-core/ConfigurationDataFormats/ConfigurationVersion.h"
7 
8 #include <string>
9 #include <set>
10 
11 namespace ots
12 {
13 
15 {
16 
17 public:
18 
19  Configurations (void);
20  virtual ~Configurations (void);
21 
22  //Methods
23  void init (ConfigurationManager *configManager);
24  bool findKOC (ConfigurationGroupKey ConfigurationGroupKey, std::string koc) const;
25 
26  //Getters
27  ConfigurationVersion getConditionVersion (const ConfigurationGroupKey &ConfigurationGroupKey, std::string koc) const;
28 
29  std::set<std::string> getListOfKocs (ConfigurationGroupKey ConfigurationGroupKey = ConfigurationGroupKey()) const; //INVALID to get all Kocs
30  void getListOfKocsForView (ConfigurationView* cfgView, std::set<std::string> &kocList, ConfigurationGroupKey ConfigurationGroupKey = ConfigurationGroupKey()) const; //INVALID to get all Kocs
31 
32 
33  //Setters
34  int setConditionVersionForView(ConfigurationView* cfgView, ConfigurationGroupKey ConfigurationGroupKey, std::string koc, ConfigurationVersion newKOCVersion);
35 
36 private:
37  enum{ConfigurationGroupKeyAlias,
38  KOC,
39  ConditionVersion};
40 
41 };
42 }
43 #endif