27#include "../fxtargetsshared.hpp"
30#if defined(EVENT_TRACING)
31#include "FxIoTargetSelf.tmh"
102#if (FX_CORE_MODE == FX_CORE_USER_MODE)
107 (
static_cast<IWudfIoIrp2*
>(
Irp))->PrepareToForwardToSelf();
131 "Send WDFIOTARGET %p, No Dispatch Queue Found for Major Function %d",
145 "Only Read/Write/Control/Internal-Control IRPs can be "
146 "forwarded to Self IO Target 0x%p, %!IRPMJ!, "
147 "IRP_MN %x, Device 0x%p, %!STATUS!",
158 queue->GetCxDeviceInfo());
MdDeviceObject __inline GetDeviceObject(VOID)
__inline FxPackage * GetDispatchPackage(__in UCHAR MajorFunction)
FxIoTargetSelf(_In_ PFX_DRIVER_GLOBALS FxDriverGlobals, _In_ USHORT ObjectSize)
FxIoQueue * GetDispatchQueue(_In_ UCHAR MajorFunction)
virtual VOID Send(_In_ MdIrp Irp)
FxIoQueue * m_DispatchQueue
UCHAR GetMajorFunction(VOID)
VOID CompleteRequest(__in_opt CCHAR PriorityBoost=IO_NO_INCREMENT)
VOID SetNextIrpStackLocation(VOID)
VOID SetStatus(__in NTSTATUS Status)
VOID SetInformation(__in ULONG_PTR Information)
UCHAR GetMinorFunction(VOID)
VOID SetCurrentDeviceObject(__in MdDeviceObject DeviceObject)
PVOID __inline GetObjectHandle(VOID)
__inline PFX_DRIVER_GLOBALS GetDriverGlobals(VOID)
FxIoQueue * GetDispatchQueue(_In_ UCHAR MajorFunction)
__inline FxIoInCallerContext * GetIoInCallerContextCallback(__in_opt FxCxDeviceInfo *CxDeviceInfo)
_Must_inspect_result_ NTSTATUS __fastcall DispatchStep2(__inout MdIrp Irp, __in_opt FxIoInCallerContext *IoInCallerCtx, __in_opt FxIoQueue *Queue)
DoTraceLevelMessage(pFxDriverGlobals, TRACE_LEVEL_VERBOSE, TRACINGPNP, "Enter, WDFDEVICE %p", Device)
return pObject GetObjectHandle()
FxIoInCallerContext * ioInCallerCtx
FxVerifierDbgBreakPoint(pFxDriverGlobals)
#define TRACE_LEVEL_ERROR
#define STATUS_INVALID_PARAMETER
#define STATUS_INVALID_DEVICE_STATE