source: OGRE/trunk/ogrenew/Docs/api/html/classOgre_1_1ParticleAffectorFactory.html @ 657

Revision 657, 16.1 KB checked in by mattausch, 18 years ago (diff)

added ogre dependencies and patched ogre sources

Line 
1<html>
2<head>
3<title>Ogre::ParticleAffectorFactory class Reference - OGRE Documentation</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
4<link type="text/css" rel="stylesheet" href="style.css">
5</head>
6
7<body>
8<!-- Generated by Doxygen 1.3.6 -->
9<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a> | <a class="qindex" href="pages.html">Related&nbsp;Pages</a></div>
10<h1>Ogre::ParticleAffectorFactory Class Reference</h1>Abstract class defining the interface to be implemented by creators of <a class="el" href="classOgre_1_1ParticleAffector.html">ParticleAffector</a> subclasses. 
11<a href="#_details">More...</a>
12<p>
13<code>#include &lt;<a class="el" href="OgreParticleAffectorFactory_8h-source.html">OgreParticleAffectorFactory.h</a>&gt;</code>
14<p>
15<p>Inheritance diagram for Ogre::ParticleAffectorFactory:
16<p><center><img src="classOgre_1_1ParticleAffectorFactory.png" usemap="#Ogre::ParticleAffectorFactory_map" border="0" alt=""></center>
17<map name="Ogre::ParticleAffectorFactory_map">
18<area href="classOgre_1_1ColourFaderAffectorFactory.html" alt="Ogre::ColourFaderAffectorFactory" shape="rect" coords="0,56,239,80">
19<area href="classOgre_1_1ColourFaderAffectorFactory2.html" alt="Ogre::ColourFaderAffectorFactory2" shape="rect" coords="249,56,488,80">
20<area href="classOgre_1_1ColourImageAffectorFactory.html" alt="Ogre::ColourImageAffectorFactory" shape="rect" coords="498,56,737,80">
21<area href="classOgre_1_1ColourInterpolatorAffectorFactory.html" alt="Ogre::ColourInterpolatorAffectorFactory" shape="rect" coords="747,56,986,80">
22<area href="classOgre_1_1LinearForceAffectorFactory.html" alt="Ogre::LinearForceAffectorFactory" shape="rect" coords="996,56,1235,80">
23<area href="classOgre_1_1RotationAffectorFactory.html" alt="Ogre::RotationAffectorFactory" shape="rect" coords="1245,56,1484,80">
24<area href="classOgre_1_1ScaleAffectorFactory.html" alt="Ogre::ScaleAffectorFactory" shape="rect" coords="1494,56,1733,80">
25</map>
26<a href="classOgre_1_1ParticleAffectorFactory-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
27<tr><td></td></tr>
28<tr><td colspan=2><br><h2>Public Member Functions</h2></td></tr>
29<tr><td class="memItemLeft" nowrap align=right valign=top>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ParticleAffectorFactory.html#Ogre_1_1ParticleAffectorFactorya0">ParticleAffectorFactory</a> ()</td></tr>
30
31<tr><td class="memItemLeft" nowrap align=right valign=top>virtual&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ParticleAffectorFactory.html#Ogre_1_1ParticleAffectorFactorya1">~ParticleAffectorFactory</a> ()</td></tr>
32
33<tr><td class="memItemLeft" nowrap align=right valign=top>virtual <a class="el" href="namespaceOgre.html#a426">String</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ParticleAffectorFactory.html#Ogre_1_1ParticleAffectorFactorya2">getName</a> () const=0</td></tr>
34
35<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the name of the factory, the name which identifies the particle affector type this factory creates.  <a href="#Ogre_1_1ParticleAffectorFactorya2"></a><br><br></td></tr>
36<tr><td class="memItemLeft" nowrap align=right valign=top>virtual <a class="el" href="classOgre_1_1ParticleAffector.html">ParticleAffector</a> *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ParticleAffectorFactory.html#Ogre_1_1ParticleAffectorFactorya3">createAffector</a> (<a class="el" href="classOgre_1_1ParticleSystem.html">ParticleSystem</a> *psys)=0</td></tr>
37
38<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Creates a new affector instance.  <a href="#Ogre_1_1ParticleAffectorFactorya3"></a><br><br></td></tr>
39<tr><td class="memItemLeft" nowrap align=right valign=top>virtual void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ParticleAffectorFactory.html#Ogre_1_1ScaleAffectorFactorya0">destroyAffector</a> (<a class="el" href="classOgre_1_1ParticleAffector.html">ParticleAffector</a> *e)</td></tr>
40
41<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Destroys the affector pointed to by the parameter (for early clean up if reauired).  <a href="#Ogre_1_1ScaleAffectorFactorya0"></a><br><br></td></tr>
42<tr><td colspan=2><br><h2>Protected Attributes</h2></td></tr>
43<tr><td class="memItemLeft" nowrap align=right valign=top>std::vector&lt; <a class="el" href="classOgre_1_1ParticleAffector.html">ParticleAffector</a> * &gt;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1ParticleAffectorFactory.html#Ogre_1_1ScaleAffectorFactoryp0">mAffectors</a></td></tr>
44
45</table>
46<hr><a name="_details"></a><h2>Detailed Description</h2>
47Abstract class defining the interface to be implemented by creators of <a class="el" href="classOgre_1_1ParticleAffector.html">ParticleAffector</a> subclasses.
48<p>
49<dl compact><dt><b>Remarks:</b></dt><dd>Plugins or 3rd party applications can add new types of particle affectors to <a class="el" href="namespaceOgre.html">Ogre</a> by creating subclasses of the <a class="el" href="classOgre_1_1ParticleAffector.html">ParticleAffector</a> class. Because multiple instances of these affectors may be required, a factory class to manage the instances is also required. </dd></dl>
50<dl compact><dt><b></b></dt><dd><a class="el" href="classOgre_1_1ParticleAffectorFactory.html">ParticleAffectorFactory</a> subclasses must allow the creation and destruction of <a class="el" href="classOgre_1_1ParticleAffector.html">ParticleAffector</a> subclasses. They must also be registered with the <a class="el" href="classOgre_1_1ParticleSystemManager.html">ParticleSystemManager</a>. All factories have a name which identifies them, examples might be 'force_vector', 'attractor', or 'fader', and these can be also be used from particle system scripts. </dd></dl>
51
52<p>
53
54<p>
55Definition at line <a class="el" href="OgreParticleAffectorFactory_8h-source.html#l00045">45</a> of file <a class="el" href="OgreParticleAffectorFactory_8h-source.html">OgreParticleAffectorFactory.h</a>.<hr><h2>Constructor &amp; Destructor Documentation</h2>
56<a class="anchor" name="Ogre_1_1ParticleAffectorFactorya0" doxytag="Ogre::ParticleAffectorFactory::ParticleAffectorFactory" ></a><p>
57<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
58  <tr>
59    <td class="mdRow">
60      <table cellpadding="0" cellspacing="0" border="0">
61        <tr>
62          <td class="md" nowrap valign="top"> Ogre::ParticleAffectorFactory::ParticleAffectorFactory </td>
63          <td class="md" valign="top">(&nbsp;</td>
64          <td class="mdname1" valign="top" nowrap>          </td>
65          <td class="md" valign="top">&nbsp;)&nbsp;</td>
66          <td class="md" nowrap></td>
67        </tr>
68
69      </table>
70    </td>
71  </tr>
72</table>
73<table cellspacing=5 cellpadding=0 border=0>
74  <tr>
75    <td>
76      &nbsp;
77    </td>
78    <td>
79
80<p>
81
82<p>
83Definition at line <a class="el" href="OgreParticleAffectorFactory_8h-source.html#l00050">50</a> of file <a class="el" href="OgreParticleAffectorFactory_8h-source.html">OgreParticleAffectorFactory.h</a>.    </td>
84  </tr>
85</table>
86<a class="anchor" name="Ogre_1_1ParticleAffectorFactorya1" doxytag="Ogre::ParticleAffectorFactory::~ParticleAffectorFactory" ></a><p>
87<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
88  <tr>
89    <td class="mdRow">
90      <table cellpadding="0" cellspacing="0" border="0">
91        <tr>
92          <td class="md" nowrap valign="top"> virtual Ogre::ParticleAffectorFactory::~<a class="el" href="classOgre_1_1ParticleAffectorFactory.html">ParticleAffectorFactory</a> </td>
93          <td class="md" valign="top">(&nbsp;</td>
94          <td class="mdname1" valign="top" nowrap>          </td>
95          <td class="md" valign="top">&nbsp;)&nbsp;</td>
96          <td class="md" nowrap><code> [virtual]</code></td>
97        </tr>
98
99      </table>
100    </td>
101  </tr>
102</table>
103<table cellspacing=5 cellpadding=0 border=0>
104  <tr>
105    <td>
106      &nbsp;
107    </td>
108    <td>
109
110<p>
111    </td>
112  </tr>
113</table>
114<hr><h2>Member Function Documentation</h2>
115<a class="anchor" name="Ogre_1_1ParticleAffectorFactorya3" doxytag="Ogre::ParticleAffectorFactory::createAffector" ></a><p>
116<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
117  <tr>
118    <td class="mdRow">
119      <table cellpadding="0" cellspacing="0" border="0">
120        <tr>
121          <td class="md" nowrap valign="top"> virtual <a class="el" href="classOgre_1_1ParticleAffector.html">ParticleAffector</a>* Ogre::ParticleAffectorFactory::createAffector </td>
122          <td class="md" valign="top">(&nbsp;</td>
123          <td class="md" nowrap valign="top"><a class="el" href="classOgre_1_1ParticleSystem.html">ParticleSystem</a> *&nbsp;</td>
124          <td class="mdname1" valign="top" nowrap> <em>psys</em>          </td>
125          <td class="md" valign="top">&nbsp;)&nbsp;</td>
126          <td class="md" nowrap><code> [pure virtual]</code></td>
127        </tr>
128
129      </table>
130    </td>
131  </tr>
132</table>
133<table cellspacing=5 cellpadding=0 border=0>
134  <tr>
135    <td>
136      &nbsp;
137    </td>
138    <td>
139
140<p>
141Creates a new affector instance.
142<p>
143<dl compact><dt><b>Remarks:</b></dt><dd>The subclass MUST add a pointer to the created instance to mAffectors. </dd></dl>
144
145<p>
146Implemented in <a class="el" href="classOgre_1_1ColourFaderAffectorFactory.html#Ogre_1_1ColourFaderAffectorFactoryd1">Ogre::ColourFaderAffectorFactory</a>, <a class="el" href="classOgre_1_1ColourFaderAffectorFactory2.html#Ogre_1_1ColourFaderAffectorFactory2d1">Ogre::ColourFaderAffectorFactory2</a>, <a class="el" href="classOgre_1_1ColourImageAffectorFactory.html#Ogre_1_1ColourImageAffectorFactoryd1">Ogre::ColourImageAffectorFactory</a>, <a class="el" href="classOgre_1_1ColourInterpolatorAffectorFactory.html#Ogre_1_1ColourInterpolatorAffectorFactoryd1">Ogre::ColourInterpolatorAffectorFactory</a>, <a class="el" href="classOgre_1_1LinearForceAffectorFactory.html#Ogre_1_1LinearForceAffectorFactoryd1">Ogre::LinearForceAffectorFactory</a>, <a class="el" href="classOgre_1_1RotationAffectorFactory.html#Ogre_1_1RotationAffectorFactoryd1">Ogre::RotationAffectorFactory</a>, and <a class="el" href="classOgre_1_1ScaleAffectorFactory.html#Ogre_1_1ScaleAffectorFactoryd1">Ogre::ScaleAffectorFactory</a>.    </td>
147  </tr>
148</table>
149<a class="anchor" name="Ogre_1_1ScaleAffectorFactorya0" doxytag="Ogre::ParticleAffectorFactory::destroyAffector" ></a><p>
150<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
151  <tr>
152    <td class="mdRow">
153      <table cellpadding="0" cellspacing="0" border="0">
154        <tr>
155          <td class="md" nowrap valign="top"> virtual void Ogre::ParticleAffectorFactory::destroyAffector </td>
156          <td class="md" valign="top">(&nbsp;</td>
157          <td class="md" nowrap valign="top"><a class="el" href="classOgre_1_1ParticleAffector.html">ParticleAffector</a> *&nbsp;</td>
158          <td class="mdname1" valign="top" nowrap> <em>e</em>          </td>
159          <td class="md" valign="top">&nbsp;)&nbsp;</td>
160          <td class="md" nowrap><code> [virtual]</code></td>
161        </tr>
162
163      </table>
164    </td>
165  </tr>
166</table>
167<table cellspacing=5 cellpadding=0 border=0>
168  <tr>
169    <td>
170      &nbsp;
171    </td>
172    <td>
173
174<p>
175Destroys the affector pointed to by the parameter (for early clean up if reauired).
176<p>
177    </td>
178  </tr>
179</table>
180<a class="anchor" name="Ogre_1_1ParticleAffectorFactorya2" doxytag="Ogre::ParticleAffectorFactory::getName" ></a><p>
181<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
182  <tr>
183    <td class="mdRow">
184      <table cellpadding="0" cellspacing="0" border="0">
185        <tr>
186          <td class="md" nowrap valign="top"> virtual <a class="el" href="namespaceOgre.html#a426">String</a> Ogre::ParticleAffectorFactory::getName </td>
187          <td class="md" valign="top">(&nbsp;</td>
188          <td class="mdname1" valign="top" nowrap>          </td>
189          <td class="md" valign="top">&nbsp;)&nbsp;</td>
190          <td class="md" nowrap> const<code> [pure virtual]</code></td>
191        </tr>
192
193      </table>
194    </td>
195  </tr>
196</table>
197<table cellspacing=5 cellpadding=0 border=0>
198  <tr>
199    <td>
200      &nbsp;
201    </td>
202    <td>
203
204<p>
205Returns the name of the factory, the name which identifies the particle affector type this factory creates.
206<p>
207
208<p>
209Implemented in <a class="el" href="classOgre_1_1ColourFaderAffectorFactory.html#Ogre_1_1ColourFaderAffectorFactoryd0">Ogre::ColourFaderAffectorFactory</a>, <a class="el" href="classOgre_1_1ColourFaderAffectorFactory2.html#Ogre_1_1ColourFaderAffectorFactory2d0">Ogre::ColourFaderAffectorFactory2</a>, <a class="el" href="classOgre_1_1ColourImageAffectorFactory.html#Ogre_1_1ColourImageAffectorFactoryd0">Ogre::ColourImageAffectorFactory</a>, <a class="el" href="classOgre_1_1ColourInterpolatorAffectorFactory.html#Ogre_1_1ColourInterpolatorAffectorFactoryd0">Ogre::ColourInterpolatorAffectorFactory</a>, <a class="el" href="classOgre_1_1LinearForceAffectorFactory.html#Ogre_1_1LinearForceAffectorFactoryd0">Ogre::LinearForceAffectorFactory</a>, <a class="el" href="classOgre_1_1RotationAffectorFactory.html#Ogre_1_1RotationAffectorFactoryd0">Ogre::RotationAffectorFactory</a>, and <a class="el" href="classOgre_1_1ScaleAffectorFactory.html#Ogre_1_1ScaleAffectorFactoryd0">Ogre::ScaleAffectorFactory</a>.    </td>
210  </tr>
211</table>
212<hr><h2>Member Data Documentation</h2>
213<a class="anchor" name="Ogre_1_1ScaleAffectorFactoryp0" doxytag="Ogre::ParticleAffectorFactory::mAffectors" ></a><p>
214<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
215  <tr>
216    <td class="mdRow">
217      <table cellpadding="0" cellspacing="0" border="0">
218        <tr>
219          <td class="md" nowrap valign="top"> std::vector&lt;<a class="el" href="classOgre_1_1ParticleAffector.html">ParticleAffector</a>*&gt; <a class="el" href="classOgre_1_1ParticleAffectorFactory.html#Ogre_1_1ScaleAffectorFactoryp0">Ogre::ParticleAffectorFactory::mAffectors</a><code> [protected]</code>
220      </table>
221    </td>
222  </tr>
223</table>
224<table cellspacing=5 cellpadding=0 border=0>
225  <tr>
226    <td>
227      &nbsp;
228    </td>
229    <td>
230
231<p>
232
233<p>
234Definition at line <a class="el" href="OgreParticleAffectorFactory_8h-source.html#l00048">48</a> of file <a class="el" href="OgreParticleAffectorFactory_8h-source.html">OgreParticleAffectorFactory.h</a>.    </td>
235  </tr>
236</table>
237<hr>The documentation for this class was generated from the following file:<ul>
238<li><a class="el" href="OgreParticleAffectorFactory_8h-source.html">OgreParticleAffectorFactory.h</a></ul>
239<hr>
240<p>
241Copyright &copy; 2000-2005 by The OGRE Team<br />
242<!--Creative Commons License--><a rel="license" href="http://creativecommons.org/licenses/by-sa/2.5/"><img alt="Creative Commons License" border="0" src="http://creativecommons.org/images/public/somerights20.png"/></a><br/>
243This work is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by-sa/2.5/">Creative Commons Attribution-ShareAlike 2.5 License</a>.<br/>
244                <!--/Creative Commons License--><!-- <rdf:RDF xmlns="http://web.resource.org/cc/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
245                <Work rdf:about="">
246                        <license rdf:resource="http://creativecommons.org/licenses/by-sa/2.5/" />
247        <dc:type rdf:resource="http://purl.org/dc/dcmitype/Text" />
248                </Work>
249                <License rdf:about="http://creativecommons.org/licenses/by-sa/2.5/"><permits rdf:resource="http://web.resource.org/cc/Reproduction"/><permits rdf:resource="http://web.resource.org/cc/Distribution"/><requires rdf:resource="http://web.resource.org/cc/Notice"/><requires rdf:resource="http://web.resource.org/cc/Attribution"/><permits rdf:resource="http://web.resource.org/cc/DerivativeWorks"/><requires rdf:resource="http://web.resource.org/cc/ShareAlike"/></License></rdf:RDF> -->
250
251Last modified Sun Feb 12 13:01:44 2006
252</p>
253</body>
254</html>
Note: See TracBrowser for help on using the repository browser.