Panda3D

Public Types | Public Member Functions | List of all members
BaseParticleEmitter Class Referenceabstract
Inheritance diagram for BaseParticleEmitter:

## Public Types
enum | emissionType { ET_EXPLICIT , ET_RADIATE , ET_CUSTOM }

## Public Member Functions
virtual | ~BaseParticleEmitter ()
| destructor More...
void | generate (LPoint3 &pos, LVector3 &vel)
| parent generation function More...
PN_stdfloat | get_amplitude () const
| amplitude query More...
PN_stdfloat | get_amplitude_spread () const
| amplitude spread query More...
emissionType | get_emission_type () const
| emission type query More...
LVector3 | get_explicit_launch_vector () const
| query for explicit emission launch vector More...
LVector3 | get_offset_force () const
| user-defined force More...
LPoint3 | get_radiate_origin () const
| query for explicit emission launch vector More...
virtual BaseParticleEmitter * | make_copy ()=0
virtual void | output (std::ostream &out) const
| Write a string representation of this instance to <out>. More...
void | set_amplitude (PN_stdfloat a)
| amplitude assignment More...
void | set_amplitude_spread (PN_stdfloat as)
| amplitude spread assignment More...
void | set_emission_type (emissionType et)
| emission type assignment More...
void | set_explicit_launch_vector (const LVector3 &elv)
| assignment of explicit emission launch vector More...
void | set_offset_force (const LVector3 &of)
| user-defined force More...
void | set_radiate_origin (const LPoint3 &ro)
| assignment of radiate emission origin point More...
virtual void | write (std::ostream &out, int indent=0) const
| Write a string representation of this instance to <out>. More...
Public Member Functions inherited from ReferenceCount
int | get_ref_count () const
WeakReferenceList * | get_weak_list () const
| Returns the WeakReferenceList associated with this ReferenceCount object. More...
bool | has_weak_list () const
| Returns true if this particular ReferenceCount object has a WeakReferenceList created, false otherwise. More...
void | local_object ()
| This function should be called, once, immediately after creating a new instance of some ReferenceCount-derived object on the stack. More...
void | ref () const
| Explicitly increments the reference count. More...
bool | ref_if_nonzero () const
| Atomically increases the reference count of this object if it is not zero. More...
bool | test_ref_count_integrity () const
| Does some easy checks to make sure that the reference count isn't completely bogus. More...
bool | test_ref_count_nonzero () const
| Does some easy checks to make sure that the reference count isn't zero, or completely bogus. More...
virtual bool | unref () const
| Explicitly decrements the reference count. More...
bool | unref_if_one () const
| Atomically decreases the reference count of this object if it is one. More...
WeakReferenceList * | weak_ref ()
| Adds the indicated PointerToVoid as a weak reference to this object. More...
void | weak_unref ()
| Removes the indicated PointerToVoid as a weak reference to this object. More...
Public Member Functions inherited from MemoryBase
void | operator delete (void *, void *)
void | operator delete (void *ptr)
void | operator delete[] (void *, void *)
void | operator delete[] (void *ptr)
void * | operator new (size_t size)
void * | operator new (size_t size, void *ptr)
void * | operator new[] (size_t size)
void * | operator new[] (size_t size, void *ptr)

## Additional Inherited Members
Static Public Member Functions inherited from ReferenceCount
static TypeHandle | get_class_type ()
static void | init_type ()
Public Attributes inherited from ReferenceCount
| get_ref_count
| Returns the current reference count. More...

## Detailed Description

Definition at line 25 of file baseParticleEmitter.h.

## Constructor & Destructor Documentation

## ◆ ~BaseParticleEmitter()

BaseParticleEmitter::~BaseParticleEmitter | ( |  | ) |
| virtual

destructor

Definition at line 47 of file baseParticleEmitter.cxx.

## Member Function Documentation

## ◆ generate()

void BaseParticleEmitter::generate | ( | LPoint3 & | pos,
|  | LVector3 & | vel
| ) |  |

parent generation function

Definition at line 54 of file baseParticleEmitter.cxx.

## ◆ get_amplitude()

PN_stdfloat BaseParticleEmitter::get_amplitude | ( |  | ) | const
| inline

amplitude query

Definition at line 73 of file baseParticleEmitter.I.

## ◆ get_amplitude_spread()

PN_stdfloat BaseParticleEmitter::get_amplitude_spread | ( |  | ) | const
| inline

amplitude spread query

Definition at line 89 of file baseParticleEmitter.I.

## ◆ get_emission_type()

BaseParticleEmitter::emissionType BaseParticleEmitter::get_emission_type | ( |  | ) | const
| inline

emission type query

Definition at line 25 of file baseParticleEmitter.I.

## ◆ get_explicit_launch_vector()

LVector3 BaseParticleEmitter::get_explicit_launch_vector | ( |  | ) | const
| inline

query for explicit emission launch vector

Definition at line 41 of file baseParticleEmitter.I.

## ◆ get_offset_force()

LVector3 BaseParticleEmitter::get_offset_force | ( |  | ) | const
| inline

user-defined force

Definition at line 105 of file baseParticleEmitter.I.

## ◆ get_radiate_origin()

LPoint3 BaseParticleEmitter::get_radiate_origin | ( |  | ) | const
| inline

query for explicit emission launch vector

Definition at line 57 of file baseParticleEmitter.I.

## ◆ output()

void BaseParticleEmitter::output | ( | std::ostream & | out | ) | const
| virtual

Write a string representation of this instance to <out>.

Reimplemented in TangentRingEmitter, SphereVolumeEmitter, SphereSurfaceEmitter, RingEmitter, RectangleEmitter, PointEmitter, LineEmitter, DiscEmitter, BoxEmitter, and ArcEmitter.

Definition at line 81 of file baseParticleEmitter.cxx.

## ◆ set_amplitude()

void BaseParticleEmitter::set_amplitude | ( | PN_stdfloat | a | ) |
| inline

amplitude assignment

Definition at line 65 of file baseParticleEmitter.I.

## ◆ set_amplitude_spread()

void BaseParticleEmitter::set_amplitude_spread | ( | PN_stdfloat | as | ) |
| inline

amplitude spread assignment

Definition at line 81 of file baseParticleEmitter.I.

## ◆ set_emission_type()

void BaseParticleEmitter::set_emission_type | ( | emissionType | et | ) |
| inline

emission type assignment

Definition at line 17 of file baseParticleEmitter.I.

## ◆ set_explicit_launch_vector()

void BaseParticleEmitter::set_explicit_launch_vector | ( | const LVector3 & | elv | ) |
| inline

assignment of explicit emission launch vector

Definition at line 33 of file baseParticleEmitter.I.

## ◆ set_offset_force()

void BaseParticleEmitter::set_offset_force | ( | const LVector3 & | of | ) |
| inline

user-defined force

Definition at line 97 of file baseParticleEmitter.I.

## ◆ set_radiate_origin()

void BaseParticleEmitter::set_radiate_origin | ( | const LPoint3 & | ro | ) |
| inline

assignment of radiate emission origin point

Definition at line 49 of file baseParticleEmitter.I.

## ◆ write()

void BaseParticleEmitter::write | ( | std::ostream & | out,
|  | int | indent = `0`
| ) |  | const
| virtual

Write a string representation of this instance to <out>.

Reimplemented in TangentRingEmitter, SphereVolumeEmitter, SphereSurfaceEmitter, RingEmitter, RectangleEmitter, PointEmitter, LineEmitter, DiscEmitter, BoxEmitter, and ArcEmitter.

Definition at line 91 of file baseParticleEmitter.cxx.

References indent().

Referenced by BoxEmitter::write(), DiscEmitter::write(), LineEmitter::write(), PointEmitter::write(), RectangleEmitter::write(), RingEmitter::write(), SphereSurfaceEmitter::write(), SphereVolumeEmitter::write(), and TangentRingEmitter::write().

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

- panda/src/particlesystem/baseParticleEmitter.h
- panda/src/particlesystem/baseParticleEmitter.cxx
- panda/src/particlesystem/baseParticleEmitter.I