00001 #ifndef COIN_SOTIMERSENSOR_H
00002 #define COIN_SOTIMERSENSOR_H
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027 #include <Inventor/sensors/SoTimerQueueSensor.h>
00028
00029 class COIN_DLL_API SoTimerSensor : public SoTimerQueueSensor {
00030 typedef SoTimerQueueSensor inherited;
00031
00032 public:
00033 SoTimerSensor(void);
00034 SoTimerSensor(SoSensorCB * func, void * data);
00035 virtual ~SoTimerSensor(void);
00036
00037 void setBaseTime(const SbTime & base);
00038 const SbTime & getBaseTime(void) const;
00039 void setInterval(const SbTime & interval);
00040 const SbTime & getInterval(void) const;
00041
00042 virtual void schedule(void);
00043 virtual void unschedule(void);
00044 void reschedule(const SbTime & schedtime);
00045
00046 private:
00047 virtual void trigger(void);
00048
00049 SbTime base, interval;
00050 SbBool setbasetime;
00051 SbBool istriggering;
00052 };
00053
00054 #endif // !COIN_SOTIMERSENSOR_H