tdaq-develop-2025-02-12
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 #include "otsdaq/TablePlugins/DesktopIconTable.h"
8 
9 namespace ots
10 {
11 // clang-format off
12 
16 {
17 public:
18 
19  static void getConfigurationStatusXML(HttpXmlDocument& xmlOut, ConfigurationManagerRW* cfgMgr, const std::string& username);
20 
22  ConfigurationManagerRW* cfgMgr,
23  const std::string& tableName,
24  TableVersion originalVersion,
25  bool makeTemporary,
26  TableBase* config,
27  TableVersion temporaryModifiedVersion,
28  bool ignoreDuplicates = false,
29  bool lookForEquivalent = false);
30 
31  static void handleCreateTableXML(HttpXmlDocument& xmlOut,
32  ConfigurationManagerRW* cfgMgr,
33  const std::string& tableName,
34  TableVersion version,
35  bool makeTemporary,
36  const std::string& data,
37  const int& dataOffset,
38  const std::string& author,
39  const std::string& comment,
40  bool sourceTableAsIs,
41  bool lookForEquivalent);
42 
43  static void handleCreateTableGroupXML(HttpXmlDocument& xmlOut,
44  ConfigurationManagerRW* cfgMgr,
45  const std::string& groupName,
46  const std::string& configList,
47  bool allowDuplicates = false,
48  bool ignoreWarnings = false,
49  const std::string& groupComment = "",
50  bool lookForEquivalent = false);
51 
52  static void handleGetTableGroupXML(HttpXmlDocument& xmlOut,
53  ConfigurationManagerRW* cfgMgr,
54  const std::string& groupName,
55  TableGroupKey groupKey,
56  bool ignoreWarnings = false);
57 
58  static bool handleAddDesktopIconXML(
59  HttpXmlDocument& xmlOut,
60  ConfigurationManagerRW* cfgMgr,
61  const std::string& iconCaption,
62  const std::string& iconAltText,
63  const std::string& iconFolderPath,
64  const std::string& iconImageURL,
65  const std::string& iconWindowURL,
66  const std::string& iconPermissions,
67  std::string windowLinkedApp = "",
68  unsigned int windowLinkedAppLID = 0,
69  bool enforceOneWindowInstance = false,
70  const std::string& windowParameters = "");
71  static void recursiveCopyTreeUIDNode (
72  HttpXmlDocument& xmlOut,
73  ConfigurationManagerRW* cfgMgr,
74  std::map<std::string /*modified table*/, TableVersion /* modified version */>& modifiedTablesMap,
75  const unsigned int startingDepth,
76  const unsigned int depth,
77  const unsigned int numberOfInstances,
78  TableView* cfgView,
79  const std::string& uidToCopy
80  );
81 
82 
83 };
84 
85 // clang-format on
86 
87 } // namespace ots
88 
89 #endif
static void getConfigurationStatusXML(HttpXmlDocument &xmlOut, ConfigurationManagerRW *cfgMgr, const std::string &username)
getConfigurationStatusXML
static TableVersion saveModifiedVersionXML(HttpXmlDocument &xmlOut, ConfigurationManagerRW *cfgMgr, const std::string &tableName, TableVersion originalVersion, bool makeTemporary, TableBase *config, TableVersion temporaryModifiedVersion, bool ignoreDuplicates=false, bool lookForEquivalent=false)
static void handleGetTableGroupXML(HttpXmlDocument &xmlOut, ConfigurationManagerRW *cfgMgr, const std::string &groupName, TableGroupKey groupKey, bool ignoreWarnings=false)
static void handleCreateTableXML(HttpXmlDocument &xmlOut, ConfigurationManagerRW *cfgMgr, const std::string &tableName, TableVersion version, bool makeTemporary, const std::string &data, const int &dataOffset, const std::string &author, const std::string &comment, bool sourceTableAsIs, bool lookForEquivalent)
static void handleCreateTableGroupXML(HttpXmlDocument &xmlOut, ConfigurationManagerRW *cfgMgr, const std::string &groupName, const std::string &configList, bool allowDuplicates=false, bool ignoreWarnings=false, const std::string &groupComment="", bool lookForEquivalent=false)