*/\r
#define xQueueSendToBackFromISR( pxQueue, pvItemToQueue, xTaskPreviouslyWoken ) xQueueGenericSendFromISR( pxQueue, pvItemToQueue, xTaskPreviouslyWoken, queueSEND_TO_BACK )\r
\r
-\r
/**\r
* queue. h\r
* <pre>\r
*/\r
signed portBASE_TYPE xQueueReceiveFromISR( xQueueHandle pxQueue, const void * const pvBuffer, signed portBASE_TYPE *pxTaskWoken );\r
\r
+/*\r
+ * Utilities to query queue that are safe to use from an ISR. These utilities\r
+ * should be used only from witin an ISR, or within a critical section.\r
+ */\r
+signed portBASE_TYPE xQueueIsQueueEmptyFromISR( const xQueueHandle pxQueue );\r
+signed portBASE_TYPE xQueueIsQueueFullFromISR( const xQueueHandle pxQueue );\r
+signed portBASE_TYPE xQueueMessagesWaitingFromISR( const xQueueHandle pxQueue, unsigned portBASE_TYPE *puxMessagesWaiting );\r
+\r
+\r
/* \r
* xQueueAltGenericSend() is an alternative version of xQueueGenericSend().\r
* Likewise xQueueAltGenericReceive() is an alternative version of\r
portBASE_TYPE xQueueTakeMutexRecursive( xQueueHandle xMutex, portTickType xBlockTime );\r
portBASE_TYPE xQueueGiveMutexRecursive( xQueueHandle xMutex );\r
\r
+\r
#ifdef __cplusplus\r
}\r
#endif\r