ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

wdmaud.h
Go to the documentation of this file.
00001 #ifndef WDMAUD_H__
00002 #define WDMAUD_H__
00003 
00004 #include <stdio.h>
00005 #include <windows.h>
00006 #include <ntddsnd.h>
00007 #include <sndtypes.h>
00008 #include <setupapi.h>
00009 #include <mmddk.h>
00010 #include <mmebuddy.h>
00011 #include <ks.h>
00012 #include <ksmedia.h>
00013 #include <samplerate.h>
00014 #include <float_cast.h>
00015 #include "interface.h"
00016 #include "mmixer.h"
00017 #include <debug.h>
00018 
00019 BOOL
00020 WdmAudInitUserModeMixer(VOID);
00021 
00022 ULONG
00023 WdmAudGetWaveOutCount(VOID);
00024 
00025 ULONG
00026 WdmAudGetWaveInCount(VOID);
00027 
00028 ULONG
00029 WdmAudGetMixerCount(VOID);
00030 
00031 MMRESULT
00032 WdmAudGetNumWdmDevsByMMixer(
00033     IN  MMDEVICE_TYPE DeviceType,
00034     OUT DWORD* DeviceCount);
00035 
00036 MMRESULT
00037 WdmAudCommitWaveBufferByLegacy(
00038     IN  PSOUND_DEVICE_INSTANCE SoundDeviceInstance,
00039     IN  PVOID OffsetPtr,
00040     IN  DWORD Length,
00041     IN  PSOUND_OVERLAPPED Overlap,
00042     IN  LPOVERLAPPED_COMPLETION_ROUTINE CompletionRoutine);
00043 
00044 MMRESULT
00045 WriteFileEx_Remixer(
00046     IN  PSOUND_DEVICE_INSTANCE SoundDeviceInstance,
00047     IN  PVOID OffsetPtr,
00048     IN  DWORD Length,
00049     IN  PSOUND_OVERLAPPED Overlap,
00050     IN  LPOVERLAPPED_COMPLETION_ROUTINE CompletionRoutine);
00051 
00052 MMRESULT
00053 WdmAudGetCapabilitiesByMMixer(
00054     IN  PSOUND_DEVICE SoundDevice,
00055     IN  DWORD DeviceId,
00056     OUT PVOID Capabilities,
00057     IN  DWORD CapabilitiesSize);
00058 
00059 MMRESULT
00060 WdmAudOpenSoundDeviceByMMixer(
00061     IN  struct _SOUND_DEVICE* SoundDevice,
00062     OUT PVOID* Handle);
00063 
00064 MMRESULT
00065 WdmAudCloseSoundDeviceByMMixer(
00066     IN  struct _SOUND_DEVICE_INSTANCE* SoundDeviceInstance,
00067     IN  PVOID Handle);
00068 
00069 MMRESULT
00070 WdmAudGetLineInfo(
00071     IN HANDLE hMixer,
00072     IN DWORD MixerId,
00073     IN LPMIXERLINEW MixLine,
00074     IN ULONG Flags);
00075 
00076 MMRESULT
00077 WdmAudGetLineControls(
00078     IN HANDLE hMixer,
00079     IN DWORD MixerId,
00080     IN LPMIXERLINECONTROLSW MixControls,
00081     IN ULONG Flags);
00082 
00083 MMRESULT
00084 WdmAudSetControlDetails(
00085     IN HANDLE hMixer,
00086     IN DWORD MixerId,
00087     IN LPMIXERCONTROLDETAILS MixDetails,
00088     IN ULONG Flags);
00089 
00090 MMRESULT
00091 WdmAudGetControlDetails(
00092     IN HANDLE hMixer,
00093     IN DWORD MixerId,
00094     IN LPMIXERCONTROLDETAILS MixDetails,
00095     IN ULONG Flags);
00096 
00097 MMRESULT
00098 WdmAudSetWaveDeviceFormatByMMixer(
00099     IN  PSOUND_DEVICE_INSTANCE Instance,
00100     IN  DWORD DeviceId,
00101     IN  PWAVEFORMATEX WaveFormat,
00102     IN  DWORD WaveFormatSize);
00103 
00104 MMRESULT
00105 WdmAudGetDeviceInterfaceStringByMMixer(
00106     IN  MMDEVICE_TYPE DeviceType,
00107     IN  DWORD DeviceId,
00108     IN  LPWSTR Interface,
00109     IN  DWORD  InterfaceLength,
00110     OUT  DWORD * InterfaceSize);
00111 
00112 MMRESULT
00113 WdmAudSetMixerDeviceFormatByMMixer(
00114     IN  PSOUND_DEVICE_INSTANCE Instance,
00115     IN  DWORD DeviceId,
00116     IN  PWAVEFORMATEX WaveFormat,
00117     IN  DWORD WaveFormatSize);
00118 
00119 MMRESULT
00120 WdmAudQueryMixerInfoByMMixer(
00121     IN  struct _SOUND_DEVICE_INSTANCE* SoundDeviceInstance,
00122     IN DWORD DeviceId,
00123     IN UINT uMsg,
00124     IN LPVOID Parameter,
00125     IN DWORD Flags);
00126 
00127 MMRESULT
00128 WdmAudSetWaveStateByMMixer(
00129     IN  struct _SOUND_DEVICE_INSTANCE* SoundDeviceInstance,
00130     IN BOOL bStart);
00131 
00132 MMRESULT
00133 WdmAudResetStreamByMMixer(
00134     IN  struct _SOUND_DEVICE_INSTANCE* SoundDeviceInstance,
00135     IN  MMDEVICE_TYPE DeviceType,
00136     IN  BOOLEAN bStartReset);
00137 
00138 MMRESULT
00139 WdmAudGetWavePositionByMMixer(
00140     IN  struct _SOUND_DEVICE_INSTANCE* SoundDeviceInstance,
00141     IN  MMTIME* Time);
00142 
00143 MMRESULT
00144 WdmAudCommitWaveBufferByMMixer(
00145     IN  PSOUND_DEVICE_INSTANCE SoundDeviceInstance,
00146     IN  PVOID OffsetPtr,
00147     IN  DWORD Length,
00148     IN  PSOUND_OVERLAPPED Overlap,
00149     IN  LPOVERLAPPED_COMPLETION_ROUTINE CompletionRoutine);
00150 
00151 MMRESULT
00152 WdmAudCleanupByMMixer(VOID);
00153 
00154 /* legacy.c */
00155 
00156 MMRESULT
00157 WdmAudCleanupByLegacy(VOID);
00158 
00159 MMRESULT
00160 WdmAudGetCapabilitiesByLegacy(
00161     IN  PSOUND_DEVICE SoundDevice,
00162     IN  DWORD DeviceId,
00163     OUT PVOID Capabilities,
00164     IN  DWORD CapabilitiesSize);
00165 
00166 MMRESULT
00167 WdmAudOpenSoundDeviceByLegacy(
00168     IN PSOUND_DEVICE SoundDevice,
00169     OUT PVOID *Handle
00170 );
00171 
00172 MMRESULT
00173 WdmAudCloseSoundDeviceByLegacy(
00174     IN  struct _SOUND_DEVICE_INSTANCE* SoundDeviceInstance,
00175     IN  PVOID Handle);
00176 
00177 MMRESULT
00178 WdmAudGetDeviceInterfaceStringByLegacy(
00179     IN  MMDEVICE_TYPE DeviceType,
00180     IN  DWORD DeviceId,
00181     IN  LPWSTR Interface,
00182     IN  DWORD  InterfaceLength,
00183     OUT  DWORD * InterfaceSize);
00184 
00185 MMRESULT
00186 WdmAudSetMixerDeviceFormatByLegacy(
00187     IN  PSOUND_DEVICE_INSTANCE Instance,
00188     IN  DWORD DeviceId,
00189     IN  PWAVEFORMATEX WaveFormat,
00190     IN  DWORD WaveFormatSize);
00191 
00192 MMRESULT
00193 WdmAudQueryMixerInfoByLegacy(
00194     IN  struct _SOUND_DEVICE_INSTANCE* SoundDeviceInstance,
00195     IN DWORD DeviceId,
00196     IN UINT uMsg,
00197     IN LPVOID Parameter,
00198     IN DWORD Flags);
00199 
00200 MMRESULT
00201 WdmAudSetWaveDeviceFormatByLegacy(
00202     IN  PSOUND_DEVICE_INSTANCE Instance,
00203     IN  DWORD DeviceId,
00204     IN  PWAVEFORMATEX WaveFormat,
00205     IN  DWORD WaveFormatSize);
00206 
00207 MMRESULT
00208 WdmAudSetWaveStateByLegacy(
00209     IN  struct _SOUND_DEVICE_INSTANCE* SoundDeviceInstance,
00210     IN BOOL bStart);
00211 
00212 MMRESULT
00213 WdmAudResetStreamByLegacy(
00214     IN  struct _SOUND_DEVICE_INSTANCE* SoundDeviceInstance,
00215     IN  MMDEVICE_TYPE DeviceType,
00216     IN  BOOLEAN bStartReset);
00217 
00218 MMRESULT
00219 WdmAudGetWavePositionByLegacy(
00220     IN  struct _SOUND_DEVICE_INSTANCE* SoundDeviceInstance,
00221     IN  MMTIME* Time);
00222 
00223 MMRESULT
00224 WriteFileEx_Committer2(
00225     IN  PSOUND_DEVICE_INSTANCE SoundDeviceInstance,
00226     IN  PVOID OffsetPtr,
00227     IN  DWORD Length,
00228     IN  PSOUND_OVERLAPPED Overlap,
00229     IN  LPOVERLAPPED_COMPLETION_ROUTINE CompletionRoutine);
00230 
00231 MMRESULT
00232 WdmAudGetNumWdmDevsByLegacy(
00233     IN  MMDEVICE_TYPE DeviceType,
00234     OUT DWORD* DeviceCount);
00235 
00236 DWORD
00237 WINAPI
00238 MixerEventThreadRoutine(
00239     LPVOID Parameter);
00240 
00241 #endif

Generated on Sun May 27 2012 04:26:52 for ReactOS by doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.