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> 38 int ybins;
double yfrom;
double yto;
39 int zbins;
double zfrom;
double zto;
74 TAG_DBE(
xercesc::XMLString::transcode(
"dbelements" ) ),
75 TAG_ME(
xercesc::XMLString::transcode(
"me" ) ),
76 TAG_1D(
xercesc::XMLString::transcode(
"th1d" ) ),
77 TAG_2D(
xercesc::XMLString::transcode(
"th2d" ) ),
78 TAG_TPROFILE(
xercesc::XMLString::transcode(
"tprofile" ) ),
79 TAG_TPROFILE2D(
xercesc::XMLString::transcode(
"tprofile2d" ) ),
80 TAG_QUERY(
xercesc::XMLString::transcode(
"query" ) ),
82 ATTR_TITLE(
xercesc::XMLString::transcode(
"title" ) ),
83 ATTR_XBINS(
xercesc::XMLString::transcode(
"xbins" ) ),
84 ATTR_XFROM(
xercesc::XMLString::transcode(
"xfrom" ) ),
85 ATTR_XTO(
xercesc::XMLString::transcode(
"xto" ) ),
86 ATTR_YBINS(
xercesc::XMLString::transcode(
"ybins" ) ),
87 ATTR_YFROM(
xercesc::XMLString::transcode(
"yfrom" ) ),
88 ATTR_YTO(
xercesc::XMLString::transcode(
"yto" ) ),
89 ATTR_ZBINS(
xercesc::XMLString::transcode(
"ybins" ) ),
90 ATTR_ZFROM(
xercesc::XMLString::transcode(
"yfrom" ) ),
91 ATTR_ZTO(
xercesc::XMLString::transcode(
"yto" ) ),
92 ATTR_NCYCLE(
xercesc::XMLString::transcode(
"ncycle" ) ),
93 ATTR_LOOP(
xercesc::XMLString::transcode(
"loop" ) ),
94 ATTR_NAME(
xercesc::XMLString::transcode(
"name" ) ),
95 ATTR_ARG(
xercesc::XMLString::transcode(
"arg" ) ),
96 ATTR_ALIAS(
xercesc::XMLString::transcode(
"alias" ) ) {
128 }
catch( xercesc::XMLException&
e ){
130 char*
message = xercesc::XMLString::transcode( e.getMessage() );
132 std::ostringstream buf ;
133 buf <<
"Error parsing file: " << message << std::flush;
137 throw( std::runtime_error( buf.str() ) );
139 }
catch(
const xercesc::DOMException& e ){
141 char*
message = xercesc::XMLString::transcode( e.getMessage() );
143 std::ostringstream buf;
144 buf <<
"Encountered DOM Exception: " << message << std::flush;
148 throw( std::runtime_error( buf.str() ) );
168 void handleElement( xercesc::DOMElement* element );
176 const
std::vector<
DB_ME > & getDB_ME(
void )
const {
return (DBMonitoringElements_ ); }
182 #endif // MonitorXMLParser_h
~TagNames() noexcept(false)
std::vector< DbQuery > queries
std::vector< DB_ME > DBMonitoringElements_
return(e1-e2)*(e1-e2)+dp *dp
xercesc::XercesDOMParser * parser_