]> git.proxmox.com Git - rustc.git/blob - vendor/winapi/src/um/mmeapi.rs
New upstream version 1.41.1+dfsg1
[rustc.git] / vendor / winapi / src / um / mmeapi.rs
1 // Licensed under the Apache License, Version 2.0
2 // <LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
3 // <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your option.
4 // All files in the project carrying such notice may not be copied, modified, or distributed
5 // except according to those terms.
6 use shared::basetsd::{DWORD_PTR, UINT_PTR};
7 use shared::minwindef::{DWORD, LPBYTE, LPDWORD, LPWORD, PDWORD, UINT};
8 use um::imm::LPUINT;
9 use um::mmsystem::{
10 HMIDI, HMIDIIN, HMIDIOUT, HMIDISTRM, HWAVEIN, HWAVEOUT, LPCWAVEFORMATEX, LPHMIDIIN, LPHMIDIOUT,
11 LPHMIDISTRM, LPHWAVEIN, LPHWAVEOUT, LPMIDIHDR, LPMIDIINCAPSW, LPMIDIOUTCAPSW, LPMMTIME,
12 LPWAVEHDR, LPWAVEINCAPSW, LPWAVEOUTCAPSW, MMRESULT
13 };
14 use um::winnt::{LPWSTR, PVOID};
15 extern "system" {
16 pub fn waveOutGetNumDevs() -> UINT;
17 // pub fn waveOutGetDevCapsA();
18 pub fn waveOutGetDevCapsW(
19 uDeviceID: UINT_PTR,
20 pwoc: LPWAVEOUTCAPSW,
21 cbwoc: UINT,
22 ) -> MMRESULT;
23 pub fn waveOutGetVolume(
24 hwo: HWAVEOUT,
25 pdwVolume: LPDWORD,
26 ) -> MMRESULT;
27 pub fn waveOutSetVolume(
28 hwo: HWAVEOUT,
29 dwVolume: DWORD,
30 ) -> MMRESULT;
31 // pub fn waveOutGetErrorTextA();
32 pub fn waveOutGetErrorTextW(
33 mmrError: MMRESULT,
34 pszText: LPWSTR,
35 cchText: UINT,
36 ) -> MMRESULT;
37 pub fn waveOutOpen(
38 phwo: LPHWAVEOUT,
39 uDeviceID: UINT,
40 pwfx: LPCWAVEFORMATEX,
41 dwCallback: DWORD_PTR,
42 dwInstance: DWORD_PTR,
43 fdwOpen: DWORD,
44 ) -> MMRESULT;
45 pub fn waveOutClose(
46 hwo: HWAVEOUT,
47 ) -> MMRESULT;
48 pub fn waveOutPrepareHeader(
49 hwo: HWAVEOUT,
50 pwh: LPWAVEHDR,
51 cbwh: UINT,
52 ) -> MMRESULT;
53 pub fn waveOutUnprepareHeader(
54 hwo: HWAVEOUT,
55 pwh: LPWAVEHDR,
56 cbwh: UINT,
57 ) -> MMRESULT;
58 pub fn waveOutWrite(
59 hwo: HWAVEOUT,
60 pwh: LPWAVEHDR,
61 cbwh: UINT,
62 ) -> MMRESULT;
63 pub fn waveOutPause(
64 hwo: HWAVEOUT,
65 ) -> MMRESULT;
66 pub fn waveOutRestart(
67 hwo: HWAVEOUT,
68 ) -> MMRESULT;
69 pub fn waveOutReset(
70 hwo: HWAVEOUT,
71 ) -> MMRESULT;
72 pub fn waveOutBreakLoop(
73 hwo: HWAVEOUT,
74 ) -> MMRESULT;
75 pub fn waveOutGetPosition(
76 hwo: HWAVEOUT,
77 pmmt: LPMMTIME,
78 cbmmt: UINT,
79 ) -> MMRESULT;
80 pub fn waveOutGetPitch(
81 hwo: HWAVEOUT,
82 pdwPitch: LPDWORD,
83 ) -> MMRESULT;
84 pub fn waveOutSetPitch(
85 hwo: HWAVEOUT,
86 dwPitch: DWORD,
87 ) -> MMRESULT;
88 pub fn waveOutGetPlaybackRate(
89 hwo: HWAVEOUT,
90 pdwRate: LPDWORD,
91 ) -> MMRESULT;
92 pub fn waveOutSetPlaybackRate(
93 hwo: HWAVEOUT,
94 dwRate: DWORD,
95 ) -> MMRESULT;
96 // pub fn waveOutGetID();
97 pub fn waveOutMessage(
98 hwo: HWAVEOUT,
99 uMsg: UINT,
100 dw1: DWORD_PTR,
101 dw2: DWORD_PTR,
102 ) -> MMRESULT;
103 pub fn waveInGetNumDevs() -> UINT;
104 // pub fn waveInGetDevCapsA();
105 pub fn waveInGetDevCapsW(
106 uDeviceID: UINT_PTR,
107 pwic: LPWAVEINCAPSW,
108 cbwic: UINT,
109 ) -> MMRESULT;
110 // pub fn waveInGetErrorTextA();
111 pub fn waveInGetErrorTextW(
112 mmrError: MMRESULT,
113 pszText: LPWSTR,
114 cchText: UINT,
115 ) -> MMRESULT;
116 pub fn waveInOpen(
117 phwi: LPHWAVEIN,
118 uDeviceID: UINT,
119 pwfx: LPCWAVEFORMATEX,
120 dwCallback: DWORD_PTR,
121 dwInstance: DWORD_PTR,
122 fdwOpen: DWORD,
123 ) -> MMRESULT;
124 pub fn waveInClose(
125 hwi: HWAVEIN,
126 ) -> MMRESULT;
127 pub fn waveInPrepareHeader(
128 hwi: HWAVEIN,
129 pwh: LPWAVEHDR,
130 cbwh: UINT,
131 ) -> MMRESULT;
132 pub fn waveInUnprepareHeader(
133 hwi: HWAVEIN,
134 pwh: LPWAVEHDR,
135 cbwh: UINT,
136 ) -> MMRESULT;
137 pub fn waveInAddBuffer(
138 hwi: HWAVEIN,
139 pwh: LPWAVEHDR,
140 cbwh: UINT,
141 ) -> MMRESULT;
142 pub fn waveInStart(
143 hwi: HWAVEIN,
144 ) -> MMRESULT;
145 pub fn waveInStop(
146 hwi: HWAVEIN,
147 ) -> MMRESULT;
148 pub fn waveInReset(
149 hwi: HWAVEIN,
150 ) -> MMRESULT;
151 pub fn waveInGetPosition(
152 hwi: HWAVEIN,
153 pmmt: LPMMTIME,
154 cbmmt: UINT,
155 ) -> MMRESULT;
156 // pub fn waveInGetID();
157 pub fn waveInMessage(
158 hwi: HWAVEIN,
159 uMsg: UINT,
160 dw1: DWORD_PTR,
161 dw2: DWORD_PTR,
162 ) -> MMRESULT;
163 pub fn midiOutGetNumDevs() -> UINT;
164 pub fn midiStreamOpen(
165 lphStream: LPHMIDISTRM,
166 puDeviceID: LPUINT,
167 cMidi: DWORD,
168 dwCallback: DWORD_PTR,
169 dwInstance: DWORD_PTR,
170 fdwOpen: DWORD,
171 ) -> MMRESULT;
172 pub fn midiStreamClose(
173 hStream: HMIDISTRM,
174 ) -> MMRESULT;
175 pub fn midiStreamProperty(
176 hm: HMIDISTRM,
177 lppropdata: LPBYTE,
178 dwProperty: DWORD,
179 ) -> MMRESULT;
180 pub fn midiStreamPosition(
181 hms: HMIDISTRM,
182 pmmt: LPMMTIME,
183 cbmmt: UINT,
184 ) -> MMRESULT;
185 pub fn midiStreamOut(
186 hMidiStream: HMIDISTRM,
187 lpMidiHdr: LPMIDIHDR,
188 cbMidiHdr: UINT,
189 ) -> MMRESULT;
190 pub fn midiStreamPause(
191 hms: HMIDISTRM,
192 ) -> MMRESULT;
193 pub fn midiStreamRestart(
194 hms: HMIDISTRM,
195 ) -> MMRESULT;
196 pub fn midiStreamStop(
197 hms: HMIDISTRM,
198 ) -> MMRESULT;
199 pub fn midiConnect(
200 hMidi: HMIDI,
201 hmo: HMIDIOUT,
202 pReserved: PVOID,
203 ) -> MMRESULT;
204 pub fn midiDisconnect(
205 hMidi: HMIDI,
206 hmo: HMIDIOUT,
207 pReserved: PVOID,
208 ) -> MMRESULT;
209 pub fn midiOutGetDevCapsW(
210 uDeviceID: UINT_PTR,
211 lpMidiOutCaps: LPMIDIOUTCAPSW,
212 cbMidiOutCaps: UINT,
213 ) -> MMRESULT;
214 pub fn midiOutGetVolume(
215 hmo: HMIDIOUT,
216 lpdwVolume: PDWORD,
217 ) -> MMRESULT;
218 pub fn midiOutSetVolume(
219 hmo: HMIDIOUT,
220 dwVolume: DWORD,
221 ) -> MMRESULT;
222 pub fn midiOutGetErrorTextW(
223 mmrError: MMRESULT,
224 lpText: LPWSTR,
225 cchText: UINT,
226 ) -> MMRESULT;
227 pub fn midiOutOpen(
228 lphmo: LPHMIDIOUT,
229 uDeviceID: UINT,
230 dwCallback: DWORD_PTR,
231 dwCallbackInstance: DWORD_PTR,
232 dwFlags: DWORD,
233 ) -> MMRESULT;
234 pub fn midiOutClose(
235 hmo: HMIDIOUT,
236 ) -> MMRESULT;
237 pub fn midiOutPrepareHeader(
238 hmo: HMIDIOUT,
239 lpMidiOutHdr: LPMIDIHDR,
240 cbMidiOutHdr: UINT,
241 ) -> MMRESULT;
242 pub fn midiOutUnprepareHeader(
243 hmo: HMIDIOUT,
244 lpMidiOutHdr: LPMIDIHDR,
245 cbMidiOutHdr: UINT,
246 ) -> MMRESULT;
247 pub fn midiOutShortMsg(
248 hmo: HMIDIOUT,
249 dwMsg: DWORD,
250 ) -> MMRESULT;
251 pub fn midiOutLongMsg(
252 hmo: HMIDIOUT,
253 lpMidiOutHdr: LPMIDIHDR,
254 cbMidiOutHdr: UINT,
255 ) -> MMRESULT;
256 pub fn midiOutReset(
257 hmo: HMIDIOUT,
258 ) -> MMRESULT;
259 pub fn midiOutCachePatches(
260 hmo: HMIDIOUT,
261 wBank: UINT,
262 lpPatchArray: LPWORD,
263 wFlags: UINT,
264 ) -> MMRESULT;
265 pub fn midiOutCacheDrumPatches(
266 hmo: HMIDIOUT,
267 wPatch: UINT,
268 lpKeyArray: LPWORD,
269 wFlags: UINT,
270 ) -> MMRESULT;
271 pub fn midiOutGetID(
272 hmo: HMIDIOUT,
273 puDeviceID: LPUINT,
274 ) -> MMRESULT;
275 pub fn midiOutMessage(
276 deviceID: HMIDIOUT,
277 msg: UINT,
278 dw1: DWORD_PTR,
279 dw2: DWORD_PTR,
280 ) -> MMRESULT;
281 pub fn midiInGetNumDevs() -> UINT;
282 pub fn midiInGetDevCapsW(
283 uDeviceID: UINT_PTR,
284 lpMidiInCaps: LPMIDIINCAPSW,
285 cbMidiInCaps: UINT,
286 ) -> MMRESULT;
287 pub fn midiInGetErrorTextW(
288 wError: MMRESULT,
289 lpText: LPWSTR,
290 cchText: UINT,
291 ) -> MMRESULT;
292 pub fn midiInOpen(
293 lphMidiIn: LPHMIDIIN,
294 uDeviceID: UINT,
295 dwCallback: DWORD_PTR,
296 dwCallbackInstance: DWORD_PTR,
297 dwFlags: DWORD,
298 ) -> MMRESULT;
299 pub fn midiInClose(
300 hMidiIn: HMIDIIN,
301 ) -> MMRESULT;
302 pub fn midiInPrepareHeader(
303 hMidiIn: HMIDIIN,
304 lpMidiInHdr: LPMIDIHDR,
305 cbMidiInHdr: UINT,
306 ) -> MMRESULT;
307 pub fn midiInUnprepareHeader(
308 hMidiIn: HMIDIIN,
309 lpMidiInHdr: LPMIDIHDR,
310 cbMidiInHdr: UINT,
311 ) -> MMRESULT;
312 pub fn midiInAddBuffer(
313 hMidiIn: HMIDIIN,
314 lpMidiInHdr: LPMIDIHDR,
315 cbMidiInHdr: UINT,
316 ) -> MMRESULT;
317 pub fn midiInStart(
318 hMidiIn: HMIDIIN,
319 ) -> MMRESULT;
320 pub fn midiInStop(
321 hMidiIn: HMIDIIN,
322 ) -> MMRESULT;
323 pub fn midiInReset(
324 hMidiIn: HMIDIIN,
325 ) -> MMRESULT;
326 pub fn midiInGetID(
327 hmi: HMIDIIN,
328 puDeviceID: LPUINT,
329 ) -> MMRESULT;
330 pub fn midiInMessage(
331 deviceID: HMIDIIN,
332 msg: UINT,
333 dw1: DWORD_PTR,
334 dw2: DWORD_PTR,
335 ) -> MMRESULT;
336 }