<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"> <title>Crystal Space 1.2.1: iEngineSequenceParameters Struct Reference (Crystal Space 1.2.1 Public API Reference)</title> <link href="tabs.css" rel="stylesheet" type="text/css"> <link href="doxygen.css" rel="stylesheet" type="text/css"> </head><body> <table border="0" cellpadding="0" cellspacing="0" width="100%" class="head"> <tr height="59"> <td class="head" width="202" valign="bottom" style="padding-left:0;"><a href="http://www.crystalspace3d.org/"><img src="csblur.png" width="236" height="59" alt="CrystalSpace" border="0"></a></td> <td class="head"><h2>Public API Reference</h2></td> </tr> <tr height="11"> <td colspan="2" class="headshadow" valign="top" style="padding-left:0;"><img src="csblurb.png" width="236" height="11" alt="" border="0"></td> </tr> </table> <div class="content"> <!-- Generated by Doxygen 1.5.3 --> <div class="tabs"> <ul> <li><a href="index.html"><span>Main Page</span></a></li> <li><a href="modules.html"><span>Modules</span></a></li> <li><a href="namespaces.html"><span>Namespaces</span></a></li> <li class="current"><a href="classes.html"><span>Classes</span></a></li> <li><a href="files.html"><span>Files</span></a></li> <li><a href="pages.html"><span>Related Pages</span></a></li> </ul> </div> <div class="tabs"> <ul> <li><a href="classes.html"><span>Alphabetical List</span></a></li> <li><a href="annotated.html"><span>Class List</span></a></li> <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> <li><a href="functions.html"><span>Class Members</span></a></li> </ul> </div> <h1>iEngineSequenceParameters Struct Reference</h1><!-- doxytag: class="iEngineSequenceParameters" --><!-- doxytag: inherits="iBase" -->An interface for passing on parameters to the engine sequence manager. <a href="#_details">More...</a> <p> <code>#include <<a class="el" href="engseq_8h-source.html">ivaria/engseq.h</a>></code> <p> <div class="dynheader"> Inheritance diagram for iEngineSequenceParameters:</div> <div class="dynsection"> <p><center><img src="structiEngineSequenceParameters__inherit__graph.png" border="0" usemap="#iEngineSequenceParameters__inherit__map" alt="Inheritance graph"></center> <map name="iEngineSequenceParameters__inherit__map"> <area shape="rect" href="structiBase.html" title="This is the basic interface: all other interfaces should be derived from this one..." alt="" coords="81,7,137,33"></map> <center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div> <p> <a href="structiEngineSequenceParameters-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0"> <tr><td></td></tr> <tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="structiEngineSequenceParameters.html#e26f1aa45f927f8492f6b7a321b9b55c">AddParameter</a> (const char *name, <a class="el" href="structiBase.html">iBase</a> *def_value=0)=0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Add a parameter. <a href="#e26f1aa45f927f8492f6b7a321b9b55c"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classcsPtr.html">csPtr</a><br> < <a class="el" href="structiParameterESM.html">iParameterESM</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="structiEngineSequenceParameters.html#246c21f31ea74e258f12f2abd03944cb">CreateParameterESM</a> (const char *name)=0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Create a parameter ESM which keeps a reference to this parameter block and knows how to resolve the specified parameter. <a href="#246c21f31ea74e258f12f2abd03944cb"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="structiBase.html">iBase</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structiEngineSequenceParameters.html#5fab7af1efd295a55e28f86bc03b75a5">GetParameter</a> (const char *name) const =0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get a parameter by name. <a href="#5fab7af1efd295a55e28f86bc03b75a5"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="structiBase.html">iBase</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structiEngineSequenceParameters.html#34a84fb3165add72d72ccc3c0c001e30">GetParameter</a> (size_t idx) const =0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get a parameter. <a href="#34a84fb3165add72d72ccc3c0c001e30"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="structiEngineSequenceParameters.html#932487979280754db0ced4c907ad0494">GetParameterCount</a> () const =0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get the number of parameters supported. <a href="#932487979280754db0ced4c907ad0494"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="structiEngineSequenceParameters.html#2eabd7310d7f43cb01c6fa7032afab78">GetParameterIdx</a> (const char *name) const =0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get a parameter index by name. <a href="#2eabd7310d7f43cb01c6fa7032afab78"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="structiEngineSequenceParameters.html#0e4d6b37594d4aece745698c7eaa3457">GetParameterName</a> (size_t idx) const =0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get parameter name. <a href="#0e4d6b37594d4aece745698c7eaa3457"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="structiEngineSequenceParameters.html#5fe3620ccda7f12a5854a02583d437d6">SetParameter</a> (const char *name, <a class="el" href="structiBase.html">iBase</a> *value)=0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Set a parameter by name. <a href="#5fe3620ccda7f12a5854a02583d437d6"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="structiEngineSequenceParameters.html#91b3f964f84fc82eed3e5cbf9343b90b">SetParameter</a> (size_t idx, <a class="el" href="structiBase.html">iBase</a> *value)=0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Set a parameter by index. <a href="#91b3f964f84fc82eed3e5cbf9343b90b"></a><br></td></tr> </table> <hr><a name="_details"></a><h2>Detailed Description</h2> An interface for passing on parameters to the engine sequence manager. <p> 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.<br> To use a value from this parameter block you can call <a class="el" href="structiEngineSequenceParameters.html#246c21f31ea74e258f12f2abd03944cb" title="Create a parameter ESM which keeps a reference to this parameter block and knows...">CreateParameterESM()</a> which will return a parameter that you can give to an operation.<p> Main creators of instances implementing this interface:<ul> <li><a class="el" href="structiSequenceWrapper.html#f6410fadbdf2900ecc4e0c6249331491" title="Create a parameter block for this sequence wrapper.">iSequenceWrapper::CreateBaseParameterBlock()</a></li><li><a class="el" href="structiSequenceWrapper.html#50a43927255cefabd26ff364c497f695" title="Create a parameter block which you can then fill in and then give as a parameter...">iSequenceWrapper::CreateParameterBlock</a> ()</li></ul> <p> Main ways to get pointers to this interface:<ul> <li><a class="el" href="structiSequenceWrapper.html#c3fb4b1040bbe847ce358841b36f5d67" title="Get the pointer to the base parameter block (or 0 if there is no such block).">iSequenceWrapper::GetBaseParameterBlock</a> ()</li><li><a class="el" href="structiSequenceTrigger.html#7851ef026e16462e670586b494ee49d2" title="Get the parameter block.">iSequenceTrigger::GetParameters</a> ()</li></ul> <p> Main users of this interface:<ul> <li><a class="el" href="structiSequenceWrapper.html" title="A sequence wrapper.">iSequenceWrapper</a> </li></ul> <p>Definition at line <a class="el" href="engseq_8h-source.html#l00129">129</a> of file <a class="el" href="engseq_8h-source.html">engseq.h</a>.</p> <hr><h2>Member Function Documentation</h2> <a class="anchor" name="e26f1aa45f927f8492f6b7a321b9b55c"></a><!-- doxytag: member="iEngineSequenceParameters::AddParameter" ref="e26f1aa45f927f8492f6b7a321b9b55c" args="(const char *name, iBase *def_value=0)=0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual void iEngineSequenceParameters::AddParameter </td> <td>(</td> <td class="paramtype">const char * </td> <td class="paramname"> <em>name</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="structiBase.html">iBase</a> * </td> <td class="paramname"> <em>def_value</em> = <code>0</code></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"><code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Add a parameter. <p> 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()! </div> </div><p> <a class="anchor" name="246c21f31ea74e258f12f2abd03944cb"></a><!-- doxytag: member="iEngineSequenceParameters::CreateParameterESM" ref="246c21f31ea74e258f12f2abd03944cb" args="(const char *name)=0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual <a class="el" href="classcsPtr.html">csPtr</a><<a class="el" href="structiParameterESM.html">iParameterESM</a>> iEngineSequenceParameters::CreateParameterESM </td> <td>(</td> <td class="paramtype">const char * </td> <td class="paramname"> <em>name</em> </td> <td> ) </td> <td width="100%"><code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Create a parameter ESM which keeps a reference to this parameter block and knows how to resolve the specified parameter. <p> 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. </div> </div><p> <a class="anchor" name="5fab7af1efd295a55e28f86bc03b75a5"></a><!-- doxytag: member="iEngineSequenceParameters::GetParameter" ref="5fab7af1efd295a55e28f86bc03b75a5" args="(const char *name) const =0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual <a class="el" href="structiBase.html">iBase</a>* iEngineSequenceParameters::GetParameter </td> <td>(</td> <td class="paramtype">const char * </td> <td class="paramname"> <em>name</em> </td> <td> ) </td> <td width="100%"> const<code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Get a parameter by name. <p> </div> </div><p> <a class="anchor" name="34a84fb3165add72d72ccc3c0c001e30"></a><!-- doxytag: member="iEngineSequenceParameters::GetParameter" ref="34a84fb3165add72d72ccc3c0c001e30" args="(size_t idx) const =0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual <a class="el" href="structiBase.html">iBase</a>* iEngineSequenceParameters::GetParameter </td> <td>(</td> <td class="paramtype">size_t </td> <td class="paramname"> <em>idx</em> </td> <td> ) </td> <td width="100%"> const<code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Get a parameter. <p> </div> </div><p> <a class="anchor" name="932487979280754db0ced4c907ad0494"></a><!-- doxytag: member="iEngineSequenceParameters::GetParameterCount" ref="932487979280754db0ced4c907ad0494" args="() const =0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual size_t iEngineSequenceParameters::GetParameterCount </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"> const<code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Get the number of parameters supported. <p> </div> </div><p> <a class="anchor" name="2eabd7310d7f43cb01c6fa7032afab78"></a><!-- doxytag: member="iEngineSequenceParameters::GetParameterIdx" ref="2eabd7310d7f43cb01c6fa7032afab78" args="(const char *name) const =0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual size_t iEngineSequenceParameters::GetParameterIdx </td> <td>(</td> <td class="paramtype">const char * </td> <td class="paramname"> <em>name</em> </td> <td> ) </td> <td width="100%"> const<code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Get a parameter index by name. <p> </div> </div><p> <a class="anchor" name="0e4d6b37594d4aece745698c7eaa3457"></a><!-- doxytag: member="iEngineSequenceParameters::GetParameterName" ref="0e4d6b37594d4aece745698c7eaa3457" args="(size_t idx) const =0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual const char* iEngineSequenceParameters::GetParameterName </td> <td>(</td> <td class="paramtype">size_t </td> <td class="paramname"> <em>idx</em> </td> <td> ) </td> <td width="100%"> const<code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Get parameter name. <p> </div> </div><p> <a class="anchor" name="5fe3620ccda7f12a5854a02583d437d6"></a><!-- doxytag: member="iEngineSequenceParameters::SetParameter" ref="5fe3620ccda7f12a5854a02583d437d6" args="(const char *name, iBase *value)=0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual void iEngineSequenceParameters::SetParameter </td> <td>(</td> <td class="paramtype">const char * </td> <td class="paramname"> <em>name</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="structiBase.html">iBase</a> * </td> <td class="paramname"> <em>value</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"><code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Set a parameter by name. <p> </div> </div><p> <a class="anchor" name="91b3f964f84fc82eed3e5cbf9343b90b"></a><!-- doxytag: member="iEngineSequenceParameters::SetParameter" ref="91b3f964f84fc82eed3e5cbf9343b90b" args="(size_t idx, iBase *value)=0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual void iEngineSequenceParameters::SetParameter </td> <td>(</td> <td class="paramtype">size_t </td> <td class="paramname"> <em>idx</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="structiBase.html">iBase</a> * </td> <td class="paramname"> <em>value</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"><code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Set a parameter by index. <p> </div> </div><p> <hr>The documentation for this struct was generated from the following file:<ul> <li>ivaria/<a class="el" href="engseq_8h-source.html">engseq.h</a></ul> <hr size="1"><address><small>Generated for Crystal Space 1.2.1 by <a href="http://www.doxygen.org/index.html">doxygen</a> 1.5.3 </small></address> </div></body> </html>