TDME2  1.9.200
ParticleSystem.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include <string>
4 
5 #include <tdme/tdme.h>
7 #include <tdme/engine/Entity.h>
9 
10 using std::string;
11 
15 
16 /**
17  * Particle system entity interface
18  * @author Andreas Drewke
19  */
21 {
22  /**
23  * Public destructor
24  */
25  virtual ~ParticleSystem() {}
26 
27  /**
28  * @return particle emitter
29  */
30  virtual ParticleEmitter* getEmitter() = 0;
31 
32  /**
33  * @return true if active / particles available
34  */
35  virtual bool isActive() = 0;
36 
37  /**
38  * @return if auto emit is enabled
39  */
40  virtual bool isAutoEmit() = 0;
41 
42  /**
43  * Set auto emit
44  * @param autoEmit auto emit
45  */
46  virtual void setAutoEmit(bool autoEmit) = 0;
47 
48  /**
49  * Updates the particle entity
50  */
51  virtual void updateParticles() = 0;
52 
53  /**
54  * Adds particles to this particle entity at given position
55  */
56  virtual int emitParticles() = 0;
57 
58  /**
59  * @return local transform
60  */
61  virtual const Transform& getLocalTransform() = 0;
62 
63  /**
64  * Set local transform
65  * @param transform local transform
66  */
67  virtual void setLocalTransform(const Transform& transform) = 0;
68 
69 };
Engine entity.
Definition: Entity.h:30
Transform which contain scale, rotations and translation.
Definition: Transform.h:29
Particle system entity interface.
virtual void updateParticles()=0
Updates the particle entity.
virtual void setAutoEmit(bool autoEmit)=0
Set auto emit.
virtual void setLocalTransform(const Transform &transform)=0
Set local transform.
virtual int emitParticles()=0
Adds particles to this particle entity at given position.
virtual ~ParticleSystem()
Public destructor.
virtual bool isAutoEmit()=0
virtual ParticleEmitter * getEmitter()=0
virtual const Transform & getLocalTransform()=0