RTNAL_QUEUE_CAPABILITIES

RTNAL_QUEUE_CAPABILITIES is a structure used by RtNalConfigureQueue to pass pointers to callback functions provided by the application process. The pAppContext argument in these callbacks is the pointer passed to in RtNalConfigureQueue.

Syntax

typedef struct _RTNAL_QUEUE_CAPABILITIES{
	RTN_FN_GETDATALONG      fpRtnGetDataLong;
	RTN_FN_SETDATALONG      fpRtnSetDataLong;
	RTN_FN_DECODEPACKET     fpRtnDecodePacket;
	RTN_FN_GETPACKET        fpRtnGetPacket;
	RTN_FN_GETMCASTCOUNT    fpRtnGetMcastCount;
	RTN_FN_PKT_CALLBACK     fpRtnReceiveCallback;
	void                    *reserved[64];
}RTNAL_QUEUE_CAPABILITIES;

Fields

fpRtnGetDataLong

An optional application callback to retrieve the value recorded by fpRtnSetDataLong callback. The offsets 0 and 1 are reserved by the NAL for the device driver index and the device queue index respectively. The application function fpRtnGetDataLong is not called with offsets 0 and 1 from the driver. fpRtnGetDataLong can be a NULL pointer.

fpRtnSetDataLong

An optional application callback to store the value at offset index in the Application context. The offsets 0 and 1 are reserved by the NAL for the device driver index and the device queue index respectively. RtNalConfigureQueue calls the application function fpRtnSetDataLong with offsets 0 and 1. fpRtnSetDataLong is not called with offsets 0 and 1 from RtnSetDataLong in the device driver. fpRtnSetDataLong can be a NULL pointer.

fpRtnDecodePacket

An optional application callback to access various fields in the application defined packet structure. An application must provide this callback if it uses RtNalReceive or RtNalTransmit.

fpRtnGetPacket

An optional application callback to return a pointer to an application defined packet structure. An application must provide this callback if it uses RtNalReceive.

fpRtnGetMcastCount

An optional application callback used in the RtndIoctl driver function, processing the ENIOADDMULTI command to determine the multicast address count.

fpRtnReceiveCallback

An optional application callback to process a received packet. This callback is optional if an application uses RtNalReceive. The application must provide this callback if it uses RtNalReceiveWithCallback or RtNalEnableReceivePolling functions.

 

See RTX64 Real-Time NAL API Application Callbacks for information on the available callback functions.

Requirements

Minimum Supported Version (NAL) RTX64 Network Abstraction Layer 2.0
Minimum Supported Version (RTX64) RTX64 3.4
Header rtnapi.h, RtNalApi.h
Library RtNal.lib

See Also: