added debug statements, dynamic allocation is working for tasks
[mTask.git] / client / task.h
index 0ea1b99..5dba8d2 100644 (file)
@@ -1,23 +1,31 @@
 #ifndef TASK_H
 #define TASK_H
-
-#define MAXTASKS 5
-#define MAXTASKSIZE 1024
+#ifdef __cplusplus
+extern "C" {
+#endif
 
 #include <stdint.h>
 #include <stdbool.h>
 
 struct task {
-       uint8_t bc[MAXTASKSIZE];
-       uint16_t tlen;
+       uint16_t tasklength;
        uint16_t interval;
-       long lastrun;
-       bool used;
+       unsigned long lastrun;
+       uint8_t taskid;
+       struct task *next;
+       uint8_t *bc;
 };
 
+bool is_interrupt_task(struct task* t);
+bool had_interrupt(struct task* t);
+
+struct task *task_head(void);
+struct task *task_next(struct task *t);
 void task_init(void);
 void task_register(void);
-void task_delete(void);
-struct task *task_get(int num);
+void task_delete(uint8_t num);
 
+#ifdef __cplusplus
+}
+#endif
 #endif