ReactOS 0.4.16-dev-329-g9223134
|
#include <fxdevice.hpp>
Protected Attributes | |
LIST_ENTRY | m_FileObjectListHead |
NPAGED_LOOKASIDE_LIST | m_RequestLookasideList |
size_t | m_RequestLookasideListElementSize |
WDF_OBJECT_ATTRIBUTES | m_RequestAttributes |
Protected Attributes inherited from FxDeviceBase | |
FxDriver * | m_Driver |
MxDeviceObject | m_DeviceObject |
MxDeviceObject | m_AttachedDevice |
MxDeviceObject | m_PhysicalDevice |
FxCallbackLock * | m_CallbackLockPtr |
FxObject * | m_CallbackLockObjectPtr |
WDF_EXECUTION_LEVEL | m_ExecutionLevel |
WDF_SYNCHRONIZATION_SCOPE | m_SynchronizationScope |
LONG | m_DmaPacketTransactionStatus |
Protected Attributes inherited from FxObject | |
union { | |
CfxDeviceBase * m_DeviceBase | |
CfxDevice * m_Device | |
}; | |
Private Member Functions | |
VOID | SetInitialState (VOID) |
_Must_inspect_result_ NTSTATUS | PreprocessIrp (__in MdIrp Irp) |
_Must_inspect_result_ NTSTATUS | DeleteDeviceFromFailedCreateNoDelete (__in NTSTATUS FailedStatus, __in BOOLEAN UseStateMachine) |
VOID | SetFilterIoType (VOID) |
VOID | DestructorInternal (VOID) |
NTSTATUS | WmiPkgRegister (VOID) |
VOID | WmiPkgDeregister (VOID) |
VOID | WmiPkgCleanup (VOID) |
Static Private Member Functions | |
static _Must_inspect_result_ NTSTATUS | _AcquireOptinRemoveLock (__in MdDeviceObject DeviceObject, __in MdIrp Irp) |
Static Private Attributes | |
static const CHAR | m_PriorityBoosts [] |
static MdCompletionRoutineType | _CompletionRoutineForRemlockMaintenance |
Friends | |
class | FxDriver |
class | FxIrp |
class | FxFileObject |
class | FxPkgPnp |
VOID | GetTriageInfo (VOID) |
Additional Inherited Members | |
Protected Member Functions inherited from FxDeviceBase | |
FxDeviceBase (__in PFX_DRIVER_GLOBALS FxDriverGlobals, __in FxDriver *Driver, __in WDFTYPE Type, __in USHORT Size) | |
~FxDeviceBase (VOID) | |
VOID | Init (__in MdDeviceObject DeviceObject, __in MdDeviceObject AttachedDevice, __in MdDeviceObject PhysicalDevice) |
Protected Member Functions inherited from FxObject | |
FxObject (__in WDFTYPE Type, __in USHORT Size, __in PFX_DRIVER_GLOBALS FxDriverGlobals, __in FxObjectType ObjectType) | |
FxObjectDebugExtension * | GetDebugExtension (VOID) |
BOOLEAN | IsDebug (VOID) |
VOID | AllocateTagTracker (__in WDFTYPE Type) |
virtual VOID | SelfDestruct (VOID) |
PVOID __inline | GetObjectHandleUnchecked (VOID) |
VOID __inline | DestroyChildren (VOID) |
VOID | DeleteEarlyDisposedObject (VOID) |
Static Protected Member Functions inherited from FxObject | |
static PVOID | _GetBase (__in FxObject *Object) |
Definition at line 487 of file fxdevice.hpp.
Definition at line 143 of file fxdevice.cpp.
FxDevice::~FxDevice | ( | VOID | ) |
Definition at line 239 of file fxdevice.cpp.
|
staticprivate |
Definition at line 1296 of file fxdevice.cpp.
Referenced by DispatchWithLock().
|
static |
Definition at line 1988 of file fxdevice.cpp.
|
static |
Definition at line 2063 of file fxdevice.cpp.
|
static |
Definition at line 366 of file fxdevice.cpp.
|
static |
Definition at line 1093 of file fxdeviceum.cpp.
Referenced by __deref_out_range(), _QueryProperty(), CreateSymbolicLink(), and FxGetDevicePropertyString().
|
static |
Definition at line 30 of file fxdevicekm.hpp.
Referenced by _AcquireOptinRemoveLock(), _Create(), FxPkgGeneral::AcquireRemoveLockForClose(), CreateDevice(), FxWmiIrpHandler::Dispatch(), DispatchWithLock(), GetRemoveLock(), and IsRemoveLockEnabledForIo().
Definition at line 1778 of file fxdevice.hpp.
Referenced by FxPkgPdo::HandleQueryInterfaceForReenumerate().
Definition at line 1767 of file fxdevice.hpp.
Referenced by FxPkgPdo::HandleQueryInterfaceForReenumerate().
|
static |
Definition at line 1012 of file fxdeviceum.cpp.
Referenced by _OpenKey(), and OpenSettingsKey().
|
static |
Definition at line 731 of file fxdevicekm.cpp.
|
static |
Definition at line 939 of file fxdevicekm.cpp.
Referenced by _AllocAndQueryProperty().
|
static |
Definition at line 859 of file fxdevicekm.cpp.
Referenced by _AllocAndQueryPropertyEx().
|
inlinestatic |
Definition at line 933 of file fxdevice.hpp.
Referenced by FxDefaultIrpHandler::Dispatch(), DispatchPreprocessedIrp(), DispatchWithLock(), FxDriver::Initialize(), and PreprocessIrp().
|
static |
Definition at line 2151 of file fxdevice.cpp.
Referenced by _OpenKey(), _QueryProperty(), and _QueryPropertyEx().
|
virtual |
Reimplemented from FxDeviceBase.
Definition at line 431 of file fxdevicekm.cpp.
Referenced by FxChildList::Initialize().
|
virtual |
|
virtual |
Reimplemented from FxDeviceBase.
Definition at line 1772 of file fxdevice.cpp.
|
virtual |
Reimplemented from FxDeviceBase.
Definition at line 452 of file fxdevicekm.cpp.
|
virtual |
Reimplemented from FxDeviceBase.
Definition at line 1805 of file fxdevice.cpp.
PVOID FxDevice::AllocateRequestMemory | ( | __in_opt PWDF_OBJECT_ATTRIBUTES | Attributes | ) |
Definition at line 1630 of file fxdevice.cpp.
Definition at line 2092 of file fxdevice.hpp.
NTSTATUS FxDevice::AssignProperty | ( | _In_ PVOID | PropertyData, |
_In_ FxPropertyType FxPropertyType | , | ||
_In_ DEVPROPTYPE | Type, | ||
_In_ ULONG | BufferLength, | ||
_In_opt_ PVOID | PropertyBuffer | ||
) |
Definition at line 668 of file fxdevicekm.cpp.
Definition at line 1548 of file fxdevice.hpp.
Referenced by __drv_when().
VOID FxDevice::ConfigureAutoForwardCleanupClose | ( | __in PWDFDEVICE_INIT | DeviceInit | ) |
Definition at line 864 of file fxdevice.cpp.
Referenced by Initialize().
Definition at line 1465 of file fxdevice.hpp.
Referenced by FxPkgGeneral::DecrementOpenHandleCount().
_Must_inspect_result_ NTSTATUS FxDevice::ControlDeviceInitialize | ( | __in PWDFDEVICE_INIT | DeviceInit | ) |
Definition at line 399 of file fxdevicekm.cpp.
Referenced by _Create().
_Must_inspect_result_ NTSTATUS FxDevice::CreateDevice | ( | __in PWDFDEVICE_INIT | DeviceInit | ) |
Definition at line 964 of file fxdevice.cpp.
Referenced by ControlDeviceInitialize(), FdoInitialize(), and PdoInitialize().
NTSTATUS FxDevice::CreateSymbolicLink | ( | _In_ PFX_DRIVER_GLOBALS | FxDriverGlobals, |
_In_ PCUNICODE_STRING | SymbolicLinkName | ||
) |
Definition at line 513 of file fxdevicekm.cpp.
_Must_inspect_result_ NTSTATUS FxDevice::DeleteDeviceFromFailedCreate | ( | __in NTSTATUS | FailedStatus, |
__in BOOLEAN | UseStateMachine | ||
) |
Definition at line 644 of file fxdevice.cpp.
Referenced by _Create().
|
private |
Definition at line 559 of file fxdevice.cpp.
Referenced by DeleteDeviceFromFailedCreate(), and DeleteObject().
Reimplemented from FxObject.
Definition at line 1135 of file fxdevice.cpp.
Referenced by FxPkgPnp::DeleteDevice().
Definition at line 1342 of file fxdeviceum.cpp.
Referenced by FxPkgFdo::DeleteSymbolicLinkOverload(), FxPkgPdo::DeleteSymbolicLinkOverload(), Destroy(), FxPkgPdo::PnpEventPdoRemovedOverload(), and ~FxDevice().
Definition at line 329 of file fxdevicekm.cpp.
Referenced by FxPkgPnp::DeleteDevice(), DeleteDeviceFromFailedCreateNoDelete(), and Dispose().
Definition at line 390 of file fxdevicekm.cpp.
Referenced by ~FxDevice().
Definition at line 1269 of file fxdeviceum.cpp.
Referenced by Destroy().
|
static |
Definition at line 1551 of file fxdevice.cpp.
Referenced by FxDriver::Initialize().
_Must_inspect_result_ NTSTATUS FxDevice::DispatchPreprocessedIrp | ( | __in MdIrp | Irp, |
__in PVOID | DispatchContext | ||
) |
Definition at line 1564 of file fxdevice.cpp.
|
static |
Definition at line 32 of file fxdeviceum.cpp.
Referenced by FxDriver::Initialize().
|
static |
Definition at line 1336 of file fxdevice.cpp.
Referenced by DispatchWithLockUm(), and FxDriver::Initialize().
|
static |
Definition at line 48 of file fxdeviceum.cpp.
Referenced by FxDriver::Initialize().
Reimplemented from FxObject.
Definition at line 1242 of file fxdevice.cpp.
_Must_inspect_result_ NTSTATUS FxDevice::FdoInitialize | ( | __in PWDFDEVICE_INIT | DeviceInit | ) |
Definition at line 33 of file fxdevicekm.cpp.
Referenced by _Create().
Definition at line 1728 of file fxdevice.cpp.
Referenced by FxRequestFromLookaside::SelfDestruct().
Definition at line 1798 of file fxdevice.hpp.
_Must_inspect_result_ NTSTATUS FxDevice::FxValidateInterfacePropertyData | ( | _In_ PWDF_DEVICE_INTERFACE_PROPERTY_DATA | PropertyData | ) |
Definition at line 1693 of file fxdeviceum.cpp.
Definition at line 1501 of file fxdevice.hpp.
Definition at line 1492 of file fxdevice.hpp.
Referenced by GetCallbackFlags().
|
inline |
Definition at line 1560 of file fxdevice.hpp.
Referenced by FxPkgIo::CreateQueue(), if(), and IsCxDriverInIoPath().
|
inline |
Definition at line 1654 of file fxdevice.hpp.
Referenced by FxPkgGeneral::ConfigureConstraints(), FxPkgGeneral::ConfigureFileObjectClass(), and FxPkgGeneral::OnCreate().
|
inlinestatic |
Definition at line 1640 of file fxdevice.hpp.
Referenced by FxPkgIo::AddIoQueue(), and FxPkgIo::ConfigureDynamicDispatching().
|
virtual |
Reimplemented from FxDeviceBase.
Definition at line 1818 of file fxdevice.cpp.
Definition at line 1111 of file fxdevice.hpp.
Referenced by FxRequest::Complete().
|
inline |
Definition at line 1149 of file fxdevice.hpp.
Referenced by __drv_strictTypeMatch(), FxChildList::DrainFreeListHead(), if(), FxInterrupt::Initialize(), FxPkgPnp::PnpEnterNewState(), FxPkgPnp::PnpProcessEvent(), FxPkgPnp::PnpProcessEventInner(), and FxPkgPnp::~FxPkgPnp().
|
inline |
Definition at line 1165 of file fxdevice.hpp.
Referenced by __drv_maxIRQL(), FxPkgPnp::NotPowerPolicyOwnerEnterNewState(), FxPkgPnp::PowerPolicyEnterNewState(), FxPkgPnp::PowerPolicyProcessEvent(), and FxPkgPnp::PowerPolicyProcessEventInner().
|
inline |
Definition at line 1157 of file fxdevice.hpp.
Referenced by __drv_maxIRQL(), FxPkgPnp::PowerEnterNewState(), FxPkgPnp::PowerProcessEvent(), and FxPkgPnp::PowerProcessEventInner().
__inline IWudfDeviceStack * FxDevice::GetDeviceStack | ( | VOID | ) |
Definition at line 435 of file fxdeviceum.hpp.
Referenced by GetDeviceStackIoType(), if(), NtStatusFromHr(), FxPkgPnp::ReadStateFromRegistry(), SUCCEEDED(), and FxPkgPnp::UpdateWmiInstance().
__inline IWudfDeviceStack2 * FxDevice::GetDeviceStack2 | ( | VOID | ) |
Definition at line 444 of file fxdeviceum.hpp.
Referenced by FxPoxInterface::PowerNotRequiredCallbackInvoked().
VOID FxDevice::GetDeviceStackIoType | ( | _Out_ WDF_DEVICE_IO_TYPE * | ReadWriteIoType, |
_Out_ WDF_DEVICE_IO_TYPE * | IoControlIoType | ||
) |
Definition at line 1744 of file fxdeviceum.cpp.
Definition at line 1815 of file fxdevice.hpp.
Definition at line 1986 of file fxdevice.hpp.
Referenced by FxMessageDispatch::GetDirectTransferThreshold().
Definition at line 890 of file fxdevice.hpp.
Referenced by FxIoTargetSelf::Send().
Definition at line 1236 of file fxdevice.hpp.
Referenced by FdoInitialize(), GetDefaultIoTarget(), GetSelfIoTarget(), FxPkgPdo::Initialize(), and SetFilter().
|
inline |
Definition at line 1123 of file fxdevice.hpp.
Referenced by FxPkgGeneral::CreateCompleted(), FxRequest::GetFileObject(), FxPkgGeneral::OnCleanup(), FxPkgGeneral::OnClose(), and FxPkgGeneral::OnCreate().
|
static |
Definition at line 60 of file fxdeviceum.cpp.
Referenced by FxPkgPdo::_QueryCapsWorkItem(), Dispatch(), FxRequestSystemBuffer::GetBuffer(), FxRequestSystemBuffer::GetMdl(), GetPreferredTransferMode(), PoFxDevicePowerNotRequired(), and PoFxDevicePowerRequired().
|
inline |
Definition at line 1057 of file fxdevice.hpp.
|
inline |
Definition at line 1084 of file fxdevice.hpp.
Referenced by FxRequestSystemBuffer::GetBuffer(), and FxRequestSystemBuffer::GetMdl().
|
inline |
Definition at line 1093 of file fxdevice.hpp.
Definition at line 2118 of file fxdevice.hpp.
Definition at line 1254 of file fxdevice.hpp.
Referenced by FxPkgPdo::_QueryCapsWorkItem(), FxChildList::Add(), AllocateRequestMemory(), DeleteObject(), FxChildList::DrainFreeListHead(), FreeRequestMemory(), GetPdoPackageFromDeviceHandle(), and FxDeviceDescriptionEntry::IsDeviceRemoved().
|
inline |
Definition at line 1977 of file fxdevice.hpp.
|
inline |
Definition at line 1968 of file fxdevice.hpp.
|
static |
Definition at line 593 of file fxdeviceum.cpp.