CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
XMLConfigWriter.h
Go to the documentation of this file.
1 #ifndef OMTF_XMLConfigWriter_H
2 #define OMTF_XMLConfigWriter_H
3 
4 #include <string>
5 #include <vector>
6 
7 #include "xercesc/util/XercesDefs.hpp"
8 
11 
12 class GoldenPattern;
13 class OMTFConfiguration;
14 class OMTFinput;
15 class OMTFResult;
16 class AlgoMuon;
17 namespace l1t {
18  class RegionalMuonCand;
19 }
20 struct Key;
21 
22 namespace XERCES_CPP_NAMESPACE {
23  class DOMElement;
24  class DOMDocument;
25  class DOMImplementation;
26 } // namespace XERCES_CPP_NAMESPACE
27 
29 public:
30  XMLConfigWriter(const OMTFConfiguration* aOMTFConfig);
31 
32  void initialiseXMLDocument(const std::string& docName);
33 
35 
36  xercesc::DOMElement* writeEventHeader(unsigned int eventId, unsigned int mixedEventId = 0);
37 
38  xercesc::DOMElement* writeEventData(xercesc::DOMElement* aTopElement, const OmtfName& board, const OMTFinput& aInput);
39 
40  void writeAlgoMuon(xercesc::DOMElement* aTopElement, unsigned int iRefHit, const AlgoMuon& aMuon);
41 
42  void writeCandMuon(xercesc::DOMElement* aTopElement, const l1t::RegionalMuonCand& aCand);
43 
44  void writeResultsData(xercesc::DOMElement* aTopElement,
45  unsigned int iRegion,
46  const Key& aKey,
47  const OMTFResult& aResult);
48 
49  void writeGPData(const GoldenPattern& aGP);
50 
51  void writeGPData(const GoldenPattern& aGP1,
52  const GoldenPattern& aGP2,
53  const GoldenPattern& aGP3,
54  const GoldenPattern& aGP4);
55 
56  void writeConnectionsData(const std::vector<std::vector<OMTFConfiguration::vector2D> >& measurements4D);
57 
58  unsigned int findMaxInput(const OMTFConfiguration::vector1D& myCounts);
59 
60 private:
61  xercesc::DOMImplementation* domImpl;
62  xercesc::DOMElement* theTopElement;
63  xercesc::DOMDocument* theDoc;
64 
66 };
67 
70 #endif
void writeConnectionsData(const std::vector< std::vector< OMTFConfiguration::vector2D > > &measurements4D)
XMLConfigWriter(const OMTFConfiguration *aOMTFConfig)
void initialiseXMLDocument(const std::string &docName)
xercesc::DOMElement * writeEventData(xercesc::DOMElement *aTopElement, const OmtfName &board, const OMTFinput &aInput)
xercesc::DOMDocument * theDoc
xercesc::DOMElement * theTopElement
void writeResultsData(xercesc::DOMElement *aTopElement, unsigned int iRegion, const Key &aKey, const OMTFResult &aResult)
unsigned int findMaxInput(const OMTFConfiguration::vector1D &myCounts)
std::vector< int > vector1D
void writeCandMuon(xercesc::DOMElement *aTopElement, const l1t::RegionalMuonCand &aCand)
const OMTFConfiguration * myOMTFConfig
void finaliseXMLDocument(const std::string &fName)
xercesc::DOMImplementation * domImpl
void writeAlgoMuon(xercesc::DOMElement *aTopElement, unsigned int iRefHit, const AlgoMuon &aMuon)
xercesc::DOMElement * writeEventHeader(unsigned int eventId, unsigned int mixedEventId=0)
void writeGPData(const GoldenPattern &aGP)