1 #ifndef _ots_SlowControlsDashboardSupervisor_h_
2 #define _ots_SlowControlsDashboardSupervisor_h_
5 #include "otsdaq/CoreSupervisors/CoreSupervisorBase.h"
12 class SlowControlsVInterface;
13 class ConfigurationManager;
30 void handleNewAlarms();
32 virtual void request(
const std::string& requestType,
34 HttpXmlDocument& xmlOut,
35 const WebUsers::RequestUserInfo& userInfo)
override;
36 virtual void handleRequest(
const std::string Command,
37 HttpXmlDocument& xmlOut,
39 const WebUsers::RequestUserInfo& userInfo);
47 void Poll(cgicc::Cgicc& cgiIn, HttpXmlDocument& xmlOut, std::string UID);
48 void Poll(cgicc::Cgicc& cgiIn, HttpXmlDocument& xmlOut);
49 void GetChannelSettings(cgicc::Cgicc& cgiIn, HttpXmlDocument& xmlOut);
50 void GetChannelArchiverData(cgicc::Cgicc& cgiIn, HttpXmlDocument& xmlOut);
51 void GetLastAlarmsData(cgicc::Cgicc& cgiIn, HttpXmlDocument& xmlOut);
52 void GetAlarmsLogData(cgicc::Cgicc& cgiIn, HttpXmlDocument& xmlOut);
53 void GetAlarmsCheck(HttpXmlDocument& xmlOut);
54 void GetUserPermissions(cgicc::Cgicc& cgiIn,
55 HttpXmlDocument& xmlOut,
56 const WebUsers::RequestUserInfo& userInfo);
57 void GenerateUID(cgicc::Cgicc& cgiIn, HttpXmlDocument& xmlOut, std::string pvlist);
58 void GetList(cgicc::Cgicc& cgiIn, HttpXmlDocument& xmlOut);
59 void GetPages(cgicc::Cgicc& cgiIn, HttpXmlDocument& xmlOut);
60 void loadPage(cgicc::Cgicc& cgiIn,
61 HttpXmlDocument& xmlOut,
63 const WebUsers::RequestUserInfo& userInfo);
64 void loadPhoebusPage(cgicc::Cgicc& cgiIn,
65 HttpXmlDocument& xmlOut,
67 const WebUsers::RequestUserInfo& userInfo);
68 void SaveControlsPage(cgicc::Cgicc& cgiIn,
69 HttpXmlDocument& xmlOut,
70 const WebUsers::RequestUserInfo& userInfo);
71 void SavePhoebusControlsPage(cgicc::Cgicc& cgiIn,
72 HttpXmlDocument& xmlOut,
73 const WebUsers::RequestUserInfo& userInfo);
74 void saveImageFile(cgicc::Cgicc& cgiIn,
75 HttpXmlDocument& xmlOut,
76 const WebUsers::RequestUserInfo& userInfo);
77 void Subscribe(cgicc::Cgicc& cgiIn, HttpXmlDocument& xmlOut);
78 void Unsubscribe(cgicc::Cgicc& cgiIn, HttpXmlDocument& xmlOut);
81 bool isDir(std::string dir);
82 void listFiles(std::string baseDir,
bool recursive, std::vector<std::string>* pages);
85 std::string PollChannels_(std::set<std::string>& channels,
bool resubscibe =
true);
86 std::map<int, std::set<std::string>> channelDependencyLookupMap_;
87 std::map<int, long int> uidPollTimeMap_;
89 int alarmNotifyRefreshRate_;
90 std::mutex alarmCheckThreadErrorMutex_;
91 std::string alarmCheckThreadError_;
95 std::vector<std::vector<std::string>> alarms_;
96 std::chrono::time_point<std::chrono::system_clock> alarms_timestamp_;
99 SlowControlsVInterface* interface_;
100 std::mutex pluginBusyMutex_;
bool isDir(std::string dir)
Utilities, eventually to be moved.
void checkSubscriptions(SlowControlsDashboardSupervisor *cs)
Manage channel subscriptions to Interface.
virtual void forceSupervisorPropertyValues(void) override
void init(void)
called by constructor
virtual void setSupervisorPropertyDefaults(void) override
void checkSlowControlsAlarms(SlowControlsDashboardSupervisor *cs)
Manage channel subscriptions to Interface.