-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathPmanager.h
59 lines (42 loc) · 1.31 KB
/
Pmanager.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
/********************************************************
Pmanager.h
Header File for particle manager class
Gina Guerrero - Fall 2013
********************************************************/
#ifndef _PMANAGER_H_
#define _PMANAGER_H_
#include "Particle.h"
class Pmanager {
private:
int nused; // count of used particles
int Stopped; // simulation is paused.
int Started; // simulation is started...
int Step; // simulation is step mode
int nmaxparticles;
public:
Particle *Particles; // matrix of particles...
Pmanager();
~Pmanager();
void SetMaxPart(int numofp, int bs);
void SetStopped(int type);
void SetStarted(int type);
void SetStep(int type);
int IsStopped();
int IsStarted();
int IsStep();
int GetNused();
// determines if it has free particles
int HasFreeParticles();
int FreePLeft();
// frees a used particle @ given index
void FreeParticle(int indx);
// kill off particles..
void KillAll();
int KillParticles(double timestep);
// assigns particle an initial velocity and center...
void UseParticle(Vector3d c0, Vector3d v0, double ts, Vector4d color, double m, double coefff, double coeffr, int blend);
void EnableBlend(int bs);
// draws all the used particles
void DrawSystem();
};
#endif