113 "PWDF_TIMER_CONFIG Size %d, expected %d, %!STATUS!",
124 "Period value %u for a periodic timer cannot be greater than " 142 "TolerableDelay value %u cannot be greater than MAXLONG, " 151 #if (FX_CORE_MODE == FX_CORE_USER_MODE) 152 if (
Config->UseHighResolutionTimer) {
157 "UseHighResolutionTimer option is not supported for UMDF " 163 if ((
Config->TolerableDelay > 0) &&
164 (
Config->UseHighResolutionTimer)) {
170 "UseHighResolutionTimer option sepcified with non zero tolerable delay %u " 190 "Passive level periodic timer is not supported. " 191 "Use one shot timer and queue the next timer from the callback " 192 "or use a dedicated thread, %!STATUS!",
FxObjectHandleGetPtrAndGlobals(pFxDriverGlobals, Attributes->ParentObject, FX_TYPE_OBJECT,(PVOID *)&pParent, &pFxDriverGlobals)
return STATUS_NOT_SUPPORTED
static _Must_inspect_result_ NTSTATUS _Create(__in PFX_DRIVER_GLOBALS FxDriverGlobals, __in PWDF_TIMER_CONFIG Config, __in PWDF_OBJECT_ATTRIBUTES Attributes, __in FxObject *ParentObject, __out WDFTIMER *Timer)
#define _Must_inspect_result_
#define STATUS_INFO_LENGTH_MISMATCH
#define STATUS_INVALID_PARAMETER
_In_ WDFDPC _In_ BOOLEAN Wait
_Must_inspect_result_ __in PWDF_TIMER_CONFIG __in PWDF_OBJECT_ATTRIBUTES __out WDFTIMER * Timer
BOOLEAN Stop(__in BOOLEAN Wait)
_Must_inspect_result_ __in PWDF_TIMER_CONFIG __in PWDF_OBJECT_ATTRIBUTES Attributes
return STATUS_NOT_IMPLEMENTED
BOOLEAN Start(__in LARGE_INTEGER DueTime)
_Must_inspect_result_ NTSTATUS __inline FxValidateObjectAttributesForParentHandle(__in PFX_DRIVER_GLOBALS FxDriverGlobals, __in PWDF_OBJECT_ATTRIBUTES Attributes, __in ULONG Flags=FX_VALIDATE_OPTION_NONE_SPECIFIED)
_Must_inspect_result_ BOOLEAN IsVersionGreaterThanOrEqualTo(__in ULONG Major, __in ULONG Minor)
FxPointerNotNull(pFxDriverGlobals, Config)
__in WDFTIMER __in LONGLONG DueTime
__inline NTSTATUS FxVerifierCheckIrqlLevel(__in PFX_DRIVER_GLOBALS FxDriverGlobals, __in KIRQL Irql)
#define NT_SUCCESS(StatCode)
__drv_when(Wait==__true, __drv_maxIRQL(PASSIVE_LEVEL)) __drv_when(Wait
__in WDFTIMER __in BOOLEAN Wait
WDFOBJECT GetObject(VOID)
_Must_inspect_result_ NTSTATUS FxValidateObjectAttributes(__in PFX_DRIVER_GLOBALS FxDriverGlobals, __in PWDF_OBJECT_ATTRIBUTES Attributes, __in ULONG Flags=FX_VALIDATE_OPTION_NONE_SPECIFIED)
_Must_inspect_result_ __in PWDF_TIMER_CONFIG Config
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_CHILD_LIST_CONFIG Config
#define TRACE_LEVEL_ERROR
PFX_DRIVER_GLOBALS pFxDriverGlobals
DoTraceLevelMessage(pFxDriverGlobals, TRACE_LEVEL_VERBOSE, TRACINGPNP, "Enter, WDFDEVICE %p", Device)
_Must_inspect_result_ __drv_maxIRQL(DISPATCH_LEVEL) NTSTATUS STDCALL WDFEXPORT(WdfTimerCreate)(__in PWDF_DRIVER_GLOBALS DriverGlobals
FxObjectHandleGetPtr(GetFxDriverGlobals(DriverGlobals), Timer, FX_TYPE_TIMER,(PVOID *)&pFxTimer)
__inline PFX_DRIVER_GLOBALS GetFxDriverGlobals(__in PWDF_DRIVER_GLOBALS DriverGlobals)
_Must_inspect_result_ _In_ WDFDMAENABLER _In_ _In_opt_ PWDF_OBJECT_ATTRIBUTES Attributes