RtNalGetDeviceSystemTimer

RtNalGetDeviceSystemTimer returns the value of the NIC system timer-up counter registers converted to time.

Syntax

BOOL RtNalGetDeviceSystemTimer(
	RTNAL_QUEUE_HANDLE queueHandle,
	PRTNAL_HW_TIME pHardwareTimeStamps
);

Parameters

queueHandle

The receive queue handle returned by RtNalAcquireQueue.

pHardwareTimeStamps

An output pointer for the hardware timestamps. This value cannot be NULL.

Return Value

Returns TRUE if the function succeeds. Otherwise it returns FALSE. Call GetLastError to obtain an error code. The possible error codes are listed below:

Error Code Meaning
ERROR_DEVICE_FEATURE_NOT_SUPPORTED The NIC driver does not support reading system timer.
ERROR_INVALID_HANDLE The argument queueHandle is invalid.
ERROR_INVALID_PARAMETER Either queueHandle or pHardwareTimeStamps is a NULL pointer.
ERROR_NOT_READY

RtNalInit has not completed successfully.

Remarks

For a list of supported functions for specific drivers, see Matrix of Supported Real-Time NAL Functions by NIC Driver.

The RtNalE1000 driver does not support this function.

The output parameter structure has seconds and nanoseconds, however, depending on the NIC and link speed the actual precision may vary.

The caller must provide a non-NULL output pointer for the result.

While accepting a queue handle, this API is not queue specific and queue is only needed to identify the precise NIC driver to access. There is no system time per queue.

Requirements

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

See Also: