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

Last change on this file since 3464 was 2860, checked in by ldelgass, 8 years ago

Put class member declarations in standard order

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   ParticleEmitter();
13
14    void setName(const std::string& name);
15    void setPosition(float x, float y, float z);
16    void setMinMaxLifeTime(float minLifeTime, float maxLifeTime);
17    void setMaxPositionOffset(float offsetX, float offsetY, float offsetZ);
18    void setMinMaxNumOfNewParticles(int minNum, int maxNum);
19
20    void setVectorField();
21    void setEnabled(bool enabled);
22    bool isEnabled() const;
23
24    std::string _name;
25    vrVector3f _position;
26
27    vrVector3f _oldPosition;
28
29    float _minLifeTime;
30    float _maxLifeTime;
31
32    // [0..1] * _maxPositionOffset;
33    vrVector3f _maxPositionOffset;
34
35    int _minNumOfNewParticles;
36    int _maxNumOfNewParticles;
37
38    bool _enabled;
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.