34 #define FX_TRACE_INFO_ID (FxDriver::_GetTraceInfoExtension) 49 #define FX_DRIVER_ID ((PVOID)FxDriver::GetFxDriver) 119 HKEY m_DriverParametersKey;
209 #if (FX_CORE_MODE == FX_CORE_KERNEL_MODE) 222 _In_ IWudfDeviceStack * DevStack,
287 if (ExecutionLevel !=
NULL) {
291 if (SynchronizationScope !=
NULL) {
384 ClearDriverObjectFxDriver(
392 GetDriverParametersKey(
396 return m_DriverParametersKey;
400 #if (FX_CORE_MODE == FX_CORE_USER_MODE) 422 #endif // _FXDRIVER_H_ VOID SetDriverObjectFlag(_In_ FxDriverObjectUmFlags Flag)
DRIVER_ADD_DEVICE MdDriverAddDeviceType
virtual VOID DeleteObject(VOID)
_Must_inspect_result_ FxString * GetRegistryPath(VOID)
static MdDriverUnloadType Unload
PFN_WDF_DRIVER_DEVICE_ADD Method
VOID ConfigureConstraints(__in_opt PWDF_OBJECT_ATTRIBUTES DriverAttributes)
FxCallbackMutexLock m_CallbackMutexLock
_In_ WDFIOTARGET _In_ PWDF_REQUEST_COMPLETION_PARAMS Params
FxDisposeList * m_DisposeList
EVT_WDF_DRIVER_DEVICE_ADD * PFN_WDF_DRIVER_DEVICE_ADD
_Must_inspect_result_ NTSTATUS Initialize(__in PCUNICODE_STRING RegistryPath, __in PWDF_DRIVER_CONFIG Config, __in_opt PWDF_OBJECT_ATTRIBUTES DriverAttributes)
_Must_inspect_result_ _In_ PDRIVER_OBJECT _In_ PCUNICODE_STRING RegistryPath
PDEVICE_OBJECT PhysicalDeviceObject
VOID SetDriverObjectFlag(_In_ FxDriverObjectUmFlags Flag)
CLIPBOARD_GLOBALS Globals
virtual NTSTATUS QueryInterface(__inout FxQueryInterfaceParams *Params)
FxObject * m_CallbackLockObjectPtr
PVOID __inline GetObjectHandle(VOID)
static FxDriver * GetFxDriver(__in MdDriverObject DriverObject)
static VOID _InitializeTag(__in PFX_DRIVER_GLOBALS Globals, __in PWDF_DRIVER_CONFIG Config)
_Must_inspect_result_ NTSTATUS AllocateDriverObjectExtensionAndStoreFxDriver(VOID)
_Must_inspect_result_ _In_ PDRIVER_OBJECT DriverObject
PUNICODE_STRING GetRegistryPathUnicodeString(VOID)
enum _WDF_SYNCHRONIZATION_SCOPE WDF_SYNCHRONIZATION_SCOPE
__inline WDFDRIVER GetHandle(VOID)
FxCallbackLock * m_CallbackLockPtr
_Must_inspect_result_ _In_ PDRIVER_OBJECT _In_ PCUNICODE_STRING _In_opt_ PWDF_OBJECT_ATTRIBUTES DriverAttributes
virtual VOID DeleteObject(VOID)
static __inline KIRQL MxGetCurrentIrql()
WDF_DRIVER_CONFIG m_Config
static MdDriverAddDeviceType AddDevice
BOOLEAN IsDriverObjectFlagSet(_In_ FxDriverObjectUmFlags Flag)
MdDriverObject DriverObject
WDF_EXECUTION_LEVEL m_ExecutionLevel
#define _Must_inspect_result_
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_CHILD_LIST_CONFIG Config
__inline FxDisposeList * GetDisposeList()
__inline MdDriverObject GetObject(VOID)
VOID InitializeInternal(VOID)
PFN_WDF_TRACE_CALLBACK Callback
__inline MdDriverObject GetDriverObject(VOID)
FxDriverUnload m_DriverUnload
WDF_SYNCHRONIZATION_SCOPE m_SynchronizationScope
UNICODE_STRING m_RegistryPath
virtual VOID GetConstraints(__out WDF_EXECUTION_LEVEL *ExecutionLevel, __out WDF_SYNCHRONIZATION_SCOPE *SynchronizationScope)
BOOLEAN IsDriverObjectFlagSet(_In_ FxDriverObjectUmFlags Flag)
EVT_WDF_TRACE_CALLBACK * PFN_WDF_TRACE_CALLBACK
virtual FxCallbackLock * GetCallbackLockPtr(__deref_out FxObject **LockObject)
BOOLEAN m_DebuggerConnected
WDF_EXTERN_C_START enum _WDF_EXECUTION_LEVEL WDF_EXECUTION_LEVEL
virtual _Must_inspect_result_ NTSTATUS QueryInterface(__in FxQueryInterfaceParams *Params)
FxDriver(__in MdDriverObject DriverObject, __in PWDF_DRIVER_CONFIG DriverConfig, __in PFX_DRIVER_GLOBALS FxDriverGlobals)
static VOID _InitializeDriverName(__in PFX_DRIVER_GLOBALS Globals, __in PCUNICODE_STRING RegistryPath)
__inline PFN_WDF_DRIVER_DEVICE_ADD GetDriverDeviceAddMethod()
virtual BOOLEAN Dispose(VOID)
MxDriverObject m_DriverObject
_Must_inspect_result_ _In_ PDRIVER_OBJECT _In_ PCUNICODE_STRING _In_opt_ PWDF_OBJECT_ATTRIBUTES _In_ PWDF_DRIVER_CONFIG DriverConfig
FxDriverDeviceAdd m_DriverDeviceAdd
DRIVER_UNLOAD MdDriverUnloadType
#define LockObject(Object)