otsdaq  v2_04_02
ConfigurationSupervisorBase.h
1 #ifndef _ots_ConfigurationSupervisorBase_h_
2 #define _ots_ConfigurationSupervisorBase_h_
3 
4 #include "otsdaq/ConfigurationInterface/ConfigurationManagerRW.h"
5 #include "otsdaq/XmlUtilities/HttpXmlDocument.h"
6 
7 namespace ots
8 {
9 // clang-format off
10 
11 // ConfigurationSupervisorBase
12 // This class provides supervisor level features for manipulating the configuration
14 {
15 public:
16 
17  static void getConfigurationStatusXML(HttpXmlDocument& xmlOut, ConfigurationManagerRW* cfgMgr);
18 
19  static TableVersion saveModifiedVersionXML(HttpXmlDocument& xmlOut,
20  ConfigurationManagerRW* cfgMgr,
21  const std::string& tableName,
22  TableVersion originalVersion,
23  bool makeTemporary,
24  TableBase* config,
25  TableVersion temporaryModifiedVersion,
26  bool ignoreDuplicates = false,
27  bool lookForEquivalent = false);
28 
29  static void handleCreateTableXML(HttpXmlDocument& xmlOut,
30  ConfigurationManagerRW* cfgMgr,
31  const std::string& tableName,
32  TableVersion version,
33  bool makeTemporary,
34  const std::string& data,
35  const int& dataOffset,
36  const std::string& author,
37  const std::string& comment,
38  bool sourceTableAsIs,
39  bool lookForEquivalent);
40 
41  static void handleCreateTableGroupXML(HttpXmlDocument& xmlOut,
42  ConfigurationManagerRW* cfgMgr,
43  const std::string& groupName,
44  const std::string& configList,
45  bool allowDuplicates = false,
46  bool ignoreWarnings = false,
47  const std::string& groupComment = "",
48  bool lookForEquivalent = false);
49 
50  static void handleGetTableGroupXML(HttpXmlDocument& xmlOut,
51  ConfigurationManagerRW* cfgMgr,
52  const std::string& groupName,
53  TableGroupKey groupKey,
54  bool ignoreWarnings = false);
55 
56  static void handleAddDesktopIconXML(HttpXmlDocument& xmlOut,
57  ConfigurationManagerRW* cfgMgr,
58  const std::string& iconCaption,
59  const std::string& iconAltText,
60  const std::string& iconFolderPath,
61  const std::string& iconImageURL,
62  const std::string& iconWindowURL,
63  const std::string& iconPermissions,
64  std::string windowLinkedApp = "",
65  unsigned int windowLinkedAppLID = 0,
66  bool enforceOneWindowInstance = false,
67  const std::string& windowParameters = "");
68 
69 };
70 
71 // clang-format on
72 
73 } // namespace ots
74 
75 #endif