1 #ifndef _ots_MacroMakerSupervisor_h_
2 #define _ots_MacroMakerSupervisor_h_
4 #include "otsdaq-core/CoreSupervisors/CoreSupervisorBase.h"
27 virtual void request (
const std::string& requestType, cgicc::Cgicc& cgiIn, HttpXmlDocument& xmlOut,
const WebUsers::RequestUserInfo& userInfo)
override;
29 virtual void forceSupervisorPropertyValues (
void)
override;
34 void handleRequest (
const std::string Command, HttpXmlDocument& xmldoc, cgicc::Cgicc& cgi,
const std::string &username);
36 xoap::MessageReference frontEndCommunicationRequest (xoap::MessageReference message);
38 void getFElist (HttpXmlDocument& xmldoc);
39 void getFEMacroList (HttpXmlDocument& xmldoc,
const std::string &username);
41 void writeData (HttpXmlDocument& xmldoc, cgicc::Cgicc& cgi,
const std::string &username);
42 void readData (HttpXmlDocument& xmldoc, cgicc::Cgicc& cgi,
const std::string &username);
43 void createMacro (HttpXmlDocument& xmldoc, cgicc::Cgicc& cgi,
const std::string &username);
44 void loadMacro (
const std::string& macroName, std::string& macroString,
const std::string& username =
"");
45 void loadMacros (HttpXmlDocument& xmldoc,
const std::string &username);
46 void appendCommandToHistory (std::string command, std::string Format, std::string time, std::string interfaces,
const std::string &username);
47 void loadHistory (HttpXmlDocument& xmldoc,
const std::string &username);
48 void deleteMacro (HttpXmlDocument& xmldoc,cgicc::Cgicc& cgi,
const std::string &username);
49 void editMacro (HttpXmlDocument& xmldoc, cgicc::Cgicc& cgi,
const std::string &username);
50 void clearHistory (
const std::string &username);
51 void exportMacro (HttpXmlDocument& xmldoc, cgicc::Cgicc& cgi,
const std::string &username);
52 void exportFEMacro (HttpXmlDocument& xmldoc, cgicc::Cgicc& cgi,
const std::string &username);
53 void runFEMacro (HttpXmlDocument& xmldoc, cgicc::Cgicc& cgi);
57 std::string generateHexArray (
const std::string& sourceHexString,
int &numOfBytes);
58 bool isArgumentVariable (
const std::string& argumentString);
59 void createCode (std::ostream& out,
const std::vector<std::string>& commands,
const std::string& tabOffset =
"",
bool forFeMacro =
false, std::set<std::string>* inArgNames = 0, std::set<std::string>* outArgNames = 0);
61 SupervisorInfoMap allFESupervisorInfo_;
62 std::map<std::string ,
unsigned int > FEtoSupervisorMap_;