41 lines
643 B
C++
41 lines
643 B
C++
#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<Module> mlist;
|
|
};
|
|
|
|
#endif // _MODULELIST_H_
|