taskManager.h

Go to the documentation of this file.
00001 /*************************************************************************/
00015 #ifndef _TASKMANAGER_H
00016 #define _TASKMANAGER_H
00017 #include <inttypes.h>
00018 #include <types.h>
00019 #include <atomic.h>
00020 
00022 typedef enum
00023 {
00024   MAC_PHY_HWD_TASK_ID = 1 << 0,
00025   HAL_TASK_ID         = 1 << 1,
00026   MAC_HWI_TASK_ID     = 1 << 2,
00027   NWK_TASK_ID         = 1 << 3,
00028   ZDO_TASK_ID         = 1 << 4,
00029   APS_TASK_ID         = 1 << 5,
00030   SSP_TASK_ID         = 1 << 6,
00031   TC_TASK_ID          = 1 << 7,
00032   BSP_TASK_ID         = 1 << 8,
00033   APL_TASK_ID         = 1 << 9
00034 } SYS_TaskId_t;
00035 
00037 extern void HAL_TaskHandler(void);
00039 extern void BSP_TaskHandler(void);
00041 extern void MAC_PHY_HWD_TaskHandler(void);
00043 extern void MAC_HWI_TaskHandler(void);
00045 extern void NWK_TaskHandler(void);
00047 extern void ZDO_TaskHandler(void);
00049 extern void APS_TaskHandler(void);
00054 extern void APL_TaskHandler(void);
00056 extern void SSP_TaskHandler(void);
00058 extern void TC_TaskHandler(void);
00059 
00060 extern volatile uint16_t SYS_taskFlag;
00061 
00062 /**************************************************************************************/
00079 static inline void SYS_PostTask(SYS_TaskId_t taskId)
00080 {
00081   ATOMIC_SECTION_ENTER
00082    SYS_taskFlag |= taskId;
00083   ATOMIC_SECTION_LEAVE
00084 }
00085 
00086 /**************************************************************************************/
00089 bool SYS_RunTask();
00090 
00091 #endif

Generated on Wed Apr 2 19:06:16 2008 for ZigBeeNet Stack Documentation by  doxygen 1.5.1-p1