# Home    # nevrax.com   
Nevrax
Nevrax.org
#News
#Mailing-list
#Documentation
#CVS
#Bugs
#License
Docs
 
Documentation  
Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages   Search  

NL3D::CPSSizedParticle Class Reference

this class adds tunable size to a particle. Can be added using public multiple inheritance. More...

#include <ps_particle_basic.h>

Inheritance diagram for NL3D::CPSSizedParticle:

NL3D::CPSConstraintMesh NL3D::CPSFaceLookAt::CSecondSize NL3D::CPSFanLight NL3D::CPSMesh NL3D::CPSQuad NL3D::CPSRibbon NL3D::CPSRibbonLookAt NL3D::CPSShockWave List of all members.

Public Methods

void setSizeScheme (CPSAttribMaker< float > *size)
 Set an attribute maker that produce a size It must have been allocated by new It will be deleted by this object. More...

CPSAttribMaker< float > * getSizeScheme (void)
 get the size scheme (NULL if none). More...

const CPSAttribMaker< float > * getSizeScheme (void) const
 get the size scheme (NULL if none) const version. More...

void setSize (float size)
 Set a constant size for the particles. More...

float getSize (void) const
 get the constant size. More...

 CPSSizedParticle ()
 ctor : default are 0.1f sized particles. More...

virtual ~CPSSizedParticle ()
 dtor. More...

void serialSizeScheme (NLMISC::IStream &f) throw (NLMISC::EStream)
 serialization. We choose a different name because of multiple-inheritance. More...


Protected Methods

virtual CPSLocatedgetSizeOwner (void)=0
 deriver must return their owner there. More...

void newSizeElement (CPSLocated *emitterLocated, uint32 emitterIndex)
void deleteSizeElement (uint32 index)
void resizeSize (uint32 size)

Protected Attributes

float _ParticleSize
CPSAttribMaker< float > * _SizeScheme

Detailed Description

this class adds tunable size to a particle. Can be added using public multiple inheritance.

Definition at line 229 of file ps_particle_basic.h.


Constructor & Destructor Documentation

NL3D::CPSSizedParticle::CPSSizedParticle  
 

ctor : default are 0.1f sized particles.

Definition at line 199 of file ps_particle_basic.cpp.

Referenced by NL3D::CPSFaceLookAt::getSecondSize.

NL3D::CPSSizedParticle::~CPSSizedParticle   [virtual]
 

dtor.

Definition at line 204 of file ps_particle_basic.cpp.

References _SizeScheme.


Member Function Documentation

void NL3D::CPSSizedParticle::deleteSizeElement uint32    index [inline, protected]
 

Definition at line 272 of file ps_particle_basic.h.

References _SizeScheme, and index.

Referenced by NL3D::CPSShockWave::deleteElement, NL3D::CPSRibbonLookAt::deleteElement, NL3D::CPSRibbon::deleteElement, NL3D::CPSQuad::deleteElement, NL3D::CPSConstraintMesh::deleteElement, NL3D::CPSMesh::deleteElement, and NL3D::CPSFanLight::deleteElement.

float NL3D::CPSSizedParticle::getSize void    const [inline]
 

get the constant size.

Definition at line 251 of file ps_particle_basic.h.

References _ParticleSize.

Referenced by resizeSize, and setSizeScheme.

virtual CPSLocated* NL3D::CPSSizedParticle::getSizeOwner void    [protected, pure virtual]
 

deriver must return their owner there.

Implemented in NL3D::CPSFaceLookAt::CSecondSize.

Referenced by resizeSize, and setSizeScheme.

const CPSAttribMaker<float>* NL3D::CPSSizedParticle::getSizeScheme void    const [inline]
 

get the size scheme (NULL if none) const version.

Definition at line 245 of file ps_particle_basic.h.

References _SizeScheme.

CPSAttribMaker<float>* NL3D::CPSSizedParticle::getSizeScheme void    [inline]
 

get the size scheme (NULL if none).

Definition at line 242 of file ps_particle_basic.h.

References _SizeScheme.

void NL3D::CPSSizedParticle::newSizeElement CPSLocated   emitterLocated,
uint32    emitterIndex
[inline, protected]
 

Definition at line 268 of file ps_particle_basic.h.

References _SizeScheme.

Referenced by NL3D::CPSShockWave::newElement, NL3D::CPSRibbonLookAt::newElement, NL3D::CPSRibbon::newElement, NL3D::CPSQuad::newElement, NL3D::CPSConstraintMesh::newElement, NL3D::CPSMesh::newElement, and NL3D::CPSFanLight::newElement.

void NL3D::CPSSizedParticle::resizeSize uint32    size [inline, protected]
 

Definition at line 276 of file ps_particle_basic.h.

References _SizeScheme, getSize, getSizeOwner, and nlassert.

Referenced by NL3D::CPSShockWave::resize, NL3D::CPSRibbonLookAt::resize, NL3D::CPSRibbon::resize, NL3D::CPSQuad::resize, NL3D::CPSConstraintMesh::resize, NL3D::CPSMesh::resize, and NL3D::CPSFanLight::resize.

void NL3D::CPSSizedParticle::serialSizeScheme NLMISC::IStream   f throw (NLMISC::EStream)
 

serialization. We choose a different name because of multiple-inheritance.

Definition at line 210 of file ps_particle_basic.cpp.

void NL3D::CPSSizedParticle::setSize float    size
 

Set a constant size for the particles.

Definition at line 191 of file ps_particle_basic.cpp.

References _ParticleSize, and _SizeScheme.

void NL3D::CPSSizedParticle::setSizeScheme CPSAttribMaker< float > *    size
 

Set an attribute maker that produce a size It must have been allocated by new It will be deleted by this object.

Definition at line 182 of file ps_particle_basic.cpp.

References _SizeScheme, getSize, getSizeOwner, and nlassert.


Member Data Documentation

float NL3D::CPSSizedParticle::_ParticleSize [protected]
 

Definition at line 266 of file ps_particle_basic.h.

Referenced by NL3D::CPSQuad::completeBBox, NL3D::CPSRibbonLookAt::displayRibbons, NL3D::CPSRibbon::displayRibbons, getSize, setSize, and NL3D::CPSMesh::updatePos.

CPSAttribMaker<float>* NL3D::CPSSizedParticle::_SizeScheme [protected]
 

Definition at line 267 of file ps_particle_basic.h.

Referenced by NL3D::CPSQuad::completeBBox, deleteSizeElement, NL3D::CPSRibbonLookAt::displayRibbons, NL3D::CPSRibbon::displayRibbons, getSizeScheme, newSizeElement, resizeSize, setSize, setSizeScheme, NL3D::CPSMesh::updatePos, and ~CPSSizedParticle.


The documentation for this class was generated from the following files: