--- a/drivers/timers_unix/timers_unix.c Tue Apr 29 13:54:23 2008 +0200
+++ b/drivers/timers_unix/timers_unix.c Fri May 02 17:30:37 2008 +0200
@@ -17,6 +17,11 @@
timer_t timer;
+void TimerCleanup(void)
+{
+ /* only used in realtime apps */
+}
+
void EnterMutex(void)
{
pthread_mutex_lock(&CanFestival_mutex);
@@ -36,7 +41,7 @@
// printf("getCurrentTime() return=%u\n", p.tv_usec);
}
-void initTimer(void)
+void TimerInit(void)
{
struct sigevent sigev;
@@ -52,16 +57,16 @@
timer_create (CLOCK_REALTIME, &sigev, &timer);
}
-void StopTimerLoop(void)
+void StopTimerLoop(TimerCallback_t exitfunction)
{
EnterMutex();
timer_delete (timer);
+ exitfunction(NULL,0);
LeaveMutex();
}
void StartTimerLoop(TimerCallback_t init_callback)
{
- initTimer();
EnterMutex();
// At first, TimeDispatch will call init_callback.
SetAlarm(NULL, 0, init_callback, 0, 0);