Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef __CS_SCHEDULE_H__
00020 #define __CS_SCHEDULE_H__
00021
00026 #include "csextern.h"
00027
00028 class csSchedulePart;
00029
00081 class CS_CRYSTALSPACE_EXPORT csSchedule
00082 {
00083 private:
00085 csSchedulePart *first;
00086
00088 void InsertCall(csSchedulePart *part, int afternow);
00090 void RemoveCall(csSchedulePart *prev, csSchedulePart *part);
00091
00092 public:
00094 csSchedule();
00096 ~csSchedule();
00097
00102 void TimePassed(int elapsed_time);
00103
00110 void AddCallback(void (*func)(void*), void *arg, int delay);
00111
00118 void AddRepeatCallback(void (*func)(void*), void *arg, int period);
00119
00124 void RemoveCallback(void (*func)(void*), void *arg, int period);
00125
00130 void RemoveCallback(void (*func)(void*), void *arg);
00131
00141 void RemoveCallback(void *arg);
00142 };
00143
00144 #endif // __CS_SCHEDULE_H__