#include "rtminiport.h"
#include "rtstream.h"
Go to the source code of this file.
◆ STR_MODULENAME
#define STR_MODULENAME "AC97 RT Stream: " |
◆ CreateAC97MiniportWaveRTStream()
Definition at line 37 of file rtstream.cpp.
41{
43
45
46
47
48
49
51 if (*RTStream)
52 {
53 (*RTStream)->AddRef ();
55 }
56
58}
#define DOUT(lvl, strings)
#define STATUS_INSUFFICIENT_RESOURCES
_Must_inspect_result_ _In_opt_ PWDF_OBJECT_ATTRIBUTES _In_ _Strict_type_match_ POOL_TYPE _In_opt_ ULONG PoolTag
#define DBG_PRINT(ppi, ch, level)
◆ STDMETHODIMP_() [1/2]
Definition at line 187 of file rtstream.cpp.
195{
197
198
199
200
201 if(
size <=
size % (NumberOfChannels * 2) )
202 {
204 }
205 size -=
size % (NumberOfChannels * 2);
206
207
208
209
211 {
214 }
215
216
217
218
219
220
221
222
223
224
225
226
227
230
233 PMDL audioBufferMdl = PortStream->AllocateContiguousPagesForMdl (low, high,
size);
234
235
236
237
238 if (!audioBufferMdl)
239 {
240 DOUT (
DBG_WARNING, (
"[AllocateAudioBuffer] Can not allocate RT buffer."));
242 }
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257 *userModeBuffer = audioBufferMdl;
259 *bufferOffset = 0;
261
262
263
264
266 {
267 BDList[loop].dwPtrToPhyAddress = PortStream->GetPhysicalPageAddress (audioBufferMdl, 0).LowPart;
268 BDList[loop].wLength = (
WORD)
size/2;
271 else
272 BDList[loop].wPolicyBits = 0;
273 }
274
276}
const int MAX_BDL_ENTRIES
#define STATUS_UNSUCCESSFUL
◆ STDMETHODIMP_() [2/2]
Definition at line 287 of file rtstream.cpp.
292{
294
296
297
298
299
301 {
302 PortStream->FreePagesFromMdl (
Mdl);
303 }
304}
#define UNREFERENCED_PARAMETER(P)
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_DEVICE_PROPERTY_DATA _In_ DEVPROPTYPE _In_ ULONG Size
_In_ WDFDEVICE _In_ PVOID _In_opt_ PMDL Mdl