Main Page | Namespace List | Class Hierarchy | Class List | Directories | File List | Namespace Members | Class Members | File Members

VectorDS.h

Go to the documentation of this file.
00001 
00006 #ifndef __VECTORDS_H__
00007 #define __VECTORDS_H__
00008 
00009 #include <vector>
00010 #include <iostream>
00011 
00012 #ifdef __APPLE__
00013 #include <GraphicsLib/Point3.h>
00014 #include <GraphicsLib/ThreadTimer.h>
00015 #else
00016 #include "ThreadTimer.h";
00017 #include "Point3.h"
00018 #endif
00019 
00020 #include "DataStructure.h"
00021 #include "Particle.h"
00022 #include "CollisionObject.h"
00023 
00024 #include "Debugger.h"
00025 
00026 
00027 namespace ParticleSystems {
00029         typedef std::vector<Particle *> allP;
00030         
00032         typedef std::vector<Particle *>::iterator pAllItt;
00033         
00035         typedef std::vector<Particle *> dead;
00036         
00038         typedef std::vector<Particle *>::iterator allDeadItt;
00039 
00041         typedef std::vector<CollisionObject *> cObjects;
00042         
00044         typedef std::vector<CollisionObject *>::iterator allcObjects;
00045         
00047 
00053         class VectorDS : public DataStructure {
00054                 
00055                 public:
00056                         
00058 
00061                         VectorDS();
00062                         
00064 
00067                         virtual ~VectorDS();
00068                         
00070 
00074                         virtual void addParticles(Particle *particle);
00075                         
00077 
00080                         virtual void killParticles();
00081                         
00083 
00086                         virtual void evolve();
00087                         
00089 
00095                         virtual bool positionCheck(GraphicsLib::Point3 pos);
00096                         
00098 
00102             virtual void draw();
00103                         
00105 
00110                         virtual int numParticles();
00111                         
00113 
00118                         virtual bool hasDead();
00119                         
00121 
00127                         virtual Particle* getDead();
00128                         
00130 
00134             virtual void addCollisionObject(CollisionObject *co);
00135                         
00137 
00141             virtual void deleteCollisionObject(CollisionObject *co);
00142                         
00144 
00147                         allP particles; 
00148                         
00150 
00153                         dead deadParticles;
00154             
00156 
00159                         cObjects collisionObjects;
00160 
00161         };
00162 }
00163 #endif
00164 
00165 

Generated on Thu Mar 24 11:05:02 2005 for ParticleSystem by  doxygen 1.4.1