1 #ifndef _ots_MacroMakerSupervisor_h_
2 #define _ots_MacroMakerSupervisor_h_
4 #include "otsdaq/CoreSupervisors/CoreSupervisorBase.h"
23 virtual void request(
const std::string& requestType,
25 HttpXmlDocument& xmlOut,
26 const WebUsers::RequestUserInfo& userInfo)
override;
28 virtual void forceSupervisorPropertyValues(
void)
override;
35 void generateURL(
void);
36 void verification(xgi::Input* in, xgi::Output* out);
37 void requestIcons(xgi::Input* in, xgi::Output* out);
38 void tooltipRequest(xgi::Input* in, xgi::Output* out);
39 void requestWrapper(xgi::Input* in, xgi::Output* out);
42 void handleRequest(
const std::string Command,
43 HttpXmlDocument& xmldoc,
45 const std::string& username);
47 xoap::MessageReference frontEndCommunicationRequest(xoap::MessageReference message);
49 void getFElist(HttpXmlDocument& xmldoc);
50 void getFEMacroList(HttpXmlDocument& xmldoc,
const std::string& username);
52 void writeData(HttpXmlDocument& xmldoc,
54 const std::string& username);
55 void readData(HttpXmlDocument& xmldoc,
57 const std::string& username);
58 void createMacro(HttpXmlDocument& xmldoc,
60 const std::string& username);
61 void loadMacro(
const std::string& macroName,
62 std::string& macroString,
63 const std::string& username =
"");
64 void loadMacros(HttpXmlDocument& xmldoc,
const std::string& username);
66 const std::string& username,
67 std::pair<std::vector<std::string> ,
68 std::vector<std::string> >& returnMacroNames);
69 void appendCommandToHistory(std::string command,
72 std::string interfaces,
73 const std::string& username);
74 void loadHistory(HttpXmlDocument& xmldoc,
const std::string& username);
75 void deleteMacro(HttpXmlDocument& xmldoc,
77 const std::string& username);
78 void editMacro(HttpXmlDocument& xmldoc,
80 const std::string& username);
81 void clearHistory(
const std::string& username);
82 void exportMacro(HttpXmlDocument& xmldoc,
84 const std::string& username);
85 void exportFEMacro(HttpXmlDocument& xmldoc,
87 const std::string& username);
88 void runFEMacro(HttpXmlDocument& xmldoc,
90 const std::string& username);
92 std::string generateHexArray(
const std::string& sourceHexString,
int& numOfBytes);
93 bool isArgumentVariable(
const std::string& argumentString);
94 void createCode(std::ostream& out,
95 const std::vector<std::string>& commands,
96 const std::string& tabOffset =
"",
97 bool forFeMacro =
false,
98 std::set<std::string>* inArgNames = 0,
99 std::set<std::string>* outArgNames = 0);
101 SupervisorInfoMap allFESupervisorInfo_;
102 std::map<std::string ,
unsigned int >
104 std::map<std::string , std::set<std::string> >
105 FEPluginTypetoFEsMap_;
106 std::map<std::string , std::string > FEtoPluginTypeMap_;
108 std::string securityCode_;
109 bool defaultSequence_;