Fleshed out forward system and extensively documented its design considerations

Implemented and did basic tests on new IPluginFunction type
Split function types into a separate file

--HG--
extra : convert_revision : svn%3A39bc706e-5318-0410-9160-8a85361fbb7c/trunk%40182
This commit is contained in:
David Anderson
2006-11-11 11:10:24 +00:00
parent c25cc64024
commit adc1475b76
9 changed files with 686 additions and 170 deletions
+1 -16
View File
@@ -5,6 +5,7 @@
#include <sh_list.h>
#include <sh_stack.h>
#include "sm_globals.h"
#include "CFunction.h"
using namespace SourceHook;
@@ -19,22 +20,6 @@ struct ContextPair
sp_context_t *ctx;
};
class CPlugin;
class CFunction : public IPluginFunction
{
public:
CFunction(funcid_t funcid, CPlugin *plugin);
public:
virtual int CallFunction(const cell_t *params, unsigned int num_params, cell_t *result);
virtual IPlugin *GetParentPlugin();
public:
void Set(funcid_t funcid, CPlugin *plugin);
private:
funcid_t m_funcid;
CPlugin *m_pPlugin;
};
class CPlugin : public IPlugin
{
friend class CPluginManager;