00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef __PEEKABOT_XML_PARSER_HH
00019 #define __PEEKABOT_XML_PARSER_HH
00020
00021 #include <string>
00022
00023 namespace peekabot
00024 {
00025
00026 class XMLHandler;
00027
00038 class XMLParser
00039 {
00040 public:
00041 virtual ~XMLParser() {}
00042
00047 virtual void invoke(const std::string& filename)
00048 throw(std::exception) = 0;
00049
00054 virtual void set_handler(XMLHandler *handler) = 0;
00055 };
00056
00057
00058
00059 class XMLParserFactory
00060 {
00061 public:
00062 static XMLParser *create_parser();
00063 };
00064
00065 }
00066
00067 #endif //__PEEKABOT_XML_PARSER_HH