2002-08-05 19:13:52 +00:00
|
|
|
#ifndef __X18_PLUGINS_H
|
|
|
|
#define __X18_PLUGINS_H
|
2002-08-05 02:05:00 +00:00
|
|
|
|
2004-01-30 22:04:10 +00:00
|
|
|
#include "Platform.h"
|
2002-08-05 02:05:00 +00:00
|
|
|
#include "strlist.h"
|
|
|
|
|
2003-04-17 15:27:12 +00:00
|
|
|
struct plugin {
|
|
|
|
int name;
|
|
|
|
int path;
|
|
|
|
int dataHandle;
|
|
|
|
int unDataHandle;
|
|
|
|
};
|
|
|
|
|
|
|
|
class PluginsList : public SortedStringListND<struct plugin>
|
2002-08-05 02:05:00 +00:00
|
|
|
{
|
|
|
|
public:
|
2004-10-12 21:27:09 +00:00
|
|
|
int add(const char *name, const char *path);
|
|
|
|
char *get(char **name, int *dataHandle=0, int *uninstDataHandle=0);
|
|
|
|
void setDataHandle(const char *name, int dataHandle, int uninstDataHandle);
|
2003-04-17 15:27:12 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
class Plugins
|
|
|
|
{
|
|
|
|
public:
|
2002-08-05 02:05:00 +00:00
|
|
|
void FindCommands(char*,bool);
|
2002-08-05 19:13:52 +00:00
|
|
|
bool IsPluginCommand(char*);
|
2002-12-21 09:14:28 +00:00
|
|
|
char* GetPluginDll(int, char**, int*);
|
2002-11-22 12:45:38 +00:00
|
|
|
void SetDllDataHandle(int, char*, int);
|
2002-08-05 02:05:00 +00:00
|
|
|
|
|
|
|
protected:
|
2003-04-17 15:27:12 +00:00
|
|
|
PluginsList m_list;
|
2002-08-05 02:05:00 +00:00
|
|
|
|
|
|
|
void GetExports(char*,bool);
|
|
|
|
};
|
|
|
|
|
2004-03-12 20:43:54 +00:00
|
|
|
#endif
|