1 #ifndef _ots_ECLSupervisor_h
2 #define _ots_ECLSupervisor_h
4 #include "otsdaq/FiniteStateMachine/RunControlStateMachine.h"
5 #include "otsdaq/SOAPUtilities/SOAPMessenger.h"
6 #include "otsdaq/WebUsersUtilities/RemoteWebUsers.h"
8 #pragma GCC diagnostic push
9 #pragma GCC diagnostic ignored "-Wdeprecated-declarations"
10 #pragma GCC diagnostic ignored "-Wunused-variable"
11 #pragma GCC diagnostic ignored "-Wunused-parameter"
13 #pragma GCC diagnostic ignored "-Wcatch-value"
16 #include <xdaq/Application.h>
17 #pragma GCC diagnostic pop
18 #include "otsdaq/Macros/XDAQApplicationMacros.h"
20 #pragma GCC diagnostic push
21 #pragma GCC diagnostic ignored "-Wunknown-pragmas"
22 #include <xgi/Method.h>
23 #include <cgicc/HTMLClasses.h>
24 #include <cgicc/HTMLDoctype.h>
25 #include <cgicc/HTTPCookie.h>
26 #include <cgicc/HTTPHeader.h>
27 #pragma GCC diagnostic pop
32 #include "otsdaq/CoreSupervisors/CoreSupervisorBase.h"
36 class ConfigurationManager;
49 void defaultPage(xgi::Input* in, xgi::Output* out);
51 void transitionConfiguring(toolbox::Event::Reference e);
52 void transitionStarting(toolbox::Event::Reference e);
53 void transitionStopping(toolbox::Event::Reference e);
54 void transitionPausing(toolbox::Event::Reference e);
55 void transitionResuming(toolbox::Event::Reference e);
56 void enteringError(toolbox::Event::Reference e);
58 xoap::MessageReference MakeSystemLogbookEntry(xoap::MessageReference msg);
61 ConfigurationManager* theConfigurationManager_;
62 const std::string supervisorContextUID_;
63 const std::string supervisorApplicationUID_;
64 const std::string supervisorConfigurationPath_;
69 std::string ExperimentName;
71 std::chrono::steady_clock::time_point run_start;
74 std::string EscapeECLString(std::string input =
"");
85 int Write(WriteState state);