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")),
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()));
173 #endif // MonitorXMLParser_h