![]()  | 
        
           Wirepas SDK
           
         | 
        
Application scheduler library. Allows scheduling of multiple application tasks concurrently.
Definition in file app_scheduler.h.
Go to the source code of this file.
Typedefs | |
| typedef uint32_t(* | task_cb_f) () | 
| Task callback to be registered.  More... | |
Functions | |
| void | App_Scheduler_init (void) | 
| Initialize scheduler.  More... | |
| app_scheduler_res_e | App_Scheduler_addTask_execTime (task_cb_f cb, uint32_t delay_ms, uint32_t exec_time_us) | 
| Add a task.  More... | |
| app_scheduler_res_e | App_Scheduler_cancelTask (task_cb_f cb) | 
| Cancel a task.  More... | |
Enumerations | |
| enum | app_scheduler_res_e {  APP_SCHEDULER_RES_OK = 0, APP_SCHEDULER_RES_NO_MORE_TASK = 1, APP_SCHEDULER_RES_UNKNOWN_TASK = 2, APP_SCHEDULER_RES_UNINITIALIZED = 3, APP_SCHEDULER_RES_TOO_LONG_EXECUTION_TIME = 4, APP_SCHEDULER_RES_TOO_SHORT_EXECUTION_TIME = 5 }  | 
| List of return code.  More... | |
Macros | |
| #define | APP_SCHEDULER_STOP_TASK ((uint32_t)(-1)) | 
| Value to return from task to remove it.  More... | |
| #define | APP_SCHEDULER_SCHEDULE_ASAP (0) | 
| Value to return from task or as initial time to be executed ASAP.  More... | |
| typedef uint32_t(* task_cb_f) () | 
Task callback to be registered.
Definition at line 32 of file app_scheduler.h.
| app_scheduler_res_e App_Scheduler_addTask_execTime | ( | task_cb_f | cb, | 
| uint32_t | delay_ms, | ||
| uint32_t | exec_time_us | ||
| ) | 
Add a task.
Example on use:
| cb | Callback to be called from main periodic task. Same cb can only be added once. Calling this function with an already registered cb will update the next scheduled time. | 
| delay_ms | delay in ms to be scheduled (0 to be scheduled asap) | 
| exec_time_us | Maximum execution time required for the task to be executed | 
| app_scheduler_res_e App_Scheduler_cancelTask | ( | task_cb_f | cb | ) | 
Cancel a task.
| cb | Callback already registered from App_Scheduler_addTask. | 
| void App_Scheduler_init | ( | void | ) | 
Initialize scheduler.
| enum app_scheduler_res_e | 
List of return code.
Definition at line 47 of file app_scheduler.h.
| #define APP_SCHEDULER_SCHEDULE_ASAP (0) | 
Value to return from task or as initial time to be executed ASAP.
Definition at line 42 of file app_scheduler.h.
| #define APP_SCHEDULER_STOP_TASK ((uint32_t)(-1)) | 
Value to return from task to remove it.
Definition at line 37 of file app_scheduler.h.