63#ifndef FREERTOS_MESSAGE_BUFFER_H
64#define FREERTOS_MESSAGE_BUFFER_H
67 #error "include FreeRTOS.h must appear in source files before include message_buffer.h"
74#if defined( __cplusplus )
160#define xMessageBufferCreate( xBufferSizeBytes ) \
161 xStreamBufferGenericCreate( ( xBufferSizeBytes ), ( size_t ) 0, sbTYPE_MESSAGE_BUFFER, NULL, NULL )
163#if ( configUSE_SB_COMPLETED_CALLBACK == 1 )
164 #define xMessageBufferCreateWithCallback( xBufferSizeBytes, pxSendCompletedCallback, pxReceiveCompletedCallback ) \
165 xStreamBufferGenericCreate( ( xBufferSizeBytes ), ( size_t ) 0, sbTYPE_MESSAGE_BUFFER, ( pxSendCompletedCallback ), ( pxReceiveCompletedCallback ) )
245#define xMessageBufferCreateStatic( xBufferSizeBytes, pucMessageBufferStorageArea, pxStaticMessageBuffer ) \
246 xStreamBufferGenericCreateStatic( ( xBufferSizeBytes ), 0, sbTYPE_MESSAGE_BUFFER, ( pucMessageBufferStorageArea ), ( pxStaticMessageBuffer ), NULL, NULL )
248#if ( configUSE_SB_COMPLETED_CALLBACK == 1 )
249 #define xMessageBufferCreateStaticWithCallback( xBufferSizeBytes, pucMessageBufferStorageArea, pxStaticMessageBuffer, pxSendCompletedCallback, pxReceiveCompletedCallback ) \
250 xStreamBufferGenericCreateStatic( ( xBufferSizeBytes ), 0, sbTYPE_MESSAGE_BUFFER, ( pucMessageBufferStorageArea ), ( pxStaticMessageBuffer ), ( pxSendCompletedCallback ), ( pxReceiveCompletedCallback ) )
282#if ( configSUPPORT_STATIC_ALLOCATION == 1 )
283 #define xMessageBufferGetStaticBuffers( xMessageBuffer, ppucMessageBufferStorageArea, ppxStaticMessageBuffer ) \
284 xStreamBufferGetStaticBuffers( ( xMessageBuffer ), ( ppucMessageBufferStorageArea ), ( ppxStaticMessageBuffer ) )
387#define xMessageBufferSend( xMessageBuffer, pvTxData, xDataLengthBytes, xTicksToWait ) \
388 xStreamBufferSend( ( xMessageBuffer ), ( pvTxData ), ( xDataLengthBytes ), ( xTicksToWait ) )
495#define xMessageBufferSendFromISR( xMessageBuffer, pvTxData, xDataLengthBytes, pxHigherPriorityTaskWoken ) \
496 xStreamBufferSendFromISR( ( xMessageBuffer ), ( pvTxData ), ( xDataLengthBytes ), ( pxHigherPriorityTaskWoken ) )
587#define xMessageBufferReceive( xMessageBuffer, pvRxData, xBufferLengthBytes, xTicksToWait ) \
588 xStreamBufferReceive( ( xMessageBuffer ), ( pvRxData ), ( xBufferLengthBytes ), ( xTicksToWait ) )
692#define xMessageBufferReceiveFromISR( xMessageBuffer, pvRxData, xBufferLengthBytes, pxHigherPriorityTaskWoken ) \
693 xStreamBufferReceiveFromISR( ( xMessageBuffer ), ( pvRxData ), ( xBufferLengthBytes ), ( pxHigherPriorityTaskWoken ) )
716#define vMessageBufferDelete( xMessageBuffer ) \
717 vStreamBufferDelete( xMessageBuffer )
737#define xMessageBufferIsFull( xMessageBuffer ) \
738 xStreamBufferIsFull( xMessageBuffer )
757#define xMessageBufferIsEmpty( xMessageBuffer ) \
758 xStreamBufferIsEmpty( xMessageBuffer )
788#define xMessageBufferReset( xMessageBuffer ) \
789 xStreamBufferReset( xMessageBuffer )
821#define xMessageBufferResetFromISR( xMessageBuffer ) \
822 xStreamBufferResetFromISR( xMessageBuffer )
846#define xMessageBufferSpaceAvailable( xMessageBuffer ) \
847 xStreamBufferSpacesAvailable( xMessageBuffer )
848#define xMessageBufferSpacesAvailable( xMessageBuffer ) \
849 xStreamBufferSpacesAvailable( xMessageBuffer )
871#define xMessageBufferNextLengthBytes( xMessageBuffer ) \
872 xStreamBufferNextMessageLengthBytes( xMessageBuffer )
914#define xMessageBufferSendCompletedFromISR( xMessageBuffer, pxHigherPriorityTaskWoken ) \
915 xStreamBufferSendCompletedFromISR( ( xMessageBuffer ), ( pxHigherPriorityTaskWoken ) )
958#define xMessageBufferReceiveCompletedFromISR( xMessageBuffer, pxHigherPriorityTaskWoken ) \
959 xStreamBufferReceiveCompletedFromISR( ( xMessageBuffer ), ( pxHigherPriorityTaskWoken ) )
962#if defined( __cplusplus )
StreamBufferHandle_t MessageBufferHandle_t
Definition message_buffer.h:86
struct StreamBufferDef_t * StreamBufferHandle_t
Definition stream_buffer.h:79