<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> <title>OpenSceneGraph: osgParticle::Shooter Class Reference</title> <link href="tabs.css" rel="stylesheet" type="text/css"/> <link href="doxygen.css" rel="stylesheet" type="text/css"/> </head> <body> <!-- Generated by Doxygen 1.7.1 --> <div class="navigation" id="top"> <div class="tabs"> <ul class="tablist"> <li><a href="index.html"><span>Main Page</span></a></li> <li><a href="pages.html"><span>Related Pages</span></a></li> <li><a href="namespaces.html"><span>Namespaces</span></a></li> <li class="current"><a href="annotated.html"><span>Classes</span></a></li> <li><a href="files.html"><span>Files</span></a></li> <li><a href="dirs.html"><span>Directories</span></a></li> </ul> </div> <div class="tabs2"> <ul class="tablist"> <li><a href="annotated.html"><span>Class List</span></a></li> <li><a href="classes.html"><span>Class Index</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> <div class="navpath"> <ul> <li><a class="el" href="a01635.html">osgParticle</a> </li> <li><a class="el" href="a00717.html">osgParticle::Shooter</a> </li> </ul> </div> </div> <div class="header"> <div class="summary"> <a href="#pub-methods">Public Member Functions</a> | <a href="#pro-methods">Protected Member Functions</a> </div> <div class="headertitle"> <h1>osgParticle::Shooter Class Reference</h1> </div> </div> <div class="contents"> <!-- doxytag: class="osgParticle::Shooter" --><!-- doxytag: inherits="osg::Object" --> <p>An abstract base class used by <a class="el" href="a00476.html" title="An emitter class that holds three objects to control the creation of particles.">ModularEmitter</a> to "shoot" the particles after they have been placed. <a href="#_details">More...</a></p> <div class="dynheader"> Inheritance diagram for osgParticle::Shooter:</div> <div class="dyncontent"> <div class="center"><img src="a03353.png" border="0" usemap="#osgParticle_1_1Shooter_inherit__map" alt="Inheritance graph"/></div> <map name="osgParticle_1_1Shooter_inherit__map" id="osgParticle_1_1Shooter_inherit__map"> <area shape="rect" id="node7" href="a00609.html" title="A shooter class that shoots particles radially." alt="" coords="5,237,181,267"/><area shape="rect" id="node2" href="a00500.html" title="Base class/standard interface for objects which require IO support, cloning and reference counting..." alt="" coords="49,83,137,112"/><area shape="rect" id="node4" href="a00627.html" title="Base class from providing referencing counted objects." alt="" coords="35,5,152,35"/></map> <center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div> <p><a href="a03354.html">List of all members.</a></p> <table class="memberdecls"> <tr><td colspan="2"><h2><a name="pub-methods"></a> Public Member Functions</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00717.html#a54da952c188d841e5af09c632d6a71f9">Shooter</a> ()</td></tr> <tr><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="a00717.html#a7c886729ac86e5ab9de74e29aa091c7e">Shooter</a> (const <a class="el" href="a00717.html">Shooter</a> &copy, const <a class="el" href="a00169.html">osg::CopyOp</a> &copyop=osg::CopyOp::SHALLOW_COPY)</td></tr> <tr><td class="memItemLeft" align="right" valign="top">virtual const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00717.html#a4f26e199dc207bc410e9d933ec09777e">libraryName</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">return the name of the object's library. <a href="#a4f26e199dc207bc410e9d933ec09777e"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">virtual const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00717.html#a1b19a854eda721900cd96765d21b936f">className</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">return the name of the object's class type. <a href="#a1b19a854eda721900cd96765d21b936f"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">virtual bool </td><td class="memItemRight" valign="bottom"><a class="el" href="a00717.html#a5db05c637600343bc64d6e55fe6a4e2b">isSameKindAs</a> (const <a class="el" href="a00500.html">osg::Object</a> *obj) const </td></tr> <tr><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00717.html#aec677e714085bb6ed04bc711ecc94637">shoot</a> (<a class="el" href="a00539.html">Particle</a> *P) const =0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Shoot a particle. <a href="#aec677e714085bb6ed04bc711ecc94637"></a><br/></td></tr> <tr><td colspan="2"><h2><a name="pro-methods"></a> Protected Member Functions</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top">virtual </td><td class="memItemRight" valign="bottom"><a class="el" href="a00717.html#a42113af7cebab5cbf73cf7a7b44421d3">~Shooter</a> ()</td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00717.html">Shooter</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="a00717.html#a99e4eb9db4a176d15f88d5c49d880435">operator=</a> (const <a class="el" href="a00717.html">Shooter</a> &)</td></tr> </table> <hr/><a name="_details"></a><h2>Detailed Description</h2> <p>An abstract base class used by <a class="el" href="a00476.html" title="An emitter class that holds three objects to control the creation of particles.">ModularEmitter</a> to "shoot" the particles after they have been placed. </p> <p>Descendants of this class must override the <code><a class="el" href="a00717.html#aec677e714085bb6ed04bc711ecc94637" title="Shoot a particle.">shoot()</a></code> method. </p> <hr/><h2>Constructor & Destructor Documentation</h2> <a class="anchor" id="a54da952c188d841e5af09c632d6a71f9"></a><!-- doxytag: member="osgParticle::Shooter::Shooter" ref="a54da952c188d841e5af09c632d6a71f9" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">osgParticle::Shooter::Shooter </td> <td>(</td> <td class="paramname"></td> <td> ) </td> <td><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <a class="anchor" id="a7c886729ac86e5ab9de74e29aa091c7e"></a><!-- doxytag: member="osgParticle::Shooter::Shooter" ref="a7c886729ac86e5ab9de74e29aa091c7e" args="(const Shooter &copy, const osg::CopyOp &copyop=osg::CopyOp::SHALLOW_COPY)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">osgParticle::Shooter::Shooter </td> <td>(</td> <td class="paramtype">const <a class="el" href="a00717.html">Shooter</a> & </td> <td class="paramname"> <em>copy</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="a00169.html">osg::CopyOp</a> & </td> <td class="paramname"> <em>copyop</em> = <code>osg::CopyOp::SHALLOW_COPY</code></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <a class="anchor" id="a42113af7cebab5cbf73cf7a7b44421d3"></a><!-- doxytag: member="osgParticle::Shooter::~Shooter" ref="a42113af7cebab5cbf73cf7a7b44421d3" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual osgParticle::Shooter::~Shooter </td> <td>(</td> <td class="paramname"></td> <td> ) </td> <td><code> [inline, protected, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <hr/><h2>Member Function Documentation</h2> <a class="anchor" id="a1b19a854eda721900cd96765d21b936f"></a><!-- doxytag: member="osgParticle::Shooter::className" ref="a1b19a854eda721900cd96765d21b936f" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual const char* osgParticle::Shooter::className </td> <td>(</td> <td class="paramname"></td> <td> ) </td> <td> const<code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>return the name of the object's class type. </p> <p>Must be defined by derived classes. </p> <p>Implements <a class="el" href="a00500.html#a0a2c199f26fdd9ca9fc60d6c79827187">osg::Object</a>.</p> </div> </div> <a class="anchor" id="a5db05c637600343bc64d6e55fe6a4e2b"></a><!-- doxytag: member="osgParticle::Shooter::isSameKindAs" ref="a5db05c637600343bc64d6e55fe6a4e2b" args="(const osg::Object *obj) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual bool osgParticle::Shooter::isSameKindAs </td> <td>(</td> <td class="paramtype">const <a class="el" href="a00500.html">osg::Object</a> * </td> <td class="paramname"> <em>obj</em></td> <td> ) </td> <td> const<code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Reimplemented from <a class="el" href="a00500.html#ac3b05ac28940dda755014a821b699f3a">osg::Object</a>.</p> </div> </div> <a class="anchor" id="a4f26e199dc207bc410e9d933ec09777e"></a><!-- doxytag: member="osgParticle::Shooter::libraryName" ref="a4f26e199dc207bc410e9d933ec09777e" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual const char* osgParticle::Shooter::libraryName </td> <td>(</td> <td class="paramname"></td> <td> ) </td> <td> const<code> [inline, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>return the name of the object's library. </p> <p>Must be defined by derived classes. The OpenSceneGraph convention is that the namespace of a library is the same as the library name. </p> <p>Implements <a class="el" href="a00500.html#adac3709b960df44030d682dd1336413e">osg::Object</a>.</p> </div> </div> <a class="anchor" id="a99e4eb9db4a176d15f88d5c49d880435"></a><!-- doxytag: member="osgParticle::Shooter::operator=" ref="a99e4eb9db4a176d15f88d5c49d880435" args="(const Shooter &)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="a00717.html">Shooter</a>& osgParticle::Shooter::operator= </td> <td>(</td> <td class="paramtype">const <a class="el" href="a00717.html">Shooter</a> & </td> <td class="paramname"></td> <td> ) </td> <td><code> [inline, protected]</code></td> </tr> </table> </div> <div class="memdoc"> </div> </div> <a class="anchor" id="aec677e714085bb6ed04bc711ecc94637"></a><!-- doxytag: member="osgParticle::Shooter::shoot" ref="aec677e714085bb6ed04bc711ecc94637" args="(Particle *P) const =0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual void osgParticle::Shooter::shoot </td> <td>(</td> <td class="paramtype"><a class="el" href="a00539.html">Particle</a> * </td> <td class="paramname"> <em>P</em></td> <td> ) </td> <td> const<code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Shoot a particle. </p> <p>Must be overriden by descendants. This method should only set the velocity vector of particle <code>P</code>, leaving other attributes unchanged. </p> <p>Implemented in <a class="el" href="a00609.html#a96c4e50a1b2a9e01799bd04b58c7f65d">osgParticle::RadialShooter</a>.</p> </div> </div> <hr/>The documentation for this class was generated from the following file:<ul> <li>osgParticle/<a class="el" href="a01490.html">Shooter</a></li> </ul> </div> <hr> <table border="0"><tr><td> <img src="osg32-32.png" alt="osg logo" /> </td><td> <address><small>Generated at Thu Aug 19 2010 16:22:45 for the <a href="http://www.openscenegraph.org/">OpenSceneGraph</a> by <a href="http://www.doxygen.org">doxygen</a> 1.7.1.</small></address> <!-- Dimitri van Heesch's e-mail address removed, lest he get messages on the OpenSceneGraph --> </td></tr></table> </body> </html>