ReactOS 0.4.15-dev-5672-gf73ac17
wavecyclicstream.cpp File Reference
Include dependency graph for wavecyclicstream.cpp:

Go to the source code of this file.

Macros

#define STR_MODULENAME   "AC97 Cyclic Stream: "
 
#define BUFFERTIME   10
 
#define NBUFFERS   4
 

Functions

 IMP_CMiniportStream_QueryInterface (CMiniportWaveCyclicStream, IMiniportWavePciStream)
 
 IMP_CMiniport_SetState (CMiniportWaveCyclicStream)
 
NTSTATUS CreateMiniportWaveCyclicStream (OUT CMiniportWaveCyclicStream **MiniportCyclicStream, IN PUNKNOWN pUnknownOuter, _When_((PoolType &NonPagedPoolMustSucceed) !=0, __drv_reportError("Must succeed pool allocations are forbidden. " "Allocation failures cause a system crash")) IN POOL_TYPE PoolType)
 
 STDMETHODIMP_ (NTSTATUS) CMiniportWaveCyclicStream
 
 STDMETHODIMP_ (ULONG) CMiniportWaveCyclicStream
 
 IMP_CMiniport_NormalizePhysicalPosition (CMiniportWaveCyclicStream)
 
 STDMETHODIMP_ (void) CMiniportWaveCyclicStream
 

Macro Definition Documentation

◆ BUFFERTIME

#define BUFFERTIME   10

Definition at line 13 of file wavecyclicstream.cpp.

◆ NBUFFERS

#define NBUFFERS   4

Definition at line 14 of file wavecyclicstream.cpp.

◆ STR_MODULENAME

#define STR_MODULENAME   "AC97 Cyclic Stream: "

Definition at line 9 of file wavecyclicstream.cpp.

Function Documentation

◆ CreateMiniportWaveCyclicStream()

NTSTATUS CreateMiniportWaveCyclicStream ( OUT CMiniportWaveCyclicStream **  MiniportCyclicStream,
IN PUNKNOWN  pUnknownOuter,
_When_((PoolType &NonPagedPoolMustSucceed) !=0, __drv_reportError("Must succeed pool allocations are forbidden. " "Allocation failures cause a system crash")) IN POOL_TYPE  PoolType 
)

Definition at line 39 of file wavecyclicstream.cpp.

48{
49 PAGED_CODE ();
50
51 DOUT (DBG_PRINT, ("[CreateMiniportWaveCyclicStream]"));
52
53 //
54 // This is basically like the macro at stdunk with the change that we
55 // don't cast to interface unknown but to interface MiniportIchStream.
56 //
57 *MiniportCyclicStream = new (PoolType, PoolTag)
58 CMiniportWaveCyclicStream (pUnknownOuter);
59 if (*MiniportCyclicStream)
60 {
61 (*MiniportCyclicStream)->AddRef ();
62 return STATUS_SUCCESS;
63 }
64
66}
#define PAGED_CODE()
#define DOUT(lvl, strings)
Definition: debug.h:82
#define STATUS_SUCCESS
Definition: shellext.h:65
#define STATUS_INSUFFICIENT_RESOURCES
Definition: udferr_usr.h:158
_Must_inspect_result_ _In_ WDFDEVICE _In_ DEVICE_REGISTRY_PROPERTY _In_ _Strict_type_match_ POOL_TYPE PoolType
Definition: wdfdevice.h:3815
_Must_inspect_result_ _In_opt_ PWDF_OBJECT_ATTRIBUTES _In_ _Strict_type_match_ POOL_TYPE _In_opt_ ULONG PoolTag
Definition: wdfmemory.h:164
#define DBG_PRINT(ppi, ch, level)
Definition: win32kdebug.h:168

◆ IMP_CMiniport_NormalizePhysicalPosition()

IMP_CMiniport_NormalizePhysicalPosition ( CMiniportWaveCyclicStream  )

◆ IMP_CMiniport_SetState()

IMP_CMiniport_SetState ( CMiniportWaveCyclicStream  )

◆ IMP_CMiniportStream_QueryInterface()

IMP_CMiniportStream_QueryInterface ( CMiniportWaveCyclicStream  ,
IMiniportWavePciStream   
)

◆ STDMETHODIMP_() [1/3]

STDMETHODIMP_ ( NTSTATUS  )

Definition at line 113 of file wavecyclicstream.cpp.

117{
118 NTSTATUS ntStatus = CMiniportStream::SetFormat(Format);
119 if (!NT_SUCCESS (ntStatus))
120 return ntStatus;
121 return ResizeBuffer();
122}
LONG NTSTATUS
Definition: precomp.h:26
#define NT_SUCCESS(StatCode)
Definition: apphelp.c:32

◆ STDMETHODIMP_() [2/3]

STDMETHODIMP_ ( ULONG  )

Definition at line 161 of file wavecyclicstream.cpp.

166{
167 *FrameSize = m_bufferSize;
168 return BUFFERTIME;
169}
#define BUFFERTIME

◆ STDMETHODIMP_() [3/3]

STDMETHODIMP_ ( void  )

Definition at line 182 of file wavecyclicstream.cpp.

187{
189}
Definition: bufpool.h:45
#define memset(x, y, z)
Definition: compat.h:39
_Must_inspect_result_ typedef _In_ PHYSICAL_ADDRESS _In_ LARGE_INTEGER ByteCount
Definition: iotypes.h:1099