otsdaq  v2_04_01
RegisterConfigurationInfoReader.h
1 /*
2  * RegisterConfigurationInfoReader.h
3  *
4  * Created on: Jul 28, 2015
5  * Author: parilla
6  */
7 
8 #ifndef ots_RegisterConfigurationInfoReader_h_
9 #define ots_RegisterConfigurationInfoReader_h_
10 
11 #include <string>
12 #include <xercesc/dom/DOMDocument.hpp>
13 #include <xercesc/util/XMLChar.hpp>
14 
15 namespace ots
16 {
17 class RegisterBase;
18 
20 {
21  public:
24  void read(RegisterBase& configuration);
25  void read(RegisterBase* configuration);
26 
27  private:
28  void initPlatform(void);
29  void terminatePlatform(void);
30  bool checkViewType(std::string type);
31 
32  xercesc::DOMNode* getNode(XMLCh* tagName,
33  xercesc::DOMNode* parent,
34  unsigned int itemNumber);
35  xercesc::DOMNode* getNode(XMLCh* tagName,
36  xercesc::DOMElement* parent,
37  unsigned int itemNumber);
38  xercesc::DOMElement* getElement(XMLCh* tagName,
39  xercesc::DOMNode* parent,
40  unsigned int itemNumber);
41  xercesc::DOMElement* getElement(XMLCh* tagName,
42  xercesc::DOMElement* parent,
43  unsigned int itemNumber);
44  XMLCh* rootTag_;
45  XMLCh* headerTag_;
46  XMLCh* typeTag_;
47  XMLCh* extensionTableNameTag_;
48  XMLCh* nameTag_;
49  XMLCh* dataSetTag_;
50  XMLCh* versionTag_;
51  XMLCh* commentDescriptionTag_;
52  XMLCh* createdByUserTag_;
53  XMLCh* dataTag_;
54  XMLCh* typeNameTag_;
55  XMLCh* registerNameTag_;
56  XMLCh* baseAddressTag_;
57  XMLCh* sizeTag_;
58  XMLCh* accessTag_;
59 };
60 
61 } // namespace ots
62 
63 #endif /* RegisterConfigurationINFOREADER_H_ */