Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:08:17

0001 #ifndef SiPixelConfigWriter_H
0002 #define SiPixelConfigWriter_H
0003 
0004 /** \class SiPixelConfigWriter
0005  * *
0006  *  Base class for Parsers used by DQM
0007  *
0008  *
0009  *  \author Petra Merkel
0010  */
0011 #include "Utilities/Xerces/interface/Xerces.h"
0012 #include <xercesc/framework/LocalFileFormatTarget.hpp>
0013 #include <xercesc/framework/StdOutFormatTarget.hpp>
0014 
0015 #include <xercesc/dom/DOM.hpp>
0016 #include <xercesc/dom/DOMException.hpp>
0017 #include <xercesc/dom/DOMImplementation.hpp>
0018 #include <xercesc/util/XMLString.hpp>
0019 
0020 #include <iostream>
0021 #include <map>
0022 #include <string>
0023 #include <vector>
0024 
0025 class SiPixelConfigWriter {
0026 public:
0027   /// Creator
0028   SiPixelConfigWriter();
0029   /// Destructor
0030   ~SiPixelConfigWriter();
0031   /// Write XML file
0032   bool init();
0033   void write(std::string &fname);
0034   void createLayout(std::string &name);
0035   void createRow();
0036   void createColumn(std::string &element, std::string &name);
0037 
0038 protected:
0039 private:
0040   xercesc::DOMElement *theTopElement;
0041   xercesc::DOMElement *theLastLayout;
0042   xercesc::DOMElement *theLastRow;
0043   xercesc::DOMDocument *theDoc;
0044   xercesc::DOMLSSerializer *theDomWriter;
0045   xercesc::DOMLSOutput *theOutput;
0046 };
0047 
0048 #endif