00001 #ifndef UTIL_COMMANDS_H
00002 #define UTIL_COMMANDS_H
00003 #include <string>
00004 #include <vector>
00005 #include "boost/regex.hpp"
00006
00007 class Commands
00008 {
00009 public:
00010 Commands() {};
00011 virtual ~Commands() {};
00012 virtual void add(const std::string &str);
00013 virtual unsigned nCmd() const { return m_commandList.size(); }
00014 virtual const std::vector<std::string> & getList() const { return m_commandList; }
00015 virtual std::vector<std::string> getCmdInfo(const std::string &str);
00016
00017 protected:
00018 virtual std::vector<std::string> cmd_store(const boost::match_results<const char*> &results);
00019
00020 private:
00021 std::vector<std::string> m_commandList;
00022 std::vector<std::string> m_infoList;
00023 };
00024
00025 #endif // UTIL_COMMANDS_H