CrystalSpace

Public API Reference

iEngineSequenceParameters Struct Reference

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

#include <ivaria/engseq.h>

Inheritance diagram for iEngineSequenceParameters:

Inheritance graph
[legend]
List of all members.

Public Member Functions

virtual void AddParameter (const char *name, iBase *def_value=0)=0
 Add a parameter.
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.
virtual iBaseGetParameter (const char *name) const =0
 Get a parameter by name.
virtual iBaseGetParameter (size_t idx) const =0
 Get a parameter.
virtual size_t GetParameterCount () const =0
 Get the number of parameters supported.
virtual size_t GetParameterIdx (const char *name) const =0
 Get a parameter index by name.
virtual const char * GetParameterName (size_t idx) const =0
 Get parameter name.
virtual void SetParameter (const char *name, iBase *value)=0
 Set a parameter by name.
virtual void SetParameter (size_t idx, iBase *value)=0
 Set a parameter by index.

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 129 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 ( size_t  idx  )  const [pure virtual]

Get a parameter.

virtual size_t iEngineSequenceParameters::GetParameterCount (  )  const [pure virtual]

Get the number of parameters supported.

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

Get a parameter index by name.

virtual const char* iEngineSequenceParameters::GetParameterName ( size_t  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 ( size_t  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.4.7