dmusic: Support creating default ports with GUID_NULL.
[wine.git] / dlls / msacm.dll16 / wineacm16.h
blob41b8171d372e72db96141a781425f29b3d4b1827
1 /*
2 * Copyright 2000 Eric Pouech
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
19 #ifndef __WINE_WINEACM16_H
20 #define __WINE_WINEACM16_H
22 #include "wine/windef16.h"
23 #include "wine/mmsystem16.h"
25 /***********************************************************************
26 * Win16 definitions
28 typedef BOOL16 (CALLBACK *ACMDRIVERENUMCB16)(
29 HACMDRIVERID16 hadid, DWORD dwInstance, DWORD fdwSupport
31 typedef UINT (CALLBACK *ACMFILTERCHOOSEHOOKPROC16)(
32 HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam
34 typedef UINT16 (CALLBACK *ACMFORMATCHOOSEHOOKPROC16)(
35 HWND16 hwnd, UINT16 uMsg, WPARAM16 wParam, LPARAM lParam
38 typedef struct _ACMDRIVERDETAILS16
40 DWORD cbStruct;
42 FOURCC fccType;
43 FOURCC fccComp;
45 WORD wMid;
46 WORD wPid;
48 DWORD vdwACM;
49 DWORD vdwDriver;
51 DWORD fdwSupport;
52 DWORD cFormatTags;
53 DWORD cFilterTags;
55 HICON16 hicon;
57 CHAR szShortName[ACMDRIVERDETAILS_SHORTNAME_CHARS];
58 CHAR szLongName[ACMDRIVERDETAILS_LONGNAME_CHARS];
59 CHAR szCopyright[ACMDRIVERDETAILS_COPYRIGHT_CHARS];
60 CHAR szLicensing[ACMDRIVERDETAILS_LICENSING_CHARS];
61 CHAR szFeatures[ACMDRIVERDETAILS_FEATURES_CHARS];
62 } ACMDRIVERDETAILS16, *NPACMDRIVERDETAILS16, *LPACMDRIVERDETAILS16;
64 typedef struct _ACMFILTERCHOOSE16
66 DWORD cbStruct;
67 DWORD fdwStyle;
69 HWND16 hwndOwner;
71 LPWAVEFILTER pwfltr;
72 DWORD cbwfltr;
74 LPCSTR pszTitle;
76 char szFilterTag[ACMFILTERTAGDETAILS_FILTERTAG_CHARS];
77 char szFilter[ACMFILTERDETAILS_FILTER_CHARS];
78 LPSTR pszName;
79 DWORD cchName;
81 DWORD fdwEnum;
82 LPWAVEFILTER pwfltrEnum;
84 HINSTANCE16 hInstance;
85 LPCSTR pszTemplateName;
86 LPARAM lCustData;
87 ACMFILTERCHOOSEHOOKPROC16 pfnHook;
88 } ACMFILTERCHOOSE16, *NPACMFILTERCHOOSE16, *LPACMFILTERCHOOSE16;
90 typedef struct _ACMFILTERDETAILS16
92 DWORD cbStruct;
93 DWORD dwFilterIndex;
94 DWORD dwFilterTag;
95 DWORD fdwSupport;
96 LPWAVEFILTER pwfltr;
97 DWORD cbwfltr;
98 CHAR szFilter[ACMFILTERDETAILS_FILTER_CHARS];
99 } ACMFILTERDETAILS16, *NPACMFILTERDETAILS16, *LPACMFILTERDETAILS16;
101 typedef struct _ACMFILTERTAGDETAILS16
103 DWORD cbStruct;
104 DWORD dwFilterTagIndex;
105 DWORD dwFilterTag;
106 DWORD cbFilterSize;
107 DWORD fdwSupport;
108 DWORD cStandardFilters;
109 CHAR szFilterTag[ACMFILTERTAGDETAILS_FILTERTAG_CHARS];
110 } ACMFILTERTAGDETAILS16, *NPACMFILTERTAGDETAILS16, *LPACMFILTERTAGDETAILS16;
112 typedef struct _ACMFORMATCHOOSE16
114 DWORD cbStruct;
115 DWORD fdwStyle;
117 HWND16 hwndOwner;
119 LPWAVEFORMATEX pwfx;
120 DWORD cbwfx;
121 LPCSTR pszTitle;
123 CHAR szFormatTag[ACMFORMATTAGDETAILS_FORMATTAG_CHARS];
124 CHAR szFormat[ACMFORMATDETAILS_FORMAT_CHARS];
126 LPSTR pszName;
127 DWORD cchName;
129 DWORD fdwEnum;
130 LPWAVEFORMATEX pwfxEnum;
132 HINSTANCE16 hInstance;
133 LPCSTR pszTemplateName;
134 LPARAM lCustData;
135 ACMFORMATCHOOSEHOOKPROC16 pfnHook;
136 } ACMFORMATCHOOSE16, *NPACMFORMATCHOOSE16, *LPACMFORMATCHOOSE16;
138 typedef struct _ACMFORMATDETAILS16
140 DWORD cbStruct;
141 DWORD dwFormatIndex;
142 DWORD dwFormatTag;
143 DWORD fdwSupport;
144 LPWAVEFORMATEX pwfx;
145 DWORD cbwfx;
146 CHAR szFormat[ACMFORMATDETAILS_FORMAT_CHARS];
147 } ACMFORMATDETAILS16, *NPACMFORMATDETAILS16, *LPACMFORMATDETAILS16;
149 typedef struct _ACMFORMATTAGDETAILS16
151 DWORD cbStruct;
152 DWORD dwFormatTagIndex;
153 DWORD dwFormatTag;
154 DWORD cbFormatSize;
155 DWORD fdwSupport;
156 DWORD cStandardFormats;
157 CHAR szFormatTag[ACMFORMATTAGDETAILS_FORMATTAG_CHARS];
158 } ACMFORMATTAGDETAILS16, *NPACMFORMATTAGDETAILS16, *LPACMFORMATTAGDETAILS16;
160 typedef ACMSTREAMHEADER ACMSTREAMHEADER16, *NPACMSTREAMHEADER16, *LPACMSTREAMHEADER16;
162 typedef BOOL16 (CALLBACK *ACMFILTERENUMCB16)(
163 HACMDRIVERID16 hadid, LPACMFILTERDETAILS16 pafd,
164 DWORD dwInstance, DWORD fdwSupport
167 typedef BOOL16 (CALLBACK *ACMFILTERTAGENUMCB16)(
168 HACMDRIVERID16 hadid, LPACMFILTERTAGDETAILS16 paftd,
169 DWORD dwInstance, DWORD fdwSupport
172 typedef BOOL16 (CALLBACK *ACMFORMATENUMCB16)(
173 HACMDRIVERID16 hadid, LPACMFORMATDETAILS16 pafd,
174 DWORD dwInstance, DWORD fdwSupport
177 typedef BOOL16 (CALLBACK *ACMFORMATTAGENUMCB16)(
178 HACMDRIVERID16 hadid, LPACMFORMATTAGDETAILS16 paftd,
179 DWORD dwInstance, DWORD fdwSupport
182 /***********************************************************************
183 * Functions - Win16
186 DWORD WINAPI acmGetVersion16(void);
187 MMRESULT16 WINAPI acmMetrics16(
188 HACMOBJ16 hao, UINT16 uMetric, LPVOID pMetric
190 MMRESULT16 WINAPI acmDriverEnum16(
191 ACMDRIVERENUMCB16 fnCallback, DWORD dwInstance, DWORD fdwEnum
193 MMRESULT16 WINAPI acmDriverDetails16(
194 HACMDRIVERID16 hadid, LPACMDRIVERDETAILS16 padd, DWORD fdwDetails
196 MMRESULT16 WINAPI acmDriverAdd16(
197 LPHACMDRIVERID16 phadid, HINSTANCE16 hinstModule,
198 LPARAM lParam, DWORD dwPriority, DWORD fdwAdd
200 MMRESULT16 WINAPI acmDriverRemove16(
201 HACMDRIVERID16 hadid, DWORD fdwRemove
203 MMRESULT16 WINAPI acmDriverOpen16(
204 LPHACMDRIVER16 phad, HACMDRIVERID16 hadid, DWORD fdwOpen
206 MMRESULT16 WINAPI acmDriverClose16(
207 HACMDRIVER16 had, DWORD fdwClose
209 LRESULT WINAPI acmDriverMessage16(
210 HACMDRIVER16 had, UINT16 uMsg, LPARAM lParam1, LPARAM lParam2
212 MMRESULT16 WINAPI acmDriverID16(
213 HACMOBJ16 hao, LPHACMDRIVERID16 phadid, DWORD fdwDriverID
215 MMRESULT16 WINAPI acmDriverPriority16(
216 HACMDRIVERID16 hadid, DWORD dwPriority, DWORD fdwPriority
218 MMRESULT16 WINAPI acmFormatTagDetails16(
219 HACMDRIVER16 had, LPACMFORMATTAGDETAILS16 paftd, DWORD fdwDetails
221 MMRESULT16 WINAPI acmFormatTagEnum16(
222 HACMDRIVER16 had, LPACMFORMATTAGDETAILS16 paftd,
223 ACMFORMATTAGENUMCB16 fnCallback, DWORD dwInstance, DWORD fdwEnum
225 MMRESULT16 WINAPI acmFormatChoose16(
226 LPACMFORMATCHOOSE16 pafmtc
228 MMRESULT16 WINAPI acmFormatDetails16(
229 HACMDRIVER16 had, LPACMFORMATDETAILS16 pafd, DWORD fdwDetails
231 MMRESULT16 WINAPI acmFormatEnum16(
232 HACMDRIVER16 had, LPACMFORMATDETAILS16 pafd,
233 ACMFORMATENUMCB16 fnCallback, DWORD dwInstance, DWORD fdwEnum
235 MMRESULT16 WINAPI acmFormatSuggest16(
236 HACMDRIVER16 had, LPWAVEFORMATEX pwfxSrc,
237 LPWAVEFORMATEX pwfxDst, DWORD cbwfxDst, DWORD fdwSuggest
239 MMRESULT16 WINAPI acmFilterTagDetails16(
240 HACMDRIVER16 had, LPACMFILTERTAGDETAILS16 paftd, DWORD fdwDetails
242 MMRESULT16 WINAPI acmFilterTagEnum16(
243 HACMDRIVER16 had, LPACMFILTERTAGDETAILS16 paftd,
244 ACMFILTERTAGENUMCB16 fnCallback, DWORD dwInstance, DWORD fdwEnum
246 MMRESULT16 WINAPI acmFilterChoose16(
247 LPACMFILTERCHOOSE16 pafltrc
249 MMRESULT16 WINAPI acmFilterDetails16(
250 HACMDRIVER16 had, LPACMFILTERDETAILS16 pafd, DWORD fdwDetails
252 MMRESULT16 WINAPI acmFilterEnum16(
253 HACMDRIVER16 had, LPACMFILTERDETAILS16 pafd,
254 ACMFILTERENUMCB16 fnCallback, DWORD dwInstance, DWORD fdwEnum
256 MMRESULT16 WINAPI acmStreamOpen16(
257 LPHACMSTREAM16 phas, HACMDRIVER16 had,
258 LPWAVEFORMATEX pwfxSrc, LPWAVEFORMATEX pwfxDst,
259 LPWAVEFILTER pwfltr, DWORD dwCallback,
260 DWORD dwInstance, DWORD fdwOpen
262 MMRESULT16 WINAPI acmStreamClose16(
263 HACMSTREAM16 has, DWORD fdwClose
265 MMRESULT16 WINAPI acmStreamSize16(
266 HACMSTREAM16 has, DWORD cbInput,
267 LPDWORD pdwOutputBytes, DWORD fdwSize
269 MMRESULT16 WINAPI acmStreamConvert16(
270 HACMSTREAM16 has, LPACMSTREAMHEADER16 pash, DWORD fdwConvert
272 MMRESULT16 WINAPI acmStreamReset16(
273 HACMSTREAM16 has, DWORD fdwReset
275 MMRESULT16 WINAPI acmStreamPrepareHeader16(
276 HACMSTREAM16 has, LPACMSTREAMHEADER16 pash, DWORD fdwPrepare
278 MMRESULT16 WINAPI acmStreamUnprepareHeader16(
279 HACMSTREAM16 has, LPACMSTREAMHEADER16 pash, DWORD fdwUnprepare
282 #endif /* __WINE_WINEACM16_H */