Rtnl2GetPhysicalTxQueueBuffers
Rtnl2GetPhysicalTxQueueBuffers gets one or more NL2 buffers to be used with a specified physical transmit queue.
Syntax
RTNL2_BUFFER_HEADER *Rtnl2GetPhysicalTxQueueBuffers(
[in] RTNL2_HPHYSICAL_TX_QUEUE PhysicalTxQueue,
[in] ULONG Count
);
Parameters
[in] PhysicalTxQueue
A handle to the physical transmit queue represented by data type RTNL2_HPHYSICAL_TX_QUEUE.
[in] Count
The number of NL2 buffers to request, which must be at least 1.
Return Value
If the function succeeds, it returns the address of the buffer header of the first returned buffer. If the function fails, it returns NULL. Call GetLastError to obtain an error code if the function fails.
Possible error codes:
Error code | Meaning |
---|---|
ERROR_DEVICE_NO_RESOURCES |
The NL2 cannot satisfy the request because it doesn’t have enough available Transmit Buffers for this Physical Transmit Queue. |
ERROR_NOT_READY |
The calling process has not called Rtnl2Init. |
ERROR_INVALID_PARAMETER |
One of the following conditions occurred:
|
RTNL2_ERROR_NO_MORE_COMMUNICATION |
Unable to communicate with the NL2 process. This might be because the NL2 process is not running anymore, or because an application process thread was terminated during a previous call to an NL2 API function. |
RTNL2_ERROR_PHYSICAL_TX_QUEUE_IS_RELEASING |
Another thread of the calling process is executing Rtnl2ReleasePhysicalTxQueue at the same time. |
RTNL2_ERROR_PHYSICAL_TX_QUEUE_NOT_READY |
The Physical Transmit Queue is not ready yet. |
RTNL2_ERROR_SERIALIZED_COMMAND_TIMEOUT |
The NL2 process didn’t reply within an acceptable amount of time. |
Remarks
When more than one buffer is allocated by this function, the buffer headers are linked together in a linked list. See Next in RTNL2_BUFFER_HEADER.
Characteristics
Real-time | ||
Deterministic |
No |
|
Local memory usage | ||
Process |
External MSpace usage |
Internal MSpace usage |
System |
No | No |
NL2 process |
No | No |
Calling process |
No | No |
Contiguous memory usage | ||
Usage |
No |
Requirements
Minimum supported version | Header | Library |
---|---|---|
eRTOS 1.0 SDK |
Rtnl2Api.h |
Rtnl2Api.lib |
See Also: