8 #ifndef MonitorXMLParser_h 9 #define MonitorXMLParser_h 17 #include <xercesc/dom/DOM.hpp> 18 #include <xercesc/dom/DOMElement.hpp> 19 #include <xercesc/parsers/XercesDOMParser.hpp> 79 : TAG_DBE(
xercesc::XMLString::transcode(
"dbelements")),
80 TAG_ME(
xercesc::XMLString::transcode(
"me")),
81 TAG_1D(
xercesc::XMLString::transcode(
"th1d")),
82 TAG_2D(
xercesc::XMLString::transcode(
"th2d")),
83 TAG_TPROFILE(
xercesc::XMLString::transcode(
"tprofile")),
84 TAG_TPROFILE2D(
xercesc::XMLString::transcode(
"tprofile2d")),
85 TAG_QUERY(
xercesc::XMLString::transcode(
"query")),
87 ATTR_TITLE(
xercesc::XMLString::transcode(
"title")),
88 ATTR_XBINS(
xercesc::XMLString::transcode(
"xbins")),
89 ATTR_XFROM(
xercesc::XMLString::transcode(
"xfrom")),
90 ATTR_XTO(
xercesc::XMLString::transcode(
"xto")),
91 ATTR_YBINS(
xercesc::XMLString::transcode(
"ybins")),
92 ATTR_YFROM(
xercesc::XMLString::transcode(
"yfrom")),
93 ATTR_YTO(
xercesc::XMLString::transcode(
"yto")),
94 ATTR_ZBINS(
xercesc::XMLString::transcode(
"ybins")),
95 ATTR_ZFROM(
xercesc::XMLString::transcode(
"yfrom")),
96 ATTR_ZTO(
xercesc::XMLString::transcode(
"yto")),
97 ATTR_NCYCLE(
xercesc::XMLString::transcode(
"ncycle")),
98 ATTR_LOOP(
xercesc::XMLString::transcode(
"loop")),
99 ATTR_NAME(
xercesc::XMLString::transcode(
"name")),
100 ATTR_ARG(
xercesc::XMLString::transcode(
"arg")),
101 ATTR_ALIAS(
xercesc::XMLString::transcode(
"alias")) {
128 }
catch (xercesc::XMLException &
e) {
129 char *message = xercesc::XMLString::transcode(e.getMessage());
131 std::ostringstream buf;
132 buf <<
"Error parsing file: " << message << std::flush;
136 throw(std::runtime_error(buf.str()));
138 }
catch (
const xercesc::DOMException &e) {
139 char *message = xercesc::XMLString::transcode(e.getMessage());
141 std::ostringstream buf;
142 buf <<
"Encountered DOM Exception: " << message << std::flush;
146 throw(std::runtime_error(buf.str()));
160 void handleElement(xercesc::DOMElement *element);
167 const
std::vector<
DB_ME> &getDB_ME(
void)
const {
return (DBMonitoringElements_); }
173 #endif // MonitorXMLParser_h
~TagNames() noexcept(false)
std::vector< DB_ME > DBMonitoringElements_
std::vector< DbQuery > queries
xercesc::XercesDOMParser * parser_