]> git.stg.codes - stg.git/blobdiff - stglibs/srvconf.lib/include/stg/parser_chg_user.h
[NY Flight] Improvements in parser dispatching.
[stg.git] / stglibs / srvconf.lib / include / stg / parser_chg_user.h
index 3191f37083b18628ab40c420c16cce050b9629e2..cc6e9f18bd466445d3b87abbbd947a1fd21b5d64 100644 (file)
 
 #include "parser.h"
 
+#include <string>
+
 class PARSER_CHG_USER: public PARSER
 {
 public:
+    typedef void (* CALLBACK)(bool result, const std::string& reason, void * data);
+
     PARSER_CHG_USER();
-    int  ParseStart(const char *el, const char **attr);
-    void ParseEnd(const char *el);
-    void ParseAnswer(const char *el, const char **attr);
-    void SetChgUserRecvCb(RecvChgUserCb_t, void * data);
+    int  ParseStart(const char * el, const char ** attr);
+    void ParseEnd(const char * el);
+    void SetCallback(CALLBACK f, void * data);
 private:
-    RecvChgUserCb_t RecvChgUserCb;
-    void * chgUserCbData;
+    CALLBACK callback;
+    void * data;
     int depth;
-    bool error;
+
+    void ParseAnswer(const char * el, const char ** attr);
 };
 
 #endif