Very Simple Kernel 0.1.0
Loading...
Searching...
No Matches
vsk_Task.h File Reference
#include "ctb_DList.h"
#include "vsk_Task.h"
#include <stdbool.h>
#include <stdint.h>

Go to the source code of this file.

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_tvsk_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_tvsk_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.