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

Solver.h

Go to the documentation of this file.
00001 
00006 #ifndef __SOLVER_H__
00007 #define __SOLVER_H__
00008 
00009 #ifdef __APPLE__
00010 #include <GraphicsLib/Vector.h>
00011 #include <GraphicsLib/Point3.h>
00012 #else
00013 #include "Point3.h"
00014 #include "Vector.h"
00015 #endif
00016 
00017 #include <vector>
00018 #include <iostream>
00019 #include "Force.h"
00020 
00021 
00022 namespace ParticleSystems {
00024 
00031         class Solver {
00032                 public:
00033                         
00035 
00040                         Solver(Force *f);
00041                         
00043 
00046                         Solver();
00047                         
00049 
00052                         virtual ~Solver();      
00053                         
00055 
00060                         void addForce(Force *f);
00061                         
00063 
00067                         void removeForce(Force *f);
00068                         
00070 
00073                         void listForces();
00074                         
00076 
00081                         virtual void nextStep(GraphicsLib::Vector *direction) = 0;
00082                         
00084 
00091                         virtual void nextStep(GraphicsLib::Vector *direction, float *mass) = 0;
00092                         
00094 
00097                         std::vector<Force *> forces;
00098                         
00100 
00103             std::vector<Force *>::iterator forcesItt;
00104                         
00106 
00109                         int duration;
00110                         
00111         };
00112 }
00113 #endif
00114 

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