tdaq-develop-2025-02-12
DesktopIconTable.h
1 #ifndef _ots_DesktopIconTable_h_
2 #define _ots_DesktopIconTable_h_
3 
4 #include <string>
5 
6 #include "otsdaq/TableCore/TableBase.h"
7 
8 namespace ots
9 {
11 {
12  public:
13  DesktopIconTable(void);
14  virtual ~DesktopIconTable(void);
15 
17  void init(ConfigurationManager* configManager);
18 
19  struct DesktopIcon
20  {
21  bool enforceOneWindowInstance_;
22  std::string caption_, alternateText_, imageURL_, windowContentURL_, folderPath_;
25  std::string recordUID_;
26  };
27 
28  const std::vector<DesktopIconTable::DesktopIcon>& getAllDesktopIcons() const
29  {
30  return activeDesktopIcons_;
31  } // activeDesktopIcons_ is setup in init
32  void setAllDesktopIcons(const std::vector<DesktopIconTable::DesktopIcon>&
33  newIcons);
34  std::string getRemoteURL(ConfigurationManager* configManager,
35  const std::string& localURL) const;
36 
37  static const std::string COL_NAME;
38  static const std::string COL_STATUS;
39  static const std::string COL_CAPTION;
40  static const std::string COL_ALTERNATE_TEXT;
41  static const std::string COL_FORCE_ONLY_ONE_INSTANCE;
42  static const std::string COL_PERMISSIONS;
43  static const std::string COL_IMAGE_URL;
44  static const std::string COL_WINDOW_CONTENT_URL;
45  static const std::string COL_APP_LINK;
46  static const std::string COL_APP_LINK_UID;
47  static const std::string COL_PARAMETER_LINK;
48  static const std::string COL_PARAMETER_LINK_GID;
49  static const std::string COL_FOLDER_PATH;
50 
51  static const std::string COL_PARAMETER_GID;
52  static const std::string COL_PARAMETER_KEY;
53  static const std::string COL_PARAMETER_VALUE;
54 
55  static const std::string ICON_TABLE;
56  static const std::string PARAMETER_TABLE;
57 
58  static const std::string COL_APP_ID;
59 
60  private:
61  std::string removeCommas(const std::string& str,
62  bool andHexReplace = false,
63  bool andHTMLReplace = false);
64 
65  std::vector<DesktopIconTable::DesktopIcon>
66  activeDesktopIcons_;
67 };
68 } // namespace ots
69 #endif
std::string getRemoteURL(ConfigurationManager *configManager, const std::string &localURL) const
Convert to remote URL assuming port forwarding to primary Gateway Port.
void init(ConfigurationManager *configManager)
Methods.
void setAllDesktopIcons(const std::vector< DesktopIconTable::DesktopIcon > &newIcons)
overwrite dynamically the init result
static const std::string COL_APP_ID
XDAQ App Column names.
static const std::string COL_NAME