SourceMod::IForward Class Reference

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

#include <public/IForwardSys.h>

Inherits SourcePawn::ICallable.

Inherited by SourceMod::IChangeableForward.

Inheritance diagram for SourceMod::IForward:

[legend]
Collaboration diagram for SourceMod::IForward:
[legend]
List of all members.

Public Member Functions

virtual ~IForward ()
virtual const char * GetForwardName ()=0
 Returns the name of the forward.
virtual unsigned int GetFunctionCount ()=0
 Returns the number of functions in this forward.
virtual ExecType GetExecType ()=0
 Returns the method of multi-calling this forward has.
virtual int Execute (cell_t *result, IForwardFilter *filter=NULL)=0
 Executes the forward.
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.

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.

Definition at line 95 of file IForwardSys.h.


Constructor & Destructor Documentation

virtual SourceMod::IForward::~IForward (  )  [inline, virtual]

Virtual Destructor

Definition at line 99 of file IForwardSys.h.


Member Function Documentation

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 ExecType SourceMod::IForward::GetExecType (  )  [pure virtual]

Returns the method of multi-calling this forward has.

Returns:
ExecType of the forward.

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

Executes the forward.

Parameters:
result Optional pointer to store result in.
filter Do not use.
Returns:
Error code, if any.

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:
inarray Array to copy. Cannot be NULL, unlike ICallable's version.
cells Number of cells to allocate and optionally read from the input array.
flags Whether or not changes should be copied back to the input array.
Returns:
Error code, if any.

Implements SourcePawn::ICallable.


The documentation for this class was generated from the following file:
Generated on Fri Nov 21 05:10:04 2008 for SourceMod SDK by  doxygen 1.5.1