scheduler_task.hpp File Reference

C++ Task class based on FreeRTOSThis file provides the structure to create and manage a FreeRTOS task. More...

#include <stdint.h>
#include "FreeRTOS.h"
#include "queue.h"
#include "task.h"
Include dependency graph for scheduler_task.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

class  scheduler_task
 

Functions

void scheduler_add_task (scheduler_task *task)
 
void scheduler_start (bool dbg_print=false, bool register_internal_tlm=false)
 

Detailed Description

C++ Task class based on FreeRTOS

This file provides the structure to create and manage a FreeRTOS task.

See also
scheduler_task for further documentation

20140215 : Added add/get sharedHandles() by index (faster). Made some functions static with documentation on how to use them. 20140211 : Fixed bug with statistical update (ticks to ms conversion) 20140209 : Added debug print option.

See also
scheduler_start(); 20140205 : Added resume(), provided simplified cpu usage 20131201 : Remove vector dependency, use internal linked list without a library dependency 20131007 : Enhanced CPU usage API 20130415 : Added queue set functionality

Function Documentation

void scheduler_add_task ( scheduler_task task)

Adds your task to the scheduler

Parameters
taskThe pointer of your allocated class.
1 scheduler_add_task(new my_task());
void scheduler_start ( bool  dbg_print = false,
bool  register_internal_tlm = false 
)

Starts FreeRTOS scheduler with the tasks added by scheduler_add_task()

Parameters
register_internal_tlmIf true, then this method will register the statistical telemetry for each task.
Note
This is different from the regTlm() method that is called regardless.
Parameters
dbg_printIf true, process of initing and starting the tasks is printed through stdio output