SourceMod SDK  1.7
SourceMod::IForward Class Referenceabstract

Unmanaged Forward, abstracts calling multiple functions as "forwards," or collections of functions. More...

#include <public/IForwardSys.h>

Inheritance diagram for SourceMod::IForward:
SourceMod::IChangeableForward

Public Member Functions

virtual ~IForward ()
 
virtual const char * GetForwardName ()=0
 Returns the name of the forward. More...
 
virtual unsigned int GetFunctionCount ()=0
 Returns the number of functions in this forward. More...
 
virtual ExecType GetExecType ()=0
 Returns the method of multi-calling this forward has. More...
 
virtual int Execute (cell_t *result, IForwardFilter *filter=NULL)=0
 Executes the forward. More...
 
virtual int PushArray (cell_t *inarray, unsigned int cells, int flags=0)=0
 Pushes an array of cells onto the current call. Different rules than ICallable. NOTE: On Execute, the pointer passed will be modified according to the copyback rule. More...
 

Detailed Description

Unmanaged Forward, abstracts calling multiple functions as "forwards," or collections of functions.

Parameters should be pushed in forward order, unlike the virtual machine/IPluginContext order. Some functions are repeated in here because their documentation differs from their IPluginFunction equivalents. Missing are the Push functions, whose only doc change is that they throw SP_ERROR_PARAM on type mismatches.

Constructor & Destructor Documentation

virtual SourceMod::IForward::~IForward ( )
inlinevirtual

Virtual Destructor

Member Function Documentation

virtual int SourceMod::IForward::Execute ( cell_t *  result,
IForwardFilter filter = NULL 
)
pure virtual

Executes the forward.

Parameters
resultOptional pointer to store result in.
filterDo not use.
Returns
Error code, if any.
virtual ExecType SourceMod::IForward::GetExecType ( )
pure virtual

Returns the method of multi-calling this forward has.

Returns
ExecType of the forward.
virtual const char* SourceMod::IForward::GetForwardName ( )
pure virtual

Returns the name of the forward.

Returns
Forward name.
virtual unsigned int SourceMod::IForward::GetFunctionCount ( )
pure virtual

Returns the number of functions in this forward.

Returns
Number of functions in forward.
virtual int SourceMod::IForward::PushArray ( cell_t *  inarray,
unsigned int  cells,
int  flags = 0 
)
pure virtual

Pushes an array of cells onto the current call. Different rules than ICallable. NOTE: On Execute, the pointer passed will be modified according to the copyback rule.

Parameters
inarrayArray to copy. Cannot be NULL, unlike ICallable's version.
cellsNumber of cells to allocate and optionally read from the input array.
flagsWhether or not changes should be copied back to the input array.
Returns
Error code, if any.

The documentation for this class was generated from the following file: