33#error "include FreeRTOS.h" must appear in source files before "include queue.h"
45typedef void *QueueHandle_t;
52typedef void *QueueSetHandle_t;
59typedef void *QueueSetMemberHandle_t;
62#define queueSEND_TO_BACK ((BaseType_t)0)
63#define queueSEND_TO_FRONT ((BaseType_t)1)
64#define queueOVERWRITE ((BaseType_t)2)
67#define queueQUEUE_TYPE_BASE ((uint8_t)0U)
68#define queueQUEUE_TYPE_SET ((uint8_t)0U)
69#define queueQUEUE_TYPE_MUTEX ((uint8_t)1U)
70#define queueQUEUE_TYPE_COUNTING_SEMAPHORE ((uint8_t)2U)
71#define queueQUEUE_TYPE_BINARY_SEMAPHORE ((uint8_t)3U)
72#define queueQUEUE_TYPE_RECURSIVE_MUTEX ((uint8_t)4U)
142#if (configSUPPORT_DYNAMIC_ALLOCATION == 1)
143#define xQueueCreate(uxQueueLength, uxItemSize) \
144 xQueueGenericCreate((uxQueueLength), (uxItemSize), (queueQUEUE_TYPE_BASE))
229#if (configSUPPORT_STATIC_ALLOCATION == 1)
230#define xQueueCreateStatic(uxQueueLength, uxItemSize, pucQueueStorage, pxQueueBuffer) \
231 xQueueGenericCreateStatic((uxQueueLength), (uxItemSize), (pucQueueStorage), (pxQueueBuffer), (queueQUEUE_TYPE_BASE))
312#define xQueueSendToFront(xQueue, pvItemToQueue, xTicksToWait) \
313 xQueueGenericSend((xQueue), (pvItemToQueue), (xTicksToWait), queueSEND_TO_FRONT)
395#define xQueueSendToBack(xQueue, pvItemToQueue, xTicksToWait) \
396 xQueueGenericSend((xQueue), (pvItemToQueue), (xTicksToWait), queueSEND_TO_BACK)
480#define xQueueSend(xQueue, pvItemToQueue, xTicksToWait) \
481 xQueueGenericSend((xQueue), (pvItemToQueue), (xTicksToWait), queueSEND_TO_BACK)
564#define xQueueOverwrite(xQueue, pvItemToQueue) xQueueGenericSend((xQueue), (pvItemToQueue), 0, queueOVERWRITE)
651BaseType_t xQueueGenericSend(QueueHandle_t xQueue,
const void *
const pvItemToQueue, TickType_t xTicksToWait,
652 const BaseType_t xCopyPosition) PRIVILEGED_FUNCTION;
746BaseType_t xQueuePeek(QueueHandle_t xQueue,
void *
const pvBuffer, TickType_t xTicksToWait) PRIVILEGED_FUNCTION;
779BaseType_t xQueuePeekFromISR(QueueHandle_t xQueue,
void *
const pvBuffer) PRIVILEGED_FUNCTION;
870BaseType_t xQueueReceive(QueueHandle_t xQueue,
void *
const pvBuffer, TickType_t xTicksToWait) PRIVILEGED_FUNCTION;
885UBaseType_t uxQueueMessagesWaiting(
const QueueHandle_t xQueue) PRIVILEGED_FUNCTION;
902UBaseType_t uxQueueSpacesAvailable(
const QueueHandle_t xQueue) PRIVILEGED_FUNCTION;
916void vQueueDelete(QueueHandle_t xQueue) PRIVILEGED_FUNCTION;
986#define xQueueSendToFrontFromISR(xQueue, pvItemToQueue, pxHigherPriorityTaskWoken) \
987 xQueueGenericSendFromISR((xQueue), (pvItemToQueue), (pxHigherPriorityTaskWoken), queueSEND_TO_FRONT)
1057#define xQueueSendToBackFromISR(xQueue, pvItemToQueue, pxHigherPriorityTaskWoken) \
1058 xQueueGenericSendFromISR((xQueue), (pvItemToQueue), (pxHigherPriorityTaskWoken), queueSEND_TO_BACK)
1145#define xQueueOverwriteFromISR(xQueue, pvItemToQueue, pxHigherPriorityTaskWoken) \
1146 xQueueGenericSendFromISR((xQueue), (pvItemToQueue), (pxHigherPriorityTaskWoken), queueOVERWRITE)
1220#define xQueueSendFromISR(xQueue, pvItemToQueue, pxHigherPriorityTaskWoken) \
1221 xQueueGenericSendFromISR((xQueue), (pvItemToQueue), (pxHigherPriorityTaskWoken), queueSEND_TO_BACK)
1300BaseType_t xQueueGenericSendFromISR(QueueHandle_t xQueue,
const void *
const pvItemToQueue,
1301 BaseType_t *
const pxHigherPriorityTaskWoken,
1302 const BaseType_t xCopyPosition) PRIVILEGED_FUNCTION;
1303BaseType_t xQueueGiveFromISR(QueueHandle_t xQueue, BaseType_t *
const pxHigherPriorityTaskWoken) PRIVILEGED_FUNCTION;
1392BaseType_t xQueueReceiveFromISR(QueueHandle_t xQueue,
void *
const pvBuffer,
1393 BaseType_t *
const pxHigherPriorityTaskWoken) PRIVILEGED_FUNCTION;
1399BaseType_t xQueueIsQueueEmptyFromISR(
const QueueHandle_t xQueue) PRIVILEGED_FUNCTION;
1400BaseType_t xQueueIsQueueFullFromISR(
const QueueHandle_t xQueue) PRIVILEGED_FUNCTION;
1401UBaseType_t uxQueueMessagesWaitingFromISR(
const QueueHandle_t xQueue) PRIVILEGED_FUNCTION;
1412BaseType_t xQueueCRSendFromISR(QueueHandle_t xQueue,
const void *pvItemToQueue, BaseType_t xCoRoutinePreviouslyWoken);
1413BaseType_t xQueueCRReceiveFromISR(QueueHandle_t xQueue,
void *pvBuffer, BaseType_t *pxTaskWoken);
1414BaseType_t xQueueCRSend(QueueHandle_t xQueue,
const void *pvItemToQueue, TickType_t xTicksToWait);
1415BaseType_t xQueueCRReceive(QueueHandle_t xQueue,
void *pvBuffer, TickType_t xTicksToWait);
1422QueueHandle_t xQueueCreateMutex(
const uint8_t ucQueueType) PRIVILEGED_FUNCTION;
1423QueueHandle_t xQueueCreateMutexStatic(
const uint8_t ucQueueType,
StaticQueue_t *pxStaticQueue) PRIVILEGED_FUNCTION;
1424QueueHandle_t xQueueCreateCountingSemaphore(
const UBaseType_t uxMaxCount,
1425 const UBaseType_t uxInitialCount) PRIVILEGED_FUNCTION;
1426QueueHandle_t xQueueCreateCountingSemaphoreStatic(
const UBaseType_t uxMaxCount,
const UBaseType_t uxInitialCount,
1428BaseType_t xQueueSemaphoreTake(QueueHandle_t xQueue, TickType_t xTicksToWait) PRIVILEGED_FUNCTION;
1429void * xQueueGetMutexHolder(QueueHandle_t xSemaphore) PRIVILEGED_FUNCTION;
1430void * xQueueGetMutexHolderFromISR(QueueHandle_t xSemaphore) PRIVILEGED_FUNCTION;
1436BaseType_t xQueueTakeMutexRecursive(QueueHandle_t xMutex, TickType_t xTicksToWait) PRIVILEGED_FUNCTION;
1437BaseType_t xQueueGiveMutexRecursive(QueueHandle_t pxMutex) PRIVILEGED_FUNCTION;
1443#define xQueueReset(xQueue) xQueueGenericReset(xQueue, pdFALSE)
1467#if (configQUEUE_REGISTRY_SIZE > 0)
1468void vQueueAddToRegistry(QueueHandle_t xQueue,
const char *pcName)
1469 PRIVILEGED_FUNCTION;
1482#if (configQUEUE_REGISTRY_SIZE > 0)
1483void vQueueUnregisterQueue(QueueHandle_t xQueue) PRIVILEGED_FUNCTION;
1497#if (configQUEUE_REGISTRY_SIZE > 0)
1498const char *pcQueueGetName(QueueHandle_t xQueue)
1499 PRIVILEGED_FUNCTION;
1507#if (configSUPPORT_DYNAMIC_ALLOCATION == 1)
1508QueueHandle_t xQueueGenericCreate(
const UBaseType_t uxQueueLength,
const UBaseType_t uxItemSize,
1509 const uint8_t ucQueueType) PRIVILEGED_FUNCTION;
1517#if (configSUPPORT_STATIC_ALLOCATION == 1)
1518QueueHandle_t xQueueGenericCreateStatic(
const UBaseType_t uxQueueLength,
const UBaseType_t uxItemSize,
1520 const uint8_t ucQueueType) PRIVILEGED_FUNCTION;
1571QueueSetHandle_t xQueueCreateSet(
const UBaseType_t uxEventQueueLength) PRIVILEGED_FUNCTION;
1595BaseType_t xQueueAddToSet(QueueSetMemberHandle_t xQueueOrSemaphore, QueueSetHandle_t xQueueSet) PRIVILEGED_FUNCTION;
1614BaseType_t xQueueRemoveFromSet(QueueSetMemberHandle_t xQueueOrSemaphore,
1615 QueueSetHandle_t xQueueSet) PRIVILEGED_FUNCTION;
1651QueueSetMemberHandle_t xQueueSelectFromSet(QueueSetHandle_t xQueueSet,
1652 const TickType_t xTicksToWait) PRIVILEGED_FUNCTION;
1657QueueSetMemberHandle_t xQueueSelectFromSetFromISR(QueueSetHandle_t xQueueSet) PRIVILEGED_FUNCTION;
1660void vQueueWaitForMessageRestricted(QueueHandle_t xQueue, TickType_t xTicksToWait,
1661 const BaseType_t xWaitIndefinitely) PRIVILEGED_FUNCTION;
1662BaseType_t xQueueGenericReset(QueueHandle_t xQueue, BaseType_t xNewQueue) PRIVILEGED_FUNCTION;
1663void vQueueSetQueueNumber(QueueHandle_t xQueue, UBaseType_t uxQueueNumber) PRIVILEGED_FUNCTION;
1664UBaseType_t uxQueueGetQueueNumber(QueueHandle_t xQueue) PRIVILEGED_FUNCTION;
1665uint8_t ucQueueGetQueueType(QueueHandle_t xQueue) PRIVILEGED_FUNCTION;
Definition FreeRTOS.h:1044