159 "WDFDEVICE %p, could not allocate callback lock, %!STATUS!",
179 if (ExecutionLevel !=
NULL) {
183 if (SynchronizationScope !=
NULL) {
228 "WDFHANDLE %p does not have a WDFDEVICE as an ancestor",
229 Object->GetObjectHandle());
297 "WDFHANDLE %p does not have a callbacks interface in its object tree"
320 (
PVOID*) &pParentObject);
368 "WDFDEVICE %p could not allocate a WDFIOTARGET, %!STATUS!",
378 "WDFDEVICE %p failed to initialize (add) a WDFIOTARGET, %!STATUS!",
388 "WDFDEVICE %p failed to initialize a WDFIOTARGET, %!STATUS!",
398 "WDFDEVICE %p failed to initialize (commit) a WDFIOTARGET, %!STATUS!",
const struct winhelp_callbacks Callbacks
virtual void Initialize(FxObject *ParentObject)=0
MxDeviceObject m_AttachedDevice
static FxDeviceBase * _SearchForDevice(__in FxObject *Object, __out_opt IFxHasCallbacks **Callbacks)
FxObject * m_CallbackLockObjectPtr
WDF_SYNCHRONIZATION_SCOPE m_SynchronizationScope
WDF_EXECUTION_LEVEL m_ExecutionLevel
NTSTATUS ConfigureConstraints(__in_opt PWDF_OBJECT_ATTRIBUTES ObjectAttributes)
_Must_inspect_result_ NTSTATUS AllocateTarget(_Out_ FxIoTarget **Target, _In_ BOOLEAN SelfTarget)
FxDeviceBase(__in PFX_DRIVER_GLOBALS FxDriverGlobals, __in FxDriver *Driver, __in WDFTYPE Type, __in USHORT Size)
MxDeviceObject m_DeviceObject
_Must_inspect_result_ NTSTATUS QueryInterface(__inout FxQueryInterfaceParams *Params)
virtual _Must_inspect_result_ NTSTATUS AddIoTarget(__inout FxIoTarget *IoTarget)
LONG m_DmaPacketTransactionStatus
MxDeviceObject m_PhysicalDevice
WDFDEVICE __inline GetHandle(VOID)
FxCallbackLock * GetCallbackLockPtr(__out_opt FxObject **LockObject)
VOID GetConstraints(__out_opt WDF_EXECUTION_LEVEL *ExecutionLevel, __out_opt WDF_SYNCHRONIZATION_SCOPE *SynchronizationScope)
VOID Init(__in MdDeviceObject DeviceObject, __in MdDeviceObject AttachedDevice, __in MdDeviceObject PhysicalDevice)
FxCallbackLock * m_CallbackLockPtr
FxDisposeList * m_DisposeList
virtual VOID GetConstraints(__out WDF_EXECUTION_LEVEL *ExecutionLevel, __out WDF_SYNCHRONIZATION_SCOPE *SynchronizationScope)
_Must_inspect_result_ NTSTATUS Init(__in CfxDeviceBase *Device)
PVOID __inline GetObjectHandle(VOID)
VOID MarkPassiveDispose(__in FxObjectLockState State=ObjectLock)
VOID SetDeviceBase(__in CfxDeviceBase *DeviceBase)
virtual VOID DeleteObject(VOID)
__inline PFX_DRIVER_GLOBALS GetDriverGlobals(VOID)
CfxDeviceBase * GetDeviceBase(VOID)
VOID DeleteFromFailedCreate(VOID)
_Must_inspect_result_ FxObject * GetParentObjectReferenced(__in PVOID Tag)
virtual _Must_inspect_result_ NTSTATUS QueryInterface(__in FxQueryInterfaceParams *Params)
_Must_inspect_result_ NTSTATUS Commit(__in_opt PWDF_OBJECT_ATTRIBUTES Attributes, __out_opt WDFOBJECT *ObjectHandle, __in_opt FxObject *Parent=NULL, __in BOOLEAN AssignDriverAsDefaultParent=TRUE)
__inline VOID SetObject(__in_opt MdDeviceObject DeviceObject)
IN PUNICODE_STRING IN POBJECT_ATTRIBUTES ObjectAttributes
#define NT_SUCCESS(StatCode)
DoTraceLevelMessage(pFxDriverGlobals, TRACE_LEVEL_VERBOSE, TRACINGPNP, "Enter, WDFDEVICE %p", Device)
@ FxDmaPacketTransactionCompleted
FxDeviceBase * pDeviceBase
FxObjectHandleGetPtr(GetFxDriverGlobals(DriverGlobals), Fdo, FX_TYPE_DEVICE,(PVOID *)&pFdo)
#define _Must_inspect_result_
#define TRACE_LEVEL_ERROR
#define LockObject(Object)
#define STATUS_INSUFFICIENT_RESOURCES
_Must_inspect_result_ _In_ WDFCOLLECTION _In_ WDFOBJECT Object
_Must_inspect_result_ _In_ WDFDMAENABLER _In_ _In_opt_ PWDF_OBJECT_ATTRIBUTES Attributes
_Must_inspect_result_ _In_ WDFDRIVER Driver
_In_ PDEVICE_OBJECT DeviceObject
_Must_inspect_result_ _In_ WDFDEVICE _In_ PDEVICE_OBJECT PhysicalDevice
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_DEVICE_PROPERTY_DATA _In_ DEVPROPTYPE _In_ ULONG Size
@ WdfSynchronizationScopeInheritFromParent
@ WdfExecutionLevelPassive
@ WdfExecutionLevelInheritFromParent
WDF_EXTERN_C_START enum _WDF_EXECUTION_LEVEL WDF_EXECUTION_LEVEL
enum _WDF_SYNCHRONIZATION_SCOPE WDF_SYNCHRONIZATION_SCOPE
_In_ WDFIOTARGET _In_ PWDF_REQUEST_COMPLETION_PARAMS Params
#define WDF_NO_OBJECT_ATTRIBUTES