RTNAL_FRAME

RTNAL_FRAME is a structure that specifies data to the function RtNalTransmitEx and receive and transmit callbacks of RTN_FN_PKT_CALLBACK types.

Syntax

typedef struct _RTNAL_FRAME{
	RTNAL_PHYSICAL_ADDRESS  frameBufferPhysicalAddr;
	PVOID 		     	frameBufferVirtualAddr;
	RTN_FN_PKT_CALLBACK     fpCallBack;
	PVOID 	             	appContext;
	RTNAL_HW_TIME           timeStamp;
	LARGE_INTEGER        	txCallTime;
	ULONG                	bufferSize;
	ULONG                	frameSize;
	BOOL                 	bTimeStampRequired;
	BOOL                 	bTimeStampValid;
	BOOL                 	bEnableLaunchTime;
	DWORD                	launchTime;
	DWORD                	frameStatus;
	ULONG                	frameCounter;
		union {
			VOID *pV[8];
			ULONG ul[16];
			USHORT us[32];
			UCHAR uc[64];
		} userData;
}RTNAL_RTNAL_FRAME, *PRTNAL_RTNAL_FRAME;

Fields

frameBufferPhysicalAddr

The physical memory address for the Ethernet frame. At present this is only used with transmit frames.

frameBufferVirtualAddr

The virtual memory address for the Ethernet frame.

fpCallBack

A function pointer to call when transmission is complete or a frame is received. Currently, this is only used for transmit.

appContext

The application context pointer. On transmit it’s the pointer provided to the transmit call and returned in the callback. Receive callbacks return a context pointer initialized in RtNalConfigureQueue.

timeStamp

The timestamp of transmit or receive

txCallTime

For use by the application to record the time of the transmit call to be returned in the transmit callback.

bufferSize

The size of the allocated data buffer.

frameSize

The size of the Ethernet frame in bytes.

bTimeStampRequired

A NAL application sets it to TRUE to let the driver know that a timestamp is required for this frame.

bTimeStampValid

Indicates if a timestamp is valid. This is currently not supported by NAL NIC drivers.

bEnableLaunchTime

Currently not supported by NAL NIC drivers.

launchTime

Currently not supported by NAL NIC drivers.

frameStatus

0 if success. The driver can use this field to record DMA transmit error status or receive DMA error status, if the driver is configured to receive bad frames.

frameCounter

For use by the application as a frame ID provided to the transmit call and returned in the transmit callback.

userData

Intended for use by the application.

Requirements

Minimum Supported Version RTX64 4.0
Header rtnapi.h, RtNalApi.h
Library RtNal.lib

See Also: