source: trunk/packages/vizservers/nanovis/ParticleEmitter.h @ 2844

Last change on this file since 2844 was 2818, checked in by ldelgass, 12 years ago

Fix spelling of some identifiers, formatting fixes

File size: 1.8 KB
Line 
1/* -*- mode: c++; c-basic-offset: 4; indent-tabs-mode: nil -*- */
2#ifndef PARTICLEEMITTER_H
3#define PARTICLEEMITTER_H
4
5#include <string>
6
7#include <vrmath/vrVector3f.h>
8
9class ParticleEmitter
10{
11public:
12    std::string _name;
13    vrVector3f _position;
14
15    vrVector3f _oldPosition;
16
17    float _minLifeTime;
18    float _maxLifeTime;
19
20    // [0..1] * _maxPositionOffset;
21    vrVector3f _maxPositionOffset;
22
23    int _minNumOfNewParticles;
24    int _maxNumOfNewParticles;
25
26    bool _enabled;
27
28    ParticleEmitter();
29
30    void setName(const std::string& name);
31    void setPosition(float x, float y, float z);
32    void setMinMaxLifeTime(float minLifeTime, float maxLifeTime);
33    void setMaxPositionOffset(float offsetX, float offsetY, float offsetZ);
34    void setMinMaxNumOfNewParticles(int minNum, int maxNum);
35
36    void setVectorField();
37    void setEnabled(bool enabled);
38    bool isEnabled() const;
39};
40
41inline void ParticleEmitter::setName(const std::string& name)
42{
43    _name = name;
44}
45
46inline void ParticleEmitter::setPosition(float x, float y, float z)
47{
48    _position.x = x;
49    _position.y = y;
50    _position.z = z;
51}
52
53inline void ParticleEmitter::setMinMaxLifeTime(float minLifeTime, float maxLifeTime)
54{
55    _minLifeTime = minLifeTime;
56    _maxLifeTime = maxLifeTime;
57}
58
59inline void ParticleEmitter::setMaxPositionOffset(float offsetX, float offsetY, float offsetZ)
60{
61    _maxPositionOffset.x = offsetX;
62    _maxPositionOffset.y = offsetY;
63    _maxPositionOffset.z = offsetZ;
64}
65
66inline void ParticleEmitter::setMinMaxNumOfNewParticles(int minNum, int maxNum)
67{
68    _minNumOfNewParticles = minNum;
69    _maxNumOfNewParticles = maxNum;
70}
71
72inline void ParticleEmitter::setEnabled(bool enabled)
73{
74    _enabled = enabled;
75}
76
77inline bool ParticleEmitter::isEnabled() const
78{
79    return _enabled;
80}
81
82#endif
Note: See TracBrowser for help on using the repository browser.