STAR
Cal STAR — firmware, DAQ server, and engine design
Loading...
Searching...
No Matches
event_groups.h File Reference
#include "timers.h"
Include dependency graph for event_groups.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define eventCLEAR_EVENTS_ON_EXIT_BIT   0x0100U
#define eventUNBLOCKED_DUE_TO_BIT_SET   0x0200U
#define eventWAIT_FOR_ALL_BITS   0x0400U
#define eventEVENT_BITS_CONTROL_BYTES   0xff00U
#define xEventGroupClearBitsFromISR(xEventGroup, uxBitsToClear)
#define xEventGroupSetBitsFromISR(xEventGroup, uxBitsToSet, pxHigherPriorityTaskWoken)
#define xEventGroupGetBits(xEventGroup)

Typedefs

typedef struct EventGroupDef_t * EventGroupHandle_t
typedef TickType_t EventBits_t

Functions

EventBits_t xEventGroupWaitBits (EventGroupHandle_t xEventGroup, const EventBits_t uxBitsToWaitFor, const BaseType_t xClearOnExit, const BaseType_t xWaitForAllBits, TickType_t xTicksToWait) PRIVILEGED_FUNCTION
EventBits_t xEventGroupClearBits (EventGroupHandle_t xEventGroup, const EventBits_t uxBitsToClear) PRIVILEGED_FUNCTION
EventBits_t xEventGroupSetBits (EventGroupHandle_t xEventGroup, const EventBits_t uxBitsToSet) PRIVILEGED_FUNCTION
EventBits_t xEventGroupSync (EventGroupHandle_t xEventGroup, const EventBits_t uxBitsToSet, const EventBits_t uxBitsToWaitFor, TickType_t xTicksToWait) PRIVILEGED_FUNCTION
EventBits_t xEventGroupGetBitsFromISR (EventGroupHandle_t xEventGroup) PRIVILEGED_FUNCTION
void vEventGroupDelete (EventGroupHandle_t xEventGroup) PRIVILEGED_FUNCTION
 event_groups.h
void vEventGroupSetBitsCallback (void *pvEventGroup, const uint32_t ulBitsToSet) PRIVILEGED_FUNCTION
 event_groups.h
void vEventGroupClearBitsCallback (void *pvEventGroup, const uint32_t ulBitsToClear) PRIVILEGED_FUNCTION

Macro Definition Documentation

◆ eventCLEAR_EVENTS_ON_EXIT_BIT

#define eventCLEAR_EVENTS_ON_EXIT_BIT   0x0100U

Definition at line 43 of file event_groups.h.

Referenced by xEventGroupSetBits(), xEventGroupSync(), and xEventGroupWaitBits().

◆ eventEVENT_BITS_CONTROL_BYTES

#define eventEVENT_BITS_CONTROL_BYTES   0xff00U

◆ eventUNBLOCKED_DUE_TO_BIT_SET

#define eventUNBLOCKED_DUE_TO_BIT_SET   0x0200U

◆ eventWAIT_FOR_ALL_BITS

#define eventWAIT_FOR_ALL_BITS   0x0400U

Definition at line 45 of file event_groups.h.

Referenced by xEventGroupSetBits(), xEventGroupSync(), and xEventGroupWaitBits().

◆ xEventGroupClearBitsFromISR

#define xEventGroupClearBitsFromISR ( xEventGroup,
uxBitsToClear )
Value:
xTimerPendFunctionCallFromISR( vEventGroupClearBitsCallback, ( void * ) ( xEventGroup ), ( uint32_t ) ( uxBitsToClear ), NULL )
void vEventGroupClearBitsCallback(void *pvEventGroup, const uint32_t ulBitsToClear)
#define NULL
Definition usbd_def.h:44
BaseType_t xTimerPendFunctionCallFromISR(PendedFunction_t xFunctionToPend, void *pvParameter1, uint32_t ulParameter2, BaseType_t *pxHigherPriorityTaskWoken) PRIVILEGED_FUNCTION
BaseType_t xTimerPendFunctionCallFromISR( PendedFunction_t xFunctionToPend, ...

Definition at line 447 of file event_groups.h.

Referenced by osEventFlagsClear().

◆ xEventGroupGetBits

#define xEventGroupGetBits ( xEventGroup)
Value:
xEventGroupClearBits( ( xEventGroup ), 0 )
EventBits_t xEventGroupClearBits(EventGroupHandle_t xEventGroup, const EventBits_t uxBitsToClear)

Definition at line 753 of file event_groups.h.

Referenced by osEventFlagsGet().

◆ xEventGroupSetBitsFromISR

#define xEventGroupSetBitsFromISR ( xEventGroup,
uxBitsToSet,
pxHigherPriorityTaskWoken )
Value:
xTimerPendFunctionCallFromISR( vEventGroupSetBitsCallback, ( void * ) ( xEventGroup ), ( uint32_t ) ( uxBitsToSet ), ( pxHigherPriorityTaskWoken ) )
void vEventGroupSetBitsCallback(void *pvEventGroup, const uint32_t ulBitsToSet)
event_groups.h

Definition at line 603 of file event_groups.h.

Referenced by osEventFlagsSet().

Typedef Documentation

◆ EventBits_t

Definition at line 113 of file event_groups.h.

◆ EventGroupHandle_t

Definition at line 103 of file event_groups.h.

Function Documentation

◆ vEventGroupClearBitsCallback()

void vEventGroupClearBitsCallback ( void * pvEventGroup,
const uint32_t ulBitsToClear )

Definition at line 707 of file event_groups.c.

References xEventGroupClearBits().

◆ vEventGroupDelete()

void vEventGroupDelete ( EventGroupHandle_t xEventGroup)

event_groups.h

void xEventGroupDelete( EventGroupHandle_t xEventGroup );
struct EventGroupDef_t * EventGroupHandle_t

Delete an event group that was previously created by a call to xEventGroupCreate(). Tasks that are blocked on the event group will be unblocked and obtain 0 as the event group's value.

Parameters
xEventGroupThe event group being deleted.

Definition at line 614 of file event_groups.c.

References configASSERT, eventUNBLOCKED_DUE_TO_BIT_SET, listCURRENT_LIST_LENGTH, mtCOVERAGE_TEST_MARKER, pdFALSE, xLIST_ITEM::pxNext, traceEVENT_GROUP_DELETE, vPortFree(), vTaskRemoveFromUnorderedEventList(), vTaskSuspendAll(), xLIST::xListEnd, xTaskResumeAll(), and EventGroupDef_t::xTasksWaitingForBits.

Referenced by osEventFlagsDelete().

◆ vEventGroupSetBitsCallback()

void vEventGroupSetBitsCallback ( void * pvEventGroup,
const uint32_t ulBitsToSet )

event_groups.h

BaseType_t xEventGroupGetStaticBuffer( EventGroupHandle_t xEventGroup,
StaticEventGroup_t ** ppxEventGroupBuffer );
struct xSTATIC_EVENT_GROUP StaticEventGroup_t
long BaseType_t
Definition portmacro.h:59

Retrieve a pointer to a statically created event groups's data structure buffer. It is the same buffer that is supplied at the time of creation.

Parameters
xEventGroupThe event group for which to retrieve the buffer.
ppxEventGroupBufferUsed to return a pointer to the event groups's data structure buffer.
Returns
pdTRUE if the buffer was retrieved, pdFALSE otherwise.

Definition at line 698 of file event_groups.c.

References xEventGroupSetBits().

◆ xEventGroupClearBits()

◆ xEventGroupGetBitsFromISR()

◆ xEventGroupSetBits()

◆ xEventGroupSync()

◆ xEventGroupWaitBits()