FreeRTOScpp
FreeRTOScpp::EventGroup Class Reference

#include <EventCPP.h>

Collaboration diagram for FreeRTOScpp::EventGroup:

Public Member Functions

 EventGroup ()
 
 ~EventGroup ()
 
EventBits_t clear (EventBits_t bits)
 Clear Event Bits. More...
 
EventBits_t clear_ISR (EventBits_t bits)
 
EventBits_t get ()
 Get Event Bits. More...
 
EventBits_t get_ISR ()
 
EventBits_t set (EventBits_t bits)
 Set Event Bits. More...
 
EventBits_t set_ISR (EventBits_t bits, portBASE_TYPE &waswoken)
 
EventBits_t sync (EventBits_t set, EventBits_t wait, TickType_t ticks=portMAX_DELAY)
 Event Group Sync. More...
 
EventBits_t sync (EventBits_t set, EventBits_t wait, Time_ms ms)
 Event Group Sync. More...
 
EventBits_t wait (EventBits_t waitBits, bool clear=true, bool all=false, TickType_t ticks=portMAX_DELAY)
 Wait for Event. More...
 
EventBits_t wait (EventBits_t waitBits, bool clear, bool all, Time_ms ms)
 Wait for Event. More...
 

Protected Attributes

EventGroupHandle_t eventHandle
 

Constructor & Destructor Documentation

◆ EventGroup()

FreeRTOScpp::EventGroup::EventGroup ( )
inline

References eventHandle.

◆ ~EventGroup()

FreeRTOScpp::EventGroup::~EventGroup ( )
inline

References eventHandle.

Member Function Documentation

◆ clear()

EventBits_t FreeRTOScpp::EventGroup::clear ( EventBits_t  bits)
inline

Clear Event Bits.

Parameters
bitsThe Event Bits to Set.

References eventHandle.

Referenced by wait().

Here is the caller graph for this function:

◆ clear_ISR()

EventBits_t FreeRTOScpp::EventGroup::clear_ISR ( EventBits_t  bits)
inline

References eventHandle.

◆ get()

EventBits_t FreeRTOScpp::EventGroup::get ( )
inline

Get Event Bits.

References eventHandle.

◆ get_ISR()

EventBits_t FreeRTOScpp::EventGroup::get_ISR ( )
inline

References eventHandle.

◆ set()

EventBits_t FreeRTOScpp::EventGroup::set ( EventBits_t  bits)
inline

Set Event Bits.

Set Event bits and activate all tasks waiting for those bits.

Parameters
bitsThe Event Bits to Set.

References eventHandle.

◆ set_ISR()

EventBits_t FreeRTOScpp::EventGroup::set_ISR ( EventBits_t  bits,
portBASE_TYPE &  waswoken 
)
inline

References eventHandle.

◆ sync() [1/2]

EventBits_t FreeRTOScpp::EventGroup::sync ( EventBits_t  set,
EventBits_t  wait,
TickType_t  ticks = portMAX_DELAY 
)
inline

Event Group Sync.

Sets the set bits than wait for all of the wait bits, and then clear all those bits.

Returns
the value of the event group befor clearing the bits.

References eventHandle.

◆ sync() [2/2]

EventBits_t FreeRTOScpp::EventGroup::sync ( EventBits_t  set,
EventBits_t  wait,
Time_ms  ms 
)
inline

Event Group Sync.

Sets the set bits than wait for all of the wait bits, and then clear all those bits.

Returns
the value of the event group befor clearing the bits.

References eventHandle, and FreeRTOScpp::ms2ticks().

Here is the call graph for this function:

◆ wait() [1/2]

EventBits_t FreeRTOScpp::EventGroup::wait ( EventBits_t  waitBits,
bool  clear = true,
bool  all = false,
TickType_t  ticks = portMAX_DELAY 
)
inline

Wait for Event.

Parameters
waitBitsThe bit(s) to wait for
clearIf true, then the bits are cleared after the wait.
allIf true, then wait for ALL the bits to be true, else for ANY of the bits
ticksHow long to wait for the bits to be set
Returns
The value of the event bits (before clearing) at the end of the wait.

References clear(), and eventHandle.

Here is the call graph for this function:

◆ wait() [2/2]

EventBits_t FreeRTOScpp::EventGroup::wait ( EventBits_t  waitBits,
bool  clear,
bool  all,
Time_ms  ms 
)
inline

Wait for Event.

Parameters
waitBitsThe bit(s) to wait for
clearIf true, then the bits are cleared after the wait.
allIf true, then wait for ALL the bits to be true, else for ANY of the bits
ticksHow long to wait for the bits to be set
Returns
The value of the event bits (before clearing) at the end of the wait.

References eventHandle, and FreeRTOScpp::ms2ticks().

Here is the call graph for this function:

Member Data Documentation

◆ eventHandle

EventGroupHandle_t FreeRTOScpp::EventGroup::eventHandle
protected

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