00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015 #ifndef ANGULARINTEGRATOR_H
00016 #define ANGULARINTEGRATOR_H
00017
00018 #include "baseIntegrator.h"
00019 #include "angularForce.h"
00020 #include "configVariableDouble.h"
00021
00022
00023
00024
00025
00026
00027
00028 class EXPCL_PANDAPHYSICS AngularIntegrator : public BaseIntegrator {
00029 PUBLISHED:
00030 virtual ~AngularIntegrator();
00031 public:
00032
00033 void integrate(Physical *physical, AngularForceVector &forces,
00034 PN_stdfloat dt);
00035
00036 PUBLISHED:
00037 virtual void output(ostream &out) const;
00038 virtual void write(ostream &out, unsigned int indent=0) const;
00039
00040 protected:
00041 AngularIntegrator();
00042
00043 private:
00044 static ConfigVariableDouble _max_angular_dt;
00045
00046
00047
00048 virtual void child_integrate(Physical *physical, AngularForceVector &forces,
00049 PN_stdfloat dt) = 0;
00050 };
00051
00052 #endif // ANGULARINTEGRATOR_H