timer.h

Go to the documentation of this file.
00001 /* timer.h */
00002 
00003 #include <routix/system.h>
00004 #include <routix/task.h>
00005 
00006 
00007 #ifndef __TIMER
00008 #define __TIMER
00009 
00010 extern dword jiffies;
00011 
00012 
00013 // Habilitamos el modo seguro de remoción de timers donde se realiza
00014 // su búsqueda previa antes de eliminarse
00015 #define SECURE_TIMER_OPER
00016 
00017 
00018 typedef struct timer_t {
00019         dword ticks;
00020   task_struct_t *process;
00021   void (*func)(struct timer_t *);                       
00022 
00023   void *data;                                           
00024   
00025         LIST_DATA(timer_t)      timer_list;                     
00026         
00027 } timer_t;      
00028 
00029 #define TIMER_TICKS(t)                  ((t)->ticks)
00030 #define TIMER_PROCESS(t)                ((t)->process)
00031 #define TIMER_FUNCTION(t)               ((t)->func)
00032 #define TIMER_DATA(t)                           ((t)->data)
00033 #define TIMER_STATE(t)                  ((t)->state)
00034 
00035 
00036 void actualizar_timers(void);
00037 inline timer_t *create_timer(dword ticks, task_struct_t *proceso, void (*func)(struct timer_t *info), void *data);
00038 inline int clean_timer(timer_t *timer);
00039 
00040 inline void timer_dump(void);
00041 
00042 
00043 #define TIMER_USEGUNDOS(segundos) (segundos/10000)
00044 #define USECONDS_TO_TICKS(useconds) ((useconds)/10000)
00045 
00046 #endif

Generated on Sun May 30 18:38:35 2004 for Routix OS by doxygen 1.3.6