1 #ifndef _ots_ConfigurationHandler_h_
2 #define _ots_ConfigurationHandler_h_
5 #include <xercesc/dom/DOMDocument.hpp>
6 #include <xercesc/util/XMLChar.hpp>
8 #include "otsdaq/TableCore/TableVersion.h"
20 virtual void write(
const TableBase& ) { ; }
32 static void initPlatform(
void);
33 static void terminatePlatform(
void);
34 static bool validateNode(XMLCh* tagName,
35 xercesc::DOMNode* node,
36 const std::string& expectedValue);
37 static void outputXML(xercesc::DOMDocument* pmyDOMDocument, std::string filePath);
38 static std::string getXMLFileName(
const TableBase& configuration,
41 static xercesc::DOMNode* getNode(XMLCh* tagName,
42 xercesc::DOMNode* parent,
43 unsigned int itemNumber);
44 static xercesc::DOMNode* getNode(XMLCh* tagName,
45 xercesc::DOMElement* parent,
46 unsigned int itemNumber);
47 static xercesc::DOMElement* getElement(XMLCh* tagName,
48 xercesc::DOMNode* parent,
49 unsigned int itemNumber);
50 static xercesc::DOMElement* getElement(XMLCh* tagName,
51 xercesc::DOMElement* parent,
52 unsigned int itemNumber);
53 static XMLCh* rootTag_;
54 static XMLCh* headerTag_;
55 static XMLCh* typeTag_;
56 static XMLCh* extensionTableNameTag_;
57 static XMLCh* nameTag_;
58 static XMLCh* runTag_;
59 static XMLCh* runTypeTag_;
60 static XMLCh* runNumberTag_;
61 static XMLCh* runBeginTimestampTag_;
62 static XMLCh* locationTag_;
63 static XMLCh* datasetTag_;
64 static XMLCh* versionTag_;
65 static XMLCh* commentDescriptionTag_;
66 static XMLCh* createdByUserTag_;
67 static XMLCh* partTag_;
68 static XMLCh* nameLabelTag_;
69 static XMLCh* kindOfPartTag_;
70 static XMLCh* dataTag_;
static std::string writeXML(const TableBase &configuration)
returns the file name
static std::string getXMLDir(const TableBase *configuration)