1.1 --- a/core/interfaces/IPluginSys.h Sat Nov 11 05:49:52 2006 +0000
1.2 +++ b/core/interfaces/IPluginSys.h Sat Nov 11 11:10:24 2006 +0000
1.3 @@ -11,6 +11,8 @@
1.4
1.5 namespace SourceMod
1.6 {
1.7 + class IPlugin;
1.8 +
1.9 /**
1.10 * @brief Encapsulates plugin public information.
1.11 */
1.12 @@ -48,39 +50,7 @@
1.13 PluginType_Global, /* Plugin will never be unloaded or updated */
1.14 };
1.15
1.16 -
1.17 - class IPlugin;
1.18 -
1.19 -
1.20 - /**
1.21 - * @brief Encapsulates a basic function call.
1.22 - * NOTE: Function calls must be atomic to one execution context.
1.23 - * NOTE: This object should not be deleted. It lives for the lifetime of the plugin.
1.24 - */
1.25 - class IPluginFunction
1.26 - {
1.27 - public:
1.28 - virtual ~IPluginFunction()
1.29 - {
1.30 - }
1.31 -
1.32 - /**
1.33 - * @brief Executes the function with the given parameter array.
1.34 - * Parameters are read in forward order (i.e. index 0 is parameter #1)
1.35 - *
1.36 - * @param param Array of cell parameters.
1.37 - * @param num_params Number of parameters to push.
1.38 - * @param result Pointer to store result of function on return.
1.39 - * @return SourcePawn error code (if any).
1.40 - */
1.41 - virtual int CallFunction(const cell_t *params, unsigned int num_params, cell_t *result) =0;
1.42 -
1.43 - /**
1.44 - * @brief Returns which plugin this function belongs to.
1.45 - */
1.46 - virtual IPlugin *GetParentPlugin() =0;
1.47 - };
1.48 -
1.49 + class IPluginFunction;
1.50
1.51 /**
1.52 * @brief Encapsulates a run-time plugin as maintained by SourceMod.