NdisAllocateTimerObject (Compact 2013)
3/26/2014
This function allocates and initializes a timer object for use with subsequent NdisXxx timer functions.
Syntax
NDIS_STATUS
NdisAllocateTimerObject(
IN NDIS_HANDLE NdisHandle,
IN PNDIS_TIMER_CHARACTERISTICS TimerCharacteristics,
OUT PNDIS_HANDLE pTimerObject
);
Parameters
- NdisHandle
An NDIS handle that was obtained during caller initialization.
- TimerCharacteristics
A pointer to a caller-supplied NDIS_TIMER_CHARACTERISTICS structure that specifies the characteristics of the allocated timer object.
- pTimerObject
A pointer to an NDIS timer object handle that NDIS provides to identify the timer object in subsequent calls to NdisXxx timer functions.
Return Value
NdisAllocateTimerObject returns one of the following status values:
- NDIS_STATUS_SUCCESS
The timer object was allocated successfully.
- NDIS_STATUS_RESOURCES
The allocation failed because of insufficient resources.
- NDIS_STATUS_BAD_CHARACTERISTICS
The allocation failed because the information in the NDIS_TIMER_CHARACTERISTICS structure is invalid.
- NDIS_STATUS_FAILURE
None of the previous status values apply.
Remarks
To use timer services, an NDIS driver first calls the NdisAllocateTimerObject function to initialize a timer object. Typically, NdisAllocateTimerObject is called during driver initialization.
To start a timer, call the NdisSetTimerObject function. Calls to NdisSetTimerObject insert the timer object in the system timer queue. Only one instance of a particular timer object can be queued at any given moment.
To cancel a timer, call the NdisCancelTimerObject function. NdisCancelTimerObject dequeues the timer object if it is currently queued.
To free a timer object, you must call the NdisFreeTimerObject function.
Requirements
Header |
ndis.h |
See Also
Reference
NDIS Timer Functions
NDIS_TIMER_CHARACTERISTICS
NdisCancelTimerObject
NdisFreeTimerObject
NdisSetTimerObject