00001 // rdIntegCallback.h 00002 //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 00003 // Copyright 2003 Realistic Dynamics, Inc. 00004 // All rights reserved. 00005 // 00006 // Please do not read, copy, distribute, or use without permission. 00007 // Contact: Frank C. Anderson, fca@RealisticDynamics.com 00008 //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 00009 #ifndef __rdIntegCallback_h__ 00010 #define __rdIntegCallback_h__ 00011 //============================================================================= 00012 #include <rdObject.h> 00013 #include "rdModel.h" 00014 #include "rdCallback.h" 00015 00016 00017 //============================================================================= 00018 //============================================================================= 00038 class RDSIMULATION_API rdIntegCallback : public rdCallback 00039 { 00040 00041 //============================================================================= 00042 // DATA 00043 //============================================================================= 00044 protected: 00046 int _stepInterval; 00047 00048 //============================================================================= 00049 // METHODS 00050 //============================================================================= 00051 //-------------------------------------------------------------------------- 00052 // CONSTRUCTION 00053 //-------------------------------------------------------------------------- 00054 public: 00055 rdIntegCallback(rdModel *aModel); 00056 virtual ~rdIntegCallback(); 00057 private: 00058 void setNull(); 00059 public: 00060 00061 //-------------------------------------------------------------------------- 00062 // GET AND SET 00063 //-------------------------------------------------------------------------- 00064 void setStepInterval(int aStepInterval); 00065 int getStepInterval() const; 00066 00067 //-------------------------------------------------------------------------- 00068 // CALLBACKS 00069 //-------------------------------------------------------------------------- 00070 virtual void 00071 begin(int aStep,double aDT,double aT, 00072 double *aX,double *aY,void *aClientData=NULL); 00073 virtual void 00074 step(double *aXPrev,double *aYPrev,int aStep,double aDT,double aT, 00075 double *aX,double *aY,void *aClientData=NULL); 00076 virtual void 00077 end(int aStep,double aDT,double aT, 00078 double *aX,double *aY,void *aClientData=NULL); 00079 00080 //============================================================================= 00081 }; // END of class rdIntegCallback 00082 //============================================================================= 00083 //============================================================================= 00084 00085 #endif // __rdIntegCallback_h__ 00086 00087
1.3