CMS 3D CMS Logo

List of all members | Public Member Functions | Protected Attributes
DQMParserBase Class Reference

#include <DQMParserBase.h>

Inheritance diagram for DQMParserBase:
QTestConfigurationParser SiPixelConfigParser SiPixelLayoutParser SiStripConfigParser SiStripLayoutParser SummaryPlotXmlParser

Public Member Functions

int countNodes (std::string tagName)
 Returns the number of nodes with given name. More...
 
xercesc::DOMDocument * doc ()
 DOM Document. More...
 
 DQMParserBase ()
 Creator. More...
 
void getDocument (std::string configFile, bool UseDB=false)
 Methor that parses the xml file configFile. More...
 
void getNewDocument (std::string configFile, bool UseDB=false)
 Parses a new Document. More...
 
virtual ~DQMParserBase ()
 Destructor. More...
 

Protected Attributes

xercesc::XercesDOMParser * parser
 

Detailed Description

Definition at line 26 of file DQMParserBase.h.

Constructor & Destructor Documentation

DQMParserBase::DQMParserBase ( )

Creator.

Definition at line 14 of file DQMParserBase.cc.

References writedatasetfile::parser.

14 { parser = nullptr; }
xercesc::XercesDOMParser * parser
Definition: DQMParserBase.h:42
DQMParserBase::~DQMParserBase ( )
virtual

Destructor.

Definition at line 16 of file DQMParserBase.cc.

References writedatasetfile::parser.

16  {
17  delete parser;
18  parser = nullptr;
19 }
xercesc::XercesDOMParser * parser
Definition: DQMParserBase.h:42

Member Function Documentation

int DQMParserBase::countNodes ( std::string  tagName)

Returns the number of nodes with given name.

Definition at line 50 of file DQMParserBase.cc.

References qtxml::_toDOMS(), and writedatasetfile::parser.

50  {
51  unsigned int tagsNum = parser->getDocument()->getElementsByTagName(qtxml::_toDOMS(tagName))->getLength();
52  return tagsNum;
53 }
xercesc::XercesDOMParser * parser
Definition: DQMParserBase.h:42
XMLCh * _toDOMS(std::string temp)
xercesc::DOMDocument* DQMParserBase::doc ( )
inline
void DQMParserBase::getDocument ( std::string  configFile,
bool  UseDB = false 
)

Methor that parses the xml file configFile.

Definition at line 21 of file DQMParserBase.cc.

References common_cff::doc, and writedatasetfile::parser.

Referenced by QTestHandle::configureTests(), TrackingActionExecutor::createShiftReport(), SiStripActionExecutor::createShiftReport(), SiPixelActionExecutor::createSummary(), SiStripSummaryCreator::readConfiguration(), and SiPixelActionExecutor::readConfiguration().

21  {
22  parser = new XercesDOMParser;
23  parser->setValidationScheme(XercesDOMParser::Val_Auto);
24  parser->setDoNamespaces(false);
25  if (UseDB) {
26  // std::cout<<"=== This is config file from getDocument ====== "<<std::endl;
27  // std::cout<<configFile<<std::endl;
28  MemBufInputSource mb((const XMLByte*)configFile.c_str(), strlen(configFile.c_str()), "", false);
29  parser->parse(mb);
30  } else {
31  parser->parse(configFile.c_str());
32  }
33  xercesc::DOMDocument* doc = parser->getDocument();
34  assert(doc);
35 }
xercesc::XercesDOMParser * parser
Definition: DQMParserBase.h:42
xercesc::DOMDocument * doc()
DOM Document.
Definition: DQMParserBase.h:39
void DQMParserBase::getNewDocument ( std::string  configFile,
bool  UseDB = false 
)

Parses a new Document.

Definition at line 37 of file DQMParserBase.cc.

References gather_cfg::cout, common_cff::doc, and writedatasetfile::parser.

Referenced by QTestHandle::configureTests().

37  {
38  parser->resetDocumentPool();
39  if (UseDB) {
40  std::cout << "=== This is config file from getNewDocument ==== " << std::endl;
41  std::cout << configFile << std::endl;
42  MemBufInputSource mb((const XMLByte*)configFile.c_str(), strlen(configFile.c_str()), "", false);
43  parser->parse(mb);
44  } else {
45  parser->parse(configFile.c_str());
46  }
47  xercesc::DOMDocument* doc = parser->getDocument();
48  assert(doc);
49 }
xercesc::XercesDOMParser * parser
Definition: DQMParserBase.h:42
xercesc::DOMDocument * doc()
DOM Document.
Definition: DQMParserBase.h:39

Member Data Documentation

xercesc::XercesDOMParser* DQMParserBase::parser
protected

Definition at line 42 of file DQMParserBase.h.

Referenced by doc().