70 Header->dwBytesRecorded = 0;
153 Header->dwFlags &= ~WHDR_PREPARED;
195 Header->dwFlags &= ~WHDR_DONE;
301 if ( SoundDeviceInstance->HeadWaveHeader ==
Header )
303 SoundDeviceInstance->HeadWaveHeader =
Header->lpNext;
311 SoundDeviceInstance->TailWaveHeader =
NULL;
317 CurrHdr = SoundDeviceInstance->HeadWaveHeader;
321 while ( CurrHdr !=
Header )
324 CurrHdr = CurrHdr->
lpNext;
330 PrevHdr->
lpNext = CurrHdr->lpNext;
336 SoundDeviceInstance->TailWaveHeader = PrevHdr;
350 SND_TRACE(
L"Returning buffer to client...\n");
353 Header->dwFlags &= ~WHDR_INQUEUE;
static VOID FreeMemory(PCREATE_DATA Data)
_In_ CDROM_SCAN_FOR_SPECIAL_INFO _In_ PCDROM_SCAN_FOR_SPECIAL_HANDLER Function
_Inout_opt_ PUNICODE_STRING Extension
struct _WAVEHDR_EXTENSION * PWAVEHDR_EXTENSION
VOID DoWaveStreaming(IN PSOUND_DEVICE_INSTANCE SoundDeviceInstance)
MMRESULT CallSoundThread(IN PSOUND_DEVICE_INSTANCE SoundDeviceInstance, IN SOUND_THREAD_REQUEST_HANDLER RequestHandler, IN PVOID Parameter OPTIONAL)
#define VALIDATE_MMSYS_PARAMETER(parameter_condition)
#define AllocateStruct(thing)
MMRESULT GetSoundDeviceFunctionTable(IN PSOUND_DEVICE SoundDevice, OUT PMMFUNCTION_TABLE *FunctionTable)
VOID NotifyMmeClient(IN PSOUND_DEVICE_INSTANCE SoundDeviceInstance, IN UINT Message, IN DWORD_PTR Parameter)
MMRESULT GetSoundDeviceFromInstance(IN PSOUND_DEVICE_INSTANCE SoundDeviceInstance, OUT PSOUND_DEVICE *SoundDevice)
MMRESULT TranslateInternalMmResult(IN MMRESULT Result)
MMRESULT GetSoundDeviceType(IN PSOUND_DEVICE SoundDevice, OUT PMMDEVICE_TYPE DeviceType)
MMRESULT(* MMWAVEHEADER_FUNC)(IN struct _SOUND_DEVICE_INSTANCE *SoundDeviceInstance, IN PWAVEHDR WaveHeader)
#define MMSUCCESS(result)
BOOLEAN IsValidSoundDeviceInstance(IN PSOUND_DEVICE_INSTANCE SoundDeviceInstance)
#define DUMP_WAVEHDR_QUEUE(sound_device_instance)
#define SND_ASSERT(condition)
struct wavehdr_tag * PWAVEHDR
#define MMSYSERR_NOTSUPPORTED
struct wavehdr_tag * lpNext
_Must_inspect_result_ _In_ WDFQUEUE _In_opt_ WDFREQUEST _In_opt_ WDFFILEOBJECT _Inout_opt_ PWDF_REQUEST_PARAMETERS Parameters
static WLX_DISPATCH_VERSION_1_4 FunctionTable
_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
_Inout_opt_ PVOID Parameter