]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - include/command_parse.h
Decide that it wasn't quite appropriate :(
[user/henk/code/inspircd.git] / include / command_parse.h
index a31716a3a2b2b1a75278592eae22b8d9cf96ccad..a58dfe5d108a38d2bc1e2b1474ceb13269644f98 100644 (file)
@@ -2,7 +2,7 @@
  *       | Inspire Internet Relay Chat Daemon |
  *       +------------------------------------+
  *
- *  Inspire is copyright (C) 2002-2005 ChatSpike-Dev.
+ *  InspIRCd is copyright (C) 2002-2006 ChatSpike-Dev.
  *                       E-mail:
  *                <brain@chatspike.net>
  *                <Craig@chatspike.net>
 #include <iostream>
 #include <string>
 #include "users.h"
+#include "ctables.h"
+#include "typedefs.h"
  
-void call_handler(std::string &commandname,char **parameters, int pcnt, userrec *user);
-bool is_valid_cmd(std::string &commandname, int pcnt, userrec * user);
-int loop_call(handlerfunc fn, char **parameters, int pcnt, userrec *u, int start, int end, int joins);
-void process_buffer(const char* cmdbuf,userrec *user);
-bool remove_commands(const char* source);
+class CommandParser
+{
+ private:
+       int ProcessParameters(char **command_p,char *parameters);
+       void ProcessCommand(userrec *user, char* cmd);
+       void SetupCommandTable();
+ public:
+       command_table cmdlist;
+
+       CommandParser();
+       void CallHandler(std::string &commandname,char **parameters, int pcnt, userrec *user);
+       bool IsValidCommand(std::string &commandname, int pcnt, userrec * user);
+       int LoopCall(command_t *fn, char **parameters, int pcnt, userrec *u, int start, int end, int joins);
+       void ProcessBuffer(const char* cmdbuf,userrec *user);
+       bool RemoveCommands(const char* source);
+       bool CreateCommand(command_t *f);
+};
 
 #endif