Files
JPOS/src/headers/scheduler.h

22 lines
469 B
C
Raw Normal View History

#pragma once
#include "stddef.h"
#include "stdlib.h"
#define SCHED_tasksize 128
#define SCHED_freq 1000
typedef struct {
uint8_t inUse;
uint8_t type;
size_t ticks;
void* callback;
} task_t;
extern task_t tasks[SCHED_tasksize];
void tick();
size_t schedule_task(size_t tick, void* callback);
uint8_t schedule_sleep(size_t tick);
size_t schedule_task_fl(double time, void* callback);
uint8_t schedule_sleep_fl(double time);
task_t* schedule_getTask(size_t index);