32 DPRINT(
"IPortWaveRTStream_fnQueryInterface entered\n");
46CPortWaveRTStreamInit::AllocatePagesForMdl(
55CPortWaveRTStreamInit::AllocateContiguousPagesForMdl(
67 DPRINT(
"MmAllocateContiguousMemorySpecifyCache failed\n");
78 DPRINT(
"MmAllocatePagesForMdl failed\n");
96CPortWaveRTStreamInit::MapAllocatedPages(
105CPortWaveRTStreamInit::UnmapAllocatedPages(
114CPortWaveRTStreamInit::FreePagesFromMdl(
123CPortWaveRTStreamInit::GetPhysicalPagesCount(
131CPortWaveRTStreamInit::GetPhysicalPageAddress(
143 DPRINT(
"OutOfBounds: Pages %u Index %u\n", Pages,
Index);
165 Status =
This->QueryInterface(IID_IPortWaveRTStream, (
PVOID*)OutStream);
CPortWaveRTStreamInit(IUnknown *OuterUnknown)
virtual ~CPortWaveRTStreamInit()
STDMETHODIMP QueryInterface(REFIID InterfaceId, PVOID *Interface)
IMP_IPortWaveRTStreamInit
PVOID NTAPI MmAllocateContiguousMemorySpecifyCache(IN SIZE_T NumberOfBytes, IN PHYSICAL_ADDRESS LowestAcceptableAddress OPTIONAL, IN PHYSICAL_ADDRESS HighestAcceptableAddress, IN PHYSICAL_ADDRESS BoundaryAddressMultiple OPTIONAL, IN MEMORY_CACHING_TYPE CacheType OPTIONAL)
VOID NTAPI MmFreeContiguousMemorySpecifyCache(IN PVOID BaseAddress, IN SIZE_T NumberOfBytes, IN MEMORY_CACHING_TYPE CacheType)
#define NT_SUCCESS(StatCode)
NTSYSAPI ULONGLONG WINAPI RtlConvertUlongToLargeInteger(ULONG)
VOID NTAPI MmFreePagesFromMdl(IN PMDL Mdl)
PMDL NTAPI MmAllocatePagesForMdl(IN PHYSICAL_ADDRESS LowAddress, IN PHYSICAL_ADDRESS HighAddress, IN PHYSICAL_ADDRESS SkipBytes, IN SIZE_T TotalBytes)
PVOID NTAPI MmMapLockedPagesSpecifyCache(IN PMDL Mdl, IN KPROCESSOR_MODE AccessMode, IN MEMORY_CACHING_TYPE CacheType, IN PVOID BaseAddress, IN ULONG BugCheckOnFailure, IN ULONG Priority)
VOID NTAPI MmUnmapLockedPages(IN PVOID BaseAddress, IN PMDL Mdl)
_In_ HANDLE _Outptr_result_bytebuffer_ ViewSize PVOID * BaseAddress
PHYSICAL_ADDRESS NTAPI MmGetPhysicalAddress(IN PVOID Address)
NTSTATUS NewPortWaveRTStream(PPORTWAVERTSTREAM *OutStream)
IPortWaveRTStream * PPORTWAVERTSTREAM
#define STATUS_UNSUCCESSFUL
#define STATUS_INSUFFICIENT_RESOURCES
_In_ WDFCOLLECTION _In_ ULONG Index
_In_ WDFDEVICE _In_ PVOID _In_opt_ PMDL Mdl
_Must_inspect_result_ _In_ WDFDEVICE _In_ LPCGUID _Out_ PINTERFACE Interface
#define IsEqualGUIDAligned(guid1, guid2)
_At_(*)(_In_ PWSK_CLIENT Client, _In_opt_ PUNICODE_STRING NodeName, _In_opt_ PUNICODE_STRING ServiceName, _In_opt_ ULONG NameSpace, _In_opt_ GUID *Provider, _In_opt_ PADDRINFOEXW Hints, _Outptr_ PADDRINFOEXW *Result, _In_opt_ PEPROCESS OwningProcess, _In_opt_ PETHREAD OwningThread, _Inout_ PIRP Irp Result)(Mem)) NTSTATUS(WSKAPI *PFN_WSK_GET_ADDRESS_INFO
#define MmGetMdlByteCount(_Mdl)
_Must_inspect_result_ _In_ PHYSICAL_ADDRESS HighAddress
_Inout_ PMDL MemoryDescriptorList
#define MmGetSystemAddressForMdlSafe(_Mdl, _Priority)
#define ADDRESS_AND_SIZE_TO_SPAN_PAGES(_Va, _Size)
_Must_inspect_result_ _In_ PHYSICAL_ADDRESS _In_ PHYSICAL_ADDRESS _In_opt_ PHYSICAL_ADDRESS _In_ MEMORY_CACHING_TYPE CacheType
_Must_inspect_result_ _In_ PHYSICAL_ADDRESS _In_ PHYSICAL_ADDRESS _In_ SIZE_T TotalBytes
enum _MEMORY_CACHING_TYPE MEMORY_CACHING_TYPE