|
STAR
Cal STAR — firmware, DAQ server, and engine design
|
Go to the source code of this file.
Classes | |
| struct | QueuePointers |
| struct | SemaphoreData |
| struct | QueueDefinition |
Macros | |
| #define | MPU_WRAPPERS_INCLUDED_FROM_API_FILE |
| #define | queueUNLOCKED ( ( int8_t ) -1 ) |
| #define | queueLOCKED_UNMODIFIED ( ( int8_t ) 0 ) |
| #define | queueINT8_MAX ( ( int8_t ) 127 ) |
| #define | uxQueueType pcHead |
| #define | queueQUEUE_IS_MUTEX NULL |
| #define | queueSEMAPHORE_QUEUE_ITEM_LENGTH ( ( UBaseType_t ) 0 ) |
| #define | queueMUTEX_GIVE_BLOCK_TIME ( ( TickType_t ) 0U ) |
| #define | queueYIELD_IF_USING_PREEMPTION() |
| #define | prvLockQueue(pxQueue) |
| #define | prvIncrementQueueTxLock(pxQueue, cTxLock) |
| #define | prvIncrementQueueRxLock(pxQueue, cRxLock) |
Typedefs | |
| typedef struct QueuePointers | QueuePointers_t |
| typedef struct SemaphoreData | SemaphoreData_t |
| typedef struct QueueDefinition | xQUEUE |
| typedef xQUEUE | Queue_t |
| #define prvIncrementQueueRxLock | ( | pxQueue, | |
| cRxLock ) |
Definition at line 285 of file queue.c.
Referenced by xQueueReceiveFromISR().
| #define prvIncrementQueueTxLock | ( | pxQueue, | |
| cTxLock ) |
Definition at line 270 of file queue.c.
Referenced by xQueueGenericSendFromISR(), and xQueueGiveFromISR().
| #define prvLockQueue | ( | pxQueue | ) |
Definition at line 251 of file queue.c.
Referenced by xQueueGenericSend(), xQueuePeek(), xQueueReceive(), and xQueueSemaphoreTake().
| #define queueLOCKED_UNMODIFIED ( ( int8_t ) 0 ) |
Definition at line 54 of file queue.c.
Referenced by prvUnlockQueue().
| #define queueMUTEX_GIVE_BLOCK_TIME ( ( TickType_t ) 0U ) |
| #define queueQUEUE_IS_MUTEX NULL |
Definition at line 67 of file queue.c.
Referenced by prvCopyDataToQueue(), xQueueGiveFromISR(), and xQueueSemaphoreTake().
| #define queueSEMAPHORE_QUEUE_ITEM_LENGTH ( ( UBaseType_t ) 0 ) |
| #define queueUNLOCKED ( ( int8_t ) -1 ) |
Definition at line 53 of file queue.c.
Referenced by prvUnlockQueue(), xQueueGenericReset(), xQueueGenericSendFromISR(), xQueueGiveFromISR(), and xQueueReceiveFromISR().
| #define queueYIELD_IF_USING_PREEMPTION | ( | ) |
Definition at line 90 of file queue.c.
Referenced by xQueueGenericReset(), xQueueGenericSend(), xQueuePeek(), xQueueReceive(), and xQueueSemaphoreTake().
| typedef struct QueuePointers QueuePointers_t |
| typedef struct SemaphoreData SemaphoreData_t |
| typedef struct QueueDefinition xQUEUE |
|
static |
Definition at line 2319 of file queue.c.
References mtCOVERAGE_TEST_MARKER, QueueDefinition::pcHead, QueuePointers::pcReadFrom, QueuePointers::pcTail, QueueDefinition::u, QueueDefinition::uxItemSize, and QueueDefinition::xQueue.
Referenced by xQueuePeek(), xQueuePeekFromISR(), xQueueReceive(), and xQueueReceiveFromISR().
|
static |
Definition at line 2236 of file queue.c.
References mtCOVERAGE_TEST_MARKER, NULL, QueueDefinition::pcHead, QueuePointers::pcReadFrom, QueuePointers::pcTail, QueueDefinition::pcWriteTo, pdFALSE, queueOVERWRITE, queueQUEUE_IS_MUTEX, queueSEND_TO_BACK, QueueDefinition::u, QueueDefinition::uxItemSize, QueueDefinition::uxMessagesWaiting, SemaphoreData::xMutexHolder, QueueDefinition::xQueue, QueueDefinition::xSemaphore, and xTaskPriorityDisinherit().
Referenced by xQueueGenericSend(), and xQueueGenericSendFromISR().
|
static |
Definition at line 543 of file queue.c.
References NULL, QueueDefinition::pcHead, pdTRUE, traceQUEUE_CREATE, QueueDefinition::uxItemSize, QueueDefinition::uxLength, and xQueueGenericReset().
|
static |
Definition at line 2460 of file queue.c.
References pdFALSE, pdTRUE, taskENTER_CRITICAL, taskEXIT_CRITICAL, and QueueDefinition::uxMessagesWaiting.
Referenced by xQueuePeek(), xQueueReceive(), and xQueueSemaphoreTake().
|
static |
Definition at line 2501 of file queue.c.
References pdFALSE, pdTRUE, taskENTER_CRITICAL, taskEXIT_CRITICAL, QueueDefinition::uxLength, and QueueDefinition::uxMessagesWaiting.
Referenced by xQueueGenericSend().
|
static |
Definition at line 2340 of file queue.c.
References QueueDefinition::cRxLock, QueueDefinition::cTxLock, listLIST_IS_EMPTY, mtCOVERAGE_TEST_MARKER, NULL, pdFALSE, queueLOCKED_UNMODIFIED, queueUNLOCKED, taskENTER_CRITICAL, taskEXIT_CRITICAL, vTaskMissedYield(), xTaskRemoveFromEventList(), QueueDefinition::xTasksWaitingToReceive, and QueueDefinition::xTasksWaitingToSend.
Referenced by xQueueGenericSend(), xQueuePeek(), xQueueReceive(), and xQueueSemaphoreTake().
| UBaseType_t uxQueueGetQueueItemSize | ( | QueueHandle_t | xQueue | ) |
| UBaseType_t uxQueueGetQueueLength | ( | QueueHandle_t | xQueue | ) |
| UBaseType_t uxQueueMessagesWaiting | ( | const QueueHandle_t | xQueue | ) |
Definition at line 2079 of file queue.c.
References configASSERT, taskENTER_CRITICAL, and taskEXIT_CRITICAL.
Referenced by osMessageQueueGetCount().
| UBaseType_t uxQueueMessagesWaitingFromISR | ( | const QueueHandle_t | xQueue | ) |
Definition at line 2112 of file queue.c.
References configASSERT, and QueueDefinition::uxMessagesWaiting.
Referenced by osMessageQueueGetCount().
| UBaseType_t uxQueueSpacesAvailable | ( | const QueueHandle_t | xQueue | ) |
Definition at line 2095 of file queue.c.
References configASSERT, taskENTER_CRITICAL, taskEXIT_CRITICAL, QueueDefinition::uxLength, and QueueDefinition::uxMessagesWaiting.
Referenced by osMessageQueueGetSpace().
| void vQueueDelete | ( | QueueHandle_t | xQueue | ) |
Definition at line 2124 of file queue.c.
References configASSERT, mtCOVERAGE_TEST_MARKER, pdFALSE, traceQUEUE_DELETE, vPortFree(), and vQueueUnregisterQueue.
Referenced by osMessageQueueDelete().
| BaseType_t xQueueGenericReset | ( | QueueHandle_t | xQueue, |
| BaseType_t | xNewQueue ) |
Definition at line 296 of file queue.c.
References configASSERT, QueueDefinition::cRxLock, QueueDefinition::cTxLock, listLIST_IS_EMPTY, mtCOVERAGE_TEST_MARKER, NULL, QueueDefinition::pcHead, QueuePointers::pcReadFrom, QueuePointers::pcTail, QueueDefinition::pcWriteTo, pdFAIL, pdFALSE, pdPASS, queueUNLOCKED, queueYIELD_IF_USING_PREEMPTION, taskENTER_CRITICAL, taskEXIT_CRITICAL, QueueDefinition::u, QueueDefinition::uxItemSize, QueueDefinition::uxLength, QueueDefinition::uxMessagesWaiting, vListInitialise(), QueueDefinition::xQueue, xTaskRemoveFromEventList(), QueueDefinition::xTasksWaitingToReceive, and QueueDefinition::xTasksWaitingToSend.
Referenced by prvInitialiseNewQueue().
| BaseType_t xQueueGenericSend | ( | QueueHandle_t | xQueue, |
| const void *const | pvItemToQueue, | ||
| TickType_t | xTicksToWait, | ||
| const BaseType_t | xCopyPosition ) |
Definition at line 884 of file queue.c.
References configASSERT, errQUEUE_FULL, listLIST_IS_EMPTY, mtCOVERAGE_TEST_MARKER, NULL, pdFALSE, pdPASS, pdTRUE, portYIELD_WITHIN_API, prvCopyDataToQueue(), prvIsQueueFull(), prvLockQueue, prvUnlockQueue(), queueOVERWRITE, queueYIELD_IF_USING_PREEMPTION, taskENTER_CRITICAL, taskEXIT_CRITICAL, taskSCHEDULER_SUSPENDED, traceBLOCKING_ON_QUEUE_SEND, traceQUEUE_SEND, traceQUEUE_SEND_FAILED, QueueDefinition::uxItemSize, QueueDefinition::uxLength, QueueDefinition::uxMessagesWaiting, vTaskInternalSetTimeOutState(), vTaskPlaceOnEventList(), vTaskSuspendAll(), xTaskCheckForTimeOut(), xTaskGetSchedulerState(), xTaskRemoveFromEventList(), xTaskResumeAll(), QueueDefinition::xTasksWaitingToReceive, and QueueDefinition::xTasksWaitingToSend.
| BaseType_t xQueueGenericSendFromISR | ( | QueueHandle_t | xQueue, |
| const void *const | pvItemToQueue, | ||
| BaseType_t *const | pxHigherPriorityTaskWoken, | ||
| const BaseType_t | xCopyPosition ) |
Definition at line 1096 of file queue.c.
References configASSERT, QueueDefinition::cTxLock, errQUEUE_FULL, listLIST_IS_EMPTY, mtCOVERAGE_TEST_MARKER, NULL, pdFALSE, pdPASS, pdTRUE, portCLEAR_INTERRUPT_MASK_FROM_ISR, portSET_INTERRUPT_MASK_FROM_ISR, prvCopyDataToQueue(), prvIncrementQueueTxLock, queueOVERWRITE, queueUNLOCKED, traceQUEUE_SEND_FROM_ISR, traceQUEUE_SEND_FROM_ISR_FAILED, QueueDefinition::uxItemSize, QueueDefinition::uxLength, QueueDefinition::uxMessagesWaiting, xTaskRemoveFromEventList(), and QueueDefinition::xTasksWaitingToReceive.
| BaseType_t xQueueGiveFromISR | ( | QueueHandle_t | xQueue, |
| BaseType_t *const | pxHigherPriorityTaskWoken ) |
Definition at line 1261 of file queue.c.
References configASSERT, QueueDefinition::cTxLock, errQUEUE_FULL, listLIST_IS_EMPTY, mtCOVERAGE_TEST_MARKER, NULL, pdFALSE, pdPASS, pdTRUE, portCLEAR_INTERRUPT_MASK_FROM_ISR, portSET_INTERRUPT_MASK_FROM_ISR, prvIncrementQueueTxLock, queueQUEUE_IS_MUTEX, queueUNLOCKED, traceQUEUE_SEND_FROM_ISR, traceQUEUE_SEND_FROM_ISR_FAILED, QueueDefinition::u, QueueDefinition::uxItemSize, QueueDefinition::uxMessagesWaiting, SemaphoreData::xMutexHolder, QueueDefinition::xSemaphore, xTaskRemoveFromEventList(), and QueueDefinition::xTasksWaitingToReceive.
| BaseType_t xQueueIsQueueEmptyFromISR | ( | const QueueHandle_t | xQueue | ) |
Definition at line 2481 of file queue.c.
References configASSERT, pdFALSE, pdTRUE, and QueueDefinition::uxMessagesWaiting.
| BaseType_t xQueueIsQueueFullFromISR | ( | const QueueHandle_t | xQueue | ) |
Definition at line 2522 of file queue.c.
References configASSERT, pdFALSE, pdTRUE, QueueDefinition::uxLength, and QueueDefinition::uxMessagesWaiting.
| BaseType_t xQueuePeek | ( | QueueHandle_t | xQueue, |
| void *const | pvBuffer, | ||
| TickType_t | xTicksToWait ) |
Definition at line 1780 of file queue.c.
References configASSERT, errQUEUE_EMPTY, listLIST_IS_EMPTY, mtCOVERAGE_TEST_MARKER, NULL, QueuePointers::pcReadFrom, pdFALSE, pdPASS, pdTRUE, portYIELD_WITHIN_API, prvCopyDataFromQueue(), prvIsQueueEmpty(), prvLockQueue, prvUnlockQueue(), queueYIELD_IF_USING_PREEMPTION, taskENTER_CRITICAL, taskEXIT_CRITICAL, taskSCHEDULER_SUSPENDED, traceBLOCKING_ON_QUEUE_PEEK, traceQUEUE_PEEK, traceQUEUE_PEEK_FAILED, QueueDefinition::u, QueueDefinition::uxMessagesWaiting, vTaskInternalSetTimeOutState(), vTaskPlaceOnEventList(), vTaskSuspendAll(), QueueDefinition::xQueue, xTaskCheckForTimeOut(), xTaskGetSchedulerState(), xTaskRemoveFromEventList(), xTaskResumeAll(), and QueueDefinition::xTasksWaitingToReceive.
| BaseType_t xQueuePeekFromISR | ( | QueueHandle_t | xQueue, |
| void *const | pvBuffer ) |
Definition at line 2024 of file queue.c.
References configASSERT, NULL, QueuePointers::pcReadFrom, pdFAIL, pdPASS, portCLEAR_INTERRUPT_MASK_FROM_ISR, portSET_INTERRUPT_MASK_FROM_ISR, prvCopyDataFromQueue(), traceQUEUE_PEEK_FROM_ISR, traceQUEUE_PEEK_FROM_ISR_FAILED, QueueDefinition::u, QueueDefinition::uxItemSize, QueueDefinition::uxMessagesWaiting, and QueueDefinition::xQueue.
| BaseType_t xQueueReceive | ( | QueueHandle_t | xQueue, |
| void *const | pvBuffer, | ||
| TickType_t | xTicksToWait ) |
Definition at line 1427 of file queue.c.
References configASSERT, errQUEUE_EMPTY, listLIST_IS_EMPTY, mtCOVERAGE_TEST_MARKER, NULL, pdFALSE, pdPASS, pdTRUE, portYIELD_WITHIN_API, prvCopyDataFromQueue(), prvIsQueueEmpty(), prvLockQueue, prvUnlockQueue(), queueYIELD_IF_USING_PREEMPTION, taskENTER_CRITICAL, taskEXIT_CRITICAL, taskSCHEDULER_SUSPENDED, traceBLOCKING_ON_QUEUE_RECEIVE, traceQUEUE_RECEIVE, traceQUEUE_RECEIVE_FAILED, QueueDefinition::uxMessagesWaiting, vTaskInternalSetTimeOutState(), vTaskPlaceOnEventList(), vTaskSuspendAll(), xTaskCheckForTimeOut(), xTaskGetSchedulerState(), xTaskRemoveFromEventList(), xTaskResumeAll(), QueueDefinition::xTasksWaitingToReceive, and QueueDefinition::xTasksWaitingToSend.
Referenced by osMessageQueueGet().
| BaseType_t xQueueReceiveFromISR | ( | QueueHandle_t | xQueue, |
| void *const | pvBuffer, | ||
| BaseType_t *const | pxHigherPriorityTaskWoken ) |
Definition at line 1931 of file queue.c.
References configASSERT, QueueDefinition::cRxLock, listLIST_IS_EMPTY, mtCOVERAGE_TEST_MARKER, NULL, pdFAIL, pdFALSE, pdPASS, pdTRUE, portCLEAR_INTERRUPT_MASK_FROM_ISR, portSET_INTERRUPT_MASK_FROM_ISR, prvCopyDataFromQueue(), prvIncrementQueueRxLock, queueUNLOCKED, traceQUEUE_RECEIVE_FROM_ISR, traceQUEUE_RECEIVE_FROM_ISR_FAILED, QueueDefinition::uxItemSize, QueueDefinition::uxMessagesWaiting, xTaskRemoveFromEventList(), and QueueDefinition::xTasksWaitingToSend.
Referenced by osMessageQueueGet().
| BaseType_t xQueueSemaphoreTake | ( | QueueHandle_t | xQueue, |
| TickType_t | xTicksToWait ) |
Definition at line 1570 of file queue.c.
References configASSERT, errQUEUE_EMPTY, listLIST_IS_EMPTY, mtCOVERAGE_TEST_MARKER, pdFALSE, pdPASS, pdTRUE, portYIELD_WITHIN_API, prvIsQueueEmpty(), prvLockQueue, prvUnlockQueue(), pvTaskIncrementMutexHeldCount(), queueQUEUE_IS_MUTEX, queueYIELD_IF_USING_PREEMPTION, taskENTER_CRITICAL, taskEXIT_CRITICAL, taskSCHEDULER_SUSPENDED, traceBLOCKING_ON_QUEUE_RECEIVE, traceQUEUE_RECEIVE, traceQUEUE_RECEIVE_FAILED, QueueDefinition::u, QueueDefinition::uxItemSize, QueueDefinition::uxMessagesWaiting, vTaskInternalSetTimeOutState(), vTaskPlaceOnEventList(), vTaskPriorityDisinheritAfterTimeout(), vTaskSuspendAll(), SemaphoreData::xMutexHolder, QueueDefinition::xSemaphore, xTaskCheckForTimeOut(), xTaskGetSchedulerState(), xTaskPriorityInherit(), xTaskRemoveFromEventList(), xTaskResumeAll(), QueueDefinition::xTasksWaitingToReceive, and QueueDefinition::xTasksWaitingToSend.