vsk_Task_Class_t * vsk_Task_Class_init(vsk_Task_Class_t *const cls, vsk_Task_Class_OnStart_t const onStart, vsk_Task_Class_OnIdle_t const onIdle)
Initializes the Task class.
Definition vsk_Task.c:14
void vsk_Task_activate(vsk_Task_t *const self)
Activates a task.
Definition vsk_Task.c:109
void vsk_Task_suspend(vsk_Task_t *const self)
Suspends a task.
Definition vsk_Task.c:123
void(* vsk_Task_Class_OnStart_t)(void)
On start callback.
Definition vsk_Task.h:20
vsk_Task_Class_t vsk_Task_Class
Task class instance.
Definition vsk_Task.c:6
vsk_Task_t * vsk_Task_init(vsk_Task_t *const self, vsk_Task_Operation_t const operation, void *const obj)
Initializes a task.
Definition vsk_Task.c:54
vsk_Task_State_t
Task state.
Definition vsk_Task.h:54
void(* vsk_Task_Class_OnIdle_t)(void)
On idle callback.
Definition vsk_Task.h:25
void(* vsk_Task_Operation_t)(void *const obj)
Task operation.
Definition vsk_Task.h:35
void vsk_Task_Class_startScheduler(vsk_Task_Class_t *const cls)
Starts the scheduler.
Definition vsk_Task.c:30
@ vsk_Task_State_ready
Definition vsk_Task.h:56
@ vsk_Task_State_suspended
Definition vsk_Task.h:55
@ vsk_Task_State_running
Definition vsk_Task.h:57
Task class.
Definition vsk_Task.h:45
vsk_Task_Class_OnStart_t onStart
Definition vsk_Task.h:47
ctb_DList_t tasks
Definition vsk_Task.h:46
vsk_Task_Class_OnIdle_t onIdle
Definition vsk_Task.h:48
Task.
Definition vsk_Task.h:63
ctb_DNode_t node
Definition vsk_Task.h:65
uint32_t maxRunTimeMillis
Definition vsk_Task.h:70
uint32_t cpuLoad
Definition vsk_Task.h:72
vsk_Task_Class_t * cls
Definition vsk_Task.h:64
void * obj
Definition vsk_Task.h:67
vsk_Task_State_t state
Definition vsk_Task.h:68
vsk_Task_Operation_t operation
Definition vsk_Task.h:66
uint32_t lastStartTimeMillis
Definition vsk_Task.h:69
uint32_t minPeriodMillis
Definition vsk_Task.h:71