]> git.stg.codes - stg.git/blobdiff - projects/stargazer/plugins/configuration/sgconfig/parser.h
Implemented storing services.
[stg.git] / projects / stargazer / plugins / configuration / sgconfig / parser.h
index af77158d6324d1032a922d9c503fa45b9035fe58..4e4b94173c2beb8f4d61a522550390532b487245 100644 (file)
@@ -38,7 +38,8 @@ class BASE_PARSER
         BASE_PARSER(const ADMIN & admin, const std::string & t)
             : m_currAdmin(admin),
               m_depth(0),
         BASE_PARSER(const ADMIN & admin, const std::string & t)
             : m_currAdmin(admin),
               m_depth(0),
-              m_tag(t)
+              m_tag(t),
+              m_done(false)
         {}
         virtual ~BASE_PARSER() {}
         virtual int Start(void * data, const char * el, const char ** attr);
         {}
         virtual ~BASE_PARSER() {}
         virtual int Start(void * data, const char * el, const char ** attr);
@@ -49,6 +50,8 @@ class BASE_PARSER
         std::string GetOpenTag() const { return "<" + m_tag + ">"; }
         std::string GetCloseTag() const { return "</" + m_tag + ">"; }
 
         std::string GetOpenTag() const { return "<" + m_tag + ">"; }
         std::string GetCloseTag() const { return "</" + m_tag + ">"; }
 
+        bool IsDone() const { return m_done; }
+
     protected:
         BASE_PARSER(const BASE_PARSER & rvalue);
         BASE_PARSER & operator=(const BASE_PARSER & rvalue);
     protected:
         BASE_PARSER(const BASE_PARSER & rvalue);
         BASE_PARSER & operator=(const BASE_PARSER & rvalue);
@@ -57,6 +60,7 @@ class BASE_PARSER
         size_t        m_depth;
         std::string   m_answer;
         std::string   m_tag;
         size_t        m_depth;
         std::string   m_answer;
         std::string   m_tag;
+        bool          m_done;
 
     private:
         virtual void CreateAnswer() = 0;
 
     private:
         virtual void CreateAnswer() = 0;