Very Simple Kernel 0.1.0
|
Data Structures | |
struct | vsk_Task_Class |
Task class. More... | |
struct | vsk_Task |
Task. More... | |
Typedefs | |
typedef struct vsk_Task_Class | vsk_Task_Class_t |
Task class. | |
typedef void(* | vsk_Task_Class_OnStart_t) (void) |
On start callback. | |
typedef void(* | vsk_Task_Class_OnIdle_t) (void) |
On idle callback. | |
typedef struct vsk_Task | vsk_Task_t |
Task. | |
typedef void(* | vsk_Task_Operation_t) (void *const obj) |
Task operation. | |
Enumerations | |
enum | vsk_Task_State_t { vsk_Task_State_suspended , vsk_Task_State_ready , vsk_Task_State_running } |
Task state. More... | |
Functions | |
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. | |
void | vsk_Task_Class_startScheduler (vsk_Task_Class_t *const cls) |
Starts the scheduler. | |
vsk_Task_t * | vsk_Task_init (vsk_Task_t *const self, vsk_Task_Operation_t const operation, void *const obj) |
Initializes a task. | |
void | vsk_Task_activate (vsk_Task_t *const self) |
Activates a task. | |
void | vsk_Task_suspend (vsk_Task_t *const self) |
Suspends a task. | |
Variables | |
vsk_Task_Class_t | vsk_Task_Class |
Task class instance. | |
enum vsk_Task_State_t |
void vsk_Task_activate | ( | vsk_Task_t *const | self | ) |
Activates a task.
self | Task reference |
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.
cls | Task class reference |
onStart | On start callback |
onIdle | On idle callback |
void vsk_Task_Class_startScheduler | ( | vsk_Task_Class_t *const | cls | ) |
Starts the scheduler.
cls | Task class reference |
vsk_Task_t * vsk_Task_init | ( | vsk_Task_t *const | self, |
vsk_Task_Operation_t const | operation, | ||
void *const | obj ) |
Initializes a task.
self | Task reference |
operation | Task operation |
obj | Object reference to pass to the callback (can be NULL) |
void vsk_Task_suspend | ( | vsk_Task_t *const | self | ) |
Suspends a task.
self | Task reference |