public/IForwardSys.h File Reference

Defines the interface for managing collections ("forwards") of plugin calls. More...

#include <IPluginSys.h>
#include <sp_vm_api.h>

Include dependency graph for IForwardSys.h:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  SourceMod

Classes

class  SourceMod::IForward
 Unmanaged Forward, abstracts calling multiple functions as "forwards," or collections of functions. More...
class  SourceMod::IChangeableForward
 Managed Forward, same as IForward, except the collection can be modified. More...
class  SourceMod::IForwardManager
 Provides functions for creating/destroying managed and unmanaged forwards. More...

Defines

#define SMINTERFACE_FORWARDMANAGER_NAME   "IForwardManager"
#define SMINTERFACE_FORWARDMANAGER_VERSION   3
#define SP_PARAMTYPE_ANY   0
#define SP_PARAMFLAG_BYREF   (1<<0)
#define SP_PARAMTYPE_CELL   (1<<1)
#define SP_PARAMTYPE_FLOAT   (2<<1)
#define SP_PARAMTYPE_STRING   (3<<1)|SP_PARAMFLAG_BYREF
#define SP_PARAMTYPE_ARRAY   (4<<1)|SP_PARAMFLAG_BYREF
#define SP_PARAMTYPE_VARARG   (5<<1)

Enumerations

enum  SourceMod::ResultType { SourceMod::Pl_Continue = 0, SourceMod::Pl_Changed = 1, SourceMod::Pl_Handled = 3, SourceMod::Pl_Stop = 4 }
 Defines the event hook result types plugins can return. More...
enum  SourceMod::ExecType {
  SourceMod::ET_Ignore = 0, SourceMod::ET_Single = 1, SourceMod::ET_Event = 2, SourceMod::ET_Hook = 3,
  SourceMod::ET_LowEvent = 4
}
 Defines how a forward iterates through plugin functions. More...
enum  SourceMod::ParamType {
  SourceMod::Param_Any = SP_PARAMTYPE_ANY, SourceMod::Param_Cell = SP_PARAMTYPE_CELL, SourceMod::Param_Float = SP_PARAMTYPE_FLOAT, SourceMod::Param_String = SP_PARAMTYPE_STRING,
  SourceMod::Param_Array = SP_PARAMTYPE_ARRAY, SourceMod::Param_VarArgs = SP_PARAMTYPE_VARARG, SourceMod::Param_CellByRef = SP_PARAMTYPE_CELL|SP_PARAMFLAG_BYREF, SourceMod::Param_FloatByRef = SP_PARAMTYPE_FLOAT|SP_PARAMFLAG_BYREF
}
 Describes the various ways to pass parameters to plugins. More...


Detailed Description

Defines the interface for managing collections ("forwards") of plugin calls.

The Forward System is responsible for managing automated collections of IPluginFunctions. It thus provides wrappers to calling many functions at once. There are two types of such wrappers: Managed and Unmanaged. Confusingly, these terms refer to whether the user manages the forwards, not Core. Managed forwards are completely managed by the user, and are custom editable collections. Unmanaged forwards are the opposite, and will only work on a single global function name in all plugins.

Definition in file IForwardSys.h.


Generated on Sun Dec 28 23:26:26 2008 for SourceMod SDK by  doxygen 1.5.1