CrystalSpace

Public API Reference

Main Page | Modules | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members | Related Pages

iEngineSequenceParameters Struct Reference

An interface for passing on parameters to the engine sequence manager. More...

#include <ivaria/engseq.h>

Inheritance diagram for iEngineSequenceParameters:

iBase List of all members.

Public Member Functions

virtual int GetParameterCount () const =0
 Get the number of parameters supported.
virtual iBaseGetParameter (int idx) const =0
 Get a parameter.
virtual iBaseGetParameter (const char *name) const =0
 Get a parameter by name.
virtual int GetParameterIdx (const char *name) const =0
 Get a parameter index by name.
virtual const char * GetParameterName (int idx) const =0
 Get parameter name.
virtual void AddParameter (const char *name, iBase *def_value=0)=0
 Add a parameter.
virtual void SetParameter (int idx, iBase *value)=0
 Set a parameter by index.
virtual void SetParameter (const char *name, iBase *value)=0
 Set a parameter by name.
virtual csPtr< iParameterESMCreateParameterESM (const char *name)=0
 Create a parameter ESM which keeps a reference to this parameter block and knows how to resolve the specified parameter.

Detailed Description

An interface for passing on parameters to the engine sequence manager.

You can create a ready-made instance of this interface by calling iSequenceWrapper->CreateBaseParameterBlock(). This will create an empty parameter block that specifies the supported parameters (and optional default values) that are relevant for that sequence. When running a sequence later you can call iSequenceWrapper->CreateParameterBlock() to make a clone of the base parameter block and then fill in the values.
To use a value from this parameter block you can call CreateParameterESM() which will return a parameter that you can give to an operation.

Main creators of instances implementing this interface:

Main ways to get pointers to this interface: Main users of this interface:

Definition at line 128 of file engseq.h.


Member Function Documentation

virtual void iEngineSequenceParameters::AddParameter const char *  name,
iBase def_value = 0
[pure virtual]
 

Add a parameter.

Warning! ONLY call this for setting up the base parameter block. Don't use this to set the values for parameters later on blocks created with CreateParameterBlock()!

virtual csPtr<iParameterESM> iEngineSequenceParameters::CreateParameterESM const char *  name  )  [pure virtual]
 

Create a parameter ESM which keeps a reference to this parameter block and knows how to resolve the specified parameter.

Returns 0 if the parameter 'name' is not known in this block. You can use the return of this function to give as an argument for operations.

virtual iBase* iEngineSequenceParameters::GetParameter const char *  name  )  const [pure virtual]
 

Get a parameter by name.

virtual iBase* iEngineSequenceParameters::GetParameter int  idx  )  const [pure virtual]
 

Get a parameter.

virtual int iEngineSequenceParameters::GetParameterCount  )  const [pure virtual]
 

Get the number of parameters supported.

virtual int iEngineSequenceParameters::GetParameterIdx const char *  name  )  const [pure virtual]
 

Get a parameter index by name.

virtual const char* iEngineSequenceParameters::GetParameterName int  idx  )  const [pure virtual]
 

Get parameter name.

virtual void iEngineSequenceParameters::SetParameter const char *  name,
iBase value
[pure virtual]
 

Set a parameter by name.

virtual void iEngineSequenceParameters::SetParameter int  idx,
iBase value
[pure virtual]
 

Set a parameter by index.


The documentation for this struct was generated from the following file:
Generated for Crystal Space by doxygen 1.3.9.1