SatCat5
satcat5::freertos::SatCatTask< TASK_SIZE, TASK_PRIORITY > Class Template Reference

Detailed Description

template<configSTACK_DEPTH_TYPE TASK_SIZE, unsigned TASK_PRIORITY>
class satcat5::freertos::SatCatTask< TASK_SIZE, TASK_PRIORITY >

Instantiate a FreeRTOS statically-allocated Task that services the SatCat5 core loop.

The task implementation is in a separate static member function StaticTask::task(). To use, instantiate this class in global scope of your main file and call vTaskStartScheduler() as is typical for FreeRTOS.

Definition at line 106 of file task.h.

#include <task.h>

Inheritance diagram for satcat5::freertos::SatCatTask< TASK_SIZE, TASK_PRIORITY >:
[legend]
Collaboration diagram for satcat5::freertos::SatCatTask< TASK_SIZE, TASK_PRIORITY >:
[legend]

Public Member Functions

 SatCatTask (ControllerFreeRTOS *irq_controller, TickTimer *tick_timer)
 
void suspend (void)
 Suspends running task.
 
void resume (void)
 Resumes suspended task.
 
void resume_from_isr (void)
 Resumes suspended task (should be called from ISR)
 
TaskHandle_t get_task_handle (void)
 Returns task handle of created task.
 
void notify (void)
 Notify Task.
 
void notify_from_isr (void)
 Notify Task (should be called from ISR)
 

Static Public Member Functions

static void task (void *pvParams)
 Core task entry function, performs setup then calls poll::service_all() on a loop. More...
 

Public Attributes

ControllerFreeRTOSm_irq_controller
 Interrupt Controller.
 
TickTimerm_tick_timer
 Reference Timer.
 

Protected Attributes

TaskHandle_t m_task_handle
 Task Handle.
 
StackType_t m_stack [TASK_SIZE]
 Task Stack.
 
StaticTask_t m_static_task
 Task internals.
 

Member Function Documentation

◆ task()

template<configSTACK_DEPTH_TYPE TASK_SIZE, unsigned TASK_PRIORITY>
static void satcat5::freertos::SatCatTask< TASK_SIZE, TASK_PRIORITY >::task ( void *  pvParams)
inlinestatic

Core task entry function, performs setup then calls poll::service_all() on a loop.

Parameters
pvParamsA pointer to a freertos::Parameters struct.

Definition at line 125 of file task.h.


The documentation for this class was generated from the following file: