ANSI C UA Server SDK  1.6.0.341
 All Data Structures Functions Variables Typedefs Enumerations Enumerator Modules Pages
UaBaseRingBuffer

Data Structures

struct  UaBase_RingBuffer
 RingBuffer structure. More...
 

Functions

OpcUa_StatusCode UaBase_RingBuffer_Initialize (UaBase_RingBuffer *a_pRingbuffer, OpcUa_UInt32 a_uSize)
 Initialize a Ringbuffer. More...
 
OpcUa_Void UaBase_RingBuffer_Clear (UaBase_RingBuffer *a_pRingbuffer)
 Clear a Ringbuffer. More...
 
OpcUa_Void * UaBase_RingBuffer_Pop (UaBase_RingBuffer *a_pRingbuffer)
 Get an Element from a Ringbuffer. More...
 
OpcUa_Void * UaBase_RingBuffer_Push (UaBase_RingBuffer *a_pRingbuffer, OpcUa_Void *a_pData)
 Push an Element into a Ringbuffer. More...
 
OpcUa_StatusCode UaBase_RingBuffer_PushSafe (UaBase_RingBuffer *a_pRingbuffer, OpcUa_Void *a_pData)
 Push an Element into a Rinbuffer if it fits. More...
 
OpcUa_Void * UaBase_RingBuffer_GetFirst (UaBase_RingBuffer *a_pRingbuffer)
 Gets the first element of the Ringbuffer without modifying the Ringbuffer. More...
 
OpcUa_Void * UaBase_RingBuffer_ReplaceLast (UaBase_RingBuffer *a_pRingbuffer, OpcUa_Void *a_pData)
 Replaces the last element of the Ringbuffer with a new one. More...
 
OpcUa_Void * UaBase_RingBuffer_ReplaceFirst (UaBase_RingBuffer *a_pRingbuffer, OpcUa_Void *a_pData)
 Replaces the first element of the Ringbuffer with a new one. More...
 
OpcUa_Int32 UaBase_RingBuffer_Count (UaBase_RingBuffer *a_pRingbuffer)
 Get the number of items stored in a ringbuffer. More...
 
OpcUa_StatusCode UaBase_RingBuffer_Resize (UaBase_RingBuffer *pRingbuffer, OpcUa_UInt32 uNewSize)
 Increase the size of a Ringbuffer, decrementing is not supported. More...
 

Detailed Description

Function Documentation

OpcUa_Void UaBase_RingBuffer_Clear ( UaBase_RingBuffer a_pRingbuffer)

Clear a Ringbuffer.

Parameters
a_pRingbuffera pointer to the existing ringbuffer.
OpcUa_Int32 UaBase_RingBuffer_Count ( UaBase_RingBuffer a_pRingbuffer)

Get the number of items stored in a ringbuffer.

Parameters
a_pRingbuffera pointer to the existing ringbuffer.
Returns
the number of items stored in the ringbuffer.
OpcUa_Void * UaBase_RingBuffer_GetFirst ( UaBase_RingBuffer a_pRingbuffer)

Gets the first element of the Ringbuffer without modifying the Ringbuffer.

Parameters
a_pRingbuffera pointer to the existing ringbuffer.
Returns
the first element in the Ringbuffer.
OpcUa_StatusCode UaBase_RingBuffer_Initialize ( UaBase_RingBuffer a_pRingbuffer,
OpcUa_UInt32  a_uSize 
)

Initialize a Ringbuffer.

Parameters
a_pRingbuffera pointer to the new ringbuffer.
a_uSizethe size for the new ringbuffer.
Returns
the OPC UA Status code.
OpcUa_Void * UaBase_RingBuffer_Pop ( UaBase_RingBuffer a_pRingbuffer)

Get an Element from a Ringbuffer.

Parameters
a_pRingbuffera pointer to the existing ringbuffer.
OpcUa_Void * UaBase_RingBuffer_Push ( UaBase_RingBuffer a_pRingbuffer,
OpcUa_Void *  a_pData 
)

Push an Element into a Ringbuffer.

Parameters
[in]a_pRingbuffera pointer to the existing ringbuffer.
[in]a_pDatathe data to push into the ringbuffer.
Returns
DESCRIPTION
OpcUa_StatusCode UaBase_RingBuffer_PushSafe ( UaBase_RingBuffer a_pRingbuffer,
OpcUa_Void *  a_pData 
)

Push an Element into a Rinbuffer if it fits.

Parameters
a_pRingbuffera pointer to the existing ringbuffer.
a_pDatathe data to push into the ringbuffer.
Returns
the OPC UA Status code.
OpcUa_Void * UaBase_RingBuffer_ReplaceFirst ( UaBase_RingBuffer a_pRingbuffer,
OpcUa_Void *  a_pData 
)

Replaces the first element of the Ringbuffer with a new one.

Parameters
a_pRingbuffera pointer to the existing ringbuffer.
a_pDatathe data to replace the first element with.
Returns
the element that was replaced by a_pData.
OpcUa_Void * UaBase_RingBuffer_ReplaceLast ( UaBase_RingBuffer a_pRingbuffer,
OpcUa_Void *  a_pData 
)

Replaces the last element of the Ringbuffer with a new one.

Parameters
a_pRingbuffera pointer to the existing ringbuffer.
a_pDatathe data to replace the last element with.
Returns
the element that was replaced by a_pData.
OpcUa_StatusCode UaBase_RingBuffer_Resize ( UaBase_RingBuffer pRingbuffer,
OpcUa_UInt32  uNewSize 
)

Increase the size of a Ringbuffer, decrementing is not supported.

Parameters
pRingbuffera pointer to the existing ringbuffer.
uNewSizethe new size for the ringbuffer.
Returns
the OPC UA Status code.