RtNalAllocateFrame

RtNalAllocateFrame allocates memory for a NAL frame.

NOTE: This function is not deterministic.

Syntax

PRTNAL_FRAME RtNalAllocateFrame(
	ULONG size,
);

Parameters

size

The size to allocate in bytes. This must be a non-zero value.

Return Value

Returns a pointer to the allocated NAL frame, which contains pointers to the virtual and physical addresses of the Ethernet frame buffer. If the function returns NULL call GetLastError to obtain an error code. The possible error codes are listed below:

Error Code Meaning
ERROR_INVALID_PARAMETER Parameter size is 0.
ERROR_NOT_ENOUGH_MEMORY There is not enough available memory.
ERROR_NOT_READY RtNalInit has not completed successfully.

Remarks

A NAL frame is allocated and freed in the context of the RTX64NAL process.

A frame allocated in an application process must not be used by another application process

All frames allocated on behalf of the NAL application and not freed directly by RtNalFreeFrame are freed when the allocating application terminates.

If the NAL receives a request to free an NAL frame submitted for transmission, it frees it only after the NAL relinquishes ownership of the frame in the transmit complete thread.

Requirements

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

See Also: