74 #ifndef INC_FREERTOS_H 75 #error "include FreeRTOS.h" must appear in source files before "include queue.h" 88 typedef void * QueueHandle_t;
95 typedef void * QueueSetHandle_t;
102 typedef void * QueueSetMemberHandle_t;
105 #define queueSEND_TO_BACK ( ( BaseType_t ) 0 ) 106 #define queueSEND_TO_FRONT ( ( BaseType_t ) 1 ) 107 #define queueOVERWRITE ( ( BaseType_t ) 2 ) 110 #define queueQUEUE_TYPE_BASE ( ( uint8_t ) 0U ) 111 #define queueQUEUE_TYPE_SET ( ( uint8_t ) 0U ) 112 #define queueQUEUE_TYPE_MUTEX ( ( uint8_t ) 1U ) 113 #define queueQUEUE_TYPE_COUNTING_SEMAPHORE ( ( uint8_t ) 2U ) 114 #define queueQUEUE_TYPE_BINARY_SEMAPHORE ( ( uint8_t ) 3U ) 115 #define queueQUEUE_TYPE_RECURSIVE_MUTEX ( ( uint8_t ) 4U ) 173 #define xQueueCreate( uxQueueLength, uxItemSize ) xQueueGenericCreate( uxQueueLength, uxItemSize, queueQUEUE_TYPE_BASE ) 255 #define xQueueSendToFront( xQueue, pvItemToQueue, xTicksToWait ) xQueueGenericSend( ( xQueue ), ( pvItemToQueue ), ( xTicksToWait ), queueSEND_TO_FRONT ) 337 #define xQueueSendToBack( xQueue, pvItemToQueue, xTicksToWait ) xQueueGenericSend( ( xQueue ), ( pvItemToQueue ), ( xTicksToWait ), queueSEND_TO_BACK ) 421 #define xQueueSend( xQueue, pvItemToQueue, xTicksToWait ) xQueueGenericSend( ( xQueue ), ( pvItemToQueue ), ( xTicksToWait ), queueSEND_TO_BACK ) 504 #define xQueueOverwrite( xQueue, pvItemToQueue ) xQueueGenericSend( ( xQueue ), ( pvItemToQueue ), 0, queueOVERWRITE ) 592 BaseType_t xQueueGenericSend( QueueHandle_t xQueue,
const void *
const pvItemToQueue, TickType_t xTicksToWait,
const BaseType_t xCopyPosition ) PRIVILEGED_FUNCTION;
688 #define xQueuePeek( xQueue, pvBuffer, xTicksToWait ) xQueueGenericReceive( ( xQueue ), ( pvBuffer ), ( xTicksToWait ), pdTRUE ) 721 BaseType_t xQueuePeekFromISR( QueueHandle_t xQueue,
void *
const pvBuffer ) PRIVILEGED_FUNCTION;
814 #define xQueueReceive( xQueue, pvBuffer, xTicksToWait ) xQueueGenericReceive( ( xQueue ), ( pvBuffer ), ( xTicksToWait ), pdFALSE ) 913 BaseType_t xQueueGenericReceive( QueueHandle_t xQueue,
void *
const pvBuffer, TickType_t xTicksToWait,
const BaseType_t xJustPeek ) PRIVILEGED_FUNCTION;
928 UBaseType_t uxQueueMessagesWaiting(
const QueueHandle_t xQueue ) PRIVILEGED_FUNCTION;
945 UBaseType_t uxQueueSpacesAvailable(
const QueueHandle_t xQueue ) PRIVILEGED_FUNCTION;
959 void vQueueDelete( QueueHandle_t xQueue ) PRIVILEGED_FUNCTION;
1029 #define xQueueSendToFrontFromISR( xQueue, pvItemToQueue, pxHigherPriorityTaskWoken ) xQueueGenericSendFromISR( ( xQueue ), ( pvItemToQueue ), ( pxHigherPriorityTaskWoken ), queueSEND_TO_FRONT ) 1100 #define xQueueSendToBackFromISR( xQueue, pvItemToQueue, pxHigherPriorityTaskWoken ) xQueueGenericSendFromISR( ( xQueue ), ( pvItemToQueue ), ( pxHigherPriorityTaskWoken ), queueSEND_TO_BACK ) 1187 #define xQueueOverwriteFromISR( xQueue, pvItemToQueue, pxHigherPriorityTaskWoken ) xQueueGenericSendFromISR( ( xQueue ), ( pvItemToQueue ), ( pxHigherPriorityTaskWoken ), queueOVERWRITE ) 1261 #define xQueueSendFromISR( xQueue, pvItemToQueue, pxHigherPriorityTaskWoken ) xQueueGenericSendFromISR( ( xQueue ), ( pvItemToQueue ), ( pxHigherPriorityTaskWoken ), queueSEND_TO_BACK ) 1340 BaseType_t xQueueGenericSendFromISR( QueueHandle_t xQueue,
const void *
const pvItemToQueue, BaseType_t *
const pxHigherPriorityTaskWoken,
const BaseType_t xCopyPosition ) PRIVILEGED_FUNCTION;
1341 BaseType_t xQueueGiveFromISR( QueueHandle_t xQueue, BaseType_t *
const pxHigherPriorityTaskWoken ) PRIVILEGED_FUNCTION;
1430 BaseType_t xQueueReceiveFromISR( QueueHandle_t xQueue,
void *
const pvBuffer, BaseType_t *
const pxHigherPriorityTaskWoken ) PRIVILEGED_FUNCTION;
1436 BaseType_t xQueueIsQueueEmptyFromISR(
const QueueHandle_t xQueue ) PRIVILEGED_FUNCTION;
1437 BaseType_t xQueueIsQueueFullFromISR(
const QueueHandle_t xQueue ) PRIVILEGED_FUNCTION;
1438 UBaseType_t uxQueueMessagesWaitingFromISR(
const QueueHandle_t xQueue ) PRIVILEGED_FUNCTION;
1455 BaseType_t xQueueAltGenericSend( QueueHandle_t xQueue,
const void *
const pvItemToQueue, TickType_t xTicksToWait, BaseType_t xCopyPosition ) PRIVILEGED_FUNCTION;
1456 BaseType_t xQueueAltGenericReceive( QueueHandle_t xQueue,
void *
const pvBuffer, TickType_t xTicksToWait, BaseType_t xJustPeeking ) PRIVILEGED_FUNCTION;
1457 #define xQueueAltSendToFront( xQueue, pvItemToQueue, xTicksToWait ) xQueueAltGenericSend( ( xQueue ), ( pvItemToQueue ), ( xTicksToWait ), queueSEND_TO_FRONT ) 1458 #define xQueueAltSendToBack( xQueue, pvItemToQueue, xTicksToWait ) xQueueAltGenericSend( ( xQueue ), ( pvItemToQueue ), ( xTicksToWait ), queueSEND_TO_BACK ) 1459 #define xQueueAltReceive( xQueue, pvBuffer, xTicksToWait ) xQueueAltGenericReceive( ( xQueue ), ( pvBuffer ), ( xTicksToWait ), pdFALSE ) 1460 #define xQueueAltPeek( xQueue, pvBuffer, xTicksToWait ) xQueueAltGenericReceive( ( xQueue ), ( pvBuffer ), ( xTicksToWait ), pdTRUE ) 1471 BaseType_t xQueueCRSendFromISR( QueueHandle_t xQueue,
const void *pvItemToQueue, BaseType_t xCoRoutinePreviouslyWoken );
1472 BaseType_t xQueueCRReceiveFromISR( QueueHandle_t xQueue,
void *pvBuffer, BaseType_t *pxTaskWoken );
1473 BaseType_t xQueueCRSend( QueueHandle_t xQueue,
const void *pvItemToQueue, TickType_t xTicksToWait );
1474 BaseType_t xQueueCRReceive( QueueHandle_t xQueue,
void *pvBuffer, TickType_t xTicksToWait );
1481 QueueHandle_t xQueueCreateMutex(
const uint8_t ucQueueType ) PRIVILEGED_FUNCTION;
1482 QueueHandle_t xQueueCreateCountingSemaphore(
const UBaseType_t uxMaxCount,
const UBaseType_t uxInitialCount ) PRIVILEGED_FUNCTION;
1483 void* xQueueGetMutexHolder( QueueHandle_t xSemaphore ) PRIVILEGED_FUNCTION;
1489 BaseType_t xQueueTakeMutexRecursive( QueueHandle_t xMutex, TickType_t xTicksToWait ) PRIVILEGED_FUNCTION;
1490 BaseType_t xQueueGiveMutexRecursive( QueueHandle_t pxMutex ) PRIVILEGED_FUNCTION;
1496 #define xQueueReset( xQueue ) xQueueGenericReset( xQueue, pdFALSE ) 1520 #if configQUEUE_REGISTRY_SIZE > 0 1521 void vQueueAddToRegistry( QueueHandle_t xQueue,
const char *pcName ) PRIVILEGED_FUNCTION;
1534 #if configQUEUE_REGISTRY_SIZE > 0 1535 void vQueueUnregisterQueue( QueueHandle_t xQueue ) PRIVILEGED_FUNCTION;
1542 QueueHandle_t xQueueGenericCreate(
const UBaseType_t uxQueueLength,
const UBaseType_t uxItemSize,
const uint8_t ucQueueType ) PRIVILEGED_FUNCTION;
1592 QueueSetHandle_t xQueueCreateSet(
const UBaseType_t uxEventQueueLength ) PRIVILEGED_FUNCTION;
1616 BaseType_t xQueueAddToSet( QueueSetMemberHandle_t xQueueOrSemaphore, QueueSetHandle_t xQueueSet ) PRIVILEGED_FUNCTION;
1635 BaseType_t xQueueRemoveFromSet( QueueSetMemberHandle_t xQueueOrSemaphore, QueueSetHandle_t xQueueSet ) PRIVILEGED_FUNCTION;
1671 QueueSetMemberHandle_t xQueueSelectFromSet( QueueSetHandle_t xQueueSet,
const TickType_t xTicksToWait ) PRIVILEGED_FUNCTION;
1676 QueueSetMemberHandle_t xQueueSelectFromSetFromISR( QueueSetHandle_t xQueueSet ) PRIVILEGED_FUNCTION;
1679 void vQueueWaitForMessageRestricted( QueueHandle_t xQueue, TickType_t xTicksToWait,
const BaseType_t xWaitIndefinitely ) PRIVILEGED_FUNCTION;
1680 BaseType_t xQueueGenericReset( QueueHandle_t xQueue, BaseType_t xNewQueue ) PRIVILEGED_FUNCTION;
1681 void vQueueSetQueueNumber( QueueHandle_t xQueue, UBaseType_t uxQueueNumber ) PRIVILEGED_FUNCTION;
1682 UBaseType_t uxQueueGetQueueNumber( QueueHandle_t xQueue ) PRIVILEGED_FUNCTION;
1683 uint8_t ucQueueGetQueueType( QueueHandle_t xQueue ) PRIVILEGED_FUNCTION;