otsdaq  v2_04_01
DesktopIconTable.h
1 #ifndef _ots_DesktopIconTable_h_
2 #define _ots_DesktopIconTable_h_
3 
4 #include <string>
5 
6 #include "otsdaq-core/TableCore/TableBase.h"
7 
8 namespace ots
9 {
11 {
12  public:
13  DesktopIconTable(void);
14  virtual ~DesktopIconTable(void);
15 
16  // Methods
17  void init(ConfigurationManager* configManager);
18 
19  struct DesktopIcon
20  {
21  bool enforceOneWindowInstance_;
22  std::string caption_, alternateText_, imageURL_, windowContentURL_, folderPath_;
23  std::string permissionThresholdString_; // <groupName>:<permissionsThreshold>
24  // pairs separated by ',' '&' or '|'
25  };
26 
27  const std::vector<DesktopIconTable::DesktopIcon>& getAllDesktopIcons() const
28  {
29  return activeDesktopIcons_;
30  } // activeDesktopIcons_ is setup in init
31 
32  private:
33  std::string removeCommas(const std::string& str,
34  bool andHexReplace = false,
35  bool andHTMLReplace = false);
36 
37  std::vector<DesktopIconTable::DesktopIcon>
38  activeDesktopIcons_; // only icons with status=true
39 };
40 } // namespace ots
41 #endif