RtndExtractRxBuffer

RtndExtractRxBuffer extracts a filled buffer from the specified Receive Queue.

Syntax

Copy
BOOL RtndExtractRxBuffer(
  [in]            ULONG_PTR RtndInterfaceId,
  [in]            ULONG RxQueueIndex,
  [in]            VOID *pRxQueueAppContext,
  [out]           RTND_BUFFER_HEADER **pBufferHeader,
  [in, ignored]   ULONG Flags
);

Parameters

[in] RtndInterfaceId

The number or pointer used to identify the interface. This value is returned by RtndManageInterface.

[in] RxQueueIndex

The index of the Receive Queue.

[in] pRxQueueAppContext

The address of the context returned when the calling process called RtndAttachRxQueue.

[out] pBufferHeader

The address of the extracted buffer header.

[in, ignored] Flags

Reserved for future use. The value is set to zero by the NL2. Drivers must ignore this parameter.

Return Value

If the function succeeds, it returns TRUE. If the function fails, it returns FALSE. To get extended error information, call GetLastError.

Common error codes:

Error code Meaning

ERROR_IO_DEVICE

An unexpected error occurred while trying to access the device.

ERROR_NO_DATA

No buffer was filled since the last call to this function.

Note: Custom drivers may return other error codes not listed above.

Remarks

This function may be called from any process.

Characteristics

Real-time requirements

Deterministic behavior

Recommended

Local memory allocation/deallocation restrictions

Process

External MSpace

Internal MSpace

System

Not allowed

Not allowed

Process

Not allowed

Not allowed

Contiguous memory allocation/deallocation restrictions

Contiguous memory

Not allowed

Requirements

Minimum supported version Header

eRTOS 1.0 SDK

Rtnd.h

See Also: