]> git.stg.codes - stg.git/blobdiff - projects/sgconf/action.h
Finished new implementation of sgconfig plugin.
[stg.git] / projects / sgconf / action.h
index 0c1b4f92a57aed3e70ad0acf663c22463a25c281..940ea7f6272673bad87ab08aa12819e8e86a602f 100644 (file)
@@ -22,6 +22,7 @@
 #define __STG_SGCONF_ACTION_H__
 
 #include <string>
 #define __STG_SGCONF_ACTION_H__
 
 #include <string>
+#include <map>
 #include <stdexcept>
 
 namespace SGCONF
 #include <stdexcept>
 
 namespace SGCONF
@@ -29,6 +30,7 @@ namespace SGCONF
 
 class OPTION_BLOCK;
 struct PARSER_STATE;
 
 class OPTION_BLOCK;
 struct PARSER_STATE;
+struct CONFIG;
 
 class ACTION
 {
 
 class ACTION
 {
@@ -39,7 +41,7 @@ class ACTION
         virtual std::string ParamDescription() const = 0;
         virtual std::string DefaultDescription() const = 0;
         virtual OPTION_BLOCK & Suboptions() = 0;
         virtual std::string ParamDescription() const = 0;
         virtual std::string DefaultDescription() const = 0;
         virtual OPTION_BLOCK & Suboptions() = 0;
-        virtual PARSER_STATE Parse(int argc, char ** argv) = 0;
+        virtual PARSER_STATE Parse(int argc, char ** argv, void * data = NULL) = 0;
         virtual void ParseValue(const std::string &) {}
 
         class ERROR : public std::runtime_error
         virtual void ParseValue(const std::string &) {}
 
         class ERROR : public std::runtime_error