Go to the documentation of this file.00001
00021 #ifndef XML_FILE_H
00022 #define XML_FILE_H
00023
00024 #include <string>
00025 #include <iostream>
00026 using namespace std;
00027
00028 #include <xercesc/dom/DOM.hpp>
00029 #include <xercesc/util/PlatformUtils.hpp>
00030 #include <xercesc/parsers/XercesDOMParser.hpp>
00031 using namespace xercesc;
00032
00033 class XMLFile {
00034
00035 protected:
00036 string filename;
00037 XercesDOMParser *m_ConfigFileParser;
00038
00039 public:
00040 XMLFile(string _filename) : filename(_filename) {
00041 try {
00042 XMLPlatformUtils::Initialize();
00043 } catch( XMLException& e ) {
00044 char* message = XMLString::transcode( e.getMessage() );
00045 cerr << "XML toolkit initialization error: " << message << endl;
00046 XMLString::release( &message );
00047
00048 }
00049
00050 m_ConfigFileParser = new XercesDOMParser();
00051 }
00052
00053 ~XMLFile() {
00054
00055 delete m_ConfigFileParser;
00056
00057
00058 try {
00059 XMLPlatformUtils::Terminate();
00060 } catch( xercesc::XMLException& e ) {
00061 char* message = xercesc::XMLString::transcode( e.getMessage() );
00062 cerr << "XML toolkit teardown error: " << message << endl;
00063 XMLString::release( &message );
00064 }
00065 }
00066
00067 };
00068
00069 #endif