#ifndef _MODULELIST_H_ #define _MODULELIST_H_ #include "multisock.h" #include "netpkt.h" #include "gamelist.h" #include "config.h" class Module { public: virtual ~Module() {}; virtual void scan(MultiSock* msock) =0; virtual int parse(NetPkt* pkt, GameList* slist) =0; virtual char* getName() =0; protected: Module() {}; }; class ModuleList { public: ModuleList(); ~ModuleList(); void reg(Module* mod); void scan(MultiSock* msock); int parse(NetPkt* pkt, GameList* slist); protected: ModuleList(const ModuleList& ml); ModuleList& operator=(const ModuleList& ml); private: List mlist; }; #endif // _MODULELIST_H_