1#![allow(non_camel_case_types)]
2#![allow(non_snake_case)]
3#![allow(unused_parens)]
4use std::os::raw::{
5 c_char, c_float, c_int, c_longlong, c_short, c_uchar, c_uint, c_ulonglong, c_ushort, c_void,
6};
7#[repr(C)]
8#[derive(Debug, Copy, Clone)]
9pub struct FMOD_STUDIO_SYSTEM {
10 _unused: [u8; 0],
11}
12#[repr(C)]
13#[derive(Debug, Copy, Clone)]
14pub struct FMOD_STUDIO_EVENTDESCRIPTION {
15 _unused: [u8; 0],
16}
17#[repr(C)]
18#[derive(Debug, Copy, Clone)]
19pub struct FMOD_STUDIO_EVENTINSTANCE {
20 _unused: [u8; 0],
21}
22#[repr(C)]
23#[derive(Debug, Copy, Clone)]
24pub struct FMOD_STUDIO_BUS {
25 _unused: [u8; 0],
26}
27#[repr(C)]
28#[derive(Debug, Copy, Clone)]
29pub struct FMOD_STUDIO_VCA {
30 _unused: [u8; 0],
31}
32#[repr(C)]
33#[derive(Debug, Copy, Clone)]
34pub struct FMOD_STUDIO_BANK {
35 _unused: [u8; 0],
36}
37#[repr(C)]
38#[derive(Debug, Copy, Clone)]
39pub struct FMOD_STUDIO_COMMANDREPLAY {
40 _unused: [u8; 0],
41}
42#[repr(C)]
43#[derive(Debug, Copy, Clone)]
44pub struct FMOD_SYSTEM {
45 _unused: [u8; 0],
46}
47#[repr(C)]
48#[derive(Debug, Copy, Clone)]
49pub struct FMOD_SOUND {
50 _unused: [u8; 0],
51}
52#[repr(C)]
53#[derive(Debug, Copy, Clone)]
54pub struct FMOD_CHANNELCONTROL {
55 _unused: [u8; 0],
56}
57#[repr(C)]
58#[derive(Debug, Copy, Clone)]
59pub struct FMOD_CHANNEL {
60 _unused: [u8; 0],
61}
62#[repr(C)]
63#[derive(Debug, Copy, Clone)]
64pub struct FMOD_CHANNELGROUP {
65 _unused: [u8; 0],
66}
67#[repr(C)]
68#[derive(Debug, Copy, Clone)]
69pub struct FMOD_SOUNDGROUP {
70 _unused: [u8; 0],
71}
72#[repr(C)]
73#[derive(Debug, Copy, Clone)]
74pub struct FMOD_REVERB3D {
75 _unused: [u8; 0],
76}
77#[repr(C)]
78#[derive(Debug, Copy, Clone)]
79pub struct FMOD_DSP {
80 _unused: [u8; 0],
81}
82#[repr(C)]
83#[derive(Debug, Copy, Clone)]
84pub struct FMOD_DSPCONNECTION {
85 _unused: [u8; 0],
86}
87#[repr(C)]
88#[derive(Debug, Copy, Clone)]
89pub struct FMOD_POLYGON {
90 _unused: [u8; 0],
91}
92#[repr(C)]
93#[derive(Debug, Copy, Clone)]
94pub struct FMOD_GEOMETRY {
95 _unused: [u8; 0],
96}
97#[repr(C)]
98#[derive(Debug, Copy, Clone)]
99pub struct FMOD_SYNCPOINT {
100 _unused: [u8; 0],
101}
102pub type FMOD_BOOL = c_int;
103pub const FMOD_STUDIO_LOAD_MEMORY_ALIGNMENT: c_uint = 32;
104pub const FMOD_VERSION: c_uint = 0x00020222;
105pub const FMOD_MAX_CHANNEL_WIDTH: c_uint = 32;
106pub const FMOD_MAX_SYSTEMS: c_uint = 8;
107pub const FMOD_MAX_LISTENERS: c_uint = 8;
108pub const FMOD_REVERB_MAXINSTANCES: c_uint = 4;
109pub const FMOD_CODEC_PLUGIN_VERSION: c_uint = 1;
110pub const FMOD_OUTPUT_PLUGIN_VERSION: c_uint = 5;
111pub const FMOD_PLUGIN_SDK_VERSION: c_uint = 110;
112pub const FMOD_DSP_GETPARAM_VALUESTR_LENGTH: c_uint = 32;
113pub const FMOD_DSP_LOUDNESS_METER_HISTOGRAM_SAMPLES: c_uint = 66;
114pub type FMOD_STUDIO_LOADING_STATE = c_int;
115pub const FMOD_STUDIO_LOADING_STATE_UNLOADING: FMOD_STUDIO_LOADING_STATE = 0;
116pub const FMOD_STUDIO_LOADING_STATE_UNLOADED: FMOD_STUDIO_LOADING_STATE = 1;
117pub const FMOD_STUDIO_LOADING_STATE_LOADING: FMOD_STUDIO_LOADING_STATE = 2;
118pub const FMOD_STUDIO_LOADING_STATE_LOADED: FMOD_STUDIO_LOADING_STATE = 3;
119pub const FMOD_STUDIO_LOADING_STATE_ERROR: FMOD_STUDIO_LOADING_STATE = 4;
120pub const FMOD_STUDIO_LOADING_STATE_FORCEINT: FMOD_STUDIO_LOADING_STATE = 65536;
121pub type FMOD_STUDIO_LOAD_MEMORY_MODE = c_int;
122pub const FMOD_STUDIO_LOAD_MEMORY: FMOD_STUDIO_LOAD_MEMORY_MODE = 0;
123pub const FMOD_STUDIO_LOAD_MEMORY_POINT: FMOD_STUDIO_LOAD_MEMORY_MODE = 1;
124pub const FMOD_STUDIO_LOAD_MEMORY_FORCEINT: FMOD_STUDIO_LOAD_MEMORY_MODE = 65536;
125pub type FMOD_STUDIO_PARAMETER_TYPE = c_int;
126pub const FMOD_STUDIO_PARAMETER_GAME_CONTROLLED: FMOD_STUDIO_PARAMETER_TYPE = 0;
127pub const FMOD_STUDIO_PARAMETER_AUTOMATIC_DISTANCE: FMOD_STUDIO_PARAMETER_TYPE = 1;
128pub const FMOD_STUDIO_PARAMETER_AUTOMATIC_EVENT_CONE_ANGLE: FMOD_STUDIO_PARAMETER_TYPE = 2;
129pub const FMOD_STUDIO_PARAMETER_AUTOMATIC_EVENT_ORIENTATION: FMOD_STUDIO_PARAMETER_TYPE = 3;
130pub const FMOD_STUDIO_PARAMETER_AUTOMATIC_DIRECTION: FMOD_STUDIO_PARAMETER_TYPE = 4;
131pub const FMOD_STUDIO_PARAMETER_AUTOMATIC_ELEVATION: FMOD_STUDIO_PARAMETER_TYPE = 5;
132pub const FMOD_STUDIO_PARAMETER_AUTOMATIC_LISTENER_ORIENTATION: FMOD_STUDIO_PARAMETER_TYPE = 6;
133pub const FMOD_STUDIO_PARAMETER_AUTOMATIC_SPEED: FMOD_STUDIO_PARAMETER_TYPE = 7;
134pub const FMOD_STUDIO_PARAMETER_AUTOMATIC_SPEED_ABSOLUTE: FMOD_STUDIO_PARAMETER_TYPE = 8;
135pub const FMOD_STUDIO_PARAMETER_AUTOMATIC_DISTANCE_NORMALIZED: FMOD_STUDIO_PARAMETER_TYPE = 9;
136pub const FMOD_STUDIO_PARAMETER_MAX: FMOD_STUDIO_PARAMETER_TYPE = 10;
137pub const FMOD_STUDIO_PARAMETER_FORCEINT: FMOD_STUDIO_PARAMETER_TYPE = 65536;
138pub type FMOD_STUDIO_USER_PROPERTY_TYPE = c_int;
139pub const FMOD_STUDIO_USER_PROPERTY_TYPE_INTEGER: FMOD_STUDIO_USER_PROPERTY_TYPE = 0;
140pub const FMOD_STUDIO_USER_PROPERTY_TYPE_BOOLEAN: FMOD_STUDIO_USER_PROPERTY_TYPE = 1;
141pub const FMOD_STUDIO_USER_PROPERTY_TYPE_FLOAT: FMOD_STUDIO_USER_PROPERTY_TYPE = 2;
142pub const FMOD_STUDIO_USER_PROPERTY_TYPE_STRING: FMOD_STUDIO_USER_PROPERTY_TYPE = 3;
143pub const FMOD_STUDIO_USER_PROPERTY_TYPE_FORCEINT: FMOD_STUDIO_USER_PROPERTY_TYPE = 65536;
144pub type FMOD_STUDIO_EVENT_PROPERTY = c_int;
145pub const FMOD_STUDIO_EVENT_PROPERTY_CHANNELPRIORITY: FMOD_STUDIO_EVENT_PROPERTY = 0;
146pub const FMOD_STUDIO_EVENT_PROPERTY_SCHEDULE_DELAY: FMOD_STUDIO_EVENT_PROPERTY = 1;
147pub const FMOD_STUDIO_EVENT_PROPERTY_SCHEDULE_LOOKAHEAD: FMOD_STUDIO_EVENT_PROPERTY = 2;
148pub const FMOD_STUDIO_EVENT_PROPERTY_MINIMUM_DISTANCE: FMOD_STUDIO_EVENT_PROPERTY = 3;
149pub const FMOD_STUDIO_EVENT_PROPERTY_MAXIMUM_DISTANCE: FMOD_STUDIO_EVENT_PROPERTY = 4;
150pub const FMOD_STUDIO_EVENT_PROPERTY_COOLDOWN: FMOD_STUDIO_EVENT_PROPERTY = 5;
151pub const FMOD_STUDIO_EVENT_PROPERTY_MAX: FMOD_STUDIO_EVENT_PROPERTY = 6;
152pub const FMOD_STUDIO_EVENT_PROPERTY_FORCEINT: FMOD_STUDIO_EVENT_PROPERTY = 65536;
153pub type FMOD_STUDIO_PLAYBACK_STATE = c_int;
154pub const FMOD_STUDIO_PLAYBACK_PLAYING: FMOD_STUDIO_PLAYBACK_STATE = 0;
155pub const FMOD_STUDIO_PLAYBACK_SUSTAINING: FMOD_STUDIO_PLAYBACK_STATE = 1;
156pub const FMOD_STUDIO_PLAYBACK_STOPPED: FMOD_STUDIO_PLAYBACK_STATE = 2;
157pub const FMOD_STUDIO_PLAYBACK_STARTING: FMOD_STUDIO_PLAYBACK_STATE = 3;
158pub const FMOD_STUDIO_PLAYBACK_STOPPING: FMOD_STUDIO_PLAYBACK_STATE = 4;
159pub const FMOD_STUDIO_PLAYBACK_FORCEINT: FMOD_STUDIO_PLAYBACK_STATE = 65536;
160pub type FMOD_STUDIO_STOP_MODE = c_int;
161pub const FMOD_STUDIO_STOP_ALLOWFADEOUT: FMOD_STUDIO_STOP_MODE = 0;
162pub const FMOD_STUDIO_STOP_IMMEDIATE: FMOD_STUDIO_STOP_MODE = 1;
163pub const FMOD_STUDIO_STOP_FORCEINT: FMOD_STUDIO_STOP_MODE = 65536;
164pub type FMOD_STUDIO_INSTANCETYPE = c_int;
165pub const FMOD_STUDIO_INSTANCETYPE_NONE: FMOD_STUDIO_INSTANCETYPE = 0;
166pub const FMOD_STUDIO_INSTANCETYPE_SYSTEM: FMOD_STUDIO_INSTANCETYPE = 1;
167pub const FMOD_STUDIO_INSTANCETYPE_EVENTDESCRIPTION: FMOD_STUDIO_INSTANCETYPE = 2;
168pub const FMOD_STUDIO_INSTANCETYPE_EVENTINSTANCE: FMOD_STUDIO_INSTANCETYPE = 3;
169pub const FMOD_STUDIO_INSTANCETYPE_PARAMETERINSTANCE: FMOD_STUDIO_INSTANCETYPE = 4;
170pub const FMOD_STUDIO_INSTANCETYPE_BUS: FMOD_STUDIO_INSTANCETYPE = 5;
171pub const FMOD_STUDIO_INSTANCETYPE_VCA: FMOD_STUDIO_INSTANCETYPE = 6;
172pub const FMOD_STUDIO_INSTANCETYPE_BANK: FMOD_STUDIO_INSTANCETYPE = 7;
173pub const FMOD_STUDIO_INSTANCETYPE_COMMANDREPLAY: FMOD_STUDIO_INSTANCETYPE = 8;
174pub const FMOD_STUDIO_INSTANCETYPE_FORCEINT: FMOD_STUDIO_INSTANCETYPE = 65536;
175pub type FMOD_THREAD_TYPE = c_int;
176pub const FMOD_THREAD_TYPE_MIXER: FMOD_THREAD_TYPE = 0;
177pub const FMOD_THREAD_TYPE_FEEDER: FMOD_THREAD_TYPE = 1;
178pub const FMOD_THREAD_TYPE_STREAM: FMOD_THREAD_TYPE = 2;
179pub const FMOD_THREAD_TYPE_FILE: FMOD_THREAD_TYPE = 3;
180pub const FMOD_THREAD_TYPE_NONBLOCKING: FMOD_THREAD_TYPE = 4;
181pub const FMOD_THREAD_TYPE_RECORD: FMOD_THREAD_TYPE = 5;
182pub const FMOD_THREAD_TYPE_GEOMETRY: FMOD_THREAD_TYPE = 6;
183pub const FMOD_THREAD_TYPE_PROFILER: FMOD_THREAD_TYPE = 7;
184pub const FMOD_THREAD_TYPE_STUDIO_UPDATE: FMOD_THREAD_TYPE = 8;
185pub const FMOD_THREAD_TYPE_STUDIO_LOAD_BANK: FMOD_THREAD_TYPE = 9;
186pub const FMOD_THREAD_TYPE_STUDIO_LOAD_SAMPLE: FMOD_THREAD_TYPE = 10;
187pub const FMOD_THREAD_TYPE_CONVOLUTION1: FMOD_THREAD_TYPE = 11;
188pub const FMOD_THREAD_TYPE_CONVOLUTION2: FMOD_THREAD_TYPE = 12;
189pub const FMOD_THREAD_TYPE_MAX: FMOD_THREAD_TYPE = 13;
190pub const FMOD_THREAD_TYPE_FORCEINT: FMOD_THREAD_TYPE = 65536;
191pub type FMOD_RESULT = c_int;
192pub const FMOD_OK: FMOD_RESULT = 0;
193pub const FMOD_ERR_BADCOMMAND: FMOD_RESULT = 1;
194pub const FMOD_ERR_CHANNEL_ALLOC: FMOD_RESULT = 2;
195pub const FMOD_ERR_CHANNEL_STOLEN: FMOD_RESULT = 3;
196pub const FMOD_ERR_DMA: FMOD_RESULT = 4;
197pub const FMOD_ERR_DSP_CONNECTION: FMOD_RESULT = 5;
198pub const FMOD_ERR_DSP_DONTPROCESS: FMOD_RESULT = 6;
199pub const FMOD_ERR_DSP_FORMAT: FMOD_RESULT = 7;
200pub const FMOD_ERR_DSP_INUSE: FMOD_RESULT = 8;
201pub const FMOD_ERR_DSP_NOTFOUND: FMOD_RESULT = 9;
202pub const FMOD_ERR_DSP_RESERVED: FMOD_RESULT = 10;
203pub const FMOD_ERR_DSP_SILENCE: FMOD_RESULT = 11;
204pub const FMOD_ERR_DSP_TYPE: FMOD_RESULT = 12;
205pub const FMOD_ERR_FILE_BAD: FMOD_RESULT = 13;
206pub const FMOD_ERR_FILE_COULDNOTSEEK: FMOD_RESULT = 14;
207pub const FMOD_ERR_FILE_DISKEJECTED: FMOD_RESULT = 15;
208pub const FMOD_ERR_FILE_EOF: FMOD_RESULT = 16;
209pub const FMOD_ERR_FILE_ENDOFDATA: FMOD_RESULT = 17;
210pub const FMOD_ERR_FILE_NOTFOUND: FMOD_RESULT = 18;
211pub const FMOD_ERR_FORMAT: FMOD_RESULT = 19;
212pub const FMOD_ERR_HEADER_MISMATCH: FMOD_RESULT = 20;
213pub const FMOD_ERR_HTTP: FMOD_RESULT = 21;
214pub const FMOD_ERR_HTTP_ACCESS: FMOD_RESULT = 22;
215pub const FMOD_ERR_HTTP_PROXY_AUTH: FMOD_RESULT = 23;
216pub const FMOD_ERR_HTTP_SERVER_ERROR: FMOD_RESULT = 24;
217pub const FMOD_ERR_HTTP_TIMEOUT: FMOD_RESULT = 25;
218pub const FMOD_ERR_INITIALIZATION: FMOD_RESULT = 26;
219pub const FMOD_ERR_INITIALIZED: FMOD_RESULT = 27;
220pub const FMOD_ERR_INTERNAL: FMOD_RESULT = 28;
221pub const FMOD_ERR_INVALID_FLOAT: FMOD_RESULT = 29;
222pub const FMOD_ERR_INVALID_HANDLE: FMOD_RESULT = 30;
223pub const FMOD_ERR_INVALID_PARAM: FMOD_RESULT = 31;
224pub const FMOD_ERR_INVALID_POSITION: FMOD_RESULT = 32;
225pub const FMOD_ERR_INVALID_SPEAKER: FMOD_RESULT = 33;
226pub const FMOD_ERR_INVALID_SYNCPOINT: FMOD_RESULT = 34;
227pub const FMOD_ERR_INVALID_THREAD: FMOD_RESULT = 35;
228pub const FMOD_ERR_INVALID_VECTOR: FMOD_RESULT = 36;
229pub const FMOD_ERR_MAXAUDIBLE: FMOD_RESULT = 37;
230pub const FMOD_ERR_MEMORY: FMOD_RESULT = 38;
231pub const FMOD_ERR_MEMORY_CANTPOINT: FMOD_RESULT = 39;
232pub const FMOD_ERR_NEEDS3D: FMOD_RESULT = 40;
233pub const FMOD_ERR_NEEDSHARDWARE: FMOD_RESULT = 41;
234pub const FMOD_ERR_NET_CONNECT: FMOD_RESULT = 42;
235pub const FMOD_ERR_NET_SOCKET_ERROR: FMOD_RESULT = 43;
236pub const FMOD_ERR_NET_URL: FMOD_RESULT = 44;
237pub const FMOD_ERR_NET_WOULD_BLOCK: FMOD_RESULT = 45;
238pub const FMOD_ERR_NOTREADY: FMOD_RESULT = 46;
239pub const FMOD_ERR_OUTPUT_ALLOCATED: FMOD_RESULT = 47;
240pub const FMOD_ERR_OUTPUT_CREATEBUFFER: FMOD_RESULT = 48;
241pub const FMOD_ERR_OUTPUT_DRIVERCALL: FMOD_RESULT = 49;
242pub const FMOD_ERR_OUTPUT_FORMAT: FMOD_RESULT = 50;
243pub const FMOD_ERR_OUTPUT_INIT: FMOD_RESULT = 51;
244pub const FMOD_ERR_OUTPUT_NODRIVERS: FMOD_RESULT = 52;
245pub const FMOD_ERR_PLUGIN: FMOD_RESULT = 53;
246pub const FMOD_ERR_PLUGIN_MISSING: FMOD_RESULT = 54;
247pub const FMOD_ERR_PLUGIN_RESOURCE: FMOD_RESULT = 55;
248pub const FMOD_ERR_PLUGIN_VERSION: FMOD_RESULT = 56;
249pub const FMOD_ERR_RECORD: FMOD_RESULT = 57;
250pub const FMOD_ERR_REVERB_CHANNELGROUP: FMOD_RESULT = 58;
251pub const FMOD_ERR_REVERB_INSTANCE: FMOD_RESULT = 59;
252pub const FMOD_ERR_SUBSOUNDS: FMOD_RESULT = 60;
253pub const FMOD_ERR_SUBSOUND_ALLOCATED: FMOD_RESULT = 61;
254pub const FMOD_ERR_SUBSOUND_CANTMOVE: FMOD_RESULT = 62;
255pub const FMOD_ERR_TAGNOTFOUND: FMOD_RESULT = 63;
256pub const FMOD_ERR_TOOMANYCHANNELS: FMOD_RESULT = 64;
257pub const FMOD_ERR_TRUNCATED: FMOD_RESULT = 65;
258pub const FMOD_ERR_UNIMPLEMENTED: FMOD_RESULT = 66;
259pub const FMOD_ERR_UNINITIALIZED: FMOD_RESULT = 67;
260pub const FMOD_ERR_UNSUPPORTED: FMOD_RESULT = 68;
261pub const FMOD_ERR_VERSION: FMOD_RESULT = 69;
262pub const FMOD_ERR_EVENT_ALREADY_LOADED: FMOD_RESULT = 70;
263pub const FMOD_ERR_EVENT_LIVEUPDATE_BUSY: FMOD_RESULT = 71;
264pub const FMOD_ERR_EVENT_LIVEUPDATE_MISMATCH: FMOD_RESULT = 72;
265pub const FMOD_ERR_EVENT_LIVEUPDATE_TIMEOUT: FMOD_RESULT = 73;
266pub const FMOD_ERR_EVENT_NOTFOUND: FMOD_RESULT = 74;
267pub const FMOD_ERR_STUDIO_UNINITIALIZED: FMOD_RESULT = 75;
268pub const FMOD_ERR_STUDIO_NOT_LOADED: FMOD_RESULT = 76;
269pub const FMOD_ERR_INVALID_STRING: FMOD_RESULT = 77;
270pub const FMOD_ERR_ALREADY_LOCKED: FMOD_RESULT = 78;
271pub const FMOD_ERR_NOT_LOCKED: FMOD_RESULT = 79;
272pub const FMOD_ERR_RECORD_DISCONNECTED: FMOD_RESULT = 80;
273pub const FMOD_ERR_TOOMANYSAMPLES: FMOD_RESULT = 81;
274pub const FMOD_RESULT_FORCEINT: FMOD_RESULT = 65536;
275pub type FMOD_CHANNELCONTROL_TYPE = c_int;
276pub const FMOD_CHANNELCONTROL_CHANNEL: FMOD_CHANNELCONTROL_TYPE = 0;
277pub const FMOD_CHANNELCONTROL_CHANNELGROUP: FMOD_CHANNELCONTROL_TYPE = 1;
278pub const FMOD_CHANNELCONTROL_MAX: FMOD_CHANNELCONTROL_TYPE = 2;
279pub const FMOD_CHANNELCONTROL_FORCEINT: FMOD_CHANNELCONTROL_TYPE = 65536;
280pub type FMOD_OUTPUTTYPE = c_int;
281pub const FMOD_OUTPUTTYPE_AUTODETECT: FMOD_OUTPUTTYPE = 0;
282pub const FMOD_OUTPUTTYPE_UNKNOWN: FMOD_OUTPUTTYPE = 1;
283pub const FMOD_OUTPUTTYPE_NOSOUND: FMOD_OUTPUTTYPE = 2;
284pub const FMOD_OUTPUTTYPE_WAVWRITER: FMOD_OUTPUTTYPE = 3;
285pub const FMOD_OUTPUTTYPE_NOSOUND_NRT: FMOD_OUTPUTTYPE = 4;
286pub const FMOD_OUTPUTTYPE_WAVWRITER_NRT: FMOD_OUTPUTTYPE = 5;
287pub const FMOD_OUTPUTTYPE_WASAPI: FMOD_OUTPUTTYPE = 6;
288pub const FMOD_OUTPUTTYPE_ASIO: FMOD_OUTPUTTYPE = 7;
289pub const FMOD_OUTPUTTYPE_PULSEAUDIO: FMOD_OUTPUTTYPE = 8;
290pub const FMOD_OUTPUTTYPE_ALSA: FMOD_OUTPUTTYPE = 9;
291pub const FMOD_OUTPUTTYPE_COREAUDIO: FMOD_OUTPUTTYPE = 10;
292pub const FMOD_OUTPUTTYPE_AUDIOTRACK: FMOD_OUTPUTTYPE = 11;
293pub const FMOD_OUTPUTTYPE_OPENSL: FMOD_OUTPUTTYPE = 12;
294pub const FMOD_OUTPUTTYPE_AUDIOOUT: FMOD_OUTPUTTYPE = 13;
295pub const FMOD_OUTPUTTYPE_AUDIO3D: FMOD_OUTPUTTYPE = 14;
296pub const FMOD_OUTPUTTYPE_WEBAUDIO: FMOD_OUTPUTTYPE = 15;
297pub const FMOD_OUTPUTTYPE_NNAUDIO: FMOD_OUTPUTTYPE = 16;
298pub const FMOD_OUTPUTTYPE_WINSONIC: FMOD_OUTPUTTYPE = 17;
299pub const FMOD_OUTPUTTYPE_AAUDIO: FMOD_OUTPUTTYPE = 18;
300pub const FMOD_OUTPUTTYPE_AUDIOWORKLET: FMOD_OUTPUTTYPE = 19;
301pub const FMOD_OUTPUTTYPE_PHASE: FMOD_OUTPUTTYPE = 20;
302pub const FMOD_OUTPUTTYPE_OHAUDIO: FMOD_OUTPUTTYPE = 21;
303pub const FMOD_OUTPUTTYPE_MAX: FMOD_OUTPUTTYPE = 22;
304pub const FMOD_OUTPUTTYPE_FORCEINT: FMOD_OUTPUTTYPE = 65536;
305pub type FMOD_DEBUG_MODE = c_int;
306pub const FMOD_DEBUG_MODE_TTY: FMOD_DEBUG_MODE = 0;
307pub const FMOD_DEBUG_MODE_FILE: FMOD_DEBUG_MODE = 1;
308pub const FMOD_DEBUG_MODE_CALLBACK: FMOD_DEBUG_MODE = 2;
309pub const FMOD_DEBUG_MODE_FORCEINT: FMOD_DEBUG_MODE = 65536;
310pub type FMOD_SPEAKERMODE = c_int;
311pub const FMOD_SPEAKERMODE_DEFAULT: FMOD_SPEAKERMODE = 0;
312pub const FMOD_SPEAKERMODE_RAW: FMOD_SPEAKERMODE = 1;
313pub const FMOD_SPEAKERMODE_MONO: FMOD_SPEAKERMODE = 2;
314pub const FMOD_SPEAKERMODE_STEREO: FMOD_SPEAKERMODE = 3;
315pub const FMOD_SPEAKERMODE_QUAD: FMOD_SPEAKERMODE = 4;
316pub const FMOD_SPEAKERMODE_SURROUND: FMOD_SPEAKERMODE = 5;
317pub const FMOD_SPEAKERMODE_5POINT1: FMOD_SPEAKERMODE = 6;
318pub const FMOD_SPEAKERMODE_7POINT1: FMOD_SPEAKERMODE = 7;
319pub const FMOD_SPEAKERMODE_7POINT1POINT4: FMOD_SPEAKERMODE = 8;
320pub const FMOD_SPEAKERMODE_MAX: FMOD_SPEAKERMODE = 9;
321pub const FMOD_SPEAKERMODE_FORCEINT: FMOD_SPEAKERMODE = 65536;
322pub type FMOD_SPEAKER = c_int;
323pub const FMOD_SPEAKER_NONE: FMOD_SPEAKER = -1;
324pub const FMOD_SPEAKER_FRONT_LEFT: FMOD_SPEAKER = 0;
325pub const FMOD_SPEAKER_FRONT_RIGHT: FMOD_SPEAKER = 1;
326pub const FMOD_SPEAKER_FRONT_CENTER: FMOD_SPEAKER = 2;
327pub const FMOD_SPEAKER_LOW_FREQUENCY: FMOD_SPEAKER = 3;
328pub const FMOD_SPEAKER_SURROUND_LEFT: FMOD_SPEAKER = 4;
329pub const FMOD_SPEAKER_SURROUND_RIGHT: FMOD_SPEAKER = 5;
330pub const FMOD_SPEAKER_BACK_LEFT: FMOD_SPEAKER = 6;
331pub const FMOD_SPEAKER_BACK_RIGHT: FMOD_SPEAKER = 7;
332pub const FMOD_SPEAKER_TOP_FRONT_LEFT: FMOD_SPEAKER = 8;
333pub const FMOD_SPEAKER_TOP_FRONT_RIGHT: FMOD_SPEAKER = 9;
334pub const FMOD_SPEAKER_TOP_BACK_LEFT: FMOD_SPEAKER = 10;
335pub const FMOD_SPEAKER_TOP_BACK_RIGHT: FMOD_SPEAKER = 11;
336pub const FMOD_SPEAKER_MAX: FMOD_SPEAKER = 12;
337pub const FMOD_SPEAKER_FORCEINT: FMOD_SPEAKER = 65536;
338pub type FMOD_CHANNELORDER = c_int;
339pub const FMOD_CHANNELORDER_DEFAULT: FMOD_CHANNELORDER = 0;
340pub const FMOD_CHANNELORDER_WAVEFORMAT: FMOD_CHANNELORDER = 1;
341pub const FMOD_CHANNELORDER_PROTOOLS: FMOD_CHANNELORDER = 2;
342pub const FMOD_CHANNELORDER_ALLMONO: FMOD_CHANNELORDER = 3;
343pub const FMOD_CHANNELORDER_ALLSTEREO: FMOD_CHANNELORDER = 4;
344pub const FMOD_CHANNELORDER_ALSA: FMOD_CHANNELORDER = 5;
345pub const FMOD_CHANNELORDER_MAX: FMOD_CHANNELORDER = 6;
346pub const FMOD_CHANNELORDER_FORCEINT: FMOD_CHANNELORDER = 65536;
347pub type FMOD_PLUGINTYPE = c_int;
348pub const FMOD_PLUGINTYPE_OUTPUT: FMOD_PLUGINTYPE = 0;
349pub const FMOD_PLUGINTYPE_CODEC: FMOD_PLUGINTYPE = 1;
350pub const FMOD_PLUGINTYPE_DSP: FMOD_PLUGINTYPE = 2;
351pub const FMOD_PLUGINTYPE_MAX: FMOD_PLUGINTYPE = 3;
352pub const FMOD_PLUGINTYPE_FORCEINT: FMOD_PLUGINTYPE = 65536;
353pub type FMOD_SOUND_TYPE = c_int;
354pub const FMOD_SOUND_TYPE_UNKNOWN: FMOD_SOUND_TYPE = 0;
355pub const FMOD_SOUND_TYPE_AIFF: FMOD_SOUND_TYPE = 1;
356pub const FMOD_SOUND_TYPE_ASF: FMOD_SOUND_TYPE = 2;
357pub const FMOD_SOUND_TYPE_DLS: FMOD_SOUND_TYPE = 3;
358pub const FMOD_SOUND_TYPE_FLAC: FMOD_SOUND_TYPE = 4;
359pub const FMOD_SOUND_TYPE_FSB: FMOD_SOUND_TYPE = 5;
360pub const FMOD_SOUND_TYPE_IT: FMOD_SOUND_TYPE = 6;
361pub const FMOD_SOUND_TYPE_MIDI: FMOD_SOUND_TYPE = 7;
362pub const FMOD_SOUND_TYPE_MOD: FMOD_SOUND_TYPE = 8;
363pub const FMOD_SOUND_TYPE_MPEG: FMOD_SOUND_TYPE = 9;
364pub const FMOD_SOUND_TYPE_OGGVORBIS: FMOD_SOUND_TYPE = 10;
365pub const FMOD_SOUND_TYPE_PLAYLIST: FMOD_SOUND_TYPE = 11;
366pub const FMOD_SOUND_TYPE_RAW: FMOD_SOUND_TYPE = 12;
367pub const FMOD_SOUND_TYPE_S3M: FMOD_SOUND_TYPE = 13;
368pub const FMOD_SOUND_TYPE_USER: FMOD_SOUND_TYPE = 14;
369pub const FMOD_SOUND_TYPE_WAV: FMOD_SOUND_TYPE = 15;
370pub const FMOD_SOUND_TYPE_XM: FMOD_SOUND_TYPE = 16;
371pub const FMOD_SOUND_TYPE_XMA: FMOD_SOUND_TYPE = 17;
372pub const FMOD_SOUND_TYPE_AUDIOQUEUE: FMOD_SOUND_TYPE = 18;
373pub const FMOD_SOUND_TYPE_AT9: FMOD_SOUND_TYPE = 19;
374pub const FMOD_SOUND_TYPE_VORBIS: FMOD_SOUND_TYPE = 20;
375pub const FMOD_SOUND_TYPE_MEDIA_FOUNDATION: FMOD_SOUND_TYPE = 21;
376pub const FMOD_SOUND_TYPE_MEDIACODEC: FMOD_SOUND_TYPE = 22;
377pub const FMOD_SOUND_TYPE_FADPCM: FMOD_SOUND_TYPE = 23;
378pub const FMOD_SOUND_TYPE_OPUS: FMOD_SOUND_TYPE = 24;
379pub const FMOD_SOUND_TYPE_MAX: FMOD_SOUND_TYPE = 25;
380pub const FMOD_SOUND_TYPE_FORCEINT: FMOD_SOUND_TYPE = 65536;
381pub type FMOD_SOUND_FORMAT = c_int;
382pub const FMOD_SOUND_FORMAT_NONE: FMOD_SOUND_FORMAT = 0;
383pub const FMOD_SOUND_FORMAT_PCM8: FMOD_SOUND_FORMAT = 1;
384pub const FMOD_SOUND_FORMAT_PCM16: FMOD_SOUND_FORMAT = 2;
385pub const FMOD_SOUND_FORMAT_PCM24: FMOD_SOUND_FORMAT = 3;
386pub const FMOD_SOUND_FORMAT_PCM32: FMOD_SOUND_FORMAT = 4;
387pub const FMOD_SOUND_FORMAT_PCMFLOAT: FMOD_SOUND_FORMAT = 5;
388pub const FMOD_SOUND_FORMAT_BITSTREAM: FMOD_SOUND_FORMAT = 6;
389pub const FMOD_SOUND_FORMAT_MAX: FMOD_SOUND_FORMAT = 7;
390pub const FMOD_SOUND_FORMAT_FORCEINT: FMOD_SOUND_FORMAT = 65536;
391pub type FMOD_OPENSTATE = c_int;
392pub const FMOD_OPENSTATE_READY: FMOD_OPENSTATE = 0;
393pub const FMOD_OPENSTATE_LOADING: FMOD_OPENSTATE = 1;
394pub const FMOD_OPENSTATE_ERROR: FMOD_OPENSTATE = 2;
395pub const FMOD_OPENSTATE_CONNECTING: FMOD_OPENSTATE = 3;
396pub const FMOD_OPENSTATE_BUFFERING: FMOD_OPENSTATE = 4;
397pub const FMOD_OPENSTATE_SEEKING: FMOD_OPENSTATE = 5;
398pub const FMOD_OPENSTATE_PLAYING: FMOD_OPENSTATE = 6;
399pub const FMOD_OPENSTATE_SETPOSITION: FMOD_OPENSTATE = 7;
400pub const FMOD_OPENSTATE_MAX: FMOD_OPENSTATE = 8;
401pub const FMOD_OPENSTATE_FORCEINT: FMOD_OPENSTATE = 65536;
402pub type FMOD_SOUNDGROUP_BEHAVIOR = c_int;
403pub const FMOD_SOUNDGROUP_BEHAVIOR_FAIL: FMOD_SOUNDGROUP_BEHAVIOR = 0;
404pub const FMOD_SOUNDGROUP_BEHAVIOR_MUTE: FMOD_SOUNDGROUP_BEHAVIOR = 1;
405pub const FMOD_SOUNDGROUP_BEHAVIOR_STEALLOWEST: FMOD_SOUNDGROUP_BEHAVIOR = 2;
406pub const FMOD_SOUNDGROUP_BEHAVIOR_MAX: FMOD_SOUNDGROUP_BEHAVIOR = 3;
407pub const FMOD_SOUNDGROUP_BEHAVIOR_FORCEINT: FMOD_SOUNDGROUP_BEHAVIOR = 65536;
408pub type FMOD_CHANNELCONTROL_CALLBACK_TYPE = c_int;
409pub const FMOD_CHANNELCONTROL_CALLBACK_END: FMOD_CHANNELCONTROL_CALLBACK_TYPE = 0;
410pub const FMOD_CHANNELCONTROL_CALLBACK_VIRTUALVOICE: FMOD_CHANNELCONTROL_CALLBACK_TYPE = 1;
411pub const FMOD_CHANNELCONTROL_CALLBACK_SYNCPOINT: FMOD_CHANNELCONTROL_CALLBACK_TYPE = 2;
412pub const FMOD_CHANNELCONTROL_CALLBACK_OCCLUSION: FMOD_CHANNELCONTROL_CALLBACK_TYPE = 3;
413pub const FMOD_CHANNELCONTROL_CALLBACK_MAX: FMOD_CHANNELCONTROL_CALLBACK_TYPE = 4;
414pub const FMOD_CHANNELCONTROL_CALLBACK_FORCEINT: FMOD_CHANNELCONTROL_CALLBACK_TYPE = 65536;
415pub type FMOD_CHANNELCONTROL_DSP_INDEX = c_int;
416pub const FMOD_CHANNELCONTROL_DSP_HEAD: FMOD_CHANNELCONTROL_DSP_INDEX = -1;
417pub const FMOD_CHANNELCONTROL_DSP_FADER: FMOD_CHANNELCONTROL_DSP_INDEX = -2;
418pub const FMOD_CHANNELCONTROL_DSP_TAIL: FMOD_CHANNELCONTROL_DSP_INDEX = -3;
419pub const FMOD_CHANNELCONTROL_DSP_FORCEINT: FMOD_CHANNELCONTROL_DSP_INDEX = 65536;
420pub type FMOD_ERRORCALLBACK_INSTANCETYPE = c_int;
421pub const FMOD_ERRORCALLBACK_INSTANCETYPE_NONE: FMOD_ERRORCALLBACK_INSTANCETYPE = 0;
422pub const FMOD_ERRORCALLBACK_INSTANCETYPE_SYSTEM: FMOD_ERRORCALLBACK_INSTANCETYPE = 1;
423pub const FMOD_ERRORCALLBACK_INSTANCETYPE_CHANNEL: FMOD_ERRORCALLBACK_INSTANCETYPE = 2;
424pub const FMOD_ERRORCALLBACK_INSTANCETYPE_CHANNELGROUP: FMOD_ERRORCALLBACK_INSTANCETYPE = 3;
425pub const FMOD_ERRORCALLBACK_INSTANCETYPE_CHANNELCONTROL: FMOD_ERRORCALLBACK_INSTANCETYPE = 4;
426pub const FMOD_ERRORCALLBACK_INSTANCETYPE_SOUND: FMOD_ERRORCALLBACK_INSTANCETYPE = 5;
427pub const FMOD_ERRORCALLBACK_INSTANCETYPE_SOUNDGROUP: FMOD_ERRORCALLBACK_INSTANCETYPE = 6;
428pub const FMOD_ERRORCALLBACK_INSTANCETYPE_DSP: FMOD_ERRORCALLBACK_INSTANCETYPE = 7;
429pub const FMOD_ERRORCALLBACK_INSTANCETYPE_DSPCONNECTION: FMOD_ERRORCALLBACK_INSTANCETYPE = 8;
430pub const FMOD_ERRORCALLBACK_INSTANCETYPE_GEOMETRY: FMOD_ERRORCALLBACK_INSTANCETYPE = 9;
431pub const FMOD_ERRORCALLBACK_INSTANCETYPE_REVERB3D: FMOD_ERRORCALLBACK_INSTANCETYPE = 10;
432pub const FMOD_ERRORCALLBACK_INSTANCETYPE_STUDIO_SYSTEM: FMOD_ERRORCALLBACK_INSTANCETYPE = 11;
433pub const FMOD_ERRORCALLBACK_INSTANCETYPE_STUDIO_EVENTDESCRIPTION: FMOD_ERRORCALLBACK_INSTANCETYPE =
434 12;
435pub const FMOD_ERRORCALLBACK_INSTANCETYPE_STUDIO_EVENTINSTANCE: FMOD_ERRORCALLBACK_INSTANCETYPE =
436 13;
437pub const FMOD_ERRORCALLBACK_INSTANCETYPE_STUDIO_PARAMETERINSTANCE:
438 FMOD_ERRORCALLBACK_INSTANCETYPE = 14;
439pub const FMOD_ERRORCALLBACK_INSTANCETYPE_STUDIO_BUS: FMOD_ERRORCALLBACK_INSTANCETYPE = 15;
440pub const FMOD_ERRORCALLBACK_INSTANCETYPE_STUDIO_VCA: FMOD_ERRORCALLBACK_INSTANCETYPE = 16;
441pub const FMOD_ERRORCALLBACK_INSTANCETYPE_STUDIO_BANK: FMOD_ERRORCALLBACK_INSTANCETYPE = 17;
442pub const FMOD_ERRORCALLBACK_INSTANCETYPE_STUDIO_COMMANDREPLAY: FMOD_ERRORCALLBACK_INSTANCETYPE =
443 18;
444pub const FMOD_ERRORCALLBACK_INSTANCETYPE_FORCEINT: FMOD_ERRORCALLBACK_INSTANCETYPE = 65536;
445pub type FMOD_DSP_RESAMPLER = c_int;
446pub const FMOD_DSP_RESAMPLER_DEFAULT: FMOD_DSP_RESAMPLER = 0;
447pub const FMOD_DSP_RESAMPLER_NOINTERP: FMOD_DSP_RESAMPLER = 1;
448pub const FMOD_DSP_RESAMPLER_LINEAR: FMOD_DSP_RESAMPLER = 2;
449pub const FMOD_DSP_RESAMPLER_CUBIC: FMOD_DSP_RESAMPLER = 3;
450pub const FMOD_DSP_RESAMPLER_SPLINE: FMOD_DSP_RESAMPLER = 4;
451pub const FMOD_DSP_RESAMPLER_MAX: FMOD_DSP_RESAMPLER = 5;
452pub const FMOD_DSP_RESAMPLER_FORCEINT: FMOD_DSP_RESAMPLER = 65536;
453pub type FMOD_DSP_CALLBACK_TYPE = c_int;
454pub const FMOD_DSP_CALLBACK_DATAPARAMETERRELEASE: FMOD_DSP_CALLBACK_TYPE = 0;
455pub const FMOD_DSP_CALLBACK_MAX: FMOD_DSP_CALLBACK_TYPE = 1;
456pub const FMOD_DSP_CALLBACK_FORCEINT: FMOD_DSP_CALLBACK_TYPE = 65536;
457pub type FMOD_DSPCONNECTION_TYPE = c_int;
458pub const FMOD_DSPCONNECTION_TYPE_STANDARD: FMOD_DSPCONNECTION_TYPE = 0;
459pub const FMOD_DSPCONNECTION_TYPE_SIDECHAIN: FMOD_DSPCONNECTION_TYPE = 1;
460pub const FMOD_DSPCONNECTION_TYPE_SEND: FMOD_DSPCONNECTION_TYPE = 2;
461pub const FMOD_DSPCONNECTION_TYPE_SEND_SIDECHAIN: FMOD_DSPCONNECTION_TYPE = 3;
462pub const FMOD_DSPCONNECTION_TYPE_MAX: FMOD_DSPCONNECTION_TYPE = 4;
463pub const FMOD_DSPCONNECTION_TYPE_FORCEINT: FMOD_DSPCONNECTION_TYPE = 65536;
464pub type FMOD_TAGTYPE = c_int;
465pub const FMOD_TAGTYPE_UNKNOWN: FMOD_TAGTYPE = 0;
466pub const FMOD_TAGTYPE_ID3V1: FMOD_TAGTYPE = 1;
467pub const FMOD_TAGTYPE_ID3V2: FMOD_TAGTYPE = 2;
468pub const FMOD_TAGTYPE_VORBISCOMMENT: FMOD_TAGTYPE = 3;
469pub const FMOD_TAGTYPE_SHOUTCAST: FMOD_TAGTYPE = 4;
470pub const FMOD_TAGTYPE_ICECAST: FMOD_TAGTYPE = 5;
471pub const FMOD_TAGTYPE_ASF: FMOD_TAGTYPE = 6;
472pub const FMOD_TAGTYPE_MIDI: FMOD_TAGTYPE = 7;
473pub const FMOD_TAGTYPE_PLAYLIST: FMOD_TAGTYPE = 8;
474pub const FMOD_TAGTYPE_FMOD: FMOD_TAGTYPE = 9;
475pub const FMOD_TAGTYPE_USER: FMOD_TAGTYPE = 10;
476pub const FMOD_TAGTYPE_MAX: FMOD_TAGTYPE = 11;
477pub const FMOD_TAGTYPE_FORCEINT: FMOD_TAGTYPE = 65536;
478pub type FMOD_TAGDATATYPE = c_int;
479pub const FMOD_TAGDATATYPE_BINARY: FMOD_TAGDATATYPE = 0;
480pub const FMOD_TAGDATATYPE_INT: FMOD_TAGDATATYPE = 1;
481pub const FMOD_TAGDATATYPE_FLOAT: FMOD_TAGDATATYPE = 2;
482pub const FMOD_TAGDATATYPE_STRING: FMOD_TAGDATATYPE = 3;
483pub const FMOD_TAGDATATYPE_STRING_UTF16: FMOD_TAGDATATYPE = 4;
484pub const FMOD_TAGDATATYPE_STRING_UTF16BE: FMOD_TAGDATATYPE = 5;
485pub const FMOD_TAGDATATYPE_STRING_UTF8: FMOD_TAGDATATYPE = 6;
486pub const FMOD_TAGDATATYPE_MAX: FMOD_TAGDATATYPE = 7;
487pub const FMOD_TAGDATATYPE_FORCEINT: FMOD_TAGDATATYPE = 65536;
488pub type FMOD_PORT_TYPE = c_int;
489pub const FMOD_PORT_TYPE_MUSIC: FMOD_PORT_TYPE = 0;
490pub const FMOD_PORT_TYPE_COPYRIGHT_MUSIC: FMOD_PORT_TYPE = 1;
491pub const FMOD_PORT_TYPE_VOICE: FMOD_PORT_TYPE = 2;
492pub const FMOD_PORT_TYPE_CONTROLLER: FMOD_PORT_TYPE = 3;
493pub const FMOD_PORT_TYPE_PERSONAL: FMOD_PORT_TYPE = 4;
494pub const FMOD_PORT_TYPE_VIBRATION: FMOD_PORT_TYPE = 5;
495pub const FMOD_PORT_TYPE_AUX: FMOD_PORT_TYPE = 6;
496pub const FMOD_PORT_TYPE_MAX: FMOD_PORT_TYPE = 7;
497pub const FMOD_PORT_TYPE_FORCEINT: FMOD_PORT_TYPE = 65536;
498pub type FMOD_DSP_PROCESS_OPERATION = c_int;
499pub const FMOD_DSP_PROCESS_PERFORM: FMOD_DSP_PROCESS_OPERATION = 0;
500pub const FMOD_DSP_PROCESS_QUERY: FMOD_DSP_PROCESS_OPERATION = 1;
501pub type FMOD_DSP_PAN_SURROUND_FLAGS = c_int;
502pub const FMOD_DSP_PAN_SURROUND_DEFAULT: FMOD_DSP_PAN_SURROUND_FLAGS = 0;
503pub const FMOD_DSP_PAN_SURROUND_ROTATION_NOT_BIASED: FMOD_DSP_PAN_SURROUND_FLAGS = 1;
504pub const FMOD_DSP_PAN_SURROUND_FLAGS_FORCEINT: FMOD_DSP_PAN_SURROUND_FLAGS = 65536;
505pub type FMOD_DSP_PARAMETER_TYPE = c_int;
506pub const FMOD_DSP_PARAMETER_TYPE_FLOAT: FMOD_DSP_PARAMETER_TYPE = 0;
507pub const FMOD_DSP_PARAMETER_TYPE_INT: FMOD_DSP_PARAMETER_TYPE = 1;
508pub const FMOD_DSP_PARAMETER_TYPE_BOOL: FMOD_DSP_PARAMETER_TYPE = 2;
509pub const FMOD_DSP_PARAMETER_TYPE_DATA: FMOD_DSP_PARAMETER_TYPE = 3;
510pub const FMOD_DSP_PARAMETER_TYPE_MAX: FMOD_DSP_PARAMETER_TYPE = 4;
511pub const FMOD_DSP_PARAMETER_TYPE_FORCEINT: FMOD_DSP_PARAMETER_TYPE = 65536;
512pub type FMOD_DSP_PARAMETER_FLOAT_MAPPING_TYPE = c_int;
513pub const FMOD_DSP_PARAMETER_FLOAT_MAPPING_TYPE_LINEAR: FMOD_DSP_PARAMETER_FLOAT_MAPPING_TYPE = 0;
514pub const FMOD_DSP_PARAMETER_FLOAT_MAPPING_TYPE_AUTO: FMOD_DSP_PARAMETER_FLOAT_MAPPING_TYPE = 1;
515pub const FMOD_DSP_PARAMETER_FLOAT_MAPPING_TYPE_PIECEWISE_LINEAR:
516 FMOD_DSP_PARAMETER_FLOAT_MAPPING_TYPE = 2;
517pub const FMOD_DSP_PARAMETER_FLOAT_MAPPING_TYPE_FORCEINT: FMOD_DSP_PARAMETER_FLOAT_MAPPING_TYPE =
518 65536;
519pub type FMOD_DSP_PARAMETER_DATA_TYPE = c_int;
520pub const FMOD_DSP_PARAMETER_DATA_TYPE_USER: FMOD_DSP_PARAMETER_DATA_TYPE = 0;
521pub const FMOD_DSP_PARAMETER_DATA_TYPE_OVERALLGAIN: FMOD_DSP_PARAMETER_DATA_TYPE = -1;
522pub const FMOD_DSP_PARAMETER_DATA_TYPE_3DATTRIBUTES: FMOD_DSP_PARAMETER_DATA_TYPE = -2;
523pub const FMOD_DSP_PARAMETER_DATA_TYPE_SIDECHAIN: FMOD_DSP_PARAMETER_DATA_TYPE = -3;
524pub const FMOD_DSP_PARAMETER_DATA_TYPE_FFT: FMOD_DSP_PARAMETER_DATA_TYPE = -4;
525pub const FMOD_DSP_PARAMETER_DATA_TYPE_3DATTRIBUTES_MULTI: FMOD_DSP_PARAMETER_DATA_TYPE = -5;
526pub const FMOD_DSP_PARAMETER_DATA_TYPE_ATTENUATION_RANGE: FMOD_DSP_PARAMETER_DATA_TYPE = -6;
527pub type FMOD_DSP_TYPE = c_int;
528pub const FMOD_DSP_TYPE_UNKNOWN: FMOD_DSP_TYPE = 0;
529pub const FMOD_DSP_TYPE_MIXER: FMOD_DSP_TYPE = 1;
530pub const FMOD_DSP_TYPE_OSCILLATOR: FMOD_DSP_TYPE = 2;
531pub const FMOD_DSP_TYPE_LOWPASS: FMOD_DSP_TYPE = 3;
532pub const FMOD_DSP_TYPE_ITLOWPASS: FMOD_DSP_TYPE = 4;
533pub const FMOD_DSP_TYPE_HIGHPASS: FMOD_DSP_TYPE = 5;
534pub const FMOD_DSP_TYPE_ECHO: FMOD_DSP_TYPE = 6;
535pub const FMOD_DSP_TYPE_FADER: FMOD_DSP_TYPE = 7;
536pub const FMOD_DSP_TYPE_FLANGE: FMOD_DSP_TYPE = 8;
537pub const FMOD_DSP_TYPE_DISTORTION: FMOD_DSP_TYPE = 9;
538pub const FMOD_DSP_TYPE_NORMALIZE: FMOD_DSP_TYPE = 10;
539pub const FMOD_DSP_TYPE_LIMITER: FMOD_DSP_TYPE = 11;
540pub const FMOD_DSP_TYPE_PARAMEQ: FMOD_DSP_TYPE = 12;
541pub const FMOD_DSP_TYPE_PITCHSHIFT: FMOD_DSP_TYPE = 13;
542pub const FMOD_DSP_TYPE_CHORUS: FMOD_DSP_TYPE = 14;
543pub const FMOD_DSP_TYPE_VSTPLUGIN: FMOD_DSP_TYPE = 15;
544pub const FMOD_DSP_TYPE_WINAMPPLUGIN: FMOD_DSP_TYPE = 16;
545pub const FMOD_DSP_TYPE_ITECHO: FMOD_DSP_TYPE = 17;
546pub const FMOD_DSP_TYPE_COMPRESSOR: FMOD_DSP_TYPE = 18;
547pub const FMOD_DSP_TYPE_SFXREVERB: FMOD_DSP_TYPE = 19;
548pub const FMOD_DSP_TYPE_LOWPASS_SIMPLE: FMOD_DSP_TYPE = 20;
549pub const FMOD_DSP_TYPE_DELAY: FMOD_DSP_TYPE = 21;
550pub const FMOD_DSP_TYPE_TREMOLO: FMOD_DSP_TYPE = 22;
551pub const FMOD_DSP_TYPE_LADSPAPLUGIN: FMOD_DSP_TYPE = 23;
552pub const FMOD_DSP_TYPE_SEND: FMOD_DSP_TYPE = 24;
553pub const FMOD_DSP_TYPE_RETURN: FMOD_DSP_TYPE = 25;
554pub const FMOD_DSP_TYPE_HIGHPASS_SIMPLE: FMOD_DSP_TYPE = 26;
555pub const FMOD_DSP_TYPE_PAN: FMOD_DSP_TYPE = 27;
556pub const FMOD_DSP_TYPE_THREE_EQ: FMOD_DSP_TYPE = 28;
557pub const FMOD_DSP_TYPE_FFT: FMOD_DSP_TYPE = 29;
558pub const FMOD_DSP_TYPE_LOUDNESS_METER: FMOD_DSP_TYPE = 30;
559pub const FMOD_DSP_TYPE_ENVELOPEFOLLOWER: FMOD_DSP_TYPE = 31;
560pub const FMOD_DSP_TYPE_CONVOLUTIONREVERB: FMOD_DSP_TYPE = 32;
561pub const FMOD_DSP_TYPE_CHANNELMIX: FMOD_DSP_TYPE = 33;
562pub const FMOD_DSP_TYPE_TRANSCEIVER: FMOD_DSP_TYPE = 34;
563pub const FMOD_DSP_TYPE_OBJECTPAN: FMOD_DSP_TYPE = 35;
564pub const FMOD_DSP_TYPE_MULTIBAND_EQ: FMOD_DSP_TYPE = 36;
565pub const FMOD_DSP_TYPE_MAX: FMOD_DSP_TYPE = 37;
566pub const FMOD_DSP_TYPE_FORCEINT: FMOD_DSP_TYPE = 65536;
567pub type FMOD_DSP_OSCILLATOR = c_int;
568pub const FMOD_DSP_OSCILLATOR_TYPE: FMOD_DSP_OSCILLATOR = 0;
569pub const FMOD_DSP_OSCILLATOR_RATE: FMOD_DSP_OSCILLATOR = 1;
570pub type FMOD_DSP_LOWPASS = c_int;
571pub const FMOD_DSP_LOWPASS_CUTOFF: FMOD_DSP_LOWPASS = 0;
572pub const FMOD_DSP_LOWPASS_RESONANCE: FMOD_DSP_LOWPASS = 1;
573pub type FMOD_DSP_ITLOWPASS = c_int;
574pub const FMOD_DSP_ITLOWPASS_CUTOFF: FMOD_DSP_ITLOWPASS = 0;
575pub const FMOD_DSP_ITLOWPASS_RESONANCE: FMOD_DSP_ITLOWPASS = 1;
576pub type FMOD_DSP_HIGHPASS = c_int;
577pub const FMOD_DSP_HIGHPASS_CUTOFF: FMOD_DSP_HIGHPASS = 0;
578pub const FMOD_DSP_HIGHPASS_RESONANCE: FMOD_DSP_HIGHPASS = 1;
579pub type FMOD_DSP_ECHO = c_int;
580pub const FMOD_DSP_ECHO_DELAY: FMOD_DSP_ECHO = 0;
581pub const FMOD_DSP_ECHO_FEEDBACK: FMOD_DSP_ECHO = 1;
582pub const FMOD_DSP_ECHO_DRYLEVEL: FMOD_DSP_ECHO = 2;
583pub const FMOD_DSP_ECHO_WETLEVEL: FMOD_DSP_ECHO = 3;
584pub type FMOD_DSP_FADER = c_int;
585pub const FMOD_DSP_FADER_GAIN: FMOD_DSP_FADER = 0;
586pub const FMOD_DSP_FADER_OVERALL_GAIN: FMOD_DSP_FADER = 1;
587pub type FMOD_DSP_FLANGE = c_int;
588pub const FMOD_DSP_FLANGE_MIX: FMOD_DSP_FLANGE = 0;
589pub const FMOD_DSP_FLANGE_DEPTH: FMOD_DSP_FLANGE = 1;
590pub const FMOD_DSP_FLANGE_RATE: FMOD_DSP_FLANGE = 2;
591pub type FMOD_DSP_DISTORTION = c_int;
592pub const FMOD_DSP_DISTORTION_LEVEL: FMOD_DSP_DISTORTION = 0;
593pub type FMOD_DSP_NORMALIZE = c_int;
594pub const FMOD_DSP_NORMALIZE_FADETIME: FMOD_DSP_NORMALIZE = 0;
595pub const FMOD_DSP_NORMALIZE_THRESHOLD: FMOD_DSP_NORMALIZE = 1;
596pub const FMOD_DSP_NORMALIZE_MAXAMP: FMOD_DSP_NORMALIZE = 2;
597pub type FMOD_DSP_LIMITER = c_int;
598pub const FMOD_DSP_LIMITER_RELEASETIME: FMOD_DSP_LIMITER = 0;
599pub const FMOD_DSP_LIMITER_CEILING: FMOD_DSP_LIMITER = 1;
600pub const FMOD_DSP_LIMITER_MAXIMIZERGAIN: FMOD_DSP_LIMITER = 2;
601pub const FMOD_DSP_LIMITER_MODE: FMOD_DSP_LIMITER = 3;
602pub type FMOD_DSP_PARAMEQ = c_int;
603pub const FMOD_DSP_PARAMEQ_CENTER: FMOD_DSP_PARAMEQ = 0;
604pub const FMOD_DSP_PARAMEQ_BANDWIDTH: FMOD_DSP_PARAMEQ = 1;
605pub const FMOD_DSP_PARAMEQ_GAIN: FMOD_DSP_PARAMEQ = 2;
606pub type FMOD_DSP_MULTIBAND_EQ = c_int;
607pub const FMOD_DSP_MULTIBAND_EQ_A_FILTER: FMOD_DSP_MULTIBAND_EQ = 0;
608pub const FMOD_DSP_MULTIBAND_EQ_A_FREQUENCY: FMOD_DSP_MULTIBAND_EQ = 1;
609pub const FMOD_DSP_MULTIBAND_EQ_A_Q: FMOD_DSP_MULTIBAND_EQ = 2;
610pub const FMOD_DSP_MULTIBAND_EQ_A_GAIN: FMOD_DSP_MULTIBAND_EQ = 3;
611pub const FMOD_DSP_MULTIBAND_EQ_B_FILTER: FMOD_DSP_MULTIBAND_EQ = 4;
612pub const FMOD_DSP_MULTIBAND_EQ_B_FREQUENCY: FMOD_DSP_MULTIBAND_EQ = 5;
613pub const FMOD_DSP_MULTIBAND_EQ_B_Q: FMOD_DSP_MULTIBAND_EQ = 6;
614pub const FMOD_DSP_MULTIBAND_EQ_B_GAIN: FMOD_DSP_MULTIBAND_EQ = 7;
615pub const FMOD_DSP_MULTIBAND_EQ_C_FILTER: FMOD_DSP_MULTIBAND_EQ = 8;
616pub const FMOD_DSP_MULTIBAND_EQ_C_FREQUENCY: FMOD_DSP_MULTIBAND_EQ = 9;
617pub const FMOD_DSP_MULTIBAND_EQ_C_Q: FMOD_DSP_MULTIBAND_EQ = 10;
618pub const FMOD_DSP_MULTIBAND_EQ_C_GAIN: FMOD_DSP_MULTIBAND_EQ = 11;
619pub const FMOD_DSP_MULTIBAND_EQ_D_FILTER: FMOD_DSP_MULTIBAND_EQ = 12;
620pub const FMOD_DSP_MULTIBAND_EQ_D_FREQUENCY: FMOD_DSP_MULTIBAND_EQ = 13;
621pub const FMOD_DSP_MULTIBAND_EQ_D_Q: FMOD_DSP_MULTIBAND_EQ = 14;
622pub const FMOD_DSP_MULTIBAND_EQ_D_GAIN: FMOD_DSP_MULTIBAND_EQ = 15;
623pub const FMOD_DSP_MULTIBAND_EQ_E_FILTER: FMOD_DSP_MULTIBAND_EQ = 16;
624pub const FMOD_DSP_MULTIBAND_EQ_E_FREQUENCY: FMOD_DSP_MULTIBAND_EQ = 17;
625pub const FMOD_DSP_MULTIBAND_EQ_E_Q: FMOD_DSP_MULTIBAND_EQ = 18;
626pub const FMOD_DSP_MULTIBAND_EQ_E_GAIN: FMOD_DSP_MULTIBAND_EQ = 19;
627pub type FMOD_DSP_MULTIBAND_EQ_FILTER_TYPE = c_int;
628pub const FMOD_DSP_MULTIBAND_EQ_FILTER_DISABLED: FMOD_DSP_MULTIBAND_EQ_FILTER_TYPE = 0;
629pub const FMOD_DSP_MULTIBAND_EQ_FILTER_LOWPASS_12DB: FMOD_DSP_MULTIBAND_EQ_FILTER_TYPE = 1;
630pub const FMOD_DSP_MULTIBAND_EQ_FILTER_LOWPASS_24DB: FMOD_DSP_MULTIBAND_EQ_FILTER_TYPE = 2;
631pub const FMOD_DSP_MULTIBAND_EQ_FILTER_LOWPASS_48DB: FMOD_DSP_MULTIBAND_EQ_FILTER_TYPE = 3;
632pub const FMOD_DSP_MULTIBAND_EQ_FILTER_HIGHPASS_12DB: FMOD_DSP_MULTIBAND_EQ_FILTER_TYPE = 4;
633pub const FMOD_DSP_MULTIBAND_EQ_FILTER_HIGHPASS_24DB: FMOD_DSP_MULTIBAND_EQ_FILTER_TYPE = 5;
634pub const FMOD_DSP_MULTIBAND_EQ_FILTER_HIGHPASS_48DB: FMOD_DSP_MULTIBAND_EQ_FILTER_TYPE = 6;
635pub const FMOD_DSP_MULTIBAND_EQ_FILTER_LOWSHELF: FMOD_DSP_MULTIBAND_EQ_FILTER_TYPE = 7;
636pub const FMOD_DSP_MULTIBAND_EQ_FILTER_HIGHSHELF: FMOD_DSP_MULTIBAND_EQ_FILTER_TYPE = 8;
637pub const FMOD_DSP_MULTIBAND_EQ_FILTER_PEAKING: FMOD_DSP_MULTIBAND_EQ_FILTER_TYPE = 9;
638pub const FMOD_DSP_MULTIBAND_EQ_FILTER_BANDPASS: FMOD_DSP_MULTIBAND_EQ_FILTER_TYPE = 10;
639pub const FMOD_DSP_MULTIBAND_EQ_FILTER_NOTCH: FMOD_DSP_MULTIBAND_EQ_FILTER_TYPE = 11;
640pub const FMOD_DSP_MULTIBAND_EQ_FILTER_ALLPASS: FMOD_DSP_MULTIBAND_EQ_FILTER_TYPE = 12;
641pub type FMOD_DSP_PITCHSHIFT = c_int;
642pub const FMOD_DSP_PITCHSHIFT_PITCH: FMOD_DSP_PITCHSHIFT = 0;
643pub const FMOD_DSP_PITCHSHIFT_FFTSIZE: FMOD_DSP_PITCHSHIFT = 1;
644pub const FMOD_DSP_PITCHSHIFT_OVERLAP: FMOD_DSP_PITCHSHIFT = 2;
645pub const FMOD_DSP_PITCHSHIFT_MAXCHANNELS: FMOD_DSP_PITCHSHIFT = 3;
646pub type FMOD_DSP_CHORUS = c_int;
647pub const FMOD_DSP_CHORUS_MIX: FMOD_DSP_CHORUS = 0;
648pub const FMOD_DSP_CHORUS_RATE: FMOD_DSP_CHORUS = 1;
649pub const FMOD_DSP_CHORUS_DEPTH: FMOD_DSP_CHORUS = 2;
650pub type FMOD_DSP_ITECHO = c_int;
651pub const FMOD_DSP_ITECHO_WETDRYMIX: FMOD_DSP_ITECHO = 0;
652pub const FMOD_DSP_ITECHO_FEEDBACK: FMOD_DSP_ITECHO = 1;
653pub const FMOD_DSP_ITECHO_LEFTDELAY: FMOD_DSP_ITECHO = 2;
654pub const FMOD_DSP_ITECHO_RIGHTDELAY: FMOD_DSP_ITECHO = 3;
655pub const FMOD_DSP_ITECHO_PANDELAY: FMOD_DSP_ITECHO = 4;
656pub type FMOD_DSP_COMPRESSOR = c_int;
657pub const FMOD_DSP_COMPRESSOR_THRESHOLD: FMOD_DSP_COMPRESSOR = 0;
658pub const FMOD_DSP_COMPRESSOR_RATIO: FMOD_DSP_COMPRESSOR = 1;
659pub const FMOD_DSP_COMPRESSOR_ATTACK: FMOD_DSP_COMPRESSOR = 2;
660pub const FMOD_DSP_COMPRESSOR_RELEASE: FMOD_DSP_COMPRESSOR = 3;
661pub const FMOD_DSP_COMPRESSOR_GAINMAKEUP: FMOD_DSP_COMPRESSOR = 4;
662pub const FMOD_DSP_COMPRESSOR_USESIDECHAIN: FMOD_DSP_COMPRESSOR = 5;
663pub const FMOD_DSP_COMPRESSOR_LINKED: FMOD_DSP_COMPRESSOR = 6;
664pub type FMOD_DSP_SFXREVERB = c_int;
665pub const FMOD_DSP_SFXREVERB_DECAYTIME: FMOD_DSP_SFXREVERB = 0;
666pub const FMOD_DSP_SFXREVERB_EARLYDELAY: FMOD_DSP_SFXREVERB = 1;
667pub const FMOD_DSP_SFXREVERB_LATEDELAY: FMOD_DSP_SFXREVERB = 2;
668pub const FMOD_DSP_SFXREVERB_HFREFERENCE: FMOD_DSP_SFXREVERB = 3;
669pub const FMOD_DSP_SFXREVERB_HFDECAYRATIO: FMOD_DSP_SFXREVERB = 4;
670pub const FMOD_DSP_SFXREVERB_DIFFUSION: FMOD_DSP_SFXREVERB = 5;
671pub const FMOD_DSP_SFXREVERB_DENSITY: FMOD_DSP_SFXREVERB = 6;
672pub const FMOD_DSP_SFXREVERB_LOWSHELFFREQUENCY: FMOD_DSP_SFXREVERB = 7;
673pub const FMOD_DSP_SFXREVERB_LOWSHELFGAIN: FMOD_DSP_SFXREVERB = 8;
674pub const FMOD_DSP_SFXREVERB_HIGHCUT: FMOD_DSP_SFXREVERB = 9;
675pub const FMOD_DSP_SFXREVERB_EARLYLATEMIX: FMOD_DSP_SFXREVERB = 10;
676pub const FMOD_DSP_SFXREVERB_WETLEVEL: FMOD_DSP_SFXREVERB = 11;
677pub const FMOD_DSP_SFXREVERB_DRYLEVEL: FMOD_DSP_SFXREVERB = 12;
678pub type FMOD_DSP_LOWPASS_SIMPLE = c_int;
679pub const FMOD_DSP_LOWPASS_SIMPLE_CUTOFF: FMOD_DSP_LOWPASS_SIMPLE = 0;
680pub type FMOD_DSP_DELAY = c_int;
681pub const FMOD_DSP_DELAY_CH0: FMOD_DSP_DELAY = 0;
682pub const FMOD_DSP_DELAY_CH1: FMOD_DSP_DELAY = 1;
683pub const FMOD_DSP_DELAY_CH2: FMOD_DSP_DELAY = 2;
684pub const FMOD_DSP_DELAY_CH3: FMOD_DSP_DELAY = 3;
685pub const FMOD_DSP_DELAY_CH4: FMOD_DSP_DELAY = 4;
686pub const FMOD_DSP_DELAY_CH5: FMOD_DSP_DELAY = 5;
687pub const FMOD_DSP_DELAY_CH6: FMOD_DSP_DELAY = 6;
688pub const FMOD_DSP_DELAY_CH7: FMOD_DSP_DELAY = 7;
689pub const FMOD_DSP_DELAY_CH8: FMOD_DSP_DELAY = 8;
690pub const FMOD_DSP_DELAY_CH9: FMOD_DSP_DELAY = 9;
691pub const FMOD_DSP_DELAY_CH10: FMOD_DSP_DELAY = 10;
692pub const FMOD_DSP_DELAY_CH11: FMOD_DSP_DELAY = 11;
693pub const FMOD_DSP_DELAY_CH12: FMOD_DSP_DELAY = 12;
694pub const FMOD_DSP_DELAY_CH13: FMOD_DSP_DELAY = 13;
695pub const FMOD_DSP_DELAY_CH14: FMOD_DSP_DELAY = 14;
696pub const FMOD_DSP_DELAY_CH15: FMOD_DSP_DELAY = 15;
697pub const FMOD_DSP_DELAY_MAXDELAY: FMOD_DSP_DELAY = 16;
698pub type FMOD_DSP_TREMOLO = c_int;
699pub const FMOD_DSP_TREMOLO_FREQUENCY: FMOD_DSP_TREMOLO = 0;
700pub const FMOD_DSP_TREMOLO_DEPTH: FMOD_DSP_TREMOLO = 1;
701pub const FMOD_DSP_TREMOLO_SHAPE: FMOD_DSP_TREMOLO = 2;
702pub const FMOD_DSP_TREMOLO_SKEW: FMOD_DSP_TREMOLO = 3;
703pub const FMOD_DSP_TREMOLO_DUTY: FMOD_DSP_TREMOLO = 4;
704pub const FMOD_DSP_TREMOLO_SQUARE: FMOD_DSP_TREMOLO = 5;
705pub const FMOD_DSP_TREMOLO_PHASE: FMOD_DSP_TREMOLO = 6;
706pub const FMOD_DSP_TREMOLO_SPREAD: FMOD_DSP_TREMOLO = 7;
707pub type FMOD_DSP_SEND = c_int;
708pub const FMOD_DSP_SEND_RETURNID: FMOD_DSP_SEND = 0;
709pub const FMOD_DSP_SEND_LEVEL: FMOD_DSP_SEND = 1;
710pub type FMOD_DSP_RETURN = c_int;
711pub const FMOD_DSP_RETURN_ID: FMOD_DSP_RETURN = 0;
712pub const FMOD_DSP_RETURN_INPUT_SPEAKER_MODE: FMOD_DSP_RETURN = 1;
713pub type FMOD_DSP_HIGHPASS_SIMPLE = c_int;
714pub const FMOD_DSP_HIGHPASS_SIMPLE_CUTOFF: FMOD_DSP_HIGHPASS_SIMPLE = 0;
715pub type FMOD_DSP_PAN_2D_STEREO_MODE_TYPE = c_int;
716pub const FMOD_DSP_PAN_2D_STEREO_MODE_DISTRIBUTED: FMOD_DSP_PAN_2D_STEREO_MODE_TYPE = 0;
717pub const FMOD_DSP_PAN_2D_STEREO_MODE_DISCRETE: FMOD_DSP_PAN_2D_STEREO_MODE_TYPE = 1;
718pub type FMOD_DSP_PAN_MODE_TYPE = c_int;
719pub const FMOD_DSP_PAN_MODE_MONO: FMOD_DSP_PAN_MODE_TYPE = 0;
720pub const FMOD_DSP_PAN_MODE_STEREO: FMOD_DSP_PAN_MODE_TYPE = 1;
721pub const FMOD_DSP_PAN_MODE_SURROUND: FMOD_DSP_PAN_MODE_TYPE = 2;
722pub type FMOD_DSP_PAN_3D_ROLLOFF_TYPE = c_int;
723pub const FMOD_DSP_PAN_3D_ROLLOFF_LINEARSQUARED: FMOD_DSP_PAN_3D_ROLLOFF_TYPE = 0;
724pub const FMOD_DSP_PAN_3D_ROLLOFF_LINEAR: FMOD_DSP_PAN_3D_ROLLOFF_TYPE = 1;
725pub const FMOD_DSP_PAN_3D_ROLLOFF_INVERSE: FMOD_DSP_PAN_3D_ROLLOFF_TYPE = 2;
726pub const FMOD_DSP_PAN_3D_ROLLOFF_INVERSETAPERED: FMOD_DSP_PAN_3D_ROLLOFF_TYPE = 3;
727pub const FMOD_DSP_PAN_3D_ROLLOFF_CUSTOM: FMOD_DSP_PAN_3D_ROLLOFF_TYPE = 4;
728pub type FMOD_DSP_PAN_3D_EXTENT_MODE_TYPE = c_int;
729pub const FMOD_DSP_PAN_3D_EXTENT_MODE_AUTO: FMOD_DSP_PAN_3D_EXTENT_MODE_TYPE = 0;
730pub const FMOD_DSP_PAN_3D_EXTENT_MODE_USER: FMOD_DSP_PAN_3D_EXTENT_MODE_TYPE = 1;
731pub const FMOD_DSP_PAN_3D_EXTENT_MODE_OFF: FMOD_DSP_PAN_3D_EXTENT_MODE_TYPE = 2;
732pub type FMOD_DSP_PAN = c_int;
733pub const FMOD_DSP_PAN_MODE: FMOD_DSP_PAN = 0;
734pub const FMOD_DSP_PAN_2D_STEREO_POSITION: FMOD_DSP_PAN = 1;
735pub const FMOD_DSP_PAN_2D_DIRECTION: FMOD_DSP_PAN = 2;
736pub const FMOD_DSP_PAN_2D_EXTENT: FMOD_DSP_PAN = 3;
737pub const FMOD_DSP_PAN_2D_ROTATION: FMOD_DSP_PAN = 4;
738pub const FMOD_DSP_PAN_2D_LFE_LEVEL: FMOD_DSP_PAN = 5;
739pub const FMOD_DSP_PAN_2D_STEREO_MODE: FMOD_DSP_PAN = 6;
740pub const FMOD_DSP_PAN_2D_STEREO_SEPARATION: FMOD_DSP_PAN = 7;
741pub const FMOD_DSP_PAN_2D_STEREO_AXIS: FMOD_DSP_PAN = 8;
742pub const FMOD_DSP_PAN_ENABLED_SPEAKERS: FMOD_DSP_PAN = 9;
743pub const FMOD_DSP_PAN_3D_POSITION: FMOD_DSP_PAN = 10;
744pub const FMOD_DSP_PAN_3D_ROLLOFF: FMOD_DSP_PAN = 11;
745pub const FMOD_DSP_PAN_3D_MIN_DISTANCE: FMOD_DSP_PAN = 12;
746pub const FMOD_DSP_PAN_3D_MAX_DISTANCE: FMOD_DSP_PAN = 13;
747pub const FMOD_DSP_PAN_3D_EXTENT_MODE: FMOD_DSP_PAN = 14;
748pub const FMOD_DSP_PAN_3D_SOUND_SIZE: FMOD_DSP_PAN = 15;
749pub const FMOD_DSP_PAN_3D_MIN_EXTENT: FMOD_DSP_PAN = 16;
750pub const FMOD_DSP_PAN_3D_PAN_BLEND: FMOD_DSP_PAN = 17;
751pub const FMOD_DSP_PAN_LFE_UPMIX_ENABLED: FMOD_DSP_PAN = 18;
752pub const FMOD_DSP_PAN_OVERALL_GAIN: FMOD_DSP_PAN = 19;
753pub const FMOD_DSP_PAN_SURROUND_SPEAKER_MODE: FMOD_DSP_PAN = 20;
754pub const FMOD_DSP_PAN_2D_HEIGHT_BLEND: FMOD_DSP_PAN = 21;
755pub const FMOD_DSP_PAN_ATTENUATION_RANGE: FMOD_DSP_PAN = 22;
756pub const FMOD_DSP_PAN_OVERRIDE_RANGE: FMOD_DSP_PAN = 23;
757pub type FMOD_DSP_THREE_EQ_CROSSOVERSLOPE_TYPE = c_int;
758pub const FMOD_DSP_THREE_EQ_CROSSOVERSLOPE_12DB: FMOD_DSP_THREE_EQ_CROSSOVERSLOPE_TYPE = 0;
759pub const FMOD_DSP_THREE_EQ_CROSSOVERSLOPE_24DB: FMOD_DSP_THREE_EQ_CROSSOVERSLOPE_TYPE = 1;
760pub const FMOD_DSP_THREE_EQ_CROSSOVERSLOPE_48DB: FMOD_DSP_THREE_EQ_CROSSOVERSLOPE_TYPE = 2;
761pub type FMOD_DSP_THREE_EQ = c_int;
762pub const FMOD_DSP_THREE_EQ_LOWGAIN: FMOD_DSP_THREE_EQ = 0;
763pub const FMOD_DSP_THREE_EQ_MIDGAIN: FMOD_DSP_THREE_EQ = 1;
764pub const FMOD_DSP_THREE_EQ_HIGHGAIN: FMOD_DSP_THREE_EQ = 2;
765pub const FMOD_DSP_THREE_EQ_LOWCROSSOVER: FMOD_DSP_THREE_EQ = 3;
766pub const FMOD_DSP_THREE_EQ_HIGHCROSSOVER: FMOD_DSP_THREE_EQ = 4;
767pub const FMOD_DSP_THREE_EQ_CROSSOVERSLOPE: FMOD_DSP_THREE_EQ = 5;
768pub type FMOD_DSP_FFT_WINDOW = c_int;
769pub const FMOD_DSP_FFT_WINDOW_RECT: FMOD_DSP_FFT_WINDOW = 0;
770pub const FMOD_DSP_FFT_WINDOW_TRIANGLE: FMOD_DSP_FFT_WINDOW = 1;
771pub const FMOD_DSP_FFT_WINDOW_HAMMING: FMOD_DSP_FFT_WINDOW = 2;
772pub const FMOD_DSP_FFT_WINDOW_HANNING: FMOD_DSP_FFT_WINDOW = 3;
773pub const FMOD_DSP_FFT_WINDOW_BLACKMAN: FMOD_DSP_FFT_WINDOW = 4;
774pub const FMOD_DSP_FFT_WINDOW_BLACKMANHARRIS: FMOD_DSP_FFT_WINDOW = 5;
775pub type FMOD_DSP_FFT = c_int;
776pub const FMOD_DSP_FFT_WINDOWSIZE: FMOD_DSP_FFT = 0;
777pub const FMOD_DSP_FFT_WINDOWTYPE: FMOD_DSP_FFT = 1;
778pub const FMOD_DSP_FFT_SPECTRUMDATA: FMOD_DSP_FFT = 2;
779pub const FMOD_DSP_FFT_DOMINANT_FREQ: FMOD_DSP_FFT = 3;
780pub type FMOD_DSP_LOUDNESS_METER = c_int;
781pub const FMOD_DSP_LOUDNESS_METER_STATE: FMOD_DSP_LOUDNESS_METER = 0;
782pub const FMOD_DSP_LOUDNESS_METER_WEIGHTING: FMOD_DSP_LOUDNESS_METER = 1;
783pub const FMOD_DSP_LOUDNESS_METER_INFO: FMOD_DSP_LOUDNESS_METER = 2;
784pub type FMOD_DSP_LOUDNESS_METER_STATE_TYPE = c_int;
785pub const FMOD_DSP_LOUDNESS_METER_STATE_RESET_INTEGRATED: FMOD_DSP_LOUDNESS_METER_STATE_TYPE = -3;
786pub const FMOD_DSP_LOUDNESS_METER_STATE_RESET_MAXPEAK: FMOD_DSP_LOUDNESS_METER_STATE_TYPE = -2;
787pub const FMOD_DSP_LOUDNESS_METER_STATE_RESET_ALL: FMOD_DSP_LOUDNESS_METER_STATE_TYPE = -1;
788pub const FMOD_DSP_LOUDNESS_METER_STATE_PAUSED: FMOD_DSP_LOUDNESS_METER_STATE_TYPE = 0;
789pub const FMOD_DSP_LOUDNESS_METER_STATE_ANALYZING: FMOD_DSP_LOUDNESS_METER_STATE_TYPE = 1;
790pub type FMOD_DSP_ENVELOPEFOLLOWER = c_int;
791pub const FMOD_DSP_ENVELOPEFOLLOWER_ATTACK: FMOD_DSP_ENVELOPEFOLLOWER = 0;
792pub const FMOD_DSP_ENVELOPEFOLLOWER_RELEASE: FMOD_DSP_ENVELOPEFOLLOWER = 1;
793pub const FMOD_DSP_ENVELOPEFOLLOWER_ENVELOPE: FMOD_DSP_ENVELOPEFOLLOWER = 2;
794pub const FMOD_DSP_ENVELOPEFOLLOWER_USESIDECHAIN: FMOD_DSP_ENVELOPEFOLLOWER = 3;
795pub type FMOD_DSP_CONVOLUTION_REVERB = c_int;
796pub const FMOD_DSP_CONVOLUTION_REVERB_PARAM_IR: FMOD_DSP_CONVOLUTION_REVERB = 0;
797pub const FMOD_DSP_CONVOLUTION_REVERB_PARAM_WET: FMOD_DSP_CONVOLUTION_REVERB = 1;
798pub const FMOD_DSP_CONVOLUTION_REVERB_PARAM_DRY: FMOD_DSP_CONVOLUTION_REVERB = 2;
799pub const FMOD_DSP_CONVOLUTION_REVERB_PARAM_LINKED: FMOD_DSP_CONVOLUTION_REVERB = 3;
800pub type FMOD_DSP_CHANNELMIX_OUTPUT = c_int;
801pub const FMOD_DSP_CHANNELMIX_OUTPUT_DEFAULT: FMOD_DSP_CHANNELMIX_OUTPUT = 0;
802pub const FMOD_DSP_CHANNELMIX_OUTPUT_ALLMONO: FMOD_DSP_CHANNELMIX_OUTPUT = 1;
803pub const FMOD_DSP_CHANNELMIX_OUTPUT_ALLSTEREO: FMOD_DSP_CHANNELMIX_OUTPUT = 2;
804pub const FMOD_DSP_CHANNELMIX_OUTPUT_ALLQUAD: FMOD_DSP_CHANNELMIX_OUTPUT = 3;
805pub const FMOD_DSP_CHANNELMIX_OUTPUT_ALL5POINT1: FMOD_DSP_CHANNELMIX_OUTPUT = 4;
806pub const FMOD_DSP_CHANNELMIX_OUTPUT_ALL7POINT1: FMOD_DSP_CHANNELMIX_OUTPUT = 5;
807pub const FMOD_DSP_CHANNELMIX_OUTPUT_ALLLFE: FMOD_DSP_CHANNELMIX_OUTPUT = 6;
808pub const FMOD_DSP_CHANNELMIX_OUTPUT_ALL7POINT1POINT4: FMOD_DSP_CHANNELMIX_OUTPUT = 7;
809pub type FMOD_DSP_CHANNELMIX = c_int;
810pub const FMOD_DSP_CHANNELMIX_OUTPUTGROUPING: FMOD_DSP_CHANNELMIX = 0;
811pub const FMOD_DSP_CHANNELMIX_GAIN_CH0: FMOD_DSP_CHANNELMIX = 1;
812pub const FMOD_DSP_CHANNELMIX_GAIN_CH1: FMOD_DSP_CHANNELMIX = 2;
813pub const FMOD_DSP_CHANNELMIX_GAIN_CH2: FMOD_DSP_CHANNELMIX = 3;
814pub const FMOD_DSP_CHANNELMIX_GAIN_CH3: FMOD_DSP_CHANNELMIX = 4;
815pub const FMOD_DSP_CHANNELMIX_GAIN_CH4: FMOD_DSP_CHANNELMIX = 5;
816pub const FMOD_DSP_CHANNELMIX_GAIN_CH5: FMOD_DSP_CHANNELMIX = 6;
817pub const FMOD_DSP_CHANNELMIX_GAIN_CH6: FMOD_DSP_CHANNELMIX = 7;
818pub const FMOD_DSP_CHANNELMIX_GAIN_CH7: FMOD_DSP_CHANNELMIX = 8;
819pub const FMOD_DSP_CHANNELMIX_GAIN_CH8: FMOD_DSP_CHANNELMIX = 9;
820pub const FMOD_DSP_CHANNELMIX_GAIN_CH9: FMOD_DSP_CHANNELMIX = 10;
821pub const FMOD_DSP_CHANNELMIX_GAIN_CH10: FMOD_DSP_CHANNELMIX = 11;
822pub const FMOD_DSP_CHANNELMIX_GAIN_CH11: FMOD_DSP_CHANNELMIX = 12;
823pub const FMOD_DSP_CHANNELMIX_GAIN_CH12: FMOD_DSP_CHANNELMIX = 13;
824pub const FMOD_DSP_CHANNELMIX_GAIN_CH13: FMOD_DSP_CHANNELMIX = 14;
825pub const FMOD_DSP_CHANNELMIX_GAIN_CH14: FMOD_DSP_CHANNELMIX = 15;
826pub const FMOD_DSP_CHANNELMIX_GAIN_CH15: FMOD_DSP_CHANNELMIX = 16;
827pub const FMOD_DSP_CHANNELMIX_GAIN_CH16: FMOD_DSP_CHANNELMIX = 17;
828pub const FMOD_DSP_CHANNELMIX_GAIN_CH17: FMOD_DSP_CHANNELMIX = 18;
829pub const FMOD_DSP_CHANNELMIX_GAIN_CH18: FMOD_DSP_CHANNELMIX = 19;
830pub const FMOD_DSP_CHANNELMIX_GAIN_CH19: FMOD_DSP_CHANNELMIX = 20;
831pub const FMOD_DSP_CHANNELMIX_GAIN_CH20: FMOD_DSP_CHANNELMIX = 21;
832pub const FMOD_DSP_CHANNELMIX_GAIN_CH21: FMOD_DSP_CHANNELMIX = 22;
833pub const FMOD_DSP_CHANNELMIX_GAIN_CH22: FMOD_DSP_CHANNELMIX = 23;
834pub const FMOD_DSP_CHANNELMIX_GAIN_CH23: FMOD_DSP_CHANNELMIX = 24;
835pub const FMOD_DSP_CHANNELMIX_GAIN_CH24: FMOD_DSP_CHANNELMIX = 25;
836pub const FMOD_DSP_CHANNELMIX_GAIN_CH25: FMOD_DSP_CHANNELMIX = 26;
837pub const FMOD_DSP_CHANNELMIX_GAIN_CH26: FMOD_DSP_CHANNELMIX = 27;
838pub const FMOD_DSP_CHANNELMIX_GAIN_CH27: FMOD_DSP_CHANNELMIX = 28;
839pub const FMOD_DSP_CHANNELMIX_GAIN_CH28: FMOD_DSP_CHANNELMIX = 29;
840pub const FMOD_DSP_CHANNELMIX_GAIN_CH29: FMOD_DSP_CHANNELMIX = 30;
841pub const FMOD_DSP_CHANNELMIX_GAIN_CH30: FMOD_DSP_CHANNELMIX = 31;
842pub const FMOD_DSP_CHANNELMIX_GAIN_CH31: FMOD_DSP_CHANNELMIX = 32;
843pub const FMOD_DSP_CHANNELMIX_OUTPUT_CH0: FMOD_DSP_CHANNELMIX = 33;
844pub const FMOD_DSP_CHANNELMIX_OUTPUT_CH1: FMOD_DSP_CHANNELMIX = 34;
845pub const FMOD_DSP_CHANNELMIX_OUTPUT_CH2: FMOD_DSP_CHANNELMIX = 35;
846pub const FMOD_DSP_CHANNELMIX_OUTPUT_CH3: FMOD_DSP_CHANNELMIX = 36;
847pub const FMOD_DSP_CHANNELMIX_OUTPUT_CH4: FMOD_DSP_CHANNELMIX = 37;
848pub const FMOD_DSP_CHANNELMIX_OUTPUT_CH5: FMOD_DSP_CHANNELMIX = 38;
849pub const FMOD_DSP_CHANNELMIX_OUTPUT_CH6: FMOD_DSP_CHANNELMIX = 39;
850pub const FMOD_DSP_CHANNELMIX_OUTPUT_CH7: FMOD_DSP_CHANNELMIX = 40;
851pub const FMOD_DSP_CHANNELMIX_OUTPUT_CH8: FMOD_DSP_CHANNELMIX = 41;
852pub const FMOD_DSP_CHANNELMIX_OUTPUT_CH9: FMOD_DSP_CHANNELMIX = 42;
853pub const FMOD_DSP_CHANNELMIX_OUTPUT_CH10: FMOD_DSP_CHANNELMIX = 43;
854pub const FMOD_DSP_CHANNELMIX_OUTPUT_CH11: FMOD_DSP_CHANNELMIX = 44;
855pub const FMOD_DSP_CHANNELMIX_OUTPUT_CH12: FMOD_DSP_CHANNELMIX = 45;
856pub const FMOD_DSP_CHANNELMIX_OUTPUT_CH13: FMOD_DSP_CHANNELMIX = 46;
857pub const FMOD_DSP_CHANNELMIX_OUTPUT_CH14: FMOD_DSP_CHANNELMIX = 47;
858pub const FMOD_DSP_CHANNELMIX_OUTPUT_CH15: FMOD_DSP_CHANNELMIX = 48;
859pub const FMOD_DSP_CHANNELMIX_OUTPUT_CH16: FMOD_DSP_CHANNELMIX = 49;
860pub const FMOD_DSP_CHANNELMIX_OUTPUT_CH17: FMOD_DSP_CHANNELMIX = 50;
861pub const FMOD_DSP_CHANNELMIX_OUTPUT_CH18: FMOD_DSP_CHANNELMIX = 51;
862pub const FMOD_DSP_CHANNELMIX_OUTPUT_CH19: FMOD_DSP_CHANNELMIX = 52;
863pub const FMOD_DSP_CHANNELMIX_OUTPUT_CH20: FMOD_DSP_CHANNELMIX = 53;
864pub const FMOD_DSP_CHANNELMIX_OUTPUT_CH21: FMOD_DSP_CHANNELMIX = 54;
865pub const FMOD_DSP_CHANNELMIX_OUTPUT_CH22: FMOD_DSP_CHANNELMIX = 55;
866pub const FMOD_DSP_CHANNELMIX_OUTPUT_CH23: FMOD_DSP_CHANNELMIX = 56;
867pub const FMOD_DSP_CHANNELMIX_OUTPUT_CH24: FMOD_DSP_CHANNELMIX = 57;
868pub const FMOD_DSP_CHANNELMIX_OUTPUT_CH25: FMOD_DSP_CHANNELMIX = 58;
869pub const FMOD_DSP_CHANNELMIX_OUTPUT_CH26: FMOD_DSP_CHANNELMIX = 59;
870pub const FMOD_DSP_CHANNELMIX_OUTPUT_CH27: FMOD_DSP_CHANNELMIX = 60;
871pub const FMOD_DSP_CHANNELMIX_OUTPUT_CH28: FMOD_DSP_CHANNELMIX = 61;
872pub const FMOD_DSP_CHANNELMIX_OUTPUT_CH29: FMOD_DSP_CHANNELMIX = 62;
873pub const FMOD_DSP_CHANNELMIX_OUTPUT_CH30: FMOD_DSP_CHANNELMIX = 63;
874pub const FMOD_DSP_CHANNELMIX_OUTPUT_CH31: FMOD_DSP_CHANNELMIX = 64;
875pub type FMOD_DSP_TRANSCEIVER_SPEAKERMODE = c_int;
876pub const FMOD_DSP_TRANSCEIVER_SPEAKERMODE_AUTO: FMOD_DSP_TRANSCEIVER_SPEAKERMODE = -1;
877pub const FMOD_DSP_TRANSCEIVER_SPEAKERMODE_MONO: FMOD_DSP_TRANSCEIVER_SPEAKERMODE = 0;
878pub const FMOD_DSP_TRANSCEIVER_SPEAKERMODE_STEREO: FMOD_DSP_TRANSCEIVER_SPEAKERMODE = 1;
879pub const FMOD_DSP_TRANSCEIVER_SPEAKERMODE_SURROUND: FMOD_DSP_TRANSCEIVER_SPEAKERMODE = 2;
880pub type FMOD_DSP_TRANSCEIVER = c_int;
881pub const FMOD_DSP_TRANSCEIVER_TRANSMIT: FMOD_DSP_TRANSCEIVER = 0;
882pub const FMOD_DSP_TRANSCEIVER_GAIN: FMOD_DSP_TRANSCEIVER = 1;
883pub const FMOD_DSP_TRANSCEIVER_CHANNEL: FMOD_DSP_TRANSCEIVER = 2;
884pub const FMOD_DSP_TRANSCEIVER_TRANSMITSPEAKERMODE: FMOD_DSP_TRANSCEIVER = 3;
885pub type FMOD_DSP_OBJECTPAN = c_int;
886pub const FMOD_DSP_OBJECTPAN_3D_POSITION: FMOD_DSP_OBJECTPAN = 0;
887pub const FMOD_DSP_OBJECTPAN_3D_ROLLOFF: FMOD_DSP_OBJECTPAN = 1;
888pub const FMOD_DSP_OBJECTPAN_3D_MIN_DISTANCE: FMOD_DSP_OBJECTPAN = 2;
889pub const FMOD_DSP_OBJECTPAN_3D_MAX_DISTANCE: FMOD_DSP_OBJECTPAN = 3;
890pub const FMOD_DSP_OBJECTPAN_3D_EXTENT_MODE: FMOD_DSP_OBJECTPAN = 4;
891pub const FMOD_DSP_OBJECTPAN_3D_SOUND_SIZE: FMOD_DSP_OBJECTPAN = 5;
892pub const FMOD_DSP_OBJECTPAN_3D_MIN_EXTENT: FMOD_DSP_OBJECTPAN = 6;
893pub const FMOD_DSP_OBJECTPAN_OVERALL_GAIN: FMOD_DSP_OBJECTPAN = 7;
894pub const FMOD_DSP_OBJECTPAN_OUTPUTGAIN: FMOD_DSP_OBJECTPAN = 8;
895pub const FMOD_DSP_OBJECTPAN_ATTENUATION_RANGE: FMOD_DSP_OBJECTPAN = 9;
896pub const FMOD_DSP_OBJECTPAN_OVERRIDE_RANGE: FMOD_DSP_OBJECTPAN = 10;
897pub type FMOD_STUDIO_INITFLAGS = c_uint;
898pub const FMOD_STUDIO_INIT_NORMAL: FMOD_STUDIO_INITFLAGS = 0x00000000;
899pub const FMOD_STUDIO_INIT_LIVEUPDATE: FMOD_STUDIO_INITFLAGS = 0x00000001;
900pub const FMOD_STUDIO_INIT_ALLOW_MISSING_PLUGINS: FMOD_STUDIO_INITFLAGS = 0x00000002;
901pub const FMOD_STUDIO_INIT_SYNCHRONOUS_UPDATE: FMOD_STUDIO_INITFLAGS = 0x00000004;
902pub const FMOD_STUDIO_INIT_DEFERRED_CALLBACKS: FMOD_STUDIO_INITFLAGS = 0x00000008;
903pub const FMOD_STUDIO_INIT_LOAD_FROM_UPDATE: FMOD_STUDIO_INITFLAGS = 0x00000010;
904pub const FMOD_STUDIO_INIT_MEMORY_TRACKING: FMOD_STUDIO_INITFLAGS = 0x00000020;
905pub type FMOD_STUDIO_PARAMETER_FLAGS = c_uint;
906pub const FMOD_STUDIO_PARAMETER_READONLY: FMOD_STUDIO_PARAMETER_FLAGS = 0x00000001;
907pub const FMOD_STUDIO_PARAMETER_AUTOMATIC: FMOD_STUDIO_PARAMETER_FLAGS = 0x00000002;
908pub const FMOD_STUDIO_PARAMETER_GLOBAL: FMOD_STUDIO_PARAMETER_FLAGS = 0x00000004;
909pub const FMOD_STUDIO_PARAMETER_DISCRETE: FMOD_STUDIO_PARAMETER_FLAGS = 0x00000008;
910pub const FMOD_STUDIO_PARAMETER_LABELED: FMOD_STUDIO_PARAMETER_FLAGS = 0x00000010;
911pub type FMOD_STUDIO_SYSTEM_CALLBACK_TYPE = c_uint;
912pub const FMOD_STUDIO_SYSTEM_CALLBACK_PREUPDATE: FMOD_STUDIO_SYSTEM_CALLBACK_TYPE = 0x00000001;
913pub const FMOD_STUDIO_SYSTEM_CALLBACK_POSTUPDATE: FMOD_STUDIO_SYSTEM_CALLBACK_TYPE = 0x00000002;
914pub const FMOD_STUDIO_SYSTEM_CALLBACK_BANK_UNLOAD: FMOD_STUDIO_SYSTEM_CALLBACK_TYPE = 0x00000004;
915pub const FMOD_STUDIO_SYSTEM_CALLBACK_LIVEUPDATE_CONNECTED: FMOD_STUDIO_SYSTEM_CALLBACK_TYPE =
916 0x00000008;
917pub const FMOD_STUDIO_SYSTEM_CALLBACK_LIVEUPDATE_DISCONNECTED: FMOD_STUDIO_SYSTEM_CALLBACK_TYPE =
918 0x00000010;
919pub const FMOD_STUDIO_SYSTEM_CALLBACK_ALL: FMOD_STUDIO_SYSTEM_CALLBACK_TYPE = 0xFFFFFFFF;
920pub type FMOD_STUDIO_EVENT_CALLBACK_TYPE = c_uint;
921pub const FMOD_STUDIO_EVENT_CALLBACK_CREATED: FMOD_STUDIO_EVENT_CALLBACK_TYPE = 0x00000001;
922pub const FMOD_STUDIO_EVENT_CALLBACK_DESTROYED: FMOD_STUDIO_EVENT_CALLBACK_TYPE = 0x00000002;
923pub const FMOD_STUDIO_EVENT_CALLBACK_STARTING: FMOD_STUDIO_EVENT_CALLBACK_TYPE = 0x00000004;
924pub const FMOD_STUDIO_EVENT_CALLBACK_STARTED: FMOD_STUDIO_EVENT_CALLBACK_TYPE = 0x00000008;
925pub const FMOD_STUDIO_EVENT_CALLBACK_RESTARTED: FMOD_STUDIO_EVENT_CALLBACK_TYPE = 0x00000010;
926pub const FMOD_STUDIO_EVENT_CALLBACK_STOPPED: FMOD_STUDIO_EVENT_CALLBACK_TYPE = 0x00000020;
927pub const FMOD_STUDIO_EVENT_CALLBACK_START_FAILED: FMOD_STUDIO_EVENT_CALLBACK_TYPE = 0x00000040;
928pub const FMOD_STUDIO_EVENT_CALLBACK_CREATE_PROGRAMMER_SOUND: FMOD_STUDIO_EVENT_CALLBACK_TYPE =
929 0x00000080;
930pub const FMOD_STUDIO_EVENT_CALLBACK_DESTROY_PROGRAMMER_SOUND: FMOD_STUDIO_EVENT_CALLBACK_TYPE =
931 0x00000100;
932pub const FMOD_STUDIO_EVENT_CALLBACK_PLUGIN_CREATED: FMOD_STUDIO_EVENT_CALLBACK_TYPE = 0x00000200;
933pub const FMOD_STUDIO_EVENT_CALLBACK_PLUGIN_DESTROYED: FMOD_STUDIO_EVENT_CALLBACK_TYPE = 0x00000400;
934pub const FMOD_STUDIO_EVENT_CALLBACK_TIMELINE_MARKER: FMOD_STUDIO_EVENT_CALLBACK_TYPE = 0x00000800;
935pub const FMOD_STUDIO_EVENT_CALLBACK_TIMELINE_BEAT: FMOD_STUDIO_EVENT_CALLBACK_TYPE = 0x00001000;
936pub const FMOD_STUDIO_EVENT_CALLBACK_SOUND_PLAYED: FMOD_STUDIO_EVENT_CALLBACK_TYPE = 0x00002000;
937pub const FMOD_STUDIO_EVENT_CALLBACK_SOUND_STOPPED: FMOD_STUDIO_EVENT_CALLBACK_TYPE = 0x00004000;
938pub const FMOD_STUDIO_EVENT_CALLBACK_REAL_TO_VIRTUAL: FMOD_STUDIO_EVENT_CALLBACK_TYPE = 0x00008000;
939pub const FMOD_STUDIO_EVENT_CALLBACK_VIRTUAL_TO_REAL: FMOD_STUDIO_EVENT_CALLBACK_TYPE = 0x00010000;
940pub const FMOD_STUDIO_EVENT_CALLBACK_START_EVENT_COMMAND: FMOD_STUDIO_EVENT_CALLBACK_TYPE =
941 0x00020000;
942pub const FMOD_STUDIO_EVENT_CALLBACK_NESTED_TIMELINE_BEAT: FMOD_STUDIO_EVENT_CALLBACK_TYPE =
943 0x00040000;
944pub const FMOD_STUDIO_EVENT_CALLBACK_ALL: FMOD_STUDIO_EVENT_CALLBACK_TYPE = 0xFFFFFFFF;
945pub type FMOD_STUDIO_LOAD_BANK_FLAGS = c_uint;
946pub const FMOD_STUDIO_LOAD_BANK_NORMAL: FMOD_STUDIO_LOAD_BANK_FLAGS = 0x00000000;
947pub const FMOD_STUDIO_LOAD_BANK_NONBLOCKING: FMOD_STUDIO_LOAD_BANK_FLAGS = 0x00000001;
948pub const FMOD_STUDIO_LOAD_BANK_DECOMPRESS_SAMPLES: FMOD_STUDIO_LOAD_BANK_FLAGS = 0x00000002;
949pub const FMOD_STUDIO_LOAD_BANK_UNENCRYPTED: FMOD_STUDIO_LOAD_BANK_FLAGS = 0x00000004;
950pub type FMOD_STUDIO_COMMANDCAPTURE_FLAGS = c_uint;
951pub const FMOD_STUDIO_COMMANDCAPTURE_NORMAL: FMOD_STUDIO_COMMANDCAPTURE_FLAGS = 0x00000000;
952pub const FMOD_STUDIO_COMMANDCAPTURE_FILEFLUSH: FMOD_STUDIO_COMMANDCAPTURE_FLAGS = 0x00000001;
953pub const FMOD_STUDIO_COMMANDCAPTURE_SKIP_INITIAL_STATE: FMOD_STUDIO_COMMANDCAPTURE_FLAGS =
954 0x00000002;
955pub type FMOD_STUDIO_COMMANDREPLAY_FLAGS = c_uint;
956pub const FMOD_STUDIO_COMMANDREPLAY_NORMAL: FMOD_STUDIO_COMMANDREPLAY_FLAGS = 0x00000000;
957pub const FMOD_STUDIO_COMMANDREPLAY_SKIP_CLEANUP: FMOD_STUDIO_COMMANDREPLAY_FLAGS = 0x00000001;
958pub const FMOD_STUDIO_COMMANDREPLAY_FAST_FORWARD: FMOD_STUDIO_COMMANDREPLAY_FLAGS = 0x00000002;
959pub const FMOD_STUDIO_COMMANDREPLAY_SKIP_BANK_LOAD: FMOD_STUDIO_COMMANDREPLAY_FLAGS = 0x00000004;
960pub type FMOD_DEBUG_FLAGS = c_uint;
961pub const FMOD_DEBUG_LEVEL_NONE: FMOD_DEBUG_FLAGS = 0x00000000;
962pub const FMOD_DEBUG_LEVEL_ERROR: FMOD_DEBUG_FLAGS = 0x00000001;
963pub const FMOD_DEBUG_LEVEL_WARNING: FMOD_DEBUG_FLAGS = 0x00000002;
964pub const FMOD_DEBUG_LEVEL_LOG: FMOD_DEBUG_FLAGS = 0x00000004;
965pub const FMOD_DEBUG_TYPE_MEMORY: FMOD_DEBUG_FLAGS = 0x00000100;
966pub const FMOD_DEBUG_TYPE_FILE: FMOD_DEBUG_FLAGS = 0x00000200;
967pub const FMOD_DEBUG_TYPE_CODEC: FMOD_DEBUG_FLAGS = 0x00000400;
968pub const FMOD_DEBUG_TYPE_TRACE: FMOD_DEBUG_FLAGS = 0x00000800;
969pub const FMOD_DEBUG_DISPLAY_TIMESTAMPS: FMOD_DEBUG_FLAGS = 0x00010000;
970pub const FMOD_DEBUG_DISPLAY_LINENUMBERS: FMOD_DEBUG_FLAGS = 0x00020000;
971pub const FMOD_DEBUG_DISPLAY_THREAD: FMOD_DEBUG_FLAGS = 0x00040000;
972pub type FMOD_MEMORY_TYPE = c_uint;
973pub const FMOD_MEMORY_NORMAL: FMOD_MEMORY_TYPE = 0x00000000;
974pub const FMOD_MEMORY_STREAM_FILE: FMOD_MEMORY_TYPE = 0x00000001;
975pub const FMOD_MEMORY_STREAM_DECODE: FMOD_MEMORY_TYPE = 0x00000002;
976pub const FMOD_MEMORY_SAMPLEDATA: FMOD_MEMORY_TYPE = 0x00000004;
977pub const FMOD_MEMORY_DSP_BUFFER: FMOD_MEMORY_TYPE = 0x00000008;
978pub const FMOD_MEMORY_PLUGIN: FMOD_MEMORY_TYPE = 0x00000010;
979pub const FMOD_MEMORY_PERSISTENT: FMOD_MEMORY_TYPE = 0x00200000;
980pub const FMOD_MEMORY_ALL: FMOD_MEMORY_TYPE = 0xFFFFFFFF;
981pub type FMOD_INITFLAGS = c_uint;
982pub const FMOD_INIT_NORMAL: FMOD_INITFLAGS = 0x00000000;
983pub const FMOD_INIT_STREAM_FROM_UPDATE: FMOD_INITFLAGS = 0x00000001;
984pub const FMOD_INIT_MIX_FROM_UPDATE: FMOD_INITFLAGS = 0x00000002;
985pub const FMOD_INIT_3D_RIGHTHANDED: FMOD_INITFLAGS = 0x00000004;
986pub const FMOD_INIT_CLIP_OUTPUT: FMOD_INITFLAGS = 0x00000008;
987pub const FMOD_INIT_CHANNEL_LOWPASS: FMOD_INITFLAGS = 0x00000100;
988pub const FMOD_INIT_CHANNEL_DISTANCEFILTER: FMOD_INITFLAGS = 0x00000200;
989pub const FMOD_INIT_PROFILE_ENABLE: FMOD_INITFLAGS = 0x00010000;
990pub const FMOD_INIT_VOL0_BECOMES_VIRTUAL: FMOD_INITFLAGS = 0x00020000;
991pub const FMOD_INIT_GEOMETRY_USECLOSEST: FMOD_INITFLAGS = 0x00040000;
992pub const FMOD_INIT_PREFER_DOLBY_DOWNMIX: FMOD_INITFLAGS = 0x00080000;
993pub const FMOD_INIT_THREAD_UNSAFE: FMOD_INITFLAGS = 0x00100000;
994pub const FMOD_INIT_PROFILE_METER_ALL: FMOD_INITFLAGS = 0x00200000;
995pub const FMOD_INIT_MEMORY_TRACKING: FMOD_INITFLAGS = 0x00400000;
996pub type FMOD_DRIVER_STATE = c_uint;
997pub const FMOD_DRIVER_STATE_CONNECTED: FMOD_DRIVER_STATE = 0x00000001;
998pub const FMOD_DRIVER_STATE_DEFAULT: FMOD_DRIVER_STATE = 0x00000002;
999pub type FMOD_TIMEUNIT = c_uint;
1000pub const FMOD_TIMEUNIT_MS: FMOD_TIMEUNIT = 0x00000001;
1001pub const FMOD_TIMEUNIT_PCM: FMOD_TIMEUNIT = 0x00000002;
1002pub const FMOD_TIMEUNIT_PCMBYTES: FMOD_TIMEUNIT = 0x00000004;
1003pub const FMOD_TIMEUNIT_RAWBYTES: FMOD_TIMEUNIT = 0x00000008;
1004pub const FMOD_TIMEUNIT_PCMFRACTION: FMOD_TIMEUNIT = 0x00000010;
1005pub const FMOD_TIMEUNIT_MODORDER: FMOD_TIMEUNIT = 0x00000100;
1006pub const FMOD_TIMEUNIT_MODROW: FMOD_TIMEUNIT = 0x00000200;
1007pub const FMOD_TIMEUNIT_MODPATTERN: FMOD_TIMEUNIT = 0x00000400;
1008pub type FMOD_SYSTEM_CALLBACK_TYPE = c_uint;
1009pub const FMOD_SYSTEM_CALLBACK_DEVICELISTCHANGED: FMOD_SYSTEM_CALLBACK_TYPE = 0x00000001;
1010pub const FMOD_SYSTEM_CALLBACK_DEVICELOST: FMOD_SYSTEM_CALLBACK_TYPE = 0x00000002;
1011pub const FMOD_SYSTEM_CALLBACK_MEMORYALLOCATIONFAILED: FMOD_SYSTEM_CALLBACK_TYPE = 0x00000004;
1012pub const FMOD_SYSTEM_CALLBACK_THREADCREATED: FMOD_SYSTEM_CALLBACK_TYPE = 0x00000008;
1013pub const FMOD_SYSTEM_CALLBACK_BADDSPCONNECTION: FMOD_SYSTEM_CALLBACK_TYPE = 0x00000010;
1014pub const FMOD_SYSTEM_CALLBACK_PREMIX: FMOD_SYSTEM_CALLBACK_TYPE = 0x00000020;
1015pub const FMOD_SYSTEM_CALLBACK_POSTMIX: FMOD_SYSTEM_CALLBACK_TYPE = 0x00000040;
1016pub const FMOD_SYSTEM_CALLBACK_ERROR: FMOD_SYSTEM_CALLBACK_TYPE = 0x00000080;
1017pub const FMOD_SYSTEM_CALLBACK_MIDMIX: FMOD_SYSTEM_CALLBACK_TYPE = 0x00000100;
1018pub const FMOD_SYSTEM_CALLBACK_THREADDESTROYED: FMOD_SYSTEM_CALLBACK_TYPE = 0x00000200;
1019pub const FMOD_SYSTEM_CALLBACK_PREUPDATE: FMOD_SYSTEM_CALLBACK_TYPE = 0x00000400;
1020pub const FMOD_SYSTEM_CALLBACK_POSTUPDATE: FMOD_SYSTEM_CALLBACK_TYPE = 0x00000800;
1021pub const FMOD_SYSTEM_CALLBACK_RECORDLISTCHANGED: FMOD_SYSTEM_CALLBACK_TYPE = 0x00001000;
1022pub const FMOD_SYSTEM_CALLBACK_BUFFEREDNOMIX: FMOD_SYSTEM_CALLBACK_TYPE = 0x00002000;
1023pub const FMOD_SYSTEM_CALLBACK_DEVICEREINITIALIZE: FMOD_SYSTEM_CALLBACK_TYPE = 0x00004000;
1024pub const FMOD_SYSTEM_CALLBACK_OUTPUTUNDERRUN: FMOD_SYSTEM_CALLBACK_TYPE = 0x00008000;
1025pub const FMOD_SYSTEM_CALLBACK_RECORDPOSITIONCHANGED: FMOD_SYSTEM_CALLBACK_TYPE = 0x00010000;
1026pub const FMOD_SYSTEM_CALLBACK_ALL: FMOD_SYSTEM_CALLBACK_TYPE = 0xFFFFFFFF;
1027pub type FMOD_MODE = c_uint;
1028pub const FMOD_DEFAULT: FMOD_MODE = 0x00000000;
1029pub const FMOD_LOOP_OFF: FMOD_MODE = 0x00000001;
1030pub const FMOD_LOOP_NORMAL: FMOD_MODE = 0x00000002;
1031pub const FMOD_LOOP_BIDI: FMOD_MODE = 0x00000004;
1032pub const FMOD_2D: FMOD_MODE = 0x00000008;
1033pub const FMOD_3D: FMOD_MODE = 0x00000010;
1034pub const FMOD_CREATESTREAM: FMOD_MODE = 0x00000080;
1035pub const FMOD_CREATESAMPLE: FMOD_MODE = 0x00000100;
1036pub const FMOD_CREATECOMPRESSEDSAMPLE: FMOD_MODE = 0x00000200;
1037pub const FMOD_OPENUSER: FMOD_MODE = 0x00000400;
1038pub const FMOD_OPENMEMORY: FMOD_MODE = 0x00000800;
1039pub const FMOD_OPENMEMORY_POINT: FMOD_MODE = 0x10000000;
1040pub const FMOD_OPENRAW: FMOD_MODE = 0x00001000;
1041pub const FMOD_OPENONLY: FMOD_MODE = 0x00002000;
1042pub const FMOD_ACCURATETIME: FMOD_MODE = 0x00004000;
1043pub const FMOD_MPEGSEARCH: FMOD_MODE = 0x00008000;
1044pub const FMOD_NONBLOCKING: FMOD_MODE = 0x00010000;
1045pub const FMOD_UNIQUE: FMOD_MODE = 0x00020000;
1046pub const FMOD_3D_HEADRELATIVE: FMOD_MODE = 0x00040000;
1047pub const FMOD_3D_WORLDRELATIVE: FMOD_MODE = 0x00080000;
1048pub const FMOD_3D_INVERSEROLLOFF: FMOD_MODE = 0x00100000;
1049pub const FMOD_3D_LINEARROLLOFF: FMOD_MODE = 0x00200000;
1050pub const FMOD_3D_LINEARSQUAREROLLOFF: FMOD_MODE = 0x00400000;
1051pub const FMOD_3D_INVERSETAPEREDROLLOFF: FMOD_MODE = 0x00800000;
1052pub const FMOD_3D_CUSTOMROLLOFF: FMOD_MODE = 0x04000000;
1053pub const FMOD_3D_IGNOREGEOMETRY: FMOD_MODE = 0x40000000;
1054pub const FMOD_IGNORETAGS: FMOD_MODE = 0x02000000;
1055pub const FMOD_LOWMEM: FMOD_MODE = 0x08000000;
1056pub const FMOD_VIRTUAL_PLAYFROMSTART: FMOD_MODE = 0x80000000;
1057pub type FMOD_CHANNELMASK = c_uint;
1058pub const FMOD_CHANNELMASK_FRONT_LEFT: FMOD_CHANNELMASK = 0x00000001;
1059pub const FMOD_CHANNELMASK_FRONT_RIGHT: FMOD_CHANNELMASK = 0x00000002;
1060pub const FMOD_CHANNELMASK_FRONT_CENTER: FMOD_CHANNELMASK = 0x00000004;
1061pub const FMOD_CHANNELMASK_LOW_FREQUENCY: FMOD_CHANNELMASK = 0x00000008;
1062pub const FMOD_CHANNELMASK_SURROUND_LEFT: FMOD_CHANNELMASK = 0x00000010;
1063pub const FMOD_CHANNELMASK_SURROUND_RIGHT: FMOD_CHANNELMASK = 0x00000020;
1064pub const FMOD_CHANNELMASK_BACK_LEFT: FMOD_CHANNELMASK = 0x00000040;
1065pub const FMOD_CHANNELMASK_BACK_RIGHT: FMOD_CHANNELMASK = 0x00000080;
1066pub const FMOD_CHANNELMASK_BACK_CENTER: FMOD_CHANNELMASK = 0x00000100;
1067pub const FMOD_CHANNELMASK_MONO: FMOD_CHANNELMASK = (FMOD_CHANNELMASK_FRONT_LEFT);
1068pub const FMOD_CHANNELMASK_STEREO: FMOD_CHANNELMASK =
1069 (FMOD_CHANNELMASK_FRONT_LEFT | FMOD_CHANNELMASK_FRONT_RIGHT);
1070pub const FMOD_CHANNELMASK_LRC: FMOD_CHANNELMASK =
1071 (FMOD_CHANNELMASK_FRONT_LEFT | FMOD_CHANNELMASK_FRONT_RIGHT | FMOD_CHANNELMASK_FRONT_CENTER);
1072pub const FMOD_CHANNELMASK_QUAD: FMOD_CHANNELMASK = (FMOD_CHANNELMASK_FRONT_LEFT
1073 | FMOD_CHANNELMASK_FRONT_RIGHT
1074 | FMOD_CHANNELMASK_SURROUND_LEFT
1075 | FMOD_CHANNELMASK_SURROUND_RIGHT);
1076pub const FMOD_CHANNELMASK_SURROUND: FMOD_CHANNELMASK = (FMOD_CHANNELMASK_FRONT_LEFT
1077 | FMOD_CHANNELMASK_FRONT_RIGHT
1078 | FMOD_CHANNELMASK_FRONT_CENTER
1079 | FMOD_CHANNELMASK_SURROUND_LEFT
1080 | FMOD_CHANNELMASK_SURROUND_RIGHT);
1081pub const FMOD_CHANNELMASK_5POINT1: FMOD_CHANNELMASK = (FMOD_CHANNELMASK_FRONT_LEFT
1082 | FMOD_CHANNELMASK_FRONT_RIGHT
1083 | FMOD_CHANNELMASK_FRONT_CENTER
1084 | FMOD_CHANNELMASK_LOW_FREQUENCY
1085 | FMOD_CHANNELMASK_SURROUND_LEFT
1086 | FMOD_CHANNELMASK_SURROUND_RIGHT);
1087pub const FMOD_CHANNELMASK_5POINT1_REARS: FMOD_CHANNELMASK = (FMOD_CHANNELMASK_FRONT_LEFT
1088 | FMOD_CHANNELMASK_FRONT_RIGHT
1089 | FMOD_CHANNELMASK_FRONT_CENTER
1090 | FMOD_CHANNELMASK_LOW_FREQUENCY
1091 | FMOD_CHANNELMASK_BACK_LEFT
1092 | FMOD_CHANNELMASK_BACK_RIGHT);
1093pub const FMOD_CHANNELMASK_7POINT0: FMOD_CHANNELMASK = (FMOD_CHANNELMASK_FRONT_LEFT
1094 | FMOD_CHANNELMASK_FRONT_RIGHT
1095 | FMOD_CHANNELMASK_FRONT_CENTER
1096 | FMOD_CHANNELMASK_SURROUND_LEFT
1097 | FMOD_CHANNELMASK_SURROUND_RIGHT
1098 | FMOD_CHANNELMASK_BACK_LEFT
1099 | FMOD_CHANNELMASK_BACK_RIGHT);
1100pub const FMOD_CHANNELMASK_7POINT1: FMOD_CHANNELMASK = (FMOD_CHANNELMASK_FRONT_LEFT
1101 | FMOD_CHANNELMASK_FRONT_RIGHT
1102 | FMOD_CHANNELMASK_FRONT_CENTER
1103 | FMOD_CHANNELMASK_LOW_FREQUENCY
1104 | FMOD_CHANNELMASK_SURROUND_LEFT
1105 | FMOD_CHANNELMASK_SURROUND_RIGHT
1106 | FMOD_CHANNELMASK_BACK_LEFT
1107 | FMOD_CHANNELMASK_BACK_RIGHT);
1108pub type FMOD_PORT_INDEX = c_ulonglong;
1109pub const FMOD_PORT_INDEX_NONE: FMOD_PORT_INDEX = 0xFFFFFFFFFFFFFFFF;
1110pub const FMOD_PORT_INDEX_FLAG_VR_CONTROLLER: FMOD_PORT_INDEX = 0x1000000000000000;
1111pub type FMOD_THREAD_PRIORITY = c_int;
1112pub const FMOD_THREAD_PRIORITY_PLATFORM_MIN: FMOD_THREAD_PRIORITY = (-32 * 1024);
1113pub const FMOD_THREAD_PRIORITY_PLATFORM_MAX: FMOD_THREAD_PRIORITY = (32 * 1024);
1114pub const FMOD_THREAD_PRIORITY_DEFAULT: FMOD_THREAD_PRIORITY =
1115 (FMOD_THREAD_PRIORITY_PLATFORM_MIN - 1);
1116pub const FMOD_THREAD_PRIORITY_LOW: FMOD_THREAD_PRIORITY = (FMOD_THREAD_PRIORITY_PLATFORM_MIN - 2);
1117pub const FMOD_THREAD_PRIORITY_MEDIUM: FMOD_THREAD_PRIORITY =
1118 (FMOD_THREAD_PRIORITY_PLATFORM_MIN - 3);
1119pub const FMOD_THREAD_PRIORITY_HIGH: FMOD_THREAD_PRIORITY = (FMOD_THREAD_PRIORITY_PLATFORM_MIN - 4);
1120pub const FMOD_THREAD_PRIORITY_VERY_HIGH: FMOD_THREAD_PRIORITY =
1121 (FMOD_THREAD_PRIORITY_PLATFORM_MIN - 5);
1122pub const FMOD_THREAD_PRIORITY_EXTREME: FMOD_THREAD_PRIORITY =
1123 (FMOD_THREAD_PRIORITY_PLATFORM_MIN - 6);
1124pub const FMOD_THREAD_PRIORITY_CRITICAL: FMOD_THREAD_PRIORITY =
1125 (FMOD_THREAD_PRIORITY_PLATFORM_MIN - 7);
1126pub const FMOD_THREAD_PRIORITY_MIXER: FMOD_THREAD_PRIORITY = FMOD_THREAD_PRIORITY_EXTREME;
1127pub const FMOD_THREAD_PRIORITY_FEEDER: FMOD_THREAD_PRIORITY = FMOD_THREAD_PRIORITY_CRITICAL;
1128pub const FMOD_THREAD_PRIORITY_STREAM: FMOD_THREAD_PRIORITY = FMOD_THREAD_PRIORITY_VERY_HIGH;
1129pub const FMOD_THREAD_PRIORITY_FILE: FMOD_THREAD_PRIORITY = FMOD_THREAD_PRIORITY_HIGH;
1130pub const FMOD_THREAD_PRIORITY_NONBLOCKING: FMOD_THREAD_PRIORITY = FMOD_THREAD_PRIORITY_HIGH;
1131pub const FMOD_THREAD_PRIORITY_RECORD: FMOD_THREAD_PRIORITY = FMOD_THREAD_PRIORITY_HIGH;
1132pub const FMOD_THREAD_PRIORITY_GEOMETRY: FMOD_THREAD_PRIORITY = FMOD_THREAD_PRIORITY_LOW;
1133pub const FMOD_THREAD_PRIORITY_PROFILER: FMOD_THREAD_PRIORITY = FMOD_THREAD_PRIORITY_MEDIUM;
1134pub const FMOD_THREAD_PRIORITY_STUDIO_UPDATE: FMOD_THREAD_PRIORITY = FMOD_THREAD_PRIORITY_MEDIUM;
1135pub const FMOD_THREAD_PRIORITY_STUDIO_LOAD_BANK: FMOD_THREAD_PRIORITY = FMOD_THREAD_PRIORITY_MEDIUM;
1136pub const FMOD_THREAD_PRIORITY_STUDIO_LOAD_SAMPLE: FMOD_THREAD_PRIORITY =
1137 FMOD_THREAD_PRIORITY_MEDIUM;
1138pub const FMOD_THREAD_PRIORITY_CONVOLUTION1: FMOD_THREAD_PRIORITY = FMOD_THREAD_PRIORITY_VERY_HIGH;
1139pub const FMOD_THREAD_PRIORITY_CONVOLUTION2: FMOD_THREAD_PRIORITY = FMOD_THREAD_PRIORITY_VERY_HIGH;
1140pub type FMOD_THREAD_STACK_SIZE = c_uint;
1141pub const FMOD_THREAD_STACK_SIZE_DEFAULT: FMOD_THREAD_STACK_SIZE = 0;
1142pub const FMOD_THREAD_STACK_SIZE_MIXER: FMOD_THREAD_STACK_SIZE = (80 * 1024);
1143pub const FMOD_THREAD_STACK_SIZE_FEEDER: FMOD_THREAD_STACK_SIZE = (16 * 1024);
1144pub const FMOD_THREAD_STACK_SIZE_STREAM: FMOD_THREAD_STACK_SIZE = (96 * 1024);
1145pub const FMOD_THREAD_STACK_SIZE_FILE: FMOD_THREAD_STACK_SIZE = (64 * 1024);
1146pub const FMOD_THREAD_STACK_SIZE_NONBLOCKING: FMOD_THREAD_STACK_SIZE = (112 * 1024);
1147pub const FMOD_THREAD_STACK_SIZE_RECORD: FMOD_THREAD_STACK_SIZE = (16 * 1024);
1148pub const FMOD_THREAD_STACK_SIZE_GEOMETRY: FMOD_THREAD_STACK_SIZE = (48 * 1024);
1149pub const FMOD_THREAD_STACK_SIZE_PROFILER: FMOD_THREAD_STACK_SIZE = (128 * 1024);
1150pub const FMOD_THREAD_STACK_SIZE_STUDIO_UPDATE: FMOD_THREAD_STACK_SIZE = (96 * 1024);
1151pub const FMOD_THREAD_STACK_SIZE_STUDIO_LOAD_BANK: FMOD_THREAD_STACK_SIZE = (96 * 1024);
1152pub const FMOD_THREAD_STACK_SIZE_STUDIO_LOAD_SAMPLE: FMOD_THREAD_STACK_SIZE = (96 * 1024);
1153pub const FMOD_THREAD_STACK_SIZE_CONVOLUTION1: FMOD_THREAD_STACK_SIZE = (16 * 1024);
1154pub const FMOD_THREAD_STACK_SIZE_CONVOLUTION2: FMOD_THREAD_STACK_SIZE = (16 * 1024);
1155pub type FMOD_THREAD_AFFINITY = c_longlong;
1156pub const FMOD_THREAD_AFFINITY_GROUP_DEFAULT: FMOD_THREAD_AFFINITY = 0x4000000000000000;
1157pub const FMOD_THREAD_AFFINITY_GROUP_A: FMOD_THREAD_AFFINITY = 0x4000000000000001;
1158pub const FMOD_THREAD_AFFINITY_GROUP_B: FMOD_THREAD_AFFINITY = 0x4000000000000002;
1159pub const FMOD_THREAD_AFFINITY_GROUP_C: FMOD_THREAD_AFFINITY = 0x4000000000000003;
1160pub const FMOD_THREAD_AFFINITY_MIXER: FMOD_THREAD_AFFINITY = FMOD_THREAD_AFFINITY_GROUP_A;
1161pub const FMOD_THREAD_AFFINITY_FEEDER: FMOD_THREAD_AFFINITY = FMOD_THREAD_AFFINITY_GROUP_C;
1162pub const FMOD_THREAD_AFFINITY_STREAM: FMOD_THREAD_AFFINITY = FMOD_THREAD_AFFINITY_GROUP_C;
1163pub const FMOD_THREAD_AFFINITY_FILE: FMOD_THREAD_AFFINITY = FMOD_THREAD_AFFINITY_GROUP_C;
1164pub const FMOD_THREAD_AFFINITY_NONBLOCKING: FMOD_THREAD_AFFINITY = FMOD_THREAD_AFFINITY_GROUP_C;
1165pub const FMOD_THREAD_AFFINITY_RECORD: FMOD_THREAD_AFFINITY = FMOD_THREAD_AFFINITY_GROUP_C;
1166pub const FMOD_THREAD_AFFINITY_GEOMETRY: FMOD_THREAD_AFFINITY = FMOD_THREAD_AFFINITY_GROUP_C;
1167pub const FMOD_THREAD_AFFINITY_PROFILER: FMOD_THREAD_AFFINITY = FMOD_THREAD_AFFINITY_GROUP_C;
1168pub const FMOD_THREAD_AFFINITY_STUDIO_UPDATE: FMOD_THREAD_AFFINITY = FMOD_THREAD_AFFINITY_GROUP_B;
1169pub const FMOD_THREAD_AFFINITY_STUDIO_LOAD_BANK: FMOD_THREAD_AFFINITY =
1170 FMOD_THREAD_AFFINITY_GROUP_C;
1171pub const FMOD_THREAD_AFFINITY_STUDIO_LOAD_SAMPLE: FMOD_THREAD_AFFINITY =
1172 FMOD_THREAD_AFFINITY_GROUP_C;
1173pub const FMOD_THREAD_AFFINITY_CONVOLUTION1: FMOD_THREAD_AFFINITY = FMOD_THREAD_AFFINITY_GROUP_C;
1174pub const FMOD_THREAD_AFFINITY_CONVOLUTION2: FMOD_THREAD_AFFINITY = FMOD_THREAD_AFFINITY_GROUP_C;
1175pub const FMOD_THREAD_AFFINITY_CORE_ALL: FMOD_THREAD_AFFINITY = 0;
1176pub const FMOD_THREAD_AFFINITY_CORE_0: FMOD_THREAD_AFFINITY = (1 << 0);
1177pub const FMOD_THREAD_AFFINITY_CORE_1: FMOD_THREAD_AFFINITY = (1 << 1);
1178pub const FMOD_THREAD_AFFINITY_CORE_2: FMOD_THREAD_AFFINITY = (1 << 2);
1179pub const FMOD_THREAD_AFFINITY_CORE_3: FMOD_THREAD_AFFINITY = (1 << 3);
1180pub const FMOD_THREAD_AFFINITY_CORE_4: FMOD_THREAD_AFFINITY = (1 << 4);
1181pub const FMOD_THREAD_AFFINITY_CORE_5: FMOD_THREAD_AFFINITY = (1 << 5);
1182pub const FMOD_THREAD_AFFINITY_CORE_6: FMOD_THREAD_AFFINITY = (1 << 6);
1183pub const FMOD_THREAD_AFFINITY_CORE_7: FMOD_THREAD_AFFINITY = (1 << 7);
1184pub const FMOD_THREAD_AFFINITY_CORE_8: FMOD_THREAD_AFFINITY = (1 << 8);
1185pub const FMOD_THREAD_AFFINITY_CORE_9: FMOD_THREAD_AFFINITY = (1 << 9);
1186pub const FMOD_THREAD_AFFINITY_CORE_10: FMOD_THREAD_AFFINITY = (1 << 10);
1187pub const FMOD_THREAD_AFFINITY_CORE_11: FMOD_THREAD_AFFINITY = (1 << 11);
1188pub const FMOD_THREAD_AFFINITY_CORE_12: FMOD_THREAD_AFFINITY = (1 << 12);
1189pub const FMOD_THREAD_AFFINITY_CORE_13: FMOD_THREAD_AFFINITY = (1 << 13);
1190pub const FMOD_THREAD_AFFINITY_CORE_14: FMOD_THREAD_AFFINITY = (1 << 14);
1191pub const FMOD_THREAD_AFFINITY_CORE_15: FMOD_THREAD_AFFINITY = (1 << 15);
1192pub type FMOD_CODEC_SEEK_METHOD = c_int;
1193pub const FMOD_CODEC_SEEK_METHOD_SET: FMOD_CODEC_SEEK_METHOD = 0;
1194pub const FMOD_CODEC_SEEK_METHOD_CURRENT: FMOD_CODEC_SEEK_METHOD = 1;
1195pub const FMOD_CODEC_SEEK_METHOD_END: FMOD_CODEC_SEEK_METHOD = 2;
1196pub type FMOD_OUTPUT_METHOD = c_uint;
1197pub const FMOD_OUTPUT_METHOD_MIX_DIRECT: FMOD_OUTPUT_METHOD = 0;
1198pub const FMOD_OUTPUT_METHOD_MIX_BUFFERED: FMOD_OUTPUT_METHOD = 1;
1199#[repr(C)]
1200#[derive(Debug, Copy, Clone)]
1201pub struct FMOD_STUDIO_BANK_INFO {
1202 pub size: c_int,
1203 pub userdata: *mut c_void,
1204 pub userdatalength: c_int,
1205 pub opencallback: FMOD_FILE_OPEN_CALLBACK,
1206 pub closecallback: FMOD_FILE_CLOSE_CALLBACK,
1207 pub readcallback: FMOD_FILE_READ_CALLBACK,
1208 pub seekcallback: FMOD_FILE_SEEK_CALLBACK,
1209}
1210impl Default for FMOD_STUDIO_BANK_INFO {
1211 fn default() -> Self {
1212 unsafe { std::mem::zeroed() }
1213 }
1214}
1215#[repr(C)]
1216#[derive(Debug, Copy, Clone)]
1217pub struct FMOD_STUDIO_PARAMETER_ID {
1218 pub data1: c_uint,
1219 pub data2: c_uint,
1220}
1221impl Default for FMOD_STUDIO_PARAMETER_ID {
1222 fn default() -> Self {
1223 unsafe { std::mem::zeroed() }
1224 }
1225}
1226#[repr(C)]
1227#[derive(Debug, Copy, Clone)]
1228pub struct FMOD_STUDIO_PARAMETER_DESCRIPTION {
1229 pub name: *const c_char,
1230 pub id: FMOD_STUDIO_PARAMETER_ID,
1231 pub minimum: c_float,
1232 pub maximum: c_float,
1233 pub defaultvalue: c_float,
1234 pub type_: FMOD_STUDIO_PARAMETER_TYPE,
1235 pub flags: FMOD_STUDIO_PARAMETER_FLAGS,
1236 pub guid: FMOD_GUID,
1237}
1238impl Default for FMOD_STUDIO_PARAMETER_DESCRIPTION {
1239 fn default() -> Self {
1240 unsafe { std::mem::zeroed() }
1241 }
1242}
1243#[repr(C)]
1244#[derive(Copy, Clone)]
1245pub struct FMOD_STUDIO_USER_PROPERTY {
1246 pub name: *const c_char,
1247 pub type_: FMOD_STUDIO_USER_PROPERTY_TYPE,
1248 pub union: FMOD_STUDIO_USER_PROPERTY_UNION,
1249}
1250impl Default for FMOD_STUDIO_USER_PROPERTY {
1251 fn default() -> Self {
1252 unsafe { std::mem::zeroed() }
1253 }
1254}
1255#[repr(C)]
1256#[derive(Copy, Clone)]
1257pub union FMOD_STUDIO_USER_PROPERTY_UNION {
1258 pub intvalue: c_int,
1259 pub boolvalue: FMOD_BOOL,
1260 pub floatvalue: c_float,
1261 pub stringvalue: *const c_char,
1262}
1263#[repr(C)]
1264#[derive(Debug, Copy, Clone)]
1265pub struct FMOD_STUDIO_PROGRAMMER_SOUND_PROPERTIES {
1266 pub name: *const c_char,
1267 pub sound: *mut FMOD_SOUND,
1268 pub subsoundIndex: c_int,
1269}
1270impl Default for FMOD_STUDIO_PROGRAMMER_SOUND_PROPERTIES {
1271 fn default() -> Self {
1272 unsafe { std::mem::zeroed() }
1273 }
1274}
1275#[repr(C)]
1276#[derive(Debug, Copy, Clone)]
1277pub struct FMOD_STUDIO_PLUGIN_INSTANCE_PROPERTIES {
1278 pub name: *const c_char,
1279 pub dsp: *mut FMOD_DSP,
1280}
1281impl Default for FMOD_STUDIO_PLUGIN_INSTANCE_PROPERTIES {
1282 fn default() -> Self {
1283 unsafe { std::mem::zeroed() }
1284 }
1285}
1286#[repr(C)]
1287#[derive(Debug, Copy, Clone)]
1288pub struct FMOD_STUDIO_TIMELINE_MARKER_PROPERTIES {
1289 pub name: *const c_char,
1290 pub position: c_int,
1291}
1292impl Default for FMOD_STUDIO_TIMELINE_MARKER_PROPERTIES {
1293 fn default() -> Self {
1294 unsafe { std::mem::zeroed() }
1295 }
1296}
1297#[repr(C)]
1298#[derive(Debug, Copy, Clone)]
1299pub struct FMOD_STUDIO_TIMELINE_BEAT_PROPERTIES {
1300 pub bar: c_int,
1301 pub beat: c_int,
1302 pub position: c_int,
1303 pub tempo: c_float,
1304 pub timesignatureupper: c_int,
1305 pub timesignaturelower: c_int,
1306}
1307impl Default for FMOD_STUDIO_TIMELINE_BEAT_PROPERTIES {
1308 fn default() -> Self {
1309 unsafe { std::mem::zeroed() }
1310 }
1311}
1312#[repr(C)]
1313#[derive(Debug, Copy, Clone)]
1314pub struct FMOD_STUDIO_TIMELINE_NESTED_BEAT_PROPERTIES {
1315 pub eventid: FMOD_GUID,
1316 pub properties: FMOD_STUDIO_TIMELINE_BEAT_PROPERTIES,
1317}
1318impl Default for FMOD_STUDIO_TIMELINE_NESTED_BEAT_PROPERTIES {
1319 fn default() -> Self {
1320 unsafe { std::mem::zeroed() }
1321 }
1322}
1323#[repr(C)]
1324#[derive(Debug, Copy, Clone)]
1325pub struct FMOD_STUDIO_ADVANCEDSETTINGS {
1326 pub cbsize: c_int,
1327 pub commandqueuesize: c_uint,
1328 pub handleinitialsize: c_uint,
1329 pub studioupdateperiod: c_int,
1330 pub idlesampledatapoolsize: c_int,
1331 pub streamingscheduledelay: c_uint,
1332 pub encryptionkey: *const c_char,
1333}
1334impl Default for FMOD_STUDIO_ADVANCEDSETTINGS {
1335 fn default() -> Self {
1336 let mut value: Self = unsafe { std::mem::zeroed() };
1337 value.cbsize = std::mem::size_of::<FMOD_STUDIO_ADVANCEDSETTINGS>() as _;
1338 value
1339 }
1340}
1341#[repr(C)]
1342#[derive(Debug, Copy, Clone)]
1343pub struct FMOD_STUDIO_CPU_USAGE {
1344 pub update: c_float,
1345}
1346impl Default for FMOD_STUDIO_CPU_USAGE {
1347 fn default() -> Self {
1348 unsafe { std::mem::zeroed() }
1349 }
1350}
1351#[repr(C)]
1352#[derive(Debug, Copy, Clone)]
1353pub struct FMOD_STUDIO_BUFFER_INFO {
1354 pub currentusage: c_int,
1355 pub peakusage: c_int,
1356 pub capacity: c_int,
1357 pub stallcount: c_int,
1358 pub stalltime: c_float,
1359}
1360impl Default for FMOD_STUDIO_BUFFER_INFO {
1361 fn default() -> Self {
1362 unsafe { std::mem::zeroed() }
1363 }
1364}
1365#[repr(C)]
1366#[derive(Debug, Copy, Clone)]
1367pub struct FMOD_STUDIO_BUFFER_USAGE {
1368 pub studiocommandqueue: FMOD_STUDIO_BUFFER_INFO,
1369 pub studiohandle: FMOD_STUDIO_BUFFER_INFO,
1370}
1371impl Default for FMOD_STUDIO_BUFFER_USAGE {
1372 fn default() -> Self {
1373 unsafe { std::mem::zeroed() }
1374 }
1375}
1376#[repr(C)]
1377#[derive(Debug, Copy, Clone)]
1378pub struct FMOD_STUDIO_SOUND_INFO {
1379 pub name_or_data: *const c_char,
1380 pub mode: FMOD_MODE,
1381 pub exinfo: FMOD_CREATESOUNDEXINFO,
1382 pub subsoundindex: c_int,
1383}
1384impl Default for FMOD_STUDIO_SOUND_INFO {
1385 fn default() -> Self {
1386 unsafe { std::mem::zeroed() }
1387 }
1388}
1389#[repr(C)]
1390#[derive(Debug, Copy, Clone)]
1391pub struct FMOD_STUDIO_COMMAND_INFO {
1392 pub commandname: *const c_char,
1393 pub parentcommandindex: c_int,
1394 pub framenumber: c_int,
1395 pub frametime: c_float,
1396 pub instancetype: FMOD_STUDIO_INSTANCETYPE,
1397 pub outputtype: FMOD_STUDIO_INSTANCETYPE,
1398 pub instancehandle: c_uint,
1399 pub outputhandle: c_uint,
1400}
1401impl Default for FMOD_STUDIO_COMMAND_INFO {
1402 fn default() -> Self {
1403 unsafe { std::mem::zeroed() }
1404 }
1405}
1406#[repr(C)]
1407#[derive(Debug, Copy, Clone)]
1408pub struct FMOD_STUDIO_MEMORY_USAGE {
1409 pub exclusive: c_int,
1410 pub inclusive: c_int,
1411 pub sampledata: c_int,
1412}
1413impl Default for FMOD_STUDIO_MEMORY_USAGE {
1414 fn default() -> Self {
1415 unsafe { std::mem::zeroed() }
1416 }
1417}
1418#[repr(C)]
1419#[derive(Debug, Copy, Clone)]
1420pub struct FMOD_ASYNCREADINFO {
1421 pub handle: *mut c_void,
1422 pub offset: c_uint,
1423 pub sizebytes: c_uint,
1424 pub priority: c_int,
1425 pub userdata: *mut c_void,
1426 pub buffer: *mut c_void,
1427 pub bytesread: c_uint,
1428 pub done: FMOD_FILE_ASYNCDONE_FUNC,
1429}
1430impl Default for FMOD_ASYNCREADINFO {
1431 fn default() -> Self {
1432 unsafe { std::mem::zeroed() }
1433 }
1434}
1435#[repr(C)]
1436#[derive(Debug, Copy, Clone)]
1437pub struct FMOD_VECTOR {
1438 pub x: c_float,
1439 pub y: c_float,
1440 pub z: c_float,
1441}
1442impl Default for FMOD_VECTOR {
1443 fn default() -> Self {
1444 unsafe { std::mem::zeroed() }
1445 }
1446}
1447#[repr(C)]
1448#[derive(Debug, Copy, Clone)]
1449pub struct FMOD_3D_ATTRIBUTES {
1450 pub position: FMOD_VECTOR,
1451 pub velocity: FMOD_VECTOR,
1452 pub forward: FMOD_VECTOR,
1453 pub up: FMOD_VECTOR,
1454}
1455impl Default for FMOD_3D_ATTRIBUTES {
1456 fn default() -> Self {
1457 unsafe { std::mem::zeroed() }
1458 }
1459}
1460#[repr(C)]
1461#[derive(Debug, Copy, Clone)]
1462pub struct FMOD_GUID {
1463 pub Data1: c_uint,
1464 pub Data2: c_ushort,
1465 pub Data3: c_ushort,
1466 pub Data4: [c_uchar; 8 as usize],
1467}
1468impl Default for FMOD_GUID {
1469 fn default() -> Self {
1470 unsafe { std::mem::zeroed() }
1471 }
1472}
1473#[repr(C)]
1474#[derive(Debug, Copy, Clone)]
1475pub struct FMOD_PLUGINLIST {
1476 pub type_: FMOD_PLUGINTYPE,
1477 pub description: *mut c_void,
1478}
1479impl Default for FMOD_PLUGINLIST {
1480 fn default() -> Self {
1481 unsafe { std::mem::zeroed() }
1482 }
1483}
1484#[repr(C)]
1485#[derive(Debug, Copy, Clone)]
1486pub struct FMOD_ADVANCEDSETTINGS {
1487 pub cbSize: c_int,
1488 pub maxMPEGCodecs: c_int,
1489 pub maxADPCMCodecs: c_int,
1490 pub maxXMACodecs: c_int,
1491 pub maxVorbisCodecs: c_int,
1492 pub maxAT9Codecs: c_int,
1493 pub maxFADPCMCodecs: c_int,
1494 pub maxPCMCodecs: c_int,
1495 pub ASIONumChannels: c_int,
1496 pub ASIOChannelList: *mut *mut c_char,
1497 pub ASIOSpeakerList: *mut FMOD_SPEAKER,
1498 pub vol0virtualvol: c_float,
1499 pub defaultDecodeBufferSize: c_uint,
1500 pub profilePort: c_ushort,
1501 pub geometryMaxFadeTime: c_uint,
1502 pub distanceFilterCenterFreq: c_float,
1503 pub reverb3Dinstance: c_int,
1504 pub DSPBufferPoolSize: c_int,
1505 pub resamplerMethod: FMOD_DSP_RESAMPLER,
1506 pub randomSeed: c_uint,
1507 pub maxConvolutionThreads: c_int,
1508 pub maxOpusCodecs: c_int,
1509 pub maxSpatialObjects: c_int,
1510}
1511impl Default for FMOD_ADVANCEDSETTINGS {
1512 fn default() -> Self {
1513 let mut value: Self = unsafe { std::mem::zeroed() };
1514 value.cbSize = std::mem::size_of::<FMOD_ADVANCEDSETTINGS>() as _;
1515 value
1516 }
1517}
1518#[repr(C)]
1519#[derive(Debug, Copy, Clone)]
1520pub struct FMOD_TAG {
1521 pub type_: FMOD_TAGTYPE,
1522 pub datatype: FMOD_TAGDATATYPE,
1523 pub name: *mut c_char,
1524 pub data: *mut c_void,
1525 pub datalen: c_uint,
1526 pub updated: FMOD_BOOL,
1527}
1528impl Default for FMOD_TAG {
1529 fn default() -> Self {
1530 unsafe { std::mem::zeroed() }
1531 }
1532}
1533#[repr(C)]
1534#[derive(Debug, Copy, Clone)]
1535pub struct FMOD_CREATESOUNDEXINFO {
1536 pub cbsize: c_int,
1537 pub length: c_uint,
1538 pub fileoffset: c_uint,
1539 pub numchannels: c_int,
1540 pub defaultfrequency: c_int,
1541 pub format: FMOD_SOUND_FORMAT,
1542 pub decodebuffersize: c_uint,
1543 pub initialsubsound: c_int,
1544 pub numsubsounds: c_int,
1545 pub inclusionlist: *mut c_int,
1546 pub inclusionlistnum: c_int,
1547 pub pcmreadcallback: FMOD_SOUND_PCMREAD_CALLBACK,
1548 pub pcmsetposcallback: FMOD_SOUND_PCMSETPOS_CALLBACK,
1549 pub nonblockcallback: FMOD_SOUND_NONBLOCK_CALLBACK,
1550 pub dlsname: *const c_char,
1551 pub encryptionkey: *const c_char,
1552 pub maxpolyphony: c_int,
1553 pub userdata: *mut c_void,
1554 pub suggestedsoundtype: FMOD_SOUND_TYPE,
1555 pub fileuseropen: FMOD_FILE_OPEN_CALLBACK,
1556 pub fileuserclose: FMOD_FILE_CLOSE_CALLBACK,
1557 pub fileuserread: FMOD_FILE_READ_CALLBACK,
1558 pub fileuserseek: FMOD_FILE_SEEK_CALLBACK,
1559 pub fileuserasyncread: FMOD_FILE_ASYNCREAD_CALLBACK,
1560 pub fileuserasynccancel: FMOD_FILE_ASYNCCANCEL_CALLBACK,
1561 pub fileuserdata: *mut c_void,
1562 pub filebuffersize: c_int,
1563 pub channelorder: FMOD_CHANNELORDER,
1564 pub initialsoundgroup: *mut FMOD_SOUNDGROUP,
1565 pub initialseekposition: c_uint,
1566 pub initialseekpostype: FMOD_TIMEUNIT,
1567 pub ignoresetfilesystem: c_int,
1568 pub audioqueuepolicy: c_uint,
1569 pub minmidigranularity: c_uint,
1570 pub nonblockthreadid: c_int,
1571 pub fsbguid: *mut FMOD_GUID,
1572}
1573impl Default for FMOD_CREATESOUNDEXINFO {
1574 fn default() -> Self {
1575 let mut value: Self = unsafe { std::mem::zeroed() };
1576 value.cbsize = std::mem::size_of::<FMOD_CREATESOUNDEXINFO>() as _;
1577 value
1578 }
1579}
1580#[repr(C)]
1581#[derive(Debug, Copy, Clone)]
1582pub struct FMOD_REVERB_PROPERTIES {
1583 pub DecayTime: c_float,
1584 pub EarlyDelay: c_float,
1585 pub LateDelay: c_float,
1586 pub HFReference: c_float,
1587 pub HFDecayRatio: c_float,
1588 pub Diffusion: c_float,
1589 pub Density: c_float,
1590 pub LowShelfFrequency: c_float,
1591 pub LowShelfGain: c_float,
1592 pub HighCut: c_float,
1593 pub EarlyLateMix: c_float,
1594 pub WetLevel: c_float,
1595}
1596impl Default for FMOD_REVERB_PROPERTIES {
1597 fn default() -> Self {
1598 unsafe { std::mem::zeroed() }
1599 }
1600}
1601#[repr(C)]
1602#[derive(Debug, Copy, Clone)]
1603pub struct FMOD_ERRORCALLBACK_INFO {
1604 pub result: FMOD_RESULT,
1605 pub instancetype: FMOD_ERRORCALLBACK_INSTANCETYPE,
1606 pub instance: *mut c_void,
1607 pub functionname: *const c_char,
1608 pub functionparams: *const c_char,
1609}
1610impl Default for FMOD_ERRORCALLBACK_INFO {
1611 fn default() -> Self {
1612 unsafe { std::mem::zeroed() }
1613 }
1614}
1615#[repr(C)]
1616#[derive(Debug, Copy, Clone)]
1617pub struct FMOD_CPU_USAGE {
1618 pub dsp: c_float,
1619 pub stream: c_float,
1620 pub geometry: c_float,
1621 pub update: c_float,
1622 pub convolution1: c_float,
1623 pub convolution2: c_float,
1624}
1625impl Default for FMOD_CPU_USAGE {
1626 fn default() -> Self {
1627 unsafe { std::mem::zeroed() }
1628 }
1629}
1630#[repr(C)]
1631#[derive(Debug, Copy, Clone)]
1632pub struct FMOD_DSP_DATA_PARAMETER_INFO {
1633 pub data: *mut c_void,
1634 pub length: c_uint,
1635 pub index: c_int,
1636}
1637impl Default for FMOD_DSP_DATA_PARAMETER_INFO {
1638 fn default() -> Self {
1639 unsafe { std::mem::zeroed() }
1640 }
1641}
1642#[repr(C)]
1643#[derive(Debug, Copy, Clone)]
1644pub struct FMOD_CODEC_DESCRIPTION {
1645 pub apiversion: c_uint,
1646 pub name: *const c_char,
1647 pub version: c_uint,
1648 pub defaultasstream: c_int,
1649 pub timeunits: FMOD_TIMEUNIT,
1650 pub open: FMOD_CODEC_OPEN_CALLBACK,
1651 pub close: FMOD_CODEC_CLOSE_CALLBACK,
1652 pub read: FMOD_CODEC_READ_CALLBACK,
1653 pub getlength: FMOD_CODEC_GETLENGTH_CALLBACK,
1654 pub setposition: FMOD_CODEC_SETPOSITION_CALLBACK,
1655 pub getposition: FMOD_CODEC_GETPOSITION_CALLBACK,
1656 pub soundcreate: FMOD_CODEC_SOUNDCREATE_CALLBACK,
1657 pub getwaveformat: FMOD_CODEC_GETWAVEFORMAT_CALLBACK,
1658}
1659impl Default for FMOD_CODEC_DESCRIPTION {
1660 fn default() -> Self {
1661 unsafe { std::mem::zeroed() }
1662 }
1663}
1664#[repr(C)]
1665#[derive(Debug, Copy, Clone)]
1666pub struct FMOD_CODEC_WAVEFORMAT {
1667 pub name: *const c_char,
1668 pub format: FMOD_SOUND_FORMAT,
1669 pub channels: c_int,
1670 pub frequency: c_int,
1671 pub lengthbytes: c_uint,
1672 pub lengthpcm: c_uint,
1673 pub pcmblocksize: c_uint,
1674 pub loopstart: c_int,
1675 pub loopend: c_int,
1676 pub mode: FMOD_MODE,
1677 pub channelmask: FMOD_CHANNELMASK,
1678 pub channelorder: FMOD_CHANNELORDER,
1679 pub peakvolume: c_float,
1680}
1681impl Default for FMOD_CODEC_WAVEFORMAT {
1682 fn default() -> Self {
1683 unsafe { std::mem::zeroed() }
1684 }
1685}
1686#[repr(C)]
1687#[derive(Debug, Copy, Clone)]
1688pub struct FMOD_CODEC_STATE_FUNCTIONS {
1689 pub metadata: FMOD_CODEC_METADATA_FUNC,
1690 pub alloc: FMOD_CODEC_ALLOC_FUNC,
1691 pub free: FMOD_CODEC_FREE_FUNC,
1692 pub log: FMOD_CODEC_LOG_FUNC,
1693 pub read: FMOD_CODEC_FILE_READ_FUNC,
1694 pub seek: FMOD_CODEC_FILE_SEEK_FUNC,
1695 pub tell: FMOD_CODEC_FILE_TELL_FUNC,
1696 pub size: FMOD_CODEC_FILE_SIZE_FUNC,
1697}
1698impl Default for FMOD_CODEC_STATE_FUNCTIONS {
1699 fn default() -> Self {
1700 unsafe { std::mem::zeroed() }
1701 }
1702}
1703#[repr(C)]
1704#[derive(Debug, Copy, Clone)]
1705pub struct FMOD_CODEC_STATE {
1706 pub plugindata: *mut c_void,
1707 pub waveformat: *mut FMOD_CODEC_WAVEFORMAT,
1708 pub functions: *mut FMOD_CODEC_STATE_FUNCTIONS,
1709 pub numsubsounds: c_int,
1710}
1711impl Default for FMOD_CODEC_STATE {
1712 fn default() -> Self {
1713 unsafe { std::mem::zeroed() }
1714 }
1715}
1716#[repr(C)]
1717#[derive(Debug, Copy, Clone)]
1718pub struct FMOD_OUTPUT_DESCRIPTION {
1719 pub apiversion: c_uint,
1720 pub name: *const c_char,
1721 pub version: c_uint,
1722 pub method: FMOD_OUTPUT_METHOD,
1723 pub getnumdrivers: FMOD_OUTPUT_GETNUMDRIVERS_CALLBACK,
1724 pub getdriverinfo: FMOD_OUTPUT_GETDRIVERINFO_CALLBACK,
1725 pub init: FMOD_OUTPUT_INIT_CALLBACK,
1726 pub start: FMOD_OUTPUT_START_CALLBACK,
1727 pub stop: FMOD_OUTPUT_STOP_CALLBACK,
1728 pub close: FMOD_OUTPUT_CLOSE_CALLBACK,
1729 pub update: FMOD_OUTPUT_UPDATE_CALLBACK,
1730 pub gethandle: FMOD_OUTPUT_GETHANDLE_CALLBACK,
1731 pub mixer: FMOD_OUTPUT_MIXER_CALLBACK,
1732 pub object3dgetinfo: FMOD_OUTPUT_OBJECT3DGETINFO_CALLBACK,
1733 pub object3dalloc: FMOD_OUTPUT_OBJECT3DALLOC_CALLBACK,
1734 pub object3dfree: FMOD_OUTPUT_OBJECT3DFREE_CALLBACK,
1735 pub object3dupdate: FMOD_OUTPUT_OBJECT3DUPDATE_CALLBACK,
1736 pub openport: FMOD_OUTPUT_OPENPORT_CALLBACK,
1737 pub closeport: FMOD_OUTPUT_CLOSEPORT_CALLBACK,
1738 pub devicelistchanged: FMOD_OUTPUT_DEVICELISTCHANGED_CALLBACK,
1739}
1740impl Default for FMOD_OUTPUT_DESCRIPTION {
1741 fn default() -> Self {
1742 unsafe { std::mem::zeroed() }
1743 }
1744}
1745#[repr(C)]
1746#[derive(Debug, Copy, Clone)]
1747pub struct FMOD_OUTPUT_STATE {
1748 pub plugindata: *mut c_void,
1749 pub readfrommixer: FMOD_OUTPUT_READFROMMIXER_FUNC,
1750 pub alloc: FMOD_OUTPUT_ALLOC_FUNC,
1751 pub free: FMOD_OUTPUT_FREE_FUNC,
1752 pub log: FMOD_OUTPUT_LOG_FUNC,
1753 pub copyport: FMOD_OUTPUT_COPYPORT_FUNC,
1754 pub requestreset: FMOD_OUTPUT_REQUESTRESET_FUNC,
1755}
1756impl Default for FMOD_OUTPUT_STATE {
1757 fn default() -> Self {
1758 unsafe { std::mem::zeroed() }
1759 }
1760}
1761#[repr(C)]
1762#[derive(Debug, Copy, Clone)]
1763pub struct FMOD_OUTPUT_OBJECT3DINFO {
1764 pub buffer: *mut c_float,
1765 pub bufferlength: c_uint,
1766 pub position: FMOD_VECTOR,
1767 pub gain: c_float,
1768 pub spread: c_float,
1769 pub priority: c_float,
1770}
1771impl Default for FMOD_OUTPUT_OBJECT3DINFO {
1772 fn default() -> Self {
1773 unsafe { std::mem::zeroed() }
1774 }
1775}
1776#[repr(C)]
1777#[derive(Debug, Copy, Clone)]
1778pub struct FMOD_DSP_BUFFER_ARRAY {
1779 pub numbuffers: c_int,
1780 pub buffernumchannels: *mut c_int,
1781 pub bufferchannelmask: *mut FMOD_CHANNELMASK,
1782 pub buffers: *mut *mut c_float,
1783 pub speakermode: FMOD_SPEAKERMODE,
1784}
1785impl Default for FMOD_DSP_BUFFER_ARRAY {
1786 fn default() -> Self {
1787 unsafe { std::mem::zeroed() }
1788 }
1789}
1790#[repr(C)]
1791#[derive(Debug, Copy, Clone)]
1792pub struct FMOD_COMPLEX {
1793 pub real: c_float,
1794 pub imag: c_float,
1795}
1796impl Default for FMOD_COMPLEX {
1797 fn default() -> Self {
1798 unsafe { std::mem::zeroed() }
1799 }
1800}
1801#[repr(C)]
1802#[derive(Debug, Copy, Clone)]
1803pub struct FMOD_DSP_PARAMETER_FLOAT_MAPPING_PIECEWISE_LINEAR {
1804 pub numpoints: c_int,
1805 pub pointparamvalues: *mut c_float,
1806 pub pointpositions: *mut c_float,
1807}
1808impl Default for FMOD_DSP_PARAMETER_FLOAT_MAPPING_PIECEWISE_LINEAR {
1809 fn default() -> Self {
1810 unsafe { std::mem::zeroed() }
1811 }
1812}
1813#[repr(C)]
1814#[derive(Debug, Copy, Clone)]
1815pub struct FMOD_DSP_PARAMETER_FLOAT_MAPPING {
1816 pub type_: FMOD_DSP_PARAMETER_FLOAT_MAPPING_TYPE,
1817 pub piecewiselinearmapping: FMOD_DSP_PARAMETER_FLOAT_MAPPING_PIECEWISE_LINEAR,
1818}
1819impl Default for FMOD_DSP_PARAMETER_FLOAT_MAPPING {
1820 fn default() -> Self {
1821 unsafe { std::mem::zeroed() }
1822 }
1823}
1824#[repr(C)]
1825#[derive(Debug, Copy, Clone)]
1826pub struct FMOD_DSP_PARAMETER_DESC_FLOAT {
1827 pub min: c_float,
1828 pub max: c_float,
1829 pub defaultval: c_float,
1830 pub mapping: FMOD_DSP_PARAMETER_FLOAT_MAPPING,
1831}
1832impl Default for FMOD_DSP_PARAMETER_DESC_FLOAT {
1833 fn default() -> Self {
1834 unsafe { std::mem::zeroed() }
1835 }
1836}
1837#[repr(C)]
1838#[derive(Debug, Copy, Clone)]
1839pub struct FMOD_DSP_PARAMETER_DESC_INT {
1840 pub min: c_int,
1841 pub max: c_int,
1842 pub defaultval: c_int,
1843 pub goestoinf: FMOD_BOOL,
1844 pub valuenames: *const *const c_char,
1845}
1846impl Default for FMOD_DSP_PARAMETER_DESC_INT {
1847 fn default() -> Self {
1848 unsafe { std::mem::zeroed() }
1849 }
1850}
1851#[repr(C)]
1852#[derive(Debug, Copy, Clone)]
1853pub struct FMOD_DSP_PARAMETER_DESC_BOOL {
1854 pub defaultval: FMOD_BOOL,
1855 pub valuenames: *const *const c_char,
1856}
1857impl Default for FMOD_DSP_PARAMETER_DESC_BOOL {
1858 fn default() -> Self {
1859 unsafe { std::mem::zeroed() }
1860 }
1861}
1862#[repr(C)]
1863#[derive(Debug, Copy, Clone)]
1864pub struct FMOD_DSP_PARAMETER_DESC_DATA {
1865 pub datatype: c_int,
1866}
1867impl Default for FMOD_DSP_PARAMETER_DESC_DATA {
1868 fn default() -> Self {
1869 unsafe { std::mem::zeroed() }
1870 }
1871}
1872#[repr(C)]
1873#[derive(Copy, Clone)]
1874pub struct FMOD_DSP_PARAMETER_DESC {
1875 pub type_: FMOD_DSP_PARAMETER_TYPE,
1876 pub name: [c_char; 16 as usize],
1877 pub label: [c_char; 16 as usize],
1878 pub description: *const c_char,
1879 pub union: FMOD_DSP_PARAMETER_DESC_UNION,
1880}
1881impl Default for FMOD_DSP_PARAMETER_DESC {
1882 fn default() -> Self {
1883 unsafe { std::mem::zeroed() }
1884 }
1885}
1886#[repr(C)]
1887#[derive(Copy, Clone)]
1888pub union FMOD_DSP_PARAMETER_DESC_UNION {
1889 pub floatdesc: FMOD_DSP_PARAMETER_DESC_FLOAT,
1890 pub intdesc: FMOD_DSP_PARAMETER_DESC_INT,
1891 pub booldesc: FMOD_DSP_PARAMETER_DESC_BOOL,
1892 pub datadesc: FMOD_DSP_PARAMETER_DESC_DATA,
1893}
1894#[repr(C)]
1895#[derive(Debug, Copy, Clone)]
1896pub struct FMOD_DSP_PARAMETER_OVERALLGAIN {
1897 pub linear_gain: c_float,
1898 pub linear_gain_additive: c_float,
1899}
1900impl Default for FMOD_DSP_PARAMETER_OVERALLGAIN {
1901 fn default() -> Self {
1902 unsafe { std::mem::zeroed() }
1903 }
1904}
1905#[repr(C)]
1906#[derive(Debug, Copy, Clone)]
1907pub struct FMOD_DSP_PARAMETER_3DATTRIBUTES {
1908 pub relative: FMOD_3D_ATTRIBUTES,
1909 pub absolute: FMOD_3D_ATTRIBUTES,
1910}
1911impl Default for FMOD_DSP_PARAMETER_3DATTRIBUTES {
1912 fn default() -> Self {
1913 unsafe { std::mem::zeroed() }
1914 }
1915}
1916#[repr(C)]
1917#[derive(Debug, Copy, Clone)]
1918pub struct FMOD_DSP_PARAMETER_3DATTRIBUTES_MULTI {
1919 pub numlisteners: c_int,
1920 pub relative: [FMOD_3D_ATTRIBUTES; FMOD_MAX_LISTENERS as usize],
1921 pub weight: [c_float; FMOD_MAX_LISTENERS as usize],
1922 pub absolute: FMOD_3D_ATTRIBUTES,
1923}
1924impl Default for FMOD_DSP_PARAMETER_3DATTRIBUTES_MULTI {
1925 fn default() -> Self {
1926 unsafe { std::mem::zeroed() }
1927 }
1928}
1929#[repr(C)]
1930#[derive(Debug, Copy, Clone)]
1931pub struct FMOD_DSP_PARAMETER_ATTENUATION_RANGE {
1932 pub min: c_float,
1933 pub max: c_float,
1934}
1935impl Default for FMOD_DSP_PARAMETER_ATTENUATION_RANGE {
1936 fn default() -> Self {
1937 unsafe { std::mem::zeroed() }
1938 }
1939}
1940#[repr(C)]
1941#[derive(Debug, Copy, Clone)]
1942pub struct FMOD_DSP_PARAMETER_SIDECHAIN {
1943 pub sidechainenable: FMOD_BOOL,
1944}
1945impl Default for FMOD_DSP_PARAMETER_SIDECHAIN {
1946 fn default() -> Self {
1947 unsafe { std::mem::zeroed() }
1948 }
1949}
1950#[repr(C)]
1951#[derive(Debug, Copy, Clone)]
1952pub struct FMOD_DSP_PARAMETER_FFT {
1953 pub length: c_int,
1954 pub numchannels: c_int,
1955 pub spectrum: [*mut c_float; 32 as usize],
1956}
1957impl Default for FMOD_DSP_PARAMETER_FFT {
1958 fn default() -> Self {
1959 unsafe { std::mem::zeroed() }
1960 }
1961}
1962#[repr(C)]
1963#[derive(Debug, Copy, Clone)]
1964pub struct FMOD_DSP_DESCRIPTION {
1965 pub pluginsdkversion: c_uint,
1966 pub name: [c_char; 32 as usize],
1967 pub version: c_uint,
1968 pub numinputbuffers: c_int,
1969 pub numoutputbuffers: c_int,
1970 pub create: FMOD_DSP_CREATE_CALLBACK,
1971 pub release: FMOD_DSP_RELEASE_CALLBACK,
1972 pub reset: FMOD_DSP_RESET_CALLBACK,
1973 pub read: FMOD_DSP_READ_CALLBACK,
1974 pub process: FMOD_DSP_PROCESS_CALLBACK,
1975 pub setposition: FMOD_DSP_SETPOSITION_CALLBACK,
1976 pub numparameters: c_int,
1977 pub paramdesc: *mut *mut FMOD_DSP_PARAMETER_DESC,
1978 pub setparameterfloat: FMOD_DSP_SETPARAM_FLOAT_CALLBACK,
1979 pub setparameterint: FMOD_DSP_SETPARAM_INT_CALLBACK,
1980 pub setparameterbool: FMOD_DSP_SETPARAM_BOOL_CALLBACK,
1981 pub setparameterdata: FMOD_DSP_SETPARAM_DATA_CALLBACK,
1982 pub getparameterfloat: FMOD_DSP_GETPARAM_FLOAT_CALLBACK,
1983 pub getparameterint: FMOD_DSP_GETPARAM_INT_CALLBACK,
1984 pub getparameterbool: FMOD_DSP_GETPARAM_BOOL_CALLBACK,
1985 pub getparameterdata: FMOD_DSP_GETPARAM_DATA_CALLBACK,
1986 pub shouldiprocess: FMOD_DSP_SHOULDIPROCESS_CALLBACK,
1987 pub userdata: *mut c_void,
1988 pub sys_register: FMOD_DSP_SYSTEM_REGISTER_CALLBACK,
1989 pub sys_deregister: FMOD_DSP_SYSTEM_DEREGISTER_CALLBACK,
1990 pub sys_mix: FMOD_DSP_SYSTEM_MIX_CALLBACK,
1991}
1992impl Default for FMOD_DSP_DESCRIPTION {
1993 fn default() -> Self {
1994 unsafe { std::mem::zeroed() }
1995 }
1996}
1997#[repr(C)]
1998#[derive(Debug, Copy, Clone)]
1999pub struct FMOD_DSP_STATE_DFT_FUNCTIONS {
2000 pub fftreal: FMOD_DSP_DFT_FFTREAL_FUNC,
2001 pub inversefftreal: FMOD_DSP_DFT_IFFTREAL_FUNC,
2002}
2003impl Default for FMOD_DSP_STATE_DFT_FUNCTIONS {
2004 fn default() -> Self {
2005 unsafe { std::mem::zeroed() }
2006 }
2007}
2008#[repr(C)]
2009#[derive(Debug, Copy, Clone)]
2010pub struct FMOD_DSP_STATE_PAN_FUNCTIONS {
2011 pub summonomatrix: FMOD_DSP_PAN_SUMMONOMATRIX_FUNC,
2012 pub sumstereomatrix: FMOD_DSP_PAN_SUMSTEREOMATRIX_FUNC,
2013 pub sumsurroundmatrix: FMOD_DSP_PAN_SUMSURROUNDMATRIX_FUNC,
2014 pub summonotosurroundmatrix: FMOD_DSP_PAN_SUMMONOTOSURROUNDMATRIX_FUNC,
2015 pub sumstereotosurroundmatrix: FMOD_DSP_PAN_SUMSTEREOTOSURROUNDMATRIX_FUNC,
2016 pub getrolloffgain: FMOD_DSP_PAN_GETROLLOFFGAIN_FUNC,
2017}
2018impl Default for FMOD_DSP_STATE_PAN_FUNCTIONS {
2019 fn default() -> Self {
2020 unsafe { std::mem::zeroed() }
2021 }
2022}
2023#[repr(C)]
2024#[derive(Debug, Copy, Clone)]
2025pub struct FMOD_DSP_STATE_FUNCTIONS {
2026 pub alloc: FMOD_DSP_ALLOC_FUNC,
2027 pub realloc: FMOD_DSP_REALLOC_FUNC,
2028 pub free: FMOD_DSP_FREE_FUNC,
2029 pub getsamplerate: FMOD_DSP_GETSAMPLERATE_FUNC,
2030 pub getblocksize: FMOD_DSP_GETBLOCKSIZE_FUNC,
2031 pub dft: *mut FMOD_DSP_STATE_DFT_FUNCTIONS,
2032 pub pan: *mut FMOD_DSP_STATE_PAN_FUNCTIONS,
2033 pub getspeakermode: FMOD_DSP_GETSPEAKERMODE_FUNC,
2034 pub getclock: FMOD_DSP_GETCLOCK_FUNC,
2035 pub getlistenerattributes: FMOD_DSP_GETLISTENERATTRIBUTES_FUNC,
2036 pub log: FMOD_DSP_LOG_FUNC,
2037 pub getuserdata: FMOD_DSP_GETUSERDATA_FUNC,
2038}
2039impl Default for FMOD_DSP_STATE_FUNCTIONS {
2040 fn default() -> Self {
2041 unsafe { std::mem::zeroed() }
2042 }
2043}
2044#[repr(C)]
2045#[derive(Debug, Copy, Clone)]
2046pub struct FMOD_DSP_STATE {
2047 pub instance: *mut c_void,
2048 pub plugindata: *mut c_void,
2049 pub channelmask: FMOD_CHANNELMASK,
2050 pub source_speakermode: FMOD_SPEAKERMODE,
2051 pub sidechaindata: *mut c_float,
2052 pub sidechainchannels: c_int,
2053 pub functions: *mut FMOD_DSP_STATE_FUNCTIONS,
2054 pub systemobject: c_int,
2055}
2056impl Default for FMOD_DSP_STATE {
2057 fn default() -> Self {
2058 unsafe { std::mem::zeroed() }
2059 }
2060}
2061#[repr(C)]
2062#[derive(Debug, Copy, Clone)]
2063pub struct FMOD_DSP_METERING_INFO {
2064 pub numsamples: c_int,
2065 pub peaklevel: [c_float; 32 as usize],
2066 pub rmslevel: [c_float; 32 as usize],
2067 pub numchannels: c_short,
2068}
2069impl Default for FMOD_DSP_METERING_INFO {
2070 fn default() -> Self {
2071 unsafe { std::mem::zeroed() }
2072 }
2073}
2074#[repr(C)]
2075#[derive(Debug, Copy, Clone)]
2076pub struct FMOD_DSP_LOUDNESS_METER_INFO_TYPE {
2077 pub momentaryloudness: c_float,
2078 pub shorttermloudness: c_float,
2079 pub integratedloudness: c_float,
2080 pub loudness10thpercentile: c_float,
2081 pub loudness95thpercentile: c_float,
2082 pub loudnesshistogram: [c_float; FMOD_DSP_LOUDNESS_METER_HISTOGRAM_SAMPLES as usize],
2083 pub maxtruepeak: c_float,
2084 pub maxmomentaryloudness: c_float,
2085}
2086impl Default for FMOD_DSP_LOUDNESS_METER_INFO_TYPE {
2087 fn default() -> Self {
2088 unsafe { std::mem::zeroed() }
2089 }
2090}
2091#[repr(C)]
2092#[derive(Debug, Copy, Clone)]
2093pub struct FMOD_DSP_LOUDNESS_METER_WEIGHTING_TYPE {
2094 pub channelweight: [c_float; 32 as usize],
2095}
2096impl Default for FMOD_DSP_LOUDNESS_METER_WEIGHTING_TYPE {
2097 fn default() -> Self {
2098 unsafe { std::mem::zeroed() }
2099 }
2100}
2101pub const FMOD_PRESET_OFF: FMOD_REVERB_PROPERTIES = FMOD_REVERB_PROPERTIES {
2102 DecayTime: 1000.0,
2103 EarlyDelay: 7.0,
2104 LateDelay: 11.0,
2105 HFReference: 5000.0,
2106 HFDecayRatio: 100.0,
2107 Diffusion: 100.0,
2108 Density: 100.0,
2109 LowShelfFrequency: 250.0,
2110 LowShelfGain: 0.0,
2111 HighCut: 20.0,
2112 EarlyLateMix: 96.0,
2113 WetLevel: -80.0,
2114};
2115pub const FMOD_PRESET_GENERIC: FMOD_REVERB_PROPERTIES = FMOD_REVERB_PROPERTIES {
2116 DecayTime: 1500.0,
2117 EarlyDelay: 7.0,
2118 LateDelay: 11.0,
2119 HFReference: 5000.0,
2120 HFDecayRatio: 83.0,
2121 Diffusion: 100.0,
2122 Density: 100.0,
2123 LowShelfFrequency: 250.0,
2124 LowShelfGain: 0.0,
2125 HighCut: 14500.0,
2126 EarlyLateMix: 96.0,
2127 WetLevel: -8.0,
2128};
2129pub const FMOD_PRESET_PADDEDCELL: FMOD_REVERB_PROPERTIES = FMOD_REVERB_PROPERTIES {
2130 DecayTime: 170.0,
2131 EarlyDelay: 1.0,
2132 LateDelay: 2.0,
2133 HFReference: 5000.0,
2134 HFDecayRatio: 10.0,
2135 Diffusion: 100.0,
2136 Density: 100.0,
2137 LowShelfFrequency: 250.0,
2138 LowShelfGain: 0.0,
2139 HighCut: 160.0,
2140 EarlyLateMix: 84.0,
2141 WetLevel: -7.8,
2142};
2143pub const FMOD_PRESET_ROOM: FMOD_REVERB_PROPERTIES = FMOD_REVERB_PROPERTIES {
2144 DecayTime: 400.0,
2145 EarlyDelay: 2.0,
2146 LateDelay: 3.0,
2147 HFReference: 5000.0,
2148 HFDecayRatio: 83.0,
2149 Diffusion: 100.0,
2150 Density: 100.0,
2151 LowShelfFrequency: 250.0,
2152 LowShelfGain: 0.0,
2153 HighCut: 6050.0,
2154 EarlyLateMix: 88.0,
2155 WetLevel: -9.4,
2156};
2157pub const FMOD_PRESET_BATHROOM: FMOD_REVERB_PROPERTIES = FMOD_REVERB_PROPERTIES {
2158 DecayTime: 1500.0,
2159 EarlyDelay: 7.0,
2160 LateDelay: 11.0,
2161 HFReference: 5000.0,
2162 HFDecayRatio: 54.0,
2163 Diffusion: 100.0,
2164 Density: 60.0,
2165 LowShelfFrequency: 250.0,
2166 LowShelfGain: 0.0,
2167 HighCut: 2900.0,
2168 EarlyLateMix: 83.0,
2169 WetLevel: 0.5,
2170};
2171pub const FMOD_PRESET_LIVINGROOM: FMOD_REVERB_PROPERTIES = FMOD_REVERB_PROPERTIES {
2172 DecayTime: 500.0,
2173 EarlyDelay: 3.0,
2174 LateDelay: 4.0,
2175 HFReference: 5000.0,
2176 HFDecayRatio: 10.0,
2177 Diffusion: 100.0,
2178 Density: 100.0,
2179 LowShelfFrequency: 250.0,
2180 LowShelfGain: 0.0,
2181 HighCut: 160.0,
2182 EarlyLateMix: 58.0,
2183 WetLevel: -19.0,
2184};
2185pub const FMOD_PRESET_STONEROOM: FMOD_REVERB_PROPERTIES = FMOD_REVERB_PROPERTIES {
2186 DecayTime: 2300.0,
2187 EarlyDelay: 12.0,
2188 LateDelay: 17.0,
2189 HFReference: 5000.0,
2190 HFDecayRatio: 64.0,
2191 Diffusion: 100.0,
2192 Density: 100.0,
2193 LowShelfFrequency: 250.0,
2194 LowShelfGain: 0.0,
2195 HighCut: 7800.0,
2196 EarlyLateMix: 71.0,
2197 WetLevel: -8.5,
2198};
2199pub const FMOD_PRESET_AUDITORIUM: FMOD_REVERB_PROPERTIES = FMOD_REVERB_PROPERTIES {
2200 DecayTime: 4300.0,
2201 EarlyDelay: 20.0,
2202 LateDelay: 30.0,
2203 HFReference: 5000.0,
2204 HFDecayRatio: 59.0,
2205 Diffusion: 100.0,
2206 Density: 100.0,
2207 LowShelfFrequency: 250.0,
2208 LowShelfGain: 0.0,
2209 HighCut: 5850.0,
2210 EarlyLateMix: 64.0,
2211 WetLevel: -11.7,
2212};
2213pub const FMOD_PRESET_CONCERTHALL: FMOD_REVERB_PROPERTIES = FMOD_REVERB_PROPERTIES {
2214 DecayTime: 3900.0,
2215 EarlyDelay: 20.0,
2216 LateDelay: 29.0,
2217 HFReference: 5000.0,
2218 HFDecayRatio: 70.0,
2219 Diffusion: 100.0,
2220 Density: 100.0,
2221 LowShelfFrequency: 250.0,
2222 LowShelfGain: 0.0,
2223 HighCut: 5650.0,
2224 EarlyLateMix: 80.0,
2225 WetLevel: -9.8,
2226};
2227pub const FMOD_PRESET_CAVE: FMOD_REVERB_PROPERTIES = FMOD_REVERB_PROPERTIES {
2228 DecayTime: 2900.0,
2229 EarlyDelay: 15.0,
2230 LateDelay: 22.0,
2231 HFReference: 5000.0,
2232 HFDecayRatio: 100.0,
2233 Diffusion: 100.0,
2234 Density: 100.0,
2235 LowShelfFrequency: 250.0,
2236 LowShelfGain: 0.0,
2237 HighCut: 20000.0,
2238 EarlyLateMix: 59.0,
2239 WetLevel: -11.3,
2240};
2241pub const FMOD_PRESET_ARENA: FMOD_REVERB_PROPERTIES = FMOD_REVERB_PROPERTIES {
2242 DecayTime: 7200.0,
2243 EarlyDelay: 20.0,
2244 LateDelay: 30.0,
2245 HFReference: 5000.0,
2246 HFDecayRatio: 33.0,
2247 Diffusion: 100.0,
2248 Density: 100.0,
2249 LowShelfFrequency: 250.0,
2250 LowShelfGain: 0.0,
2251 HighCut: 4500.0,
2252 EarlyLateMix: 80.0,
2253 WetLevel: -9.6,
2254};
2255pub const FMOD_PRESET_HANGAR: FMOD_REVERB_PROPERTIES = FMOD_REVERB_PROPERTIES {
2256 DecayTime: 10000.0,
2257 EarlyDelay: 20.0,
2258 LateDelay: 30.0,
2259 HFReference: 5000.0,
2260 HFDecayRatio: 23.0,
2261 Diffusion: 100.0,
2262 Density: 100.0,
2263 LowShelfFrequency: 250.0,
2264 LowShelfGain: 0.0,
2265 HighCut: 3400.0,
2266 EarlyLateMix: 72.0,
2267 WetLevel: -7.4,
2268};
2269pub const FMOD_PRESET_CARPETTEDHALLWAY: FMOD_REVERB_PROPERTIES = FMOD_REVERB_PROPERTIES {
2270 DecayTime: 300.0,
2271 EarlyDelay: 2.0,
2272 LateDelay: 30.0,
2273 HFReference: 5000.0,
2274 HFDecayRatio: 10.0,
2275 Diffusion: 100.0,
2276 Density: 100.0,
2277 LowShelfFrequency: 250.0,
2278 LowShelfGain: 0.0,
2279 HighCut: 500.0,
2280 EarlyLateMix: 56.0,
2281 WetLevel: -24.0,
2282};
2283pub const FMOD_PRESET_HALLWAY: FMOD_REVERB_PROPERTIES = FMOD_REVERB_PROPERTIES {
2284 DecayTime: 1500.0,
2285 EarlyDelay: 7.0,
2286 LateDelay: 11.0,
2287 HFReference: 5000.0,
2288 HFDecayRatio: 59.0,
2289 Diffusion: 100.0,
2290 Density: 100.0,
2291 LowShelfFrequency: 250.0,
2292 LowShelfGain: 0.0,
2293 HighCut: 7800.0,
2294 EarlyLateMix: 87.0,
2295 WetLevel: -5.5,
2296};
2297pub const FMOD_PRESET_STONECORRIDOR: FMOD_REVERB_PROPERTIES = FMOD_REVERB_PROPERTIES {
2298 DecayTime: 270.0,
2299 EarlyDelay: 13.0,
2300 LateDelay: 20.0,
2301 HFReference: 5000.0,
2302 HFDecayRatio: 79.0,
2303 Diffusion: 100.0,
2304 Density: 100.0,
2305 LowShelfFrequency: 250.0,
2306 LowShelfGain: 0.0,
2307 HighCut: 9000.0,
2308 EarlyLateMix: 86.0,
2309 WetLevel: -6.0,
2310};
2311pub const FMOD_PRESET_ALLEY: FMOD_REVERB_PROPERTIES = FMOD_REVERB_PROPERTIES {
2312 DecayTime: 1500.0,
2313 EarlyDelay: 7.0,
2314 LateDelay: 11.0,
2315 HFReference: 5000.0,
2316 HFDecayRatio: 86.0,
2317 Diffusion: 100.0,
2318 Density: 100.0,
2319 LowShelfFrequency: 250.0,
2320 LowShelfGain: 0.0,
2321 HighCut: 8300.0,
2322 EarlyLateMix: 80.0,
2323 WetLevel: -9.8,
2324};
2325pub const FMOD_PRESET_FOREST: FMOD_REVERB_PROPERTIES = FMOD_REVERB_PROPERTIES {
2326 DecayTime: 1500.0,
2327 EarlyDelay: 162.0,
2328 LateDelay: 88.0,
2329 HFReference: 5000.0,
2330 HFDecayRatio: 54.0,
2331 Diffusion: 79.0,
2332 Density: 100.0,
2333 LowShelfFrequency: 250.0,
2334 LowShelfGain: 0.0,
2335 HighCut: 760.0,
2336 EarlyLateMix: 94.0,
2337 WetLevel: -12.3,
2338};
2339pub const FMOD_PRESET_CITY: FMOD_REVERB_PROPERTIES = FMOD_REVERB_PROPERTIES {
2340 DecayTime: 1500.0,
2341 EarlyDelay: 7.0,
2342 LateDelay: 11.0,
2343 HFReference: 5000.0,
2344 HFDecayRatio: 67.0,
2345 Diffusion: 50.0,
2346 Density: 100.0,
2347 LowShelfFrequency: 250.0,
2348 LowShelfGain: 0.0,
2349 HighCut: 4050.0,
2350 EarlyLateMix: 66.0,
2351 WetLevel: -26.0,
2352};
2353pub const FMOD_PRESET_MOUNTAINS: FMOD_REVERB_PROPERTIES = FMOD_REVERB_PROPERTIES {
2354 DecayTime: 1500.0,
2355 EarlyDelay: 300.0,
2356 LateDelay: 100.0,
2357 HFReference: 5000.0,
2358 HFDecayRatio: 21.0,
2359 Diffusion: 27.0,
2360 Density: 100.0,
2361 LowShelfFrequency: 250.0,
2362 LowShelfGain: 0.0,
2363 HighCut: 1220.0,
2364 EarlyLateMix: 82.0,
2365 WetLevel: -24.0,
2366};
2367pub const FMOD_PRESET_QUARRY: FMOD_REVERB_PROPERTIES = FMOD_REVERB_PROPERTIES {
2368 DecayTime: 1500.0,
2369 EarlyDelay: 61.0,
2370 LateDelay: 25.0,
2371 HFReference: 5000.0,
2372 HFDecayRatio: 83.0,
2373 Diffusion: 100.0,
2374 Density: 100.0,
2375 LowShelfFrequency: 250.0,
2376 LowShelfGain: 0.0,
2377 HighCut: 3400.0,
2378 EarlyLateMix: 100.0,
2379 WetLevel: -5.0,
2380};
2381pub const FMOD_PRESET_PLAIN: FMOD_REVERB_PROPERTIES = FMOD_REVERB_PROPERTIES {
2382 DecayTime: 1500.0,
2383 EarlyDelay: 179.0,
2384 LateDelay: 100.0,
2385 HFReference: 5000.0,
2386 HFDecayRatio: 50.0,
2387 Diffusion: 21.0,
2388 Density: 100.0,
2389 LowShelfFrequency: 250.0,
2390 LowShelfGain: 0.0,
2391 HighCut: 1670.0,
2392 EarlyLateMix: 65.0,
2393 WetLevel: -28.0,
2394};
2395pub const FMOD_PRESET_PARKINGLOT: FMOD_REVERB_PROPERTIES = FMOD_REVERB_PROPERTIES {
2396 DecayTime: 1700.0,
2397 EarlyDelay: 8.0,
2398 LateDelay: 12.0,
2399 HFReference: 5000.0,
2400 HFDecayRatio: 100.0,
2401 Diffusion: 100.0,
2402 Density: 100.0,
2403 LowShelfFrequency: 250.0,
2404 LowShelfGain: 0.0,
2405 HighCut: 20000.0,
2406 EarlyLateMix: 56.0,
2407 WetLevel: -19.5,
2408};
2409pub const FMOD_PRESET_SEWERPIPE: FMOD_REVERB_PROPERTIES = FMOD_REVERB_PROPERTIES {
2410 DecayTime: 2800.0,
2411 EarlyDelay: 14.0,
2412 LateDelay: 21.0,
2413 HFReference: 5000.0,
2414 HFDecayRatio: 14.0,
2415 Diffusion: 80.0,
2416 Density: 60.0,
2417 LowShelfFrequency: 250.0,
2418 LowShelfGain: 0.0,
2419 HighCut: 3400.0,
2420 EarlyLateMix: 66.0,
2421 WetLevel: 1.2,
2422};
2423pub const FMOD_PRESET_UNDERWATER: FMOD_REVERB_PROPERTIES = FMOD_REVERB_PROPERTIES {
2424 DecayTime: 1500.0,
2425 EarlyDelay: 7.0,
2426 LateDelay: 11.0,
2427 HFReference: 5000.0,
2428 HFDecayRatio: 10.0,
2429 Diffusion: 100.0,
2430 Density: 100.0,
2431 LowShelfFrequency: 250.0,
2432 LowShelfGain: 0.0,
2433 HighCut: 500.0,
2434 EarlyLateMix: 92.0,
2435 WetLevel: 7.0,
2436};
2437pub type FMOD_STUDIO_SYSTEM_CALLBACK = Option<
2438 unsafe extern "C" fn(
2439 system: *mut FMOD_STUDIO_SYSTEM,
2440 type_: FMOD_STUDIO_SYSTEM_CALLBACK_TYPE,
2441 commanddata: *mut c_void,
2442 userdata: *mut c_void,
2443 ) -> FMOD_RESULT,
2444>;
2445pub type FMOD_STUDIO_EVENT_CALLBACK = Option<
2446 unsafe extern "C" fn(
2447 type_: FMOD_STUDIO_EVENT_CALLBACK_TYPE,
2448 event: *mut FMOD_STUDIO_EVENTINSTANCE,
2449 parameters: *mut c_void,
2450 ) -> FMOD_RESULT,
2451>;
2452pub type FMOD_STUDIO_COMMANDREPLAY_FRAME_CALLBACK = Option<
2453 unsafe extern "C" fn(
2454 replay: *mut FMOD_STUDIO_COMMANDREPLAY,
2455 commandindex: c_int,
2456 currenttime: c_float,
2457 userdata: *mut c_void,
2458 ) -> FMOD_RESULT,
2459>;
2460pub type FMOD_STUDIO_COMMANDREPLAY_LOAD_BANK_CALLBACK = Option<
2461 unsafe extern "C" fn(
2462 replay: *mut FMOD_STUDIO_COMMANDREPLAY,
2463 commandindex: c_int,
2464 bankguid: *const FMOD_GUID,
2465 bankfilename: *const c_char,
2466 flags: FMOD_STUDIO_LOAD_BANK_FLAGS,
2467 bank: *mut *mut FMOD_STUDIO_BANK,
2468 userdata: *mut c_void,
2469 ) -> FMOD_RESULT,
2470>;
2471pub type FMOD_STUDIO_COMMANDREPLAY_CREATE_INSTANCE_CALLBACK = Option<
2472 unsafe extern "C" fn(
2473 replay: *mut FMOD_STUDIO_COMMANDREPLAY,
2474 commandindex: c_int,
2475 eventdescription: *mut FMOD_STUDIO_EVENTDESCRIPTION,
2476 instance: *mut *mut FMOD_STUDIO_EVENTINSTANCE,
2477 userdata: *mut c_void,
2478 ) -> FMOD_RESULT,
2479>;
2480pub type FMOD_DEBUG_CALLBACK = Option<
2481 unsafe extern "C" fn(
2482 flags: FMOD_DEBUG_FLAGS,
2483 file: *const c_char,
2484 line: c_int,
2485 func: *const c_char,
2486 message: *const c_char,
2487 ) -> FMOD_RESULT,
2488>;
2489pub type FMOD_SYSTEM_CALLBACK = Option<
2490 unsafe extern "C" fn(
2491 system: *mut FMOD_SYSTEM,
2492 type_: FMOD_SYSTEM_CALLBACK_TYPE,
2493 commanddata1: *mut c_void,
2494 commanddata2: *mut c_void,
2495 userdata: *mut c_void,
2496 ) -> FMOD_RESULT,
2497>;
2498pub type FMOD_CHANNELCONTROL_CALLBACK = Option<
2499 unsafe extern "C" fn(
2500 channelcontrol: *mut FMOD_CHANNELCONTROL,
2501 controltype: FMOD_CHANNELCONTROL_TYPE,
2502 callbacktype: FMOD_CHANNELCONTROL_CALLBACK_TYPE,
2503 commanddata1: *mut c_void,
2504 commanddata2: *mut c_void,
2505 ) -> FMOD_RESULT,
2506>;
2507pub type FMOD_DSP_CALLBACK = Option<
2508 unsafe extern "C" fn(
2509 dsp: *mut FMOD_DSP,
2510 type_: FMOD_DSP_CALLBACK_TYPE,
2511 data: *mut c_void,
2512 ) -> FMOD_RESULT,
2513>;
2514pub type FMOD_SOUND_NONBLOCK_CALLBACK =
2515 Option<unsafe extern "C" fn(sound: *mut FMOD_SOUND, result: FMOD_RESULT) -> FMOD_RESULT>;
2516pub type FMOD_SOUND_PCMREAD_CALLBACK = Option<
2517 unsafe extern "C" fn(sound: *mut FMOD_SOUND, data: *mut c_void, datalen: c_uint) -> FMOD_RESULT,
2518>;
2519pub type FMOD_SOUND_PCMSETPOS_CALLBACK = Option<
2520 unsafe extern "C" fn(
2521 sound: *mut FMOD_SOUND,
2522 subsound: c_int,
2523 position: c_uint,
2524 postype: FMOD_TIMEUNIT,
2525 ) -> FMOD_RESULT,
2526>;
2527pub type FMOD_FILE_OPEN_CALLBACK = Option<
2528 unsafe extern "C" fn(
2529 name: *const c_char,
2530 filesize: *mut c_uint,
2531 handle: *mut *mut c_void,
2532 userdata: *mut c_void,
2533 ) -> FMOD_RESULT,
2534>;
2535pub type FMOD_FILE_CLOSE_CALLBACK =
2536 Option<unsafe extern "C" fn(handle: *mut c_void, userdata: *mut c_void) -> FMOD_RESULT>;
2537pub type FMOD_FILE_READ_CALLBACK = Option<
2538 unsafe extern "C" fn(
2539 handle: *mut c_void,
2540 buffer: *mut c_void,
2541 sizebytes: c_uint,
2542 bytesread: *mut c_uint,
2543 userdata: *mut c_void,
2544 ) -> FMOD_RESULT,
2545>;
2546pub type FMOD_FILE_SEEK_CALLBACK = Option<
2547 unsafe extern "C" fn(handle: *mut c_void, pos: c_uint, userdata: *mut c_void) -> FMOD_RESULT,
2548>;
2549pub type FMOD_FILE_ASYNCREAD_CALLBACK = Option<
2550 unsafe extern "C" fn(info: *mut FMOD_ASYNCREADINFO, userdata: *mut c_void) -> FMOD_RESULT,
2551>;
2552pub type FMOD_FILE_ASYNCCANCEL_CALLBACK = Option<
2553 unsafe extern "C" fn(info: *mut FMOD_ASYNCREADINFO, userdata: *mut c_void) -> FMOD_RESULT,
2554>;
2555pub type FMOD_FILE_ASYNCDONE_FUNC =
2556 Option<unsafe extern "C" fn(info: *mut FMOD_ASYNCREADINFO, result: FMOD_RESULT)>;
2557pub type FMOD_MEMORY_ALLOC_CALLBACK = Option<
2558 unsafe extern "C" fn(
2559 size: c_uint,
2560 type_: FMOD_MEMORY_TYPE,
2561 sourcestr: *const c_char,
2562 ) -> *mut c_void,
2563>;
2564pub type FMOD_MEMORY_REALLOC_CALLBACK = Option<
2565 unsafe extern "C" fn(
2566 ptr: *mut c_void,
2567 size: c_uint,
2568 type_: FMOD_MEMORY_TYPE,
2569 sourcestr: *const c_char,
2570 ) -> *mut c_void,
2571>;
2572pub type FMOD_MEMORY_FREE_CALLBACK = Option<
2573 unsafe extern "C" fn(ptr: *mut c_void, type_: FMOD_MEMORY_TYPE, sourcestr: *const c_char),
2574>;
2575pub type FMOD_3D_ROLLOFF_CALLBACK = Option<
2576 unsafe extern "C" fn(channelcontrol: *mut FMOD_CHANNELCONTROL, distance: c_float) -> c_float,
2577>;
2578pub type FMOD_CODEC_OPEN_CALLBACK = Option<
2579 unsafe extern "C" fn(
2580 codec_state: *mut FMOD_CODEC_STATE,
2581 usermode: FMOD_MODE,
2582 userexinfo: *mut FMOD_CREATESOUNDEXINFO,
2583 ) -> FMOD_RESULT,
2584>;
2585pub type FMOD_CODEC_CLOSE_CALLBACK =
2586 Option<unsafe extern "C" fn(codec_state: *mut FMOD_CODEC_STATE) -> FMOD_RESULT>;
2587pub type FMOD_CODEC_READ_CALLBACK = Option<
2588 unsafe extern "C" fn(
2589 codec_state: *mut FMOD_CODEC_STATE,
2590 buffer: *mut c_void,
2591 samples_in: c_uint,
2592 samples_out: *mut c_uint,
2593 ) -> FMOD_RESULT,
2594>;
2595pub type FMOD_CODEC_GETLENGTH_CALLBACK = Option<
2596 unsafe extern "C" fn(
2597 codec_state: *mut FMOD_CODEC_STATE,
2598 length: *mut c_uint,
2599 lengthtype: FMOD_TIMEUNIT,
2600 ) -> FMOD_RESULT,
2601>;
2602pub type FMOD_CODEC_SETPOSITION_CALLBACK = Option<
2603 unsafe extern "C" fn(
2604 codec_state: *mut FMOD_CODEC_STATE,
2605 subsound: c_int,
2606 position: c_uint,
2607 postype: FMOD_TIMEUNIT,
2608 ) -> FMOD_RESULT,
2609>;
2610pub type FMOD_CODEC_GETPOSITION_CALLBACK = Option<
2611 unsafe extern "C" fn(
2612 codec_state: *mut FMOD_CODEC_STATE,
2613 position: *mut c_uint,
2614 postype: FMOD_TIMEUNIT,
2615 ) -> FMOD_RESULT,
2616>;
2617pub type FMOD_CODEC_SOUNDCREATE_CALLBACK = Option<
2618 unsafe extern "C" fn(
2619 codec_state: *mut FMOD_CODEC_STATE,
2620 subsound: c_int,
2621 sound: *mut FMOD_SOUND,
2622 ) -> FMOD_RESULT,
2623>;
2624pub type FMOD_CODEC_GETWAVEFORMAT_CALLBACK = Option<
2625 unsafe extern "C" fn(
2626 codec_state: *mut FMOD_CODEC_STATE,
2627 index: c_int,
2628 waveformat: *mut FMOD_CODEC_WAVEFORMAT,
2629 ) -> FMOD_RESULT,
2630>;
2631pub type FMOD_CODEC_METADATA_FUNC = Option<
2632 unsafe extern "C" fn(
2633 codec_state: *mut FMOD_CODEC_STATE,
2634 tagtype: FMOD_TAGTYPE,
2635 name: *mut c_char,
2636 data: *mut c_void,
2637 datalen: c_uint,
2638 datatype: FMOD_TAGDATATYPE,
2639 unique: c_int,
2640 ) -> FMOD_RESULT,
2641>;
2642pub type FMOD_CODEC_ALLOC_FUNC = Option<
2643 unsafe extern "C" fn(
2644 size: c_uint,
2645 align: c_uint,
2646 file: *const c_char,
2647 line: c_int,
2648 ) -> *mut c_void,
2649>;
2650pub type FMOD_CODEC_FREE_FUNC =
2651 Option<unsafe extern "C" fn(ptr: *mut c_void, file: *const c_char, line: c_int)>;
2652pub type FMOD_CODEC_LOG_FUNC = Option<
2653 unsafe extern "C" fn(
2654 level: FMOD_DEBUG_FLAGS,
2655 file: *const c_char,
2656 line: c_int,
2657 function: *const c_char,
2658 string: *const c_char,
2659 ...
2660 ),
2661>;
2662pub type FMOD_CODEC_FILE_READ_FUNC = Option<
2663 unsafe extern "C" fn(
2664 codec_state: *mut FMOD_CODEC_STATE,
2665 buffer: *mut c_void,
2666 sizebytes: c_uint,
2667 bytesread: *mut c_uint,
2668 ) -> FMOD_RESULT,
2669>;
2670pub type FMOD_CODEC_FILE_SEEK_FUNC = Option<
2671 unsafe extern "C" fn(
2672 codec_state: *mut FMOD_CODEC_STATE,
2673 pos: c_uint,
2674 method: FMOD_CODEC_SEEK_METHOD,
2675 ) -> FMOD_RESULT,
2676>;
2677pub type FMOD_CODEC_FILE_TELL_FUNC = Option<
2678 unsafe extern "C" fn(codec_state: *mut FMOD_CODEC_STATE, pos: *mut c_uint) -> FMOD_RESULT,
2679>;
2680pub type FMOD_CODEC_FILE_SIZE_FUNC = Option<
2681 unsafe extern "C" fn(codec_state: *mut FMOD_CODEC_STATE, size: *mut c_uint) -> FMOD_RESULT,
2682>;
2683pub type FMOD_OUTPUT_GETNUMDRIVERS_CALLBACK = Option<
2684 unsafe extern "C" fn(
2685 output_state: *mut FMOD_OUTPUT_STATE,
2686 numdrivers: *mut c_int,
2687 ) -> FMOD_RESULT,
2688>;
2689pub type FMOD_OUTPUT_GETDRIVERINFO_CALLBACK = Option<
2690 unsafe extern "C" fn(
2691 output_state: *mut FMOD_OUTPUT_STATE,
2692 id: c_int,
2693 name: *mut c_char,
2694 namelen: c_int,
2695 guid: *mut FMOD_GUID,
2696 systemrate: *mut c_int,
2697 speakermode: *mut FMOD_SPEAKERMODE,
2698 speakermodechannels: *mut c_int,
2699 ) -> FMOD_RESULT,
2700>;
2701pub type FMOD_OUTPUT_INIT_CALLBACK = Option<
2702 unsafe extern "C" fn(
2703 output_state: *mut FMOD_OUTPUT_STATE,
2704 selecteddriver: c_int,
2705 flags: FMOD_INITFLAGS,
2706 outputrate: *mut c_int,
2707 speakermode: *mut FMOD_SPEAKERMODE,
2708 speakermodechannels: *mut c_int,
2709 outputformat: *mut FMOD_SOUND_FORMAT,
2710 dspbufferlength: c_int,
2711 dspnumbuffers: *mut c_int,
2712 dspnumadditionalbuffers: *mut c_int,
2713 extradriverdata: *mut c_void,
2714 ) -> FMOD_RESULT,
2715>;
2716pub type FMOD_OUTPUT_START_CALLBACK =
2717 Option<unsafe extern "C" fn(output_state: *mut FMOD_OUTPUT_STATE) -> FMOD_RESULT>;
2718pub type FMOD_OUTPUT_STOP_CALLBACK =
2719 Option<unsafe extern "C" fn(output_state: *mut FMOD_OUTPUT_STATE) -> FMOD_RESULT>;
2720pub type FMOD_OUTPUT_CLOSE_CALLBACK =
2721 Option<unsafe extern "C" fn(output_state: *mut FMOD_OUTPUT_STATE) -> FMOD_RESULT>;
2722pub type FMOD_OUTPUT_UPDATE_CALLBACK =
2723 Option<unsafe extern "C" fn(output_state: *mut FMOD_OUTPUT_STATE) -> FMOD_RESULT>;
2724pub type FMOD_OUTPUT_GETHANDLE_CALLBACK = Option<
2725 unsafe extern "C" fn(
2726 output_state: *mut FMOD_OUTPUT_STATE,
2727 handle: *mut *mut c_void,
2728 ) -> FMOD_RESULT,
2729>;
2730pub type FMOD_OUTPUT_MIXER_CALLBACK =
2731 Option<unsafe extern "C" fn(output_state: *mut FMOD_OUTPUT_STATE) -> FMOD_RESULT>;
2732pub type FMOD_OUTPUT_OBJECT3DGETINFO_CALLBACK = Option<
2733 unsafe extern "C" fn(
2734 output_state: *mut FMOD_OUTPUT_STATE,
2735 maxhardwareobjects: *mut c_int,
2736 ) -> FMOD_RESULT,
2737>;
2738pub type FMOD_OUTPUT_OBJECT3DALLOC_CALLBACK = Option<
2739 unsafe extern "C" fn(
2740 output_state: *mut FMOD_OUTPUT_STATE,
2741 object3d: *mut *mut c_void,
2742 ) -> FMOD_RESULT,
2743>;
2744pub type FMOD_OUTPUT_OBJECT3DFREE_CALLBACK = Option<
2745 unsafe extern "C" fn(
2746 output_state: *mut FMOD_OUTPUT_STATE,
2747 object3d: *mut c_void,
2748 ) -> FMOD_RESULT,
2749>;
2750pub type FMOD_OUTPUT_OBJECT3DUPDATE_CALLBACK = Option<
2751 unsafe extern "C" fn(
2752 output_state: *mut FMOD_OUTPUT_STATE,
2753 object3d: *mut c_void,
2754 info: *const FMOD_OUTPUT_OBJECT3DINFO,
2755 ) -> FMOD_RESULT,
2756>;
2757pub type FMOD_OUTPUT_OPENPORT_CALLBACK = Option<
2758 unsafe extern "C" fn(
2759 output_state: *mut FMOD_OUTPUT_STATE,
2760 portType: FMOD_PORT_TYPE,
2761 portIndex: FMOD_PORT_INDEX,
2762 portId: *mut c_int,
2763 portRate: *mut c_int,
2764 portChannels: *mut c_int,
2765 portFormat: *mut FMOD_SOUND_FORMAT,
2766 ) -> FMOD_RESULT,
2767>;
2768pub type FMOD_OUTPUT_CLOSEPORT_CALLBACK = Option<
2769 unsafe extern "C" fn(output_state: *mut FMOD_OUTPUT_STATE, portId: c_int) -> FMOD_RESULT,
2770>;
2771pub type FMOD_OUTPUT_DEVICELISTCHANGED_CALLBACK =
2772 Option<unsafe extern "C" fn(output_state: *mut FMOD_OUTPUT_STATE) -> FMOD_RESULT>;
2773pub type FMOD_OUTPUT_READFROMMIXER_FUNC = Option<
2774 unsafe extern "C" fn(
2775 output_state: *mut FMOD_OUTPUT_STATE,
2776 buffer: *mut c_void,
2777 length: c_uint,
2778 ) -> FMOD_RESULT,
2779>;
2780pub type FMOD_OUTPUT_COPYPORT_FUNC = Option<
2781 unsafe extern "C" fn(
2782 output_state: *mut FMOD_OUTPUT_STATE,
2783 portId: c_int,
2784 buffer: *mut c_void,
2785 length: c_uint,
2786 ) -> FMOD_RESULT,
2787>;
2788pub type FMOD_OUTPUT_REQUESTRESET_FUNC =
2789 Option<unsafe extern "C" fn(output_state: *mut FMOD_OUTPUT_STATE) -> FMOD_RESULT>;
2790pub type FMOD_OUTPUT_ALLOC_FUNC = Option<
2791 unsafe extern "C" fn(
2792 size: c_uint,
2793 align: c_uint,
2794 file: *const c_char,
2795 line: c_int,
2796 ) -> *mut c_void,
2797>;
2798pub type FMOD_OUTPUT_FREE_FUNC =
2799 Option<unsafe extern "C" fn(ptr: *mut c_void, file: *const c_char, line: c_int)>;
2800pub type FMOD_OUTPUT_LOG_FUNC = Option<
2801 unsafe extern "C" fn(
2802 level: FMOD_DEBUG_FLAGS,
2803 file: *const c_char,
2804 line: c_int,
2805 function: *const c_char,
2806 string: *const c_char,
2807 ...
2808 ),
2809>;
2810pub type FMOD_DSP_CREATE_CALLBACK =
2811 Option<unsafe extern "C" fn(dsp_state: *mut FMOD_DSP_STATE) -> FMOD_RESULT>;
2812pub type FMOD_DSP_RELEASE_CALLBACK =
2813 Option<unsafe extern "C" fn(dsp_state: *mut FMOD_DSP_STATE) -> FMOD_RESULT>;
2814pub type FMOD_DSP_RESET_CALLBACK =
2815 Option<unsafe extern "C" fn(dsp_state: *mut FMOD_DSP_STATE) -> FMOD_RESULT>;
2816pub type FMOD_DSP_READ_CALLBACK = Option<
2817 unsafe extern "C" fn(
2818 dsp_state: *mut FMOD_DSP_STATE,
2819 inbuffer: *mut c_float,
2820 outbuffer: *mut c_float,
2821 length: c_uint,
2822 inchannels: c_int,
2823 outchannels: *mut c_int,
2824 ) -> FMOD_RESULT,
2825>;
2826pub type FMOD_DSP_PROCESS_CALLBACK = Option<
2827 unsafe extern "C" fn(
2828 dsp_state: *mut FMOD_DSP_STATE,
2829 length: c_uint,
2830 inbufferarray: *const FMOD_DSP_BUFFER_ARRAY,
2831 outbufferarray: *mut FMOD_DSP_BUFFER_ARRAY,
2832 inputsidle: FMOD_BOOL,
2833 op: FMOD_DSP_PROCESS_OPERATION,
2834 ) -> FMOD_RESULT,
2835>;
2836pub type FMOD_DSP_SETPOSITION_CALLBACK =
2837 Option<unsafe extern "C" fn(dsp_state: *mut FMOD_DSP_STATE, pos: c_uint) -> FMOD_RESULT>;
2838pub type FMOD_DSP_SHOULDIPROCESS_CALLBACK = Option<
2839 unsafe extern "C" fn(
2840 dsp_state: *mut FMOD_DSP_STATE,
2841 inputsidle: FMOD_BOOL,
2842 length: c_uint,
2843 inmask: FMOD_CHANNELMASK,
2844 inchannels: c_int,
2845 speakermode: FMOD_SPEAKERMODE,
2846 ) -> FMOD_RESULT,
2847>;
2848pub type FMOD_DSP_SETPARAM_FLOAT_CALLBACK = Option<
2849 unsafe extern "C" fn(
2850 dsp_state: *mut FMOD_DSP_STATE,
2851 index: c_int,
2852 value: c_float,
2853 ) -> FMOD_RESULT,
2854>;
2855pub type FMOD_DSP_SETPARAM_INT_CALLBACK = Option<
2856 unsafe extern "C" fn(dsp_state: *mut FMOD_DSP_STATE, index: c_int, value: c_int) -> FMOD_RESULT,
2857>;
2858pub type FMOD_DSP_SETPARAM_BOOL_CALLBACK = Option<
2859 unsafe extern "C" fn(
2860 dsp_state: *mut FMOD_DSP_STATE,
2861 index: c_int,
2862 value: FMOD_BOOL,
2863 ) -> FMOD_RESULT,
2864>;
2865pub type FMOD_DSP_SETPARAM_DATA_CALLBACK = Option<
2866 unsafe extern "C" fn(
2867 dsp_state: *mut FMOD_DSP_STATE,
2868 index: c_int,
2869 data: *mut c_void,
2870 length: c_uint,
2871 ) -> FMOD_RESULT,
2872>;
2873pub type FMOD_DSP_GETPARAM_FLOAT_CALLBACK = Option<
2874 unsafe extern "C" fn(
2875 dsp_state: *mut FMOD_DSP_STATE,
2876 index: c_int,
2877 value: *mut c_float,
2878 valuestr: *mut c_char,
2879 ) -> FMOD_RESULT,
2880>;
2881pub type FMOD_DSP_GETPARAM_INT_CALLBACK = Option<
2882 unsafe extern "C" fn(
2883 dsp_state: *mut FMOD_DSP_STATE,
2884 index: c_int,
2885 value: *mut c_int,
2886 valuestr: *mut c_char,
2887 ) -> FMOD_RESULT,
2888>;
2889pub type FMOD_DSP_GETPARAM_BOOL_CALLBACK = Option<
2890 unsafe extern "C" fn(
2891 dsp_state: *mut FMOD_DSP_STATE,
2892 index: c_int,
2893 value: *mut FMOD_BOOL,
2894 valuestr: *mut c_char,
2895 ) -> FMOD_RESULT,
2896>;
2897pub type FMOD_DSP_GETPARAM_DATA_CALLBACK = Option<
2898 unsafe extern "C" fn(
2899 dsp_state: *mut FMOD_DSP_STATE,
2900 index: c_int,
2901 data: *mut *mut c_void,
2902 length: *mut c_uint,
2903 valuestr: *mut c_char,
2904 ) -> FMOD_RESULT,
2905>;
2906pub type FMOD_DSP_SYSTEM_REGISTER_CALLBACK =
2907 Option<unsafe extern "C" fn(dsp_state: *mut FMOD_DSP_STATE) -> FMOD_RESULT>;
2908pub type FMOD_DSP_SYSTEM_DEREGISTER_CALLBACK =
2909 Option<unsafe extern "C" fn(dsp_state: *mut FMOD_DSP_STATE) -> FMOD_RESULT>;
2910pub type FMOD_DSP_SYSTEM_MIX_CALLBACK =
2911 Option<unsafe extern "C" fn(dsp_state: *mut FMOD_DSP_STATE, stage: c_int) -> FMOD_RESULT>;
2912pub type FMOD_DSP_ALLOC_FUNC = Option<
2913 unsafe extern "C" fn(
2914 size: c_uint,
2915 type_: FMOD_MEMORY_TYPE,
2916 sourcestr: *const c_char,
2917 ) -> *mut c_void,
2918>;
2919pub type FMOD_DSP_REALLOC_FUNC = Option<
2920 unsafe extern "C" fn(
2921 ptr: *mut c_void,
2922 size: c_uint,
2923 type_: FMOD_MEMORY_TYPE,
2924 sourcestr: *const c_char,
2925 ) -> *mut c_void,
2926>;
2927pub type FMOD_DSP_FREE_FUNC = Option<
2928 unsafe extern "C" fn(ptr: *mut c_void, type_: FMOD_MEMORY_TYPE, sourcestr: *const c_char),
2929>;
2930pub type FMOD_DSP_LOG_FUNC = Option<
2931 unsafe extern "C" fn(
2932 level: FMOD_DEBUG_FLAGS,
2933 file: *const c_char,
2934 line: c_int,
2935 function: *const c_char,
2936 str: *const c_char,
2937 ...
2938 ),
2939>;
2940pub type FMOD_DSP_GETSAMPLERATE_FUNC =
2941 Option<unsafe extern "C" fn(dsp_state: *mut FMOD_DSP_STATE, rate: *mut c_int) -> FMOD_RESULT>;
2942pub type FMOD_DSP_GETBLOCKSIZE_FUNC = Option<
2943 unsafe extern "C" fn(dsp_state: *mut FMOD_DSP_STATE, blocksize: *mut c_uint) -> FMOD_RESULT,
2944>;
2945pub type FMOD_DSP_GETSPEAKERMODE_FUNC = Option<
2946 unsafe extern "C" fn(
2947 dsp_state: *mut FMOD_DSP_STATE,
2948 speakermode_mixer: *mut FMOD_SPEAKERMODE,
2949 speakermode_output: *mut FMOD_SPEAKERMODE,
2950 ) -> FMOD_RESULT,
2951>;
2952pub type FMOD_DSP_GETCLOCK_FUNC = Option<
2953 unsafe extern "C" fn(
2954 dsp_state: *mut FMOD_DSP_STATE,
2955 clock: *mut c_ulonglong,
2956 offset: *mut c_uint,
2957 length: *mut c_uint,
2958 ) -> FMOD_RESULT,
2959>;
2960pub type FMOD_DSP_GETLISTENERATTRIBUTES_FUNC = Option<
2961 unsafe extern "C" fn(
2962 dsp_state: *mut FMOD_DSP_STATE,
2963 numlisteners: *mut c_int,
2964 attributes: *mut FMOD_3D_ATTRIBUTES,
2965 ) -> FMOD_RESULT,
2966>;
2967pub type FMOD_DSP_GETUSERDATA_FUNC = Option<
2968 unsafe extern "C" fn(dsp_state: *mut FMOD_DSP_STATE, userdata: *mut *mut c_void) -> FMOD_RESULT,
2969>;
2970pub type FMOD_DSP_DFT_FFTREAL_FUNC = Option<
2971 unsafe extern "C" fn(
2972 dsp_state: *mut FMOD_DSP_STATE,
2973 size: c_int,
2974 signal: *const c_float,
2975 dft: *mut FMOD_COMPLEX,
2976 window: *const c_float,
2977 signalhop: c_int,
2978 ) -> FMOD_RESULT,
2979>;
2980pub type FMOD_DSP_DFT_IFFTREAL_FUNC = Option<
2981 unsafe extern "C" fn(
2982 dsp_state: *mut FMOD_DSP_STATE,
2983 size: c_int,
2984 dft: *const FMOD_COMPLEX,
2985 signal: *mut c_float,
2986 window: *const c_float,
2987 signalhop: c_int,
2988 ) -> FMOD_RESULT,
2989>;
2990pub type FMOD_DSP_PAN_SUMMONOMATRIX_FUNC = Option<
2991 unsafe extern "C" fn(
2992 dsp_state: *mut FMOD_DSP_STATE,
2993 sourceSpeakerMode: FMOD_SPEAKERMODE,
2994 lowFrequencyGain: c_float,
2995 overallGain: c_float,
2996 matrix: *mut c_float,
2997 ) -> FMOD_RESULT,
2998>;
2999pub type FMOD_DSP_PAN_SUMSTEREOMATRIX_FUNC = Option<
3000 unsafe extern "C" fn(
3001 dsp_state: *mut FMOD_DSP_STATE,
3002 sourceSpeakerMode: FMOD_SPEAKERMODE,
3003 pan: c_float,
3004 lowFrequencyGain: c_float,
3005 overallGain: c_float,
3006 matrixHop: c_int,
3007 matrix: *mut c_float,
3008 ) -> FMOD_RESULT,
3009>;
3010pub type FMOD_DSP_PAN_SUMSURROUNDMATRIX_FUNC = Option<
3011 unsafe extern "C" fn(
3012 dsp_state: *mut FMOD_DSP_STATE,
3013 sourceSpeakerMode: FMOD_SPEAKERMODE,
3014 targetSpeakerMode: FMOD_SPEAKERMODE,
3015 direction: c_float,
3016 extent: c_float,
3017 rotation: c_float,
3018 lowFrequencyGain: c_float,
3019 overallGain: c_float,
3020 matrixHop: c_int,
3021 matrix: *mut c_float,
3022 flags: FMOD_DSP_PAN_SURROUND_FLAGS,
3023 ) -> FMOD_RESULT,
3024>;
3025pub type FMOD_DSP_PAN_SUMMONOTOSURROUNDMATRIX_FUNC = Option<
3026 unsafe extern "C" fn(
3027 dsp_state: *mut FMOD_DSP_STATE,
3028 targetSpeakerMode: FMOD_SPEAKERMODE,
3029 direction: c_float,
3030 extent: c_float,
3031 lowFrequencyGain: c_float,
3032 overallGain: c_float,
3033 matrixHop: c_int,
3034 matrix: *mut c_float,
3035 ) -> FMOD_RESULT,
3036>;
3037pub type FMOD_DSP_PAN_SUMSTEREOTOSURROUNDMATRIX_FUNC = Option<
3038 unsafe extern "C" fn(
3039 dsp_state: *mut FMOD_DSP_STATE,
3040 targetSpeakerMode: FMOD_SPEAKERMODE,
3041 direction: c_float,
3042 extent: c_float,
3043 rotation: c_float,
3044 lowFrequencyGain: c_float,
3045 overallGain: c_float,
3046 matrixHop: c_int,
3047 matrix: *mut c_float,
3048 ) -> FMOD_RESULT,
3049>;
3050pub type FMOD_DSP_PAN_GETROLLOFFGAIN_FUNC = Option<
3051 unsafe extern "C" fn(
3052 dsp_state: *mut FMOD_DSP_STATE,
3053 rolloff: FMOD_DSP_PAN_3D_ROLLOFF_TYPE,
3054 distance: c_float,
3055 mindistance: c_float,
3056 maxdistance: c_float,
3057 gain: *mut c_float,
3058 ) -> FMOD_RESULT,
3059>;
3060extern "C" {
3061 pub fn FMOD_Studio_ParseID(idstring: *const c_char, id: *mut FMOD_GUID) -> FMOD_RESULT;
3062 pub fn FMOD_Studio_System_Create(
3063 system: *mut *mut FMOD_STUDIO_SYSTEM,
3064 headerversion: c_uint,
3065 ) -> FMOD_RESULT;
3066 pub fn FMOD_Studio_System_IsValid(system: *mut FMOD_STUDIO_SYSTEM) -> FMOD_BOOL;
3067 pub fn FMOD_Studio_System_SetAdvancedSettings(
3068 system: *mut FMOD_STUDIO_SYSTEM,
3069 settings: *mut FMOD_STUDIO_ADVANCEDSETTINGS,
3070 ) -> FMOD_RESULT;
3071 pub fn FMOD_Studio_System_GetAdvancedSettings(
3072 system: *mut FMOD_STUDIO_SYSTEM,
3073 settings: *mut FMOD_STUDIO_ADVANCEDSETTINGS,
3074 ) -> FMOD_RESULT;
3075 pub fn FMOD_Studio_System_Initialize(
3076 system: *mut FMOD_STUDIO_SYSTEM,
3077 maxchannels: c_int,
3078 studioflags: FMOD_STUDIO_INITFLAGS,
3079 flags: FMOD_INITFLAGS,
3080 extradriverdata: *mut c_void,
3081 ) -> FMOD_RESULT;
3082 pub fn FMOD_Studio_System_Release(system: *mut FMOD_STUDIO_SYSTEM) -> FMOD_RESULT;
3083 pub fn FMOD_Studio_System_Update(system: *mut FMOD_STUDIO_SYSTEM) -> FMOD_RESULT;
3084 pub fn FMOD_Studio_System_GetCoreSystem(
3085 system: *mut FMOD_STUDIO_SYSTEM,
3086 coresystem: *mut *mut FMOD_SYSTEM,
3087 ) -> FMOD_RESULT;
3088 pub fn FMOD_Studio_System_GetEvent(
3089 system: *mut FMOD_STUDIO_SYSTEM,
3090 pathOrID: *const c_char,
3091 event: *mut *mut FMOD_STUDIO_EVENTDESCRIPTION,
3092 ) -> FMOD_RESULT;
3093 pub fn FMOD_Studio_System_GetBus(
3094 system: *mut FMOD_STUDIO_SYSTEM,
3095 pathOrID: *const c_char,
3096 bus: *mut *mut FMOD_STUDIO_BUS,
3097 ) -> FMOD_RESULT;
3098 pub fn FMOD_Studio_System_GetVCA(
3099 system: *mut FMOD_STUDIO_SYSTEM,
3100 pathOrID: *const c_char,
3101 vca: *mut *mut FMOD_STUDIO_VCA,
3102 ) -> FMOD_RESULT;
3103 pub fn FMOD_Studio_System_GetBank(
3104 system: *mut FMOD_STUDIO_SYSTEM,
3105 pathOrID: *const c_char,
3106 bank: *mut *mut FMOD_STUDIO_BANK,
3107 ) -> FMOD_RESULT;
3108 pub fn FMOD_Studio_System_GetEventByID(
3109 system: *mut FMOD_STUDIO_SYSTEM,
3110 id: *const FMOD_GUID,
3111 event: *mut *mut FMOD_STUDIO_EVENTDESCRIPTION,
3112 ) -> FMOD_RESULT;
3113 pub fn FMOD_Studio_System_GetBusByID(
3114 system: *mut FMOD_STUDIO_SYSTEM,
3115 id: *const FMOD_GUID,
3116 bus: *mut *mut FMOD_STUDIO_BUS,
3117 ) -> FMOD_RESULT;
3118 pub fn FMOD_Studio_System_GetVCAByID(
3119 system: *mut FMOD_STUDIO_SYSTEM,
3120 id: *const FMOD_GUID,
3121 vca: *mut *mut FMOD_STUDIO_VCA,
3122 ) -> FMOD_RESULT;
3123 pub fn FMOD_Studio_System_GetBankByID(
3124 system: *mut FMOD_STUDIO_SYSTEM,
3125 id: *const FMOD_GUID,
3126 bank: *mut *mut FMOD_STUDIO_BANK,
3127 ) -> FMOD_RESULT;
3128 pub fn FMOD_Studio_System_GetSoundInfo(
3129 system: *mut FMOD_STUDIO_SYSTEM,
3130 key: *const c_char,
3131 info: *mut FMOD_STUDIO_SOUND_INFO,
3132 ) -> FMOD_RESULT;
3133 pub fn FMOD_Studio_System_GetParameterDescriptionByName(
3134 system: *mut FMOD_STUDIO_SYSTEM,
3135 name: *const c_char,
3136 parameter: *mut FMOD_STUDIO_PARAMETER_DESCRIPTION,
3137 ) -> FMOD_RESULT;
3138 pub fn FMOD_Studio_System_GetParameterDescriptionByID(
3139 system: *mut FMOD_STUDIO_SYSTEM,
3140 id: FMOD_STUDIO_PARAMETER_ID,
3141 parameter: *mut FMOD_STUDIO_PARAMETER_DESCRIPTION,
3142 ) -> FMOD_RESULT;
3143 pub fn FMOD_Studio_System_GetParameterLabelByName(
3144 system: *mut FMOD_STUDIO_SYSTEM,
3145 name: *const c_char,
3146 labelindex: c_int,
3147 label: *mut c_char,
3148 size: c_int,
3149 retrieved: *mut c_int,
3150 ) -> FMOD_RESULT;
3151 pub fn FMOD_Studio_System_GetParameterLabelByID(
3152 system: *mut FMOD_STUDIO_SYSTEM,
3153 id: FMOD_STUDIO_PARAMETER_ID,
3154 labelindex: c_int,
3155 label: *mut c_char,
3156 size: c_int,
3157 retrieved: *mut c_int,
3158 ) -> FMOD_RESULT;
3159 pub fn FMOD_Studio_System_GetParameterByID(
3160 system: *mut FMOD_STUDIO_SYSTEM,
3161 id: FMOD_STUDIO_PARAMETER_ID,
3162 value: *mut c_float,
3163 finalvalue: *mut c_float,
3164 ) -> FMOD_RESULT;
3165 pub fn FMOD_Studio_System_SetParameterByID(
3166 system: *mut FMOD_STUDIO_SYSTEM,
3167 id: FMOD_STUDIO_PARAMETER_ID,
3168 value: c_float,
3169 ignoreseekspeed: FMOD_BOOL,
3170 ) -> FMOD_RESULT;
3171 pub fn FMOD_Studio_System_SetParameterByIDWithLabel(
3172 system: *mut FMOD_STUDIO_SYSTEM,
3173 id: FMOD_STUDIO_PARAMETER_ID,
3174 label: *const c_char,
3175 ignoreseekspeed: FMOD_BOOL,
3176 ) -> FMOD_RESULT;
3177 pub fn FMOD_Studio_System_SetParametersByIDs(
3178 system: *mut FMOD_STUDIO_SYSTEM,
3179 ids: *const FMOD_STUDIO_PARAMETER_ID,
3180 values: *mut c_float,
3181 count: c_int,
3182 ignoreseekspeed: FMOD_BOOL,
3183 ) -> FMOD_RESULT;
3184 pub fn FMOD_Studio_System_GetParameterByName(
3185 system: *mut FMOD_STUDIO_SYSTEM,
3186 name: *const c_char,
3187 value: *mut c_float,
3188 finalvalue: *mut c_float,
3189 ) -> FMOD_RESULT;
3190 pub fn FMOD_Studio_System_SetParameterByName(
3191 system: *mut FMOD_STUDIO_SYSTEM,
3192 name: *const c_char,
3193 value: c_float,
3194 ignoreseekspeed: FMOD_BOOL,
3195 ) -> FMOD_RESULT;
3196 pub fn FMOD_Studio_System_SetParameterByNameWithLabel(
3197 system: *mut FMOD_STUDIO_SYSTEM,
3198 name: *const c_char,
3199 label: *const c_char,
3200 ignoreseekspeed: FMOD_BOOL,
3201 ) -> FMOD_RESULT;
3202 pub fn FMOD_Studio_System_LookupID(
3203 system: *mut FMOD_STUDIO_SYSTEM,
3204 path: *const c_char,
3205 id: *mut FMOD_GUID,
3206 ) -> FMOD_RESULT;
3207 pub fn FMOD_Studio_System_LookupPath(
3208 system: *mut FMOD_STUDIO_SYSTEM,
3209 id: *const FMOD_GUID,
3210 path: *mut c_char,
3211 size: c_int,
3212 retrieved: *mut c_int,
3213 ) -> FMOD_RESULT;
3214 pub fn FMOD_Studio_System_GetNumListeners(
3215 system: *mut FMOD_STUDIO_SYSTEM,
3216 numlisteners: *mut c_int,
3217 ) -> FMOD_RESULT;
3218 pub fn FMOD_Studio_System_SetNumListeners(
3219 system: *mut FMOD_STUDIO_SYSTEM,
3220 numlisteners: c_int,
3221 ) -> FMOD_RESULT;
3222 pub fn FMOD_Studio_System_GetListenerAttributes(
3223 system: *mut FMOD_STUDIO_SYSTEM,
3224 index: c_int,
3225 attributes: *mut FMOD_3D_ATTRIBUTES,
3226 attenuationposition: *mut FMOD_VECTOR,
3227 ) -> FMOD_RESULT;
3228 pub fn FMOD_Studio_System_SetListenerAttributes(
3229 system: *mut FMOD_STUDIO_SYSTEM,
3230 index: c_int,
3231 attributes: *const FMOD_3D_ATTRIBUTES,
3232 attenuationposition: *const FMOD_VECTOR,
3233 ) -> FMOD_RESULT;
3234 pub fn FMOD_Studio_System_GetListenerWeight(
3235 system: *mut FMOD_STUDIO_SYSTEM,
3236 index: c_int,
3237 weight: *mut c_float,
3238 ) -> FMOD_RESULT;
3239 pub fn FMOD_Studio_System_SetListenerWeight(
3240 system: *mut FMOD_STUDIO_SYSTEM,
3241 index: c_int,
3242 weight: c_float,
3243 ) -> FMOD_RESULT;
3244 pub fn FMOD_Studio_System_LoadBankFile(
3245 system: *mut FMOD_STUDIO_SYSTEM,
3246 filename: *const c_char,
3247 flags: FMOD_STUDIO_LOAD_BANK_FLAGS,
3248 bank: *mut *mut FMOD_STUDIO_BANK,
3249 ) -> FMOD_RESULT;
3250 pub fn FMOD_Studio_System_LoadBankMemory(
3251 system: *mut FMOD_STUDIO_SYSTEM,
3252 buffer: *const c_char,
3253 length: c_int,
3254 mode: FMOD_STUDIO_LOAD_MEMORY_MODE,
3255 flags: FMOD_STUDIO_LOAD_BANK_FLAGS,
3256 bank: *mut *mut FMOD_STUDIO_BANK,
3257 ) -> FMOD_RESULT;
3258 pub fn FMOD_Studio_System_LoadBankCustom(
3259 system: *mut FMOD_STUDIO_SYSTEM,
3260 info: *const FMOD_STUDIO_BANK_INFO,
3261 flags: FMOD_STUDIO_LOAD_BANK_FLAGS,
3262 bank: *mut *mut FMOD_STUDIO_BANK,
3263 ) -> FMOD_RESULT;
3264 pub fn FMOD_Studio_System_RegisterPlugin(
3265 system: *mut FMOD_STUDIO_SYSTEM,
3266 description: *const FMOD_DSP_DESCRIPTION,
3267 ) -> FMOD_RESULT;
3268 pub fn FMOD_Studio_System_UnregisterPlugin(
3269 system: *mut FMOD_STUDIO_SYSTEM,
3270 name: *const c_char,
3271 ) -> FMOD_RESULT;
3272 pub fn FMOD_Studio_System_UnloadAll(system: *mut FMOD_STUDIO_SYSTEM) -> FMOD_RESULT;
3273 pub fn FMOD_Studio_System_FlushCommands(system: *mut FMOD_STUDIO_SYSTEM) -> FMOD_RESULT;
3274 pub fn FMOD_Studio_System_FlushSampleLoading(system: *mut FMOD_STUDIO_SYSTEM) -> FMOD_RESULT;
3275 pub fn FMOD_Studio_System_StartCommandCapture(
3276 system: *mut FMOD_STUDIO_SYSTEM,
3277 filename: *const c_char,
3278 flags: FMOD_STUDIO_COMMANDCAPTURE_FLAGS,
3279 ) -> FMOD_RESULT;
3280 pub fn FMOD_Studio_System_StopCommandCapture(system: *mut FMOD_STUDIO_SYSTEM) -> FMOD_RESULT;
3281 pub fn FMOD_Studio_System_LoadCommandReplay(
3282 system: *mut FMOD_STUDIO_SYSTEM,
3283 filename: *const c_char,
3284 flags: FMOD_STUDIO_COMMANDREPLAY_FLAGS,
3285 replay: *mut *mut FMOD_STUDIO_COMMANDREPLAY,
3286 ) -> FMOD_RESULT;
3287 pub fn FMOD_Studio_System_GetBankCount(
3288 system: *mut FMOD_STUDIO_SYSTEM,
3289 count: *mut c_int,
3290 ) -> FMOD_RESULT;
3291 pub fn FMOD_Studio_System_GetBankList(
3292 system: *mut FMOD_STUDIO_SYSTEM,
3293 array: *mut *mut FMOD_STUDIO_BANK,
3294 capacity: c_int,
3295 count: *mut c_int,
3296 ) -> FMOD_RESULT;
3297 pub fn FMOD_Studio_System_GetParameterDescriptionCount(
3298 system: *mut FMOD_STUDIO_SYSTEM,
3299 count: *mut c_int,
3300 ) -> FMOD_RESULT;
3301 pub fn FMOD_Studio_System_GetParameterDescriptionList(
3302 system: *mut FMOD_STUDIO_SYSTEM,
3303 array: *mut FMOD_STUDIO_PARAMETER_DESCRIPTION,
3304 capacity: c_int,
3305 count: *mut c_int,
3306 ) -> FMOD_RESULT;
3307 pub fn FMOD_Studio_System_GetCPUUsage(
3308 system: *mut FMOD_STUDIO_SYSTEM,
3309 usage: *mut FMOD_STUDIO_CPU_USAGE,
3310 usage_core: *mut FMOD_CPU_USAGE,
3311 ) -> FMOD_RESULT;
3312 pub fn FMOD_Studio_System_GetBufferUsage(
3313 system: *mut FMOD_STUDIO_SYSTEM,
3314 usage: *mut FMOD_STUDIO_BUFFER_USAGE,
3315 ) -> FMOD_RESULT;
3316 pub fn FMOD_Studio_System_ResetBufferUsage(system: *mut FMOD_STUDIO_SYSTEM) -> FMOD_RESULT;
3317 pub fn FMOD_Studio_System_SetCallback(
3318 system: *mut FMOD_STUDIO_SYSTEM,
3319 callback: FMOD_STUDIO_SYSTEM_CALLBACK,
3320 callbackmask: FMOD_STUDIO_SYSTEM_CALLBACK_TYPE,
3321 ) -> FMOD_RESULT;
3322 pub fn FMOD_Studio_System_SetUserData(
3323 system: *mut FMOD_STUDIO_SYSTEM,
3324 userdata: *mut c_void,
3325 ) -> FMOD_RESULT;
3326 pub fn FMOD_Studio_System_GetUserData(
3327 system: *mut FMOD_STUDIO_SYSTEM,
3328 userdata: *mut *mut c_void,
3329 ) -> FMOD_RESULT;
3330 pub fn FMOD_Studio_System_GetMemoryUsage(
3331 system: *mut FMOD_STUDIO_SYSTEM,
3332 memoryusage: *mut FMOD_STUDIO_MEMORY_USAGE,
3333 ) -> FMOD_RESULT;
3334 pub fn FMOD_Studio_EventDescription_IsValid(
3335 eventdescription: *mut FMOD_STUDIO_EVENTDESCRIPTION,
3336 ) -> FMOD_BOOL;
3337 pub fn FMOD_Studio_EventDescription_GetID(
3338 eventdescription: *mut FMOD_STUDIO_EVENTDESCRIPTION,
3339 id: *mut FMOD_GUID,
3340 ) -> FMOD_RESULT;
3341 pub fn FMOD_Studio_EventDescription_GetPath(
3342 eventdescription: *mut FMOD_STUDIO_EVENTDESCRIPTION,
3343 path: *mut c_char,
3344 size: c_int,
3345 retrieved: *mut c_int,
3346 ) -> FMOD_RESULT;
3347 pub fn FMOD_Studio_EventDescription_GetParameterDescriptionCount(
3348 eventdescription: *mut FMOD_STUDIO_EVENTDESCRIPTION,
3349 count: *mut c_int,
3350 ) -> FMOD_RESULT;
3351 pub fn FMOD_Studio_EventDescription_GetParameterDescriptionByIndex(
3352 eventdescription: *mut FMOD_STUDIO_EVENTDESCRIPTION,
3353 index: c_int,
3354 parameter: *mut FMOD_STUDIO_PARAMETER_DESCRIPTION,
3355 ) -> FMOD_RESULT;
3356 pub fn FMOD_Studio_EventDescription_GetParameterDescriptionByName(
3357 eventdescription: *mut FMOD_STUDIO_EVENTDESCRIPTION,
3358 name: *const c_char,
3359 parameter: *mut FMOD_STUDIO_PARAMETER_DESCRIPTION,
3360 ) -> FMOD_RESULT;
3361 pub fn FMOD_Studio_EventDescription_GetParameterDescriptionByID(
3362 eventdescription: *mut FMOD_STUDIO_EVENTDESCRIPTION,
3363 id: FMOD_STUDIO_PARAMETER_ID,
3364 parameter: *mut FMOD_STUDIO_PARAMETER_DESCRIPTION,
3365 ) -> FMOD_RESULT;
3366 pub fn FMOD_Studio_EventDescription_GetParameterLabelByIndex(
3367 eventdescription: *mut FMOD_STUDIO_EVENTDESCRIPTION,
3368 index: c_int,
3369 labelindex: c_int,
3370 label: *mut c_char,
3371 size: c_int,
3372 retrieved: *mut c_int,
3373 ) -> FMOD_RESULT;
3374 pub fn FMOD_Studio_EventDescription_GetParameterLabelByName(
3375 eventdescription: *mut FMOD_STUDIO_EVENTDESCRIPTION,
3376 name: *const c_char,
3377 labelindex: c_int,
3378 label: *mut c_char,
3379 size: c_int,
3380 retrieved: *mut c_int,
3381 ) -> FMOD_RESULT;
3382 pub fn FMOD_Studio_EventDescription_GetParameterLabelByID(
3383 eventdescription: *mut FMOD_STUDIO_EVENTDESCRIPTION,
3384 id: FMOD_STUDIO_PARAMETER_ID,
3385 labelindex: c_int,
3386 label: *mut c_char,
3387 size: c_int,
3388 retrieved: *mut c_int,
3389 ) -> FMOD_RESULT;
3390 pub fn FMOD_Studio_EventDescription_GetUserPropertyCount(
3391 eventdescription: *mut FMOD_STUDIO_EVENTDESCRIPTION,
3392 count: *mut c_int,
3393 ) -> FMOD_RESULT;
3394 pub fn FMOD_Studio_EventDescription_GetUserPropertyByIndex(
3395 eventdescription: *mut FMOD_STUDIO_EVENTDESCRIPTION,
3396 index: c_int,
3397 property: *mut FMOD_STUDIO_USER_PROPERTY,
3398 ) -> FMOD_RESULT;
3399 pub fn FMOD_Studio_EventDescription_GetUserProperty(
3400 eventdescription: *mut FMOD_STUDIO_EVENTDESCRIPTION,
3401 name: *const c_char,
3402 property: *mut FMOD_STUDIO_USER_PROPERTY,
3403 ) -> FMOD_RESULT;
3404 pub fn FMOD_Studio_EventDescription_GetLength(
3405 eventdescription: *mut FMOD_STUDIO_EVENTDESCRIPTION,
3406 length: *mut c_int,
3407 ) -> FMOD_RESULT;
3408 pub fn FMOD_Studio_EventDescription_GetMinMaxDistance(
3409 eventdescription: *mut FMOD_STUDIO_EVENTDESCRIPTION,
3410 min: *mut c_float,
3411 max: *mut c_float,
3412 ) -> FMOD_RESULT;
3413 pub fn FMOD_Studio_EventDescription_GetSoundSize(
3414 eventdescription: *mut FMOD_STUDIO_EVENTDESCRIPTION,
3415 size: *mut c_float,
3416 ) -> FMOD_RESULT;
3417 pub fn FMOD_Studio_EventDescription_IsSnapshot(
3418 eventdescription: *mut FMOD_STUDIO_EVENTDESCRIPTION,
3419 snapshot: *mut FMOD_BOOL,
3420 ) -> FMOD_RESULT;
3421 pub fn FMOD_Studio_EventDescription_IsOneshot(
3422 eventdescription: *mut FMOD_STUDIO_EVENTDESCRIPTION,
3423 oneshot: *mut FMOD_BOOL,
3424 ) -> FMOD_RESULT;
3425 pub fn FMOD_Studio_EventDescription_IsStream(
3426 eventdescription: *mut FMOD_STUDIO_EVENTDESCRIPTION,
3427 isStream: *mut FMOD_BOOL,
3428 ) -> FMOD_RESULT;
3429 pub fn FMOD_Studio_EventDescription_Is3D(
3430 eventdescription: *mut FMOD_STUDIO_EVENTDESCRIPTION,
3431 is3D: *mut FMOD_BOOL,
3432 ) -> FMOD_RESULT;
3433 pub fn FMOD_Studio_EventDescription_IsDopplerEnabled(
3434 eventdescription: *mut FMOD_STUDIO_EVENTDESCRIPTION,
3435 doppler: *mut FMOD_BOOL,
3436 ) -> FMOD_RESULT;
3437 pub fn FMOD_Studio_EventDescription_HasSustainPoint(
3438 eventdescription: *mut FMOD_STUDIO_EVENTDESCRIPTION,
3439 sustainPoint: *mut FMOD_BOOL,
3440 ) -> FMOD_RESULT;
3441 pub fn FMOD_Studio_EventDescription_CreateInstance(
3442 eventdescription: *mut FMOD_STUDIO_EVENTDESCRIPTION,
3443 instance: *mut *mut FMOD_STUDIO_EVENTINSTANCE,
3444 ) -> FMOD_RESULT;
3445 pub fn FMOD_Studio_EventDescription_GetInstanceCount(
3446 eventdescription: *mut FMOD_STUDIO_EVENTDESCRIPTION,
3447 count: *mut c_int,
3448 ) -> FMOD_RESULT;
3449 pub fn FMOD_Studio_EventDescription_GetInstanceList(
3450 eventdescription: *mut FMOD_STUDIO_EVENTDESCRIPTION,
3451 array: *mut *mut FMOD_STUDIO_EVENTINSTANCE,
3452 capacity: c_int,
3453 count: *mut c_int,
3454 ) -> FMOD_RESULT;
3455 pub fn FMOD_Studio_EventDescription_LoadSampleData(
3456 eventdescription: *mut FMOD_STUDIO_EVENTDESCRIPTION,
3457 ) -> FMOD_RESULT;
3458 pub fn FMOD_Studio_EventDescription_UnloadSampleData(
3459 eventdescription: *mut FMOD_STUDIO_EVENTDESCRIPTION,
3460 ) -> FMOD_RESULT;
3461 pub fn FMOD_Studio_EventDescription_GetSampleLoadingState(
3462 eventdescription: *mut FMOD_STUDIO_EVENTDESCRIPTION,
3463 state: *mut FMOD_STUDIO_LOADING_STATE,
3464 ) -> FMOD_RESULT;
3465 pub fn FMOD_Studio_EventDescription_ReleaseAllInstances(
3466 eventdescription: *mut FMOD_STUDIO_EVENTDESCRIPTION,
3467 ) -> FMOD_RESULT;
3468 pub fn FMOD_Studio_EventDescription_SetCallback(
3469 eventdescription: *mut FMOD_STUDIO_EVENTDESCRIPTION,
3470 callback: FMOD_STUDIO_EVENT_CALLBACK,
3471 callbackmask: FMOD_STUDIO_EVENT_CALLBACK_TYPE,
3472 ) -> FMOD_RESULT;
3473 pub fn FMOD_Studio_EventDescription_GetUserData(
3474 eventdescription: *mut FMOD_STUDIO_EVENTDESCRIPTION,
3475 userdata: *mut *mut c_void,
3476 ) -> FMOD_RESULT;
3477 pub fn FMOD_Studio_EventDescription_SetUserData(
3478 eventdescription: *mut FMOD_STUDIO_EVENTDESCRIPTION,
3479 userdata: *mut c_void,
3480 ) -> FMOD_RESULT;
3481 pub fn FMOD_Studio_EventInstance_IsValid(
3482 eventinstance: *mut FMOD_STUDIO_EVENTINSTANCE,
3483 ) -> FMOD_BOOL;
3484 pub fn FMOD_Studio_EventInstance_GetDescription(
3485 eventinstance: *mut FMOD_STUDIO_EVENTINSTANCE,
3486 description: *mut *mut FMOD_STUDIO_EVENTDESCRIPTION,
3487 ) -> FMOD_RESULT;
3488 pub fn FMOD_Studio_EventInstance_GetVolume(
3489 eventinstance: *mut FMOD_STUDIO_EVENTINSTANCE,
3490 volume: *mut c_float,
3491 finalvolume: *mut c_float,
3492 ) -> FMOD_RESULT;
3493 pub fn FMOD_Studio_EventInstance_SetVolume(
3494 eventinstance: *mut FMOD_STUDIO_EVENTINSTANCE,
3495 volume: c_float,
3496 ) -> FMOD_RESULT;
3497 pub fn FMOD_Studio_EventInstance_GetPitch(
3498 eventinstance: *mut FMOD_STUDIO_EVENTINSTANCE,
3499 pitch: *mut c_float,
3500 finalpitch: *mut c_float,
3501 ) -> FMOD_RESULT;
3502 pub fn FMOD_Studio_EventInstance_SetPitch(
3503 eventinstance: *mut FMOD_STUDIO_EVENTINSTANCE,
3504 pitch: c_float,
3505 ) -> FMOD_RESULT;
3506 pub fn FMOD_Studio_EventInstance_Get3DAttributes(
3507 eventinstance: *mut FMOD_STUDIO_EVENTINSTANCE,
3508 attributes: *mut FMOD_3D_ATTRIBUTES,
3509 ) -> FMOD_RESULT;
3510 pub fn FMOD_Studio_EventInstance_Set3DAttributes(
3511 eventinstance: *mut FMOD_STUDIO_EVENTINSTANCE,
3512 attributes: *mut FMOD_3D_ATTRIBUTES,
3513 ) -> FMOD_RESULT;
3514 pub fn FMOD_Studio_EventInstance_GetListenerMask(
3515 eventinstance: *mut FMOD_STUDIO_EVENTINSTANCE,
3516 mask: *mut c_uint,
3517 ) -> FMOD_RESULT;
3518 pub fn FMOD_Studio_EventInstance_SetListenerMask(
3519 eventinstance: *mut FMOD_STUDIO_EVENTINSTANCE,
3520 mask: c_uint,
3521 ) -> FMOD_RESULT;
3522 pub fn FMOD_Studio_EventInstance_GetProperty(
3523 eventinstance: *mut FMOD_STUDIO_EVENTINSTANCE,
3524 index: FMOD_STUDIO_EVENT_PROPERTY,
3525 value: *mut c_float,
3526 ) -> FMOD_RESULT;
3527 pub fn FMOD_Studio_EventInstance_SetProperty(
3528 eventinstance: *mut FMOD_STUDIO_EVENTINSTANCE,
3529 index: FMOD_STUDIO_EVENT_PROPERTY,
3530 value: c_float,
3531 ) -> FMOD_RESULT;
3532 pub fn FMOD_Studio_EventInstance_GetReverbLevel(
3533 eventinstance: *mut FMOD_STUDIO_EVENTINSTANCE,
3534 index: c_int,
3535 level: *mut c_float,
3536 ) -> FMOD_RESULT;
3537 pub fn FMOD_Studio_EventInstance_SetReverbLevel(
3538 eventinstance: *mut FMOD_STUDIO_EVENTINSTANCE,
3539 index: c_int,
3540 level: c_float,
3541 ) -> FMOD_RESULT;
3542 pub fn FMOD_Studio_EventInstance_GetPaused(
3543 eventinstance: *mut FMOD_STUDIO_EVENTINSTANCE,
3544 paused: *mut FMOD_BOOL,
3545 ) -> FMOD_RESULT;
3546 pub fn FMOD_Studio_EventInstance_SetPaused(
3547 eventinstance: *mut FMOD_STUDIO_EVENTINSTANCE,
3548 paused: FMOD_BOOL,
3549 ) -> FMOD_RESULT;
3550 pub fn FMOD_Studio_EventInstance_Start(
3551 eventinstance: *mut FMOD_STUDIO_EVENTINSTANCE,
3552 ) -> FMOD_RESULT;
3553 pub fn FMOD_Studio_EventInstance_Stop(
3554 eventinstance: *mut FMOD_STUDIO_EVENTINSTANCE,
3555 mode: FMOD_STUDIO_STOP_MODE,
3556 ) -> FMOD_RESULT;
3557 pub fn FMOD_Studio_EventInstance_GetTimelinePosition(
3558 eventinstance: *mut FMOD_STUDIO_EVENTINSTANCE,
3559 position: *mut c_int,
3560 ) -> FMOD_RESULT;
3561 pub fn FMOD_Studio_EventInstance_SetTimelinePosition(
3562 eventinstance: *mut FMOD_STUDIO_EVENTINSTANCE,
3563 position: c_int,
3564 ) -> FMOD_RESULT;
3565 pub fn FMOD_Studio_EventInstance_GetPlaybackState(
3566 eventinstance: *mut FMOD_STUDIO_EVENTINSTANCE,
3567 state: *mut FMOD_STUDIO_PLAYBACK_STATE,
3568 ) -> FMOD_RESULT;
3569 pub fn FMOD_Studio_EventInstance_GetChannelGroup(
3570 eventinstance: *mut FMOD_STUDIO_EVENTINSTANCE,
3571 group: *mut *mut FMOD_CHANNELGROUP,
3572 ) -> FMOD_RESULT;
3573 pub fn FMOD_Studio_EventInstance_GetMinMaxDistance(
3574 eventinstance: *mut FMOD_STUDIO_EVENTINSTANCE,
3575 min: *mut c_float,
3576 max: *mut c_float,
3577 ) -> FMOD_RESULT;
3578 pub fn FMOD_Studio_EventInstance_Release(
3579 eventinstance: *mut FMOD_STUDIO_EVENTINSTANCE,
3580 ) -> FMOD_RESULT;
3581 pub fn FMOD_Studio_EventInstance_IsVirtual(
3582 eventinstance: *mut FMOD_STUDIO_EVENTINSTANCE,
3583 virtualstate: *mut FMOD_BOOL,
3584 ) -> FMOD_RESULT;
3585 pub fn FMOD_Studio_EventInstance_GetParameterByName(
3586 eventinstance: *mut FMOD_STUDIO_EVENTINSTANCE,
3587 name: *const c_char,
3588 value: *mut c_float,
3589 finalvalue: *mut c_float,
3590 ) -> FMOD_RESULT;
3591 pub fn FMOD_Studio_EventInstance_SetParameterByName(
3592 eventinstance: *mut FMOD_STUDIO_EVENTINSTANCE,
3593 name: *const c_char,
3594 value: c_float,
3595 ignoreseekspeed: FMOD_BOOL,
3596 ) -> FMOD_RESULT;
3597 pub fn FMOD_Studio_EventInstance_SetParameterByNameWithLabel(
3598 eventinstance: *mut FMOD_STUDIO_EVENTINSTANCE,
3599 name: *const c_char,
3600 label: *const c_char,
3601 ignoreseekspeed: FMOD_BOOL,
3602 ) -> FMOD_RESULT;
3603 pub fn FMOD_Studio_EventInstance_GetParameterByID(
3604 eventinstance: *mut FMOD_STUDIO_EVENTINSTANCE,
3605 id: FMOD_STUDIO_PARAMETER_ID,
3606 value: *mut c_float,
3607 finalvalue: *mut c_float,
3608 ) -> FMOD_RESULT;
3609 pub fn FMOD_Studio_EventInstance_SetParameterByID(
3610 eventinstance: *mut FMOD_STUDIO_EVENTINSTANCE,
3611 id: FMOD_STUDIO_PARAMETER_ID,
3612 value: c_float,
3613 ignoreseekspeed: FMOD_BOOL,
3614 ) -> FMOD_RESULT;
3615 pub fn FMOD_Studio_EventInstance_SetParameterByIDWithLabel(
3616 eventinstance: *mut FMOD_STUDIO_EVENTINSTANCE,
3617 id: FMOD_STUDIO_PARAMETER_ID,
3618 label: *const c_char,
3619 ignoreseekspeed: FMOD_BOOL,
3620 ) -> FMOD_RESULT;
3621 pub fn FMOD_Studio_EventInstance_SetParametersByIDs(
3622 eventinstance: *mut FMOD_STUDIO_EVENTINSTANCE,
3623 ids: *const FMOD_STUDIO_PARAMETER_ID,
3624 values: *mut c_float,
3625 count: c_int,
3626 ignoreseekspeed: FMOD_BOOL,
3627 ) -> FMOD_RESULT;
3628 pub fn FMOD_Studio_EventInstance_KeyOff(
3629 eventinstance: *mut FMOD_STUDIO_EVENTINSTANCE,
3630 ) -> FMOD_RESULT;
3631 pub fn FMOD_Studio_EventInstance_SetCallback(
3632 eventinstance: *mut FMOD_STUDIO_EVENTINSTANCE,
3633 callback: FMOD_STUDIO_EVENT_CALLBACK,
3634 callbackmask: FMOD_STUDIO_EVENT_CALLBACK_TYPE,
3635 ) -> FMOD_RESULT;
3636 pub fn FMOD_Studio_EventInstance_GetUserData(
3637 eventinstance: *mut FMOD_STUDIO_EVENTINSTANCE,
3638 userdata: *mut *mut c_void,
3639 ) -> FMOD_RESULT;
3640 pub fn FMOD_Studio_EventInstance_SetUserData(
3641 eventinstance: *mut FMOD_STUDIO_EVENTINSTANCE,
3642 userdata: *mut c_void,
3643 ) -> FMOD_RESULT;
3644 pub fn FMOD_Studio_EventInstance_GetCPUUsage(
3645 eventinstance: *mut FMOD_STUDIO_EVENTINSTANCE,
3646 exclusive: *mut c_uint,
3647 inclusive: *mut c_uint,
3648 ) -> FMOD_RESULT;
3649 pub fn FMOD_Studio_EventInstance_GetMemoryUsage(
3650 eventinstance: *mut FMOD_STUDIO_EVENTINSTANCE,
3651 memoryusage: *mut FMOD_STUDIO_MEMORY_USAGE,
3652 ) -> FMOD_RESULT;
3653 pub fn FMOD_Studio_Bus_IsValid(bus: *mut FMOD_STUDIO_BUS) -> FMOD_BOOL;
3654 pub fn FMOD_Studio_Bus_GetID(bus: *mut FMOD_STUDIO_BUS, id: *mut FMOD_GUID) -> FMOD_RESULT;
3655 pub fn FMOD_Studio_Bus_GetPath(
3656 bus: *mut FMOD_STUDIO_BUS,
3657 path: *mut c_char,
3658 size: c_int,
3659 retrieved: *mut c_int,
3660 ) -> FMOD_RESULT;
3661 pub fn FMOD_Studio_Bus_GetVolume(
3662 bus: *mut FMOD_STUDIO_BUS,
3663 volume: *mut c_float,
3664 finalvolume: *mut c_float,
3665 ) -> FMOD_RESULT;
3666 pub fn FMOD_Studio_Bus_SetVolume(bus: *mut FMOD_STUDIO_BUS, volume: c_float) -> FMOD_RESULT;
3667 pub fn FMOD_Studio_Bus_GetPaused(
3668 bus: *mut FMOD_STUDIO_BUS,
3669 paused: *mut FMOD_BOOL,
3670 ) -> FMOD_RESULT;
3671 pub fn FMOD_Studio_Bus_SetPaused(bus: *mut FMOD_STUDIO_BUS, paused: FMOD_BOOL) -> FMOD_RESULT;
3672 pub fn FMOD_Studio_Bus_GetMute(bus: *mut FMOD_STUDIO_BUS, mute: *mut FMOD_BOOL) -> FMOD_RESULT;
3673 pub fn FMOD_Studio_Bus_SetMute(bus: *mut FMOD_STUDIO_BUS, mute: FMOD_BOOL) -> FMOD_RESULT;
3674 pub fn FMOD_Studio_Bus_StopAllEvents(
3675 bus: *mut FMOD_STUDIO_BUS,
3676 mode: FMOD_STUDIO_STOP_MODE,
3677 ) -> FMOD_RESULT;
3678 pub fn FMOD_Studio_Bus_GetPortIndex(
3679 bus: *mut FMOD_STUDIO_BUS,
3680 index: *mut FMOD_PORT_INDEX,
3681 ) -> FMOD_RESULT;
3682 pub fn FMOD_Studio_Bus_SetPortIndex(
3683 bus: *mut FMOD_STUDIO_BUS,
3684 index: FMOD_PORT_INDEX,
3685 ) -> FMOD_RESULT;
3686 pub fn FMOD_Studio_Bus_LockChannelGroup(bus: *mut FMOD_STUDIO_BUS) -> FMOD_RESULT;
3687 pub fn FMOD_Studio_Bus_UnlockChannelGroup(bus: *mut FMOD_STUDIO_BUS) -> FMOD_RESULT;
3688 pub fn FMOD_Studio_Bus_GetChannelGroup(
3689 bus: *mut FMOD_STUDIO_BUS,
3690 group: *mut *mut FMOD_CHANNELGROUP,
3691 ) -> FMOD_RESULT;
3692 pub fn FMOD_Studio_Bus_GetCPUUsage(
3693 bus: *mut FMOD_STUDIO_BUS,
3694 exclusive: *mut c_uint,
3695 inclusive: *mut c_uint,
3696 ) -> FMOD_RESULT;
3697 pub fn FMOD_Studio_Bus_GetMemoryUsage(
3698 bus: *mut FMOD_STUDIO_BUS,
3699 memoryusage: *mut FMOD_STUDIO_MEMORY_USAGE,
3700 ) -> FMOD_RESULT;
3701 pub fn FMOD_Studio_VCA_IsValid(vca: *mut FMOD_STUDIO_VCA) -> FMOD_BOOL;
3702 pub fn FMOD_Studio_VCA_GetID(vca: *mut FMOD_STUDIO_VCA, id: *mut FMOD_GUID) -> FMOD_RESULT;
3703 pub fn FMOD_Studio_VCA_GetPath(
3704 vca: *mut FMOD_STUDIO_VCA,
3705 path: *mut c_char,
3706 size: c_int,
3707 retrieved: *mut c_int,
3708 ) -> FMOD_RESULT;
3709 pub fn FMOD_Studio_VCA_GetVolume(
3710 vca: *mut FMOD_STUDIO_VCA,
3711 volume: *mut c_float,
3712 finalvolume: *mut c_float,
3713 ) -> FMOD_RESULT;
3714 pub fn FMOD_Studio_VCA_SetVolume(vca: *mut FMOD_STUDIO_VCA, volume: c_float) -> FMOD_RESULT;
3715 pub fn FMOD_Studio_Bank_IsValid(bank: *mut FMOD_STUDIO_BANK) -> FMOD_BOOL;
3716 pub fn FMOD_Studio_Bank_GetID(bank: *mut FMOD_STUDIO_BANK, id: *mut FMOD_GUID) -> FMOD_RESULT;
3717 pub fn FMOD_Studio_Bank_GetPath(
3718 bank: *mut FMOD_STUDIO_BANK,
3719 path: *mut c_char,
3720 size: c_int,
3721 retrieved: *mut c_int,
3722 ) -> FMOD_RESULT;
3723 pub fn FMOD_Studio_Bank_Unload(bank: *mut FMOD_STUDIO_BANK) -> FMOD_RESULT;
3724 pub fn FMOD_Studio_Bank_LoadSampleData(bank: *mut FMOD_STUDIO_BANK) -> FMOD_RESULT;
3725 pub fn FMOD_Studio_Bank_UnloadSampleData(bank: *mut FMOD_STUDIO_BANK) -> FMOD_RESULT;
3726 pub fn FMOD_Studio_Bank_GetLoadingState(
3727 bank: *mut FMOD_STUDIO_BANK,
3728 state: *mut FMOD_STUDIO_LOADING_STATE,
3729 ) -> FMOD_RESULT;
3730 pub fn FMOD_Studio_Bank_GetSampleLoadingState(
3731 bank: *mut FMOD_STUDIO_BANK,
3732 state: *mut FMOD_STUDIO_LOADING_STATE,
3733 ) -> FMOD_RESULT;
3734 pub fn FMOD_Studio_Bank_GetStringCount(
3735 bank: *mut FMOD_STUDIO_BANK,
3736 count: *mut c_int,
3737 ) -> FMOD_RESULT;
3738 pub fn FMOD_Studio_Bank_GetStringInfo(
3739 bank: *mut FMOD_STUDIO_BANK,
3740 index: c_int,
3741 id: *mut FMOD_GUID,
3742 path: *mut c_char,
3743 size: c_int,
3744 retrieved: *mut c_int,
3745 ) -> FMOD_RESULT;
3746 pub fn FMOD_Studio_Bank_GetEventCount(
3747 bank: *mut FMOD_STUDIO_BANK,
3748 count: *mut c_int,
3749 ) -> FMOD_RESULT;
3750 pub fn FMOD_Studio_Bank_GetEventList(
3751 bank: *mut FMOD_STUDIO_BANK,
3752 array: *mut *mut FMOD_STUDIO_EVENTDESCRIPTION,
3753 capacity: c_int,
3754 count: *mut c_int,
3755 ) -> FMOD_RESULT;
3756 pub fn FMOD_Studio_Bank_GetBusCount(
3757 bank: *mut FMOD_STUDIO_BANK,
3758 count: *mut c_int,
3759 ) -> FMOD_RESULT;
3760 pub fn FMOD_Studio_Bank_GetBusList(
3761 bank: *mut FMOD_STUDIO_BANK,
3762 array: *mut *mut FMOD_STUDIO_BUS,
3763 capacity: c_int,
3764 count: *mut c_int,
3765 ) -> FMOD_RESULT;
3766 pub fn FMOD_Studio_Bank_GetVCACount(
3767 bank: *mut FMOD_STUDIO_BANK,
3768 count: *mut c_int,
3769 ) -> FMOD_RESULT;
3770 pub fn FMOD_Studio_Bank_GetVCAList(
3771 bank: *mut FMOD_STUDIO_BANK,
3772 array: *mut *mut FMOD_STUDIO_VCA,
3773 capacity: c_int,
3774 count: *mut c_int,
3775 ) -> FMOD_RESULT;
3776 pub fn FMOD_Studio_Bank_GetUserData(
3777 bank: *mut FMOD_STUDIO_BANK,
3778 userdata: *mut *mut c_void,
3779 ) -> FMOD_RESULT;
3780 pub fn FMOD_Studio_Bank_SetUserData(
3781 bank: *mut FMOD_STUDIO_BANK,
3782 userdata: *mut c_void,
3783 ) -> FMOD_RESULT;
3784 pub fn FMOD_Studio_CommandReplay_IsValid(replay: *mut FMOD_STUDIO_COMMANDREPLAY) -> FMOD_BOOL;
3785 pub fn FMOD_Studio_CommandReplay_GetSystem(
3786 replay: *mut FMOD_STUDIO_COMMANDREPLAY,
3787 system: *mut *mut FMOD_STUDIO_SYSTEM,
3788 ) -> FMOD_RESULT;
3789 pub fn FMOD_Studio_CommandReplay_GetLength(
3790 replay: *mut FMOD_STUDIO_COMMANDREPLAY,
3791 length: *mut c_float,
3792 ) -> FMOD_RESULT;
3793 pub fn FMOD_Studio_CommandReplay_GetCommandCount(
3794 replay: *mut FMOD_STUDIO_COMMANDREPLAY,
3795 count: *mut c_int,
3796 ) -> FMOD_RESULT;
3797 pub fn FMOD_Studio_CommandReplay_GetCommandInfo(
3798 replay: *mut FMOD_STUDIO_COMMANDREPLAY,
3799 commandindex: c_int,
3800 info: *mut FMOD_STUDIO_COMMAND_INFO,
3801 ) -> FMOD_RESULT;
3802 pub fn FMOD_Studio_CommandReplay_GetCommandString(
3803 replay: *mut FMOD_STUDIO_COMMANDREPLAY,
3804 commandindex: c_int,
3805 buffer: *mut c_char,
3806 length: c_int,
3807 ) -> FMOD_RESULT;
3808 pub fn FMOD_Studio_CommandReplay_GetCommandAtTime(
3809 replay: *mut FMOD_STUDIO_COMMANDREPLAY,
3810 time: c_float,
3811 commandindex: *mut c_int,
3812 ) -> FMOD_RESULT;
3813 pub fn FMOD_Studio_CommandReplay_SetBankPath(
3814 replay: *mut FMOD_STUDIO_COMMANDREPLAY,
3815 bankPath: *const c_char,
3816 ) -> FMOD_RESULT;
3817 pub fn FMOD_Studio_CommandReplay_Start(replay: *mut FMOD_STUDIO_COMMANDREPLAY) -> FMOD_RESULT;
3818 pub fn FMOD_Studio_CommandReplay_Stop(replay: *mut FMOD_STUDIO_COMMANDREPLAY) -> FMOD_RESULT;
3819 pub fn FMOD_Studio_CommandReplay_SeekToTime(
3820 replay: *mut FMOD_STUDIO_COMMANDREPLAY,
3821 time: c_float,
3822 ) -> FMOD_RESULT;
3823 pub fn FMOD_Studio_CommandReplay_SeekToCommand(
3824 replay: *mut FMOD_STUDIO_COMMANDREPLAY,
3825 commandindex: c_int,
3826 ) -> FMOD_RESULT;
3827 pub fn FMOD_Studio_CommandReplay_GetPaused(
3828 replay: *mut FMOD_STUDIO_COMMANDREPLAY,
3829 paused: *mut FMOD_BOOL,
3830 ) -> FMOD_RESULT;
3831 pub fn FMOD_Studio_CommandReplay_SetPaused(
3832 replay: *mut FMOD_STUDIO_COMMANDREPLAY,
3833 paused: FMOD_BOOL,
3834 ) -> FMOD_RESULT;
3835 pub fn FMOD_Studio_CommandReplay_GetPlaybackState(
3836 replay: *mut FMOD_STUDIO_COMMANDREPLAY,
3837 state: *mut FMOD_STUDIO_PLAYBACK_STATE,
3838 ) -> FMOD_RESULT;
3839 pub fn FMOD_Studio_CommandReplay_GetCurrentCommand(
3840 replay: *mut FMOD_STUDIO_COMMANDREPLAY,
3841 commandindex: *mut c_int,
3842 currenttime: *mut c_float,
3843 ) -> FMOD_RESULT;
3844 pub fn FMOD_Studio_CommandReplay_Release(replay: *mut FMOD_STUDIO_COMMANDREPLAY)
3845 -> FMOD_RESULT;
3846 pub fn FMOD_Studio_CommandReplay_SetFrameCallback(
3847 replay: *mut FMOD_STUDIO_COMMANDREPLAY,
3848 callback: FMOD_STUDIO_COMMANDREPLAY_FRAME_CALLBACK,
3849 ) -> FMOD_RESULT;
3850 pub fn FMOD_Studio_CommandReplay_SetLoadBankCallback(
3851 replay: *mut FMOD_STUDIO_COMMANDREPLAY,
3852 callback: FMOD_STUDIO_COMMANDREPLAY_LOAD_BANK_CALLBACK,
3853 ) -> FMOD_RESULT;
3854 pub fn FMOD_Studio_CommandReplay_SetCreateInstanceCallback(
3855 replay: *mut FMOD_STUDIO_COMMANDREPLAY,
3856 callback: FMOD_STUDIO_COMMANDREPLAY_CREATE_INSTANCE_CALLBACK,
3857 ) -> FMOD_RESULT;
3858 pub fn FMOD_Studio_CommandReplay_GetUserData(
3859 replay: *mut FMOD_STUDIO_COMMANDREPLAY,
3860 userdata: *mut *mut c_void,
3861 ) -> FMOD_RESULT;
3862 pub fn FMOD_Studio_CommandReplay_SetUserData(
3863 replay: *mut FMOD_STUDIO_COMMANDREPLAY,
3864 userdata: *mut c_void,
3865 ) -> FMOD_RESULT;
3866}
3867extern "C" {
3868 pub fn FMOD_Memory_Initialize(
3869 poolmem: *mut c_void,
3870 poollen: c_int,
3871 useralloc: FMOD_MEMORY_ALLOC_CALLBACK,
3872 userrealloc: FMOD_MEMORY_REALLOC_CALLBACK,
3873 userfree: FMOD_MEMORY_FREE_CALLBACK,
3874 memtypeflags: FMOD_MEMORY_TYPE,
3875 ) -> FMOD_RESULT;
3876 pub fn FMOD_Memory_GetStats(
3877 currentalloced: *mut c_int,
3878 maxalloced: *mut c_int,
3879 blocking: FMOD_BOOL,
3880 ) -> FMOD_RESULT;
3881 pub fn FMOD_Debug_Initialize(
3882 flags: FMOD_DEBUG_FLAGS,
3883 mode: FMOD_DEBUG_MODE,
3884 callback: FMOD_DEBUG_CALLBACK,
3885 filename: *const c_char,
3886 ) -> FMOD_RESULT;
3887 pub fn FMOD_File_SetDiskBusy(busy: c_int) -> FMOD_RESULT;
3888 pub fn FMOD_File_GetDiskBusy(busy: *mut c_int) -> FMOD_RESULT;
3889 pub fn FMOD_Thread_SetAttributes(
3890 type_: FMOD_THREAD_TYPE,
3891 affinity: FMOD_THREAD_AFFINITY,
3892 priority: FMOD_THREAD_PRIORITY,
3893 stacksize: FMOD_THREAD_STACK_SIZE,
3894 ) -> FMOD_RESULT;
3895 pub fn FMOD_System_Create(system: *mut *mut FMOD_SYSTEM, headerversion: c_uint) -> FMOD_RESULT;
3896 pub fn FMOD_System_Release(system: *mut FMOD_SYSTEM) -> FMOD_RESULT;
3897 pub fn FMOD_System_SetOutput(system: *mut FMOD_SYSTEM, output: FMOD_OUTPUTTYPE) -> FMOD_RESULT;
3898 pub fn FMOD_System_GetOutput(
3899 system: *mut FMOD_SYSTEM,
3900 output: *mut FMOD_OUTPUTTYPE,
3901 ) -> FMOD_RESULT;
3902 pub fn FMOD_System_GetNumDrivers(
3903 system: *mut FMOD_SYSTEM,
3904 numdrivers: *mut c_int,
3905 ) -> FMOD_RESULT;
3906 pub fn FMOD_System_GetDriverInfo(
3907 system: *mut FMOD_SYSTEM,
3908 id: c_int,
3909 name: *mut c_char,
3910 namelen: c_int,
3911 guid: *mut FMOD_GUID,
3912 systemrate: *mut c_int,
3913 speakermode: *mut FMOD_SPEAKERMODE,
3914 speakermodechannels: *mut c_int,
3915 ) -> FMOD_RESULT;
3916 pub fn FMOD_System_SetDriver(system: *mut FMOD_SYSTEM, driver: c_int) -> FMOD_RESULT;
3917 pub fn FMOD_System_GetDriver(system: *mut FMOD_SYSTEM, driver: *mut c_int) -> FMOD_RESULT;
3918 pub fn FMOD_System_SetSoftwareChannels(
3919 system: *mut FMOD_SYSTEM,
3920 numsoftwarechannels: c_int,
3921 ) -> FMOD_RESULT;
3922 pub fn FMOD_System_GetSoftwareChannels(
3923 system: *mut FMOD_SYSTEM,
3924 numsoftwarechannels: *mut c_int,
3925 ) -> FMOD_RESULT;
3926 pub fn FMOD_System_SetSoftwareFormat(
3927 system: *mut FMOD_SYSTEM,
3928 samplerate: c_int,
3929 speakermode: FMOD_SPEAKERMODE,
3930 numrawspeakers: c_int,
3931 ) -> FMOD_RESULT;
3932 pub fn FMOD_System_GetSoftwareFormat(
3933 system: *mut FMOD_SYSTEM,
3934 samplerate: *mut c_int,
3935 speakermode: *mut FMOD_SPEAKERMODE,
3936 numrawspeakers: *mut c_int,
3937 ) -> FMOD_RESULT;
3938 pub fn FMOD_System_SetDSPBufferSize(
3939 system: *mut FMOD_SYSTEM,
3940 bufferlength: c_uint,
3941 numbuffers: c_int,
3942 ) -> FMOD_RESULT;
3943 pub fn FMOD_System_GetDSPBufferSize(
3944 system: *mut FMOD_SYSTEM,
3945 bufferlength: *mut c_uint,
3946 numbuffers: *mut c_int,
3947 ) -> FMOD_RESULT;
3948 pub fn FMOD_System_SetFileSystem(
3949 system: *mut FMOD_SYSTEM,
3950 useropen: FMOD_FILE_OPEN_CALLBACK,
3951 userclose: FMOD_FILE_CLOSE_CALLBACK,
3952 userread: FMOD_FILE_READ_CALLBACK,
3953 userseek: FMOD_FILE_SEEK_CALLBACK,
3954 userasyncread: FMOD_FILE_ASYNCREAD_CALLBACK,
3955 userasynccancel: FMOD_FILE_ASYNCCANCEL_CALLBACK,
3956 blockalign: c_int,
3957 ) -> FMOD_RESULT;
3958 pub fn FMOD_System_AttachFileSystem(
3959 system: *mut FMOD_SYSTEM,
3960 useropen: FMOD_FILE_OPEN_CALLBACK,
3961 userclose: FMOD_FILE_CLOSE_CALLBACK,
3962 userread: FMOD_FILE_READ_CALLBACK,
3963 userseek: FMOD_FILE_SEEK_CALLBACK,
3964 ) -> FMOD_RESULT;
3965 pub fn FMOD_System_SetAdvancedSettings(
3966 system: *mut FMOD_SYSTEM,
3967 settings: *mut FMOD_ADVANCEDSETTINGS,
3968 ) -> FMOD_RESULT;
3969 pub fn FMOD_System_GetAdvancedSettings(
3970 system: *mut FMOD_SYSTEM,
3971 settings: *mut FMOD_ADVANCEDSETTINGS,
3972 ) -> FMOD_RESULT;
3973 pub fn FMOD_System_SetCallback(
3974 system: *mut FMOD_SYSTEM,
3975 callback: FMOD_SYSTEM_CALLBACK,
3976 callbackmask: FMOD_SYSTEM_CALLBACK_TYPE,
3977 ) -> FMOD_RESULT;
3978 pub fn FMOD_System_SetPluginPath(system: *mut FMOD_SYSTEM, path: *const c_char) -> FMOD_RESULT;
3979 pub fn FMOD_System_LoadPlugin(
3980 system: *mut FMOD_SYSTEM,
3981 filename: *const c_char,
3982 handle: *mut c_uint,
3983 priority: c_uint,
3984 ) -> FMOD_RESULT;
3985 pub fn FMOD_System_UnloadPlugin(system: *mut FMOD_SYSTEM, handle: c_uint) -> FMOD_RESULT;
3986 pub fn FMOD_System_GetNumNestedPlugins(
3987 system: *mut FMOD_SYSTEM,
3988 handle: c_uint,
3989 count: *mut c_int,
3990 ) -> FMOD_RESULT;
3991 pub fn FMOD_System_GetNestedPlugin(
3992 system: *mut FMOD_SYSTEM,
3993 handle: c_uint,
3994 index: c_int,
3995 nestedhandle: *mut c_uint,
3996 ) -> FMOD_RESULT;
3997 pub fn FMOD_System_GetNumPlugins(
3998 system: *mut FMOD_SYSTEM,
3999 plugintype: FMOD_PLUGINTYPE,
4000 numplugins: *mut c_int,
4001 ) -> FMOD_RESULT;
4002 pub fn FMOD_System_GetPluginHandle(
4003 system: *mut FMOD_SYSTEM,
4004 plugintype: FMOD_PLUGINTYPE,
4005 index: c_int,
4006 handle: *mut c_uint,
4007 ) -> FMOD_RESULT;
4008 pub fn FMOD_System_GetPluginInfo(
4009 system: *mut FMOD_SYSTEM,
4010 handle: c_uint,
4011 plugintype: *mut FMOD_PLUGINTYPE,
4012 name: *mut c_char,
4013 namelen: c_int,
4014 version: *mut c_uint,
4015 ) -> FMOD_RESULT;
4016 pub fn FMOD_System_SetOutputByPlugin(system: *mut FMOD_SYSTEM, handle: c_uint) -> FMOD_RESULT;
4017 pub fn FMOD_System_GetOutputByPlugin(
4018 system: *mut FMOD_SYSTEM,
4019 handle: *mut c_uint,
4020 ) -> FMOD_RESULT;
4021 pub fn FMOD_System_CreateDSPByPlugin(
4022 system: *mut FMOD_SYSTEM,
4023 handle: c_uint,
4024 dsp: *mut *mut FMOD_DSP,
4025 ) -> FMOD_RESULT;
4026 pub fn FMOD_System_GetDSPInfoByPlugin(
4027 system: *mut FMOD_SYSTEM,
4028 handle: c_uint,
4029 description: *const *const FMOD_DSP_DESCRIPTION,
4030 ) -> FMOD_RESULT;
4031 pub fn FMOD_System_RegisterCodec(
4032 system: *mut FMOD_SYSTEM,
4033 description: *mut FMOD_CODEC_DESCRIPTION,
4034 handle: *mut c_uint,
4035 priority: c_uint,
4036 ) -> FMOD_RESULT;
4037 pub fn FMOD_System_RegisterDSP(
4038 system: *mut FMOD_SYSTEM,
4039 description: *const FMOD_DSP_DESCRIPTION,
4040 handle: *mut c_uint,
4041 ) -> FMOD_RESULT;
4042 pub fn FMOD_System_RegisterOutput(
4043 system: *mut FMOD_SYSTEM,
4044 description: *const FMOD_OUTPUT_DESCRIPTION,
4045 handle: *mut c_uint,
4046 ) -> FMOD_RESULT;
4047 pub fn FMOD_System_Init(
4048 system: *mut FMOD_SYSTEM,
4049 maxchannels: c_int,
4050 flags: FMOD_INITFLAGS,
4051 extradriverdata: *mut c_void,
4052 ) -> FMOD_RESULT;
4053 pub fn FMOD_System_Close(system: *mut FMOD_SYSTEM) -> FMOD_RESULT;
4054 pub fn FMOD_System_Update(system: *mut FMOD_SYSTEM) -> FMOD_RESULT;
4055 pub fn FMOD_System_SetSpeakerPosition(
4056 system: *mut FMOD_SYSTEM,
4057 speaker: FMOD_SPEAKER,
4058 x: c_float,
4059 y: c_float,
4060 active: FMOD_BOOL,
4061 ) -> FMOD_RESULT;
4062 pub fn FMOD_System_GetSpeakerPosition(
4063 system: *mut FMOD_SYSTEM,
4064 speaker: FMOD_SPEAKER,
4065 x: *mut c_float,
4066 y: *mut c_float,
4067 active: *mut FMOD_BOOL,
4068 ) -> FMOD_RESULT;
4069 pub fn FMOD_System_SetStreamBufferSize(
4070 system: *mut FMOD_SYSTEM,
4071 filebuffersize: c_uint,
4072 filebuffersizetype: FMOD_TIMEUNIT,
4073 ) -> FMOD_RESULT;
4074 pub fn FMOD_System_GetStreamBufferSize(
4075 system: *mut FMOD_SYSTEM,
4076 filebuffersize: *mut c_uint,
4077 filebuffersizetype: *mut FMOD_TIMEUNIT,
4078 ) -> FMOD_RESULT;
4079 pub fn FMOD_System_Set3DSettings(
4080 system: *mut FMOD_SYSTEM,
4081 dopplerscale: c_float,
4082 distancefactor: c_float,
4083 rolloffscale: c_float,
4084 ) -> FMOD_RESULT;
4085 pub fn FMOD_System_Get3DSettings(
4086 system: *mut FMOD_SYSTEM,
4087 dopplerscale: *mut c_float,
4088 distancefactor: *mut c_float,
4089 rolloffscale: *mut c_float,
4090 ) -> FMOD_RESULT;
4091 pub fn FMOD_System_Set3DNumListeners(
4092 system: *mut FMOD_SYSTEM,
4093 numlisteners: c_int,
4094 ) -> FMOD_RESULT;
4095 pub fn FMOD_System_Get3DNumListeners(
4096 system: *mut FMOD_SYSTEM,
4097 numlisteners: *mut c_int,
4098 ) -> FMOD_RESULT;
4099 pub fn FMOD_System_Set3DListenerAttributes(
4100 system: *mut FMOD_SYSTEM,
4101 listener: c_int,
4102 pos: *const FMOD_VECTOR,
4103 vel: *const FMOD_VECTOR,
4104 forward: *const FMOD_VECTOR,
4105 up: *const FMOD_VECTOR,
4106 ) -> FMOD_RESULT;
4107 pub fn FMOD_System_Get3DListenerAttributes(
4108 system: *mut FMOD_SYSTEM,
4109 listener: c_int,
4110 pos: *mut FMOD_VECTOR,
4111 vel: *mut FMOD_VECTOR,
4112 forward: *mut FMOD_VECTOR,
4113 up: *mut FMOD_VECTOR,
4114 ) -> FMOD_RESULT;
4115 pub fn FMOD_System_Set3DRolloffCallback(
4116 system: *mut FMOD_SYSTEM,
4117 callback: FMOD_3D_ROLLOFF_CALLBACK,
4118 ) -> FMOD_RESULT;
4119 pub fn FMOD_System_MixerSuspend(system: *mut FMOD_SYSTEM) -> FMOD_RESULT;
4120 pub fn FMOD_System_MixerResume(system: *mut FMOD_SYSTEM) -> FMOD_RESULT;
4121 pub fn FMOD_System_GetDefaultMixMatrix(
4122 system: *mut FMOD_SYSTEM,
4123 sourcespeakermode: FMOD_SPEAKERMODE,
4124 targetspeakermode: FMOD_SPEAKERMODE,
4125 matrix: *mut c_float,
4126 matrixhop: c_int,
4127 ) -> FMOD_RESULT;
4128 pub fn FMOD_System_GetSpeakerModeChannels(
4129 system: *mut FMOD_SYSTEM,
4130 mode: FMOD_SPEAKERMODE,
4131 channels: *mut c_int,
4132 ) -> FMOD_RESULT;
4133 pub fn FMOD_System_GetVersion(system: *mut FMOD_SYSTEM, version: *mut c_uint) -> FMOD_RESULT;
4134 pub fn FMOD_System_GetOutputHandle(
4135 system: *mut FMOD_SYSTEM,
4136 handle: *mut *mut c_void,
4137 ) -> FMOD_RESULT;
4138 pub fn FMOD_System_GetChannelsPlaying(
4139 system: *mut FMOD_SYSTEM,
4140 channels: *mut c_int,
4141 realchannels: *mut c_int,
4142 ) -> FMOD_RESULT;
4143 pub fn FMOD_System_GetCPUUsage(
4144 system: *mut FMOD_SYSTEM,
4145 usage: *mut FMOD_CPU_USAGE,
4146 ) -> FMOD_RESULT;
4147 pub fn FMOD_System_GetFileUsage(
4148 system: *mut FMOD_SYSTEM,
4149 sampleBytesRead: *mut c_longlong,
4150 streamBytesRead: *mut c_longlong,
4151 otherBytesRead: *mut c_longlong,
4152 ) -> FMOD_RESULT;
4153 pub fn FMOD_System_CreateSound(
4154 system: *mut FMOD_SYSTEM,
4155 name_or_data: *const c_char,
4156 mode: FMOD_MODE,
4157 exinfo: *mut FMOD_CREATESOUNDEXINFO,
4158 sound: *mut *mut FMOD_SOUND,
4159 ) -> FMOD_RESULT;
4160 pub fn FMOD_System_CreateStream(
4161 system: *mut FMOD_SYSTEM,
4162 name_or_data: *const c_char,
4163 mode: FMOD_MODE,
4164 exinfo: *mut FMOD_CREATESOUNDEXINFO,
4165 sound: *mut *mut FMOD_SOUND,
4166 ) -> FMOD_RESULT;
4167 pub fn FMOD_System_CreateDSP(
4168 system: *mut FMOD_SYSTEM,
4169 description: *const FMOD_DSP_DESCRIPTION,
4170 dsp: *mut *mut FMOD_DSP,
4171 ) -> FMOD_RESULT;
4172 pub fn FMOD_System_CreateDSPByType(
4173 system: *mut FMOD_SYSTEM,
4174 type_: FMOD_DSP_TYPE,
4175 dsp: *mut *mut FMOD_DSP,
4176 ) -> FMOD_RESULT;
4177 pub fn FMOD_System_CreateChannelGroup(
4178 system: *mut FMOD_SYSTEM,
4179 name: *const c_char,
4180 channelgroup: *mut *mut FMOD_CHANNELGROUP,
4181 ) -> FMOD_RESULT;
4182 pub fn FMOD_System_CreateSoundGroup(
4183 system: *mut FMOD_SYSTEM,
4184 name: *const c_char,
4185 soundgroup: *mut *mut FMOD_SOUNDGROUP,
4186 ) -> FMOD_RESULT;
4187 pub fn FMOD_System_CreateReverb3D(
4188 system: *mut FMOD_SYSTEM,
4189 reverb: *mut *mut FMOD_REVERB3D,
4190 ) -> FMOD_RESULT;
4191 pub fn FMOD_System_PlaySound(
4192 system: *mut FMOD_SYSTEM,
4193 sound: *mut FMOD_SOUND,
4194 channelgroup: *mut FMOD_CHANNELGROUP,
4195 paused: FMOD_BOOL,
4196 channel: *mut *mut FMOD_CHANNEL,
4197 ) -> FMOD_RESULT;
4198 pub fn FMOD_System_PlayDSP(
4199 system: *mut FMOD_SYSTEM,
4200 dsp: *mut FMOD_DSP,
4201 channelgroup: *mut FMOD_CHANNELGROUP,
4202 paused: FMOD_BOOL,
4203 channel: *mut *mut FMOD_CHANNEL,
4204 ) -> FMOD_RESULT;
4205 pub fn FMOD_System_GetChannel(
4206 system: *mut FMOD_SYSTEM,
4207 channelid: c_int,
4208 channel: *mut *mut FMOD_CHANNEL,
4209 ) -> FMOD_RESULT;
4210 pub fn FMOD_System_GetDSPInfoByType(
4211 system: *mut FMOD_SYSTEM,
4212 type_: FMOD_DSP_TYPE,
4213 description: *const *const FMOD_DSP_DESCRIPTION,
4214 ) -> FMOD_RESULT;
4215 pub fn FMOD_System_GetMasterChannelGroup(
4216 system: *mut FMOD_SYSTEM,
4217 channelgroup: *mut *mut FMOD_CHANNELGROUP,
4218 ) -> FMOD_RESULT;
4219 pub fn FMOD_System_GetMasterSoundGroup(
4220 system: *mut FMOD_SYSTEM,
4221 soundgroup: *mut *mut FMOD_SOUNDGROUP,
4222 ) -> FMOD_RESULT;
4223 pub fn FMOD_System_AttachChannelGroupToPort(
4224 system: *mut FMOD_SYSTEM,
4225 portType: FMOD_PORT_TYPE,
4226 portIndex: FMOD_PORT_INDEX,
4227 channelgroup: *mut FMOD_CHANNELGROUP,
4228 passThru: FMOD_BOOL,
4229 ) -> FMOD_RESULT;
4230 pub fn FMOD_System_DetachChannelGroupFromPort(
4231 system: *mut FMOD_SYSTEM,
4232 channelgroup: *mut FMOD_CHANNELGROUP,
4233 ) -> FMOD_RESULT;
4234 pub fn FMOD_System_SetReverbProperties(
4235 system: *mut FMOD_SYSTEM,
4236 instance: c_int,
4237 prop: *const FMOD_REVERB_PROPERTIES,
4238 ) -> FMOD_RESULT;
4239 pub fn FMOD_System_GetReverbProperties(
4240 system: *mut FMOD_SYSTEM,
4241 instance: c_int,
4242 prop: *mut FMOD_REVERB_PROPERTIES,
4243 ) -> FMOD_RESULT;
4244 pub fn FMOD_System_LockDSP(system: *mut FMOD_SYSTEM) -> FMOD_RESULT;
4245 pub fn FMOD_System_UnlockDSP(system: *mut FMOD_SYSTEM) -> FMOD_RESULT;
4246 pub fn FMOD_System_GetRecordNumDrivers(
4247 system: *mut FMOD_SYSTEM,
4248 numdrivers: *mut c_int,
4249 numconnected: *mut c_int,
4250 ) -> FMOD_RESULT;
4251 pub fn FMOD_System_GetRecordDriverInfo(
4252 system: *mut FMOD_SYSTEM,
4253 id: c_int,
4254 name: *mut c_char,
4255 namelen: c_int,
4256 guid: *mut FMOD_GUID,
4257 systemrate: *mut c_int,
4258 speakermode: *mut FMOD_SPEAKERMODE,
4259 speakermodechannels: *mut c_int,
4260 state: *mut FMOD_DRIVER_STATE,
4261 ) -> FMOD_RESULT;
4262 pub fn FMOD_System_GetRecordPosition(
4263 system: *mut FMOD_SYSTEM,
4264 id: c_int,
4265 position: *mut c_uint,
4266 ) -> FMOD_RESULT;
4267 pub fn FMOD_System_RecordStart(
4268 system: *mut FMOD_SYSTEM,
4269 id: c_int,
4270 sound: *mut FMOD_SOUND,
4271 loop_: FMOD_BOOL,
4272 ) -> FMOD_RESULT;
4273 pub fn FMOD_System_RecordStop(system: *mut FMOD_SYSTEM, id: c_int) -> FMOD_RESULT;
4274 pub fn FMOD_System_IsRecording(
4275 system: *mut FMOD_SYSTEM,
4276 id: c_int,
4277 recording: *mut FMOD_BOOL,
4278 ) -> FMOD_RESULT;
4279 pub fn FMOD_System_CreateGeometry(
4280 system: *mut FMOD_SYSTEM,
4281 maxpolygons: c_int,
4282 maxvertices: c_int,
4283 geometry: *mut *mut FMOD_GEOMETRY,
4284 ) -> FMOD_RESULT;
4285 pub fn FMOD_System_SetGeometrySettings(
4286 system: *mut FMOD_SYSTEM,
4287 maxworldsize: c_float,
4288 ) -> FMOD_RESULT;
4289 pub fn FMOD_System_GetGeometrySettings(
4290 system: *mut FMOD_SYSTEM,
4291 maxworldsize: *mut c_float,
4292 ) -> FMOD_RESULT;
4293 pub fn FMOD_System_LoadGeometry(
4294 system: *mut FMOD_SYSTEM,
4295 data: *const c_void,
4296 datasize: c_int,
4297 geometry: *mut *mut FMOD_GEOMETRY,
4298 ) -> FMOD_RESULT;
4299 pub fn FMOD_System_GetGeometryOcclusion(
4300 system: *mut FMOD_SYSTEM,
4301 listener: *const FMOD_VECTOR,
4302 source: *const FMOD_VECTOR,
4303 direct: *mut c_float,
4304 reverb: *mut c_float,
4305 ) -> FMOD_RESULT;
4306 pub fn FMOD_System_SetNetworkProxy(
4307 system: *mut FMOD_SYSTEM,
4308 proxy: *const c_char,
4309 ) -> FMOD_RESULT;
4310 pub fn FMOD_System_GetNetworkProxy(
4311 system: *mut FMOD_SYSTEM,
4312 proxy: *mut c_char,
4313 proxylen: c_int,
4314 ) -> FMOD_RESULT;
4315 pub fn FMOD_System_SetNetworkTimeout(system: *mut FMOD_SYSTEM, timeout: c_int) -> FMOD_RESULT;
4316 pub fn FMOD_System_GetNetworkTimeout(
4317 system: *mut FMOD_SYSTEM,
4318 timeout: *mut c_int,
4319 ) -> FMOD_RESULT;
4320 pub fn FMOD_System_SetUserData(system: *mut FMOD_SYSTEM, userdata: *mut c_void) -> FMOD_RESULT;
4321 pub fn FMOD_System_GetUserData(
4322 system: *mut FMOD_SYSTEM,
4323 userdata: *mut *mut c_void,
4324 ) -> FMOD_RESULT;
4325 pub fn FMOD_Sound_Release(sound: *mut FMOD_SOUND) -> FMOD_RESULT;
4326 pub fn FMOD_Sound_GetSystemObject(
4327 sound: *mut FMOD_SOUND,
4328 system: *mut *mut FMOD_SYSTEM,
4329 ) -> FMOD_RESULT;
4330 pub fn FMOD_Sound_Lock(
4331 sound: *mut FMOD_SOUND,
4332 offset: c_uint,
4333 length: c_uint,
4334 ptr1: *mut *mut c_void,
4335 ptr2: *mut *mut c_void,
4336 len1: *mut c_uint,
4337 len2: *mut c_uint,
4338 ) -> FMOD_RESULT;
4339 pub fn FMOD_Sound_Unlock(
4340 sound: *mut FMOD_SOUND,
4341 ptr1: *mut c_void,
4342 ptr2: *mut c_void,
4343 len1: c_uint,
4344 len2: c_uint,
4345 ) -> FMOD_RESULT;
4346 pub fn FMOD_Sound_SetDefaults(
4347 sound: *mut FMOD_SOUND,
4348 frequency: c_float,
4349 priority: c_int,
4350 ) -> FMOD_RESULT;
4351 pub fn FMOD_Sound_GetDefaults(
4352 sound: *mut FMOD_SOUND,
4353 frequency: *mut c_float,
4354 priority: *mut c_int,
4355 ) -> FMOD_RESULT;
4356 pub fn FMOD_Sound_Set3DMinMaxDistance(
4357 sound: *mut FMOD_SOUND,
4358 min: c_float,
4359 max: c_float,
4360 ) -> FMOD_RESULT;
4361 pub fn FMOD_Sound_Get3DMinMaxDistance(
4362 sound: *mut FMOD_SOUND,
4363 min: *mut c_float,
4364 max: *mut c_float,
4365 ) -> FMOD_RESULT;
4366 pub fn FMOD_Sound_Set3DConeSettings(
4367 sound: *mut FMOD_SOUND,
4368 insideconeangle: c_float,
4369 outsideconeangle: c_float,
4370 outsidevolume: c_float,
4371 ) -> FMOD_RESULT;
4372 pub fn FMOD_Sound_Get3DConeSettings(
4373 sound: *mut FMOD_SOUND,
4374 insideconeangle: *mut c_float,
4375 outsideconeangle: *mut c_float,
4376 outsidevolume: *mut c_float,
4377 ) -> FMOD_RESULT;
4378 pub fn FMOD_Sound_Set3DCustomRolloff(
4379 sound: *mut FMOD_SOUND,
4380 points: *mut FMOD_VECTOR,
4381 numpoints: c_int,
4382 ) -> FMOD_RESULT;
4383 pub fn FMOD_Sound_Get3DCustomRolloff(
4384 sound: *mut FMOD_SOUND,
4385 points: *mut *mut FMOD_VECTOR,
4386 numpoints: *mut c_int,
4387 ) -> FMOD_RESULT;
4388 pub fn FMOD_Sound_GetSubSound(
4389 sound: *mut FMOD_SOUND,
4390 index: c_int,
4391 subsound: *mut *mut FMOD_SOUND,
4392 ) -> FMOD_RESULT;
4393 pub fn FMOD_Sound_GetSubSoundParent(
4394 sound: *mut FMOD_SOUND,
4395 parentsound: *mut *mut FMOD_SOUND,
4396 ) -> FMOD_RESULT;
4397 pub fn FMOD_Sound_GetName(
4398 sound: *mut FMOD_SOUND,
4399 name: *mut c_char,
4400 namelen: c_int,
4401 ) -> FMOD_RESULT;
4402 pub fn FMOD_Sound_GetLength(
4403 sound: *mut FMOD_SOUND,
4404 length: *mut c_uint,
4405 lengthtype: FMOD_TIMEUNIT,
4406 ) -> FMOD_RESULT;
4407 pub fn FMOD_Sound_GetFormat(
4408 sound: *mut FMOD_SOUND,
4409 type_: *mut FMOD_SOUND_TYPE,
4410 format: *mut FMOD_SOUND_FORMAT,
4411 channels: *mut c_int,
4412 bits: *mut c_int,
4413 ) -> FMOD_RESULT;
4414 pub fn FMOD_Sound_GetNumSubSounds(
4415 sound: *mut FMOD_SOUND,
4416 numsubsounds: *mut c_int,
4417 ) -> FMOD_RESULT;
4418 pub fn FMOD_Sound_GetNumTags(
4419 sound: *mut FMOD_SOUND,
4420 numtags: *mut c_int,
4421 numtagsupdated: *mut c_int,
4422 ) -> FMOD_RESULT;
4423 pub fn FMOD_Sound_GetTag(
4424 sound: *mut FMOD_SOUND,
4425 name: *const c_char,
4426 index: c_int,
4427 tag: *mut FMOD_TAG,
4428 ) -> FMOD_RESULT;
4429 pub fn FMOD_Sound_GetOpenState(
4430 sound: *mut FMOD_SOUND,
4431 openstate: *mut FMOD_OPENSTATE,
4432 percentbuffered: *mut c_uint,
4433 starving: *mut FMOD_BOOL,
4434 diskbusy: *mut FMOD_BOOL,
4435 ) -> FMOD_RESULT;
4436 pub fn FMOD_Sound_ReadData(
4437 sound: *mut FMOD_SOUND,
4438 buffer: *mut c_void,
4439 length: c_uint,
4440 read: *mut c_uint,
4441 ) -> FMOD_RESULT;
4442 pub fn FMOD_Sound_SeekData(sound: *mut FMOD_SOUND, pcm: c_uint) -> FMOD_RESULT;
4443 pub fn FMOD_Sound_SetSoundGroup(
4444 sound: *mut FMOD_SOUND,
4445 soundgroup: *mut FMOD_SOUNDGROUP,
4446 ) -> FMOD_RESULT;
4447 pub fn FMOD_Sound_GetSoundGroup(
4448 sound: *mut FMOD_SOUND,
4449 soundgroup: *mut *mut FMOD_SOUNDGROUP,
4450 ) -> FMOD_RESULT;
4451 pub fn FMOD_Sound_GetNumSyncPoints(
4452 sound: *mut FMOD_SOUND,
4453 numsyncpoints: *mut c_int,
4454 ) -> FMOD_RESULT;
4455 pub fn FMOD_Sound_GetSyncPoint(
4456 sound: *mut FMOD_SOUND,
4457 index: c_int,
4458 point: *mut *mut FMOD_SYNCPOINT,
4459 ) -> FMOD_RESULT;
4460 pub fn FMOD_Sound_GetSyncPointInfo(
4461 sound: *mut FMOD_SOUND,
4462 point: *mut FMOD_SYNCPOINT,
4463 name: *mut c_char,
4464 namelen: c_int,
4465 offset: *mut c_uint,
4466 offsettype: FMOD_TIMEUNIT,
4467 ) -> FMOD_RESULT;
4468 pub fn FMOD_Sound_AddSyncPoint(
4469 sound: *mut FMOD_SOUND,
4470 offset: c_uint,
4471 offsettype: FMOD_TIMEUNIT,
4472 name: *const c_char,
4473 point: *mut *mut FMOD_SYNCPOINT,
4474 ) -> FMOD_RESULT;
4475 pub fn FMOD_Sound_DeleteSyncPoint(
4476 sound: *mut FMOD_SOUND,
4477 point: *mut FMOD_SYNCPOINT,
4478 ) -> FMOD_RESULT;
4479 pub fn FMOD_Sound_SetMode(sound: *mut FMOD_SOUND, mode: FMOD_MODE) -> FMOD_RESULT;
4480 pub fn FMOD_Sound_GetMode(sound: *mut FMOD_SOUND, mode: *mut FMOD_MODE) -> FMOD_RESULT;
4481 pub fn FMOD_Sound_SetLoopCount(sound: *mut FMOD_SOUND, loopcount: c_int) -> FMOD_RESULT;
4482 pub fn FMOD_Sound_GetLoopCount(sound: *mut FMOD_SOUND, loopcount: *mut c_int) -> FMOD_RESULT;
4483 pub fn FMOD_Sound_SetLoopPoints(
4484 sound: *mut FMOD_SOUND,
4485 loopstart: c_uint,
4486 loopstarttype: FMOD_TIMEUNIT,
4487 loopend: c_uint,
4488 loopendtype: FMOD_TIMEUNIT,
4489 ) -> FMOD_RESULT;
4490 pub fn FMOD_Sound_GetLoopPoints(
4491 sound: *mut FMOD_SOUND,
4492 loopstart: *mut c_uint,
4493 loopstarttype: FMOD_TIMEUNIT,
4494 loopend: *mut c_uint,
4495 loopendtype: FMOD_TIMEUNIT,
4496 ) -> FMOD_RESULT;
4497 pub fn FMOD_Sound_GetMusicNumChannels(
4498 sound: *mut FMOD_SOUND,
4499 numchannels: *mut c_int,
4500 ) -> FMOD_RESULT;
4501 pub fn FMOD_Sound_SetMusicChannelVolume(
4502 sound: *mut FMOD_SOUND,
4503 channel: c_int,
4504 volume: c_float,
4505 ) -> FMOD_RESULT;
4506 pub fn FMOD_Sound_GetMusicChannelVolume(
4507 sound: *mut FMOD_SOUND,
4508 channel: c_int,
4509 volume: *mut c_float,
4510 ) -> FMOD_RESULT;
4511 pub fn FMOD_Sound_SetMusicSpeed(sound: *mut FMOD_SOUND, speed: c_float) -> FMOD_RESULT;
4512 pub fn FMOD_Sound_GetMusicSpeed(sound: *mut FMOD_SOUND, speed: *mut c_float) -> FMOD_RESULT;
4513 pub fn FMOD_Sound_SetUserData(sound: *mut FMOD_SOUND, userdata: *mut c_void) -> FMOD_RESULT;
4514 pub fn FMOD_Sound_GetUserData(
4515 sound: *mut FMOD_SOUND,
4516 userdata: *mut *mut c_void,
4517 ) -> FMOD_RESULT;
4518 pub fn FMOD_Channel_GetSystemObject(
4519 channel: *mut FMOD_CHANNEL,
4520 system: *mut *mut FMOD_SYSTEM,
4521 ) -> FMOD_RESULT;
4522 pub fn FMOD_Channel_Stop(channel: *mut FMOD_CHANNEL) -> FMOD_RESULT;
4523 pub fn FMOD_Channel_SetPaused(channel: *mut FMOD_CHANNEL, paused: FMOD_BOOL) -> FMOD_RESULT;
4524 pub fn FMOD_Channel_GetPaused(
4525 channel: *mut FMOD_CHANNEL,
4526 paused: *mut FMOD_BOOL,
4527 ) -> FMOD_RESULT;
4528 pub fn FMOD_Channel_SetVolume(channel: *mut FMOD_CHANNEL, volume: c_float) -> FMOD_RESULT;
4529 pub fn FMOD_Channel_GetVolume(channel: *mut FMOD_CHANNEL, volume: *mut c_float) -> FMOD_RESULT;
4530 pub fn FMOD_Channel_SetVolumeRamp(channel: *mut FMOD_CHANNEL, ramp: FMOD_BOOL) -> FMOD_RESULT;
4531 pub fn FMOD_Channel_GetVolumeRamp(
4532 channel: *mut FMOD_CHANNEL,
4533 ramp: *mut FMOD_BOOL,
4534 ) -> FMOD_RESULT;
4535 pub fn FMOD_Channel_GetAudibility(
4536 channel: *mut FMOD_CHANNEL,
4537 audibility: *mut c_float,
4538 ) -> FMOD_RESULT;
4539 pub fn FMOD_Channel_SetPitch(channel: *mut FMOD_CHANNEL, pitch: c_float) -> FMOD_RESULT;
4540 pub fn FMOD_Channel_GetPitch(channel: *mut FMOD_CHANNEL, pitch: *mut c_float) -> FMOD_RESULT;
4541 pub fn FMOD_Channel_SetMute(channel: *mut FMOD_CHANNEL, mute: FMOD_BOOL) -> FMOD_RESULT;
4542 pub fn FMOD_Channel_GetMute(channel: *mut FMOD_CHANNEL, mute: *mut FMOD_BOOL) -> FMOD_RESULT;
4543 pub fn FMOD_Channel_SetReverbProperties(
4544 channel: *mut FMOD_CHANNEL,
4545 instance: c_int,
4546 wet: c_float,
4547 ) -> FMOD_RESULT;
4548 pub fn FMOD_Channel_GetReverbProperties(
4549 channel: *mut FMOD_CHANNEL,
4550 instance: c_int,
4551 wet: *mut c_float,
4552 ) -> FMOD_RESULT;
4553 pub fn FMOD_Channel_SetLowPassGain(channel: *mut FMOD_CHANNEL, gain: c_float) -> FMOD_RESULT;
4554 pub fn FMOD_Channel_GetLowPassGain(
4555 channel: *mut FMOD_CHANNEL,
4556 gain: *mut c_float,
4557 ) -> FMOD_RESULT;
4558 pub fn FMOD_Channel_SetMode(channel: *mut FMOD_CHANNEL, mode: FMOD_MODE) -> FMOD_RESULT;
4559 pub fn FMOD_Channel_GetMode(channel: *mut FMOD_CHANNEL, mode: *mut FMOD_MODE) -> FMOD_RESULT;
4560 pub fn FMOD_Channel_SetCallback(
4561 channel: *mut FMOD_CHANNEL,
4562 callback: FMOD_CHANNELCONTROL_CALLBACK,
4563 ) -> FMOD_RESULT;
4564 pub fn FMOD_Channel_IsPlaying(
4565 channel: *mut FMOD_CHANNEL,
4566 isplaying: *mut FMOD_BOOL,
4567 ) -> FMOD_RESULT;
4568 pub fn FMOD_Channel_SetPan(channel: *mut FMOD_CHANNEL, pan: c_float) -> FMOD_RESULT;
4569 pub fn FMOD_Channel_SetMixLevelsOutput(
4570 channel: *mut FMOD_CHANNEL,
4571 frontleft: c_float,
4572 frontright: c_float,
4573 center: c_float,
4574 lfe: c_float,
4575 surroundleft: c_float,
4576 surroundright: c_float,
4577 backleft: c_float,
4578 backright: c_float,
4579 ) -> FMOD_RESULT;
4580 pub fn FMOD_Channel_SetMixLevelsInput(
4581 channel: *mut FMOD_CHANNEL,
4582 levels: *mut c_float,
4583 numlevels: c_int,
4584 ) -> FMOD_RESULT;
4585 pub fn FMOD_Channel_SetMixMatrix(
4586 channel: *mut FMOD_CHANNEL,
4587 matrix: *mut c_float,
4588 outchannels: c_int,
4589 inchannels: c_int,
4590 inchannel_hop: c_int,
4591 ) -> FMOD_RESULT;
4592 pub fn FMOD_Channel_GetMixMatrix(
4593 channel: *mut FMOD_CHANNEL,
4594 matrix: *mut c_float,
4595 outchannels: *mut c_int,
4596 inchannels: *mut c_int,
4597 inchannel_hop: c_int,
4598 ) -> FMOD_RESULT;
4599 pub fn FMOD_Channel_GetDSPClock(
4600 channel: *mut FMOD_CHANNEL,
4601 dspclock: *mut c_ulonglong,
4602 parentclock: *mut c_ulonglong,
4603 ) -> FMOD_RESULT;
4604 pub fn FMOD_Channel_SetDelay(
4605 channel: *mut FMOD_CHANNEL,
4606 dspclock_start: c_ulonglong,
4607 dspclock_end: c_ulonglong,
4608 stopchannels: FMOD_BOOL,
4609 ) -> FMOD_RESULT;
4610 pub fn FMOD_Channel_GetDelay(
4611 channel: *mut FMOD_CHANNEL,
4612 dspclock_start: *mut c_ulonglong,
4613 dspclock_end: *mut c_ulonglong,
4614 stopchannels: *mut FMOD_BOOL,
4615 ) -> FMOD_RESULT;
4616 pub fn FMOD_Channel_AddFadePoint(
4617 channel: *mut FMOD_CHANNEL,
4618 dspclock: c_ulonglong,
4619 volume: c_float,
4620 ) -> FMOD_RESULT;
4621 pub fn FMOD_Channel_SetFadePointRamp(
4622 channel: *mut FMOD_CHANNEL,
4623 dspclock: c_ulonglong,
4624 volume: c_float,
4625 ) -> FMOD_RESULT;
4626 pub fn FMOD_Channel_RemoveFadePoints(
4627 channel: *mut FMOD_CHANNEL,
4628 dspclock_start: c_ulonglong,
4629 dspclock_end: c_ulonglong,
4630 ) -> FMOD_RESULT;
4631 pub fn FMOD_Channel_GetFadePoints(
4632 channel: *mut FMOD_CHANNEL,
4633 numpoints: *mut c_uint,
4634 point_dspclock: *mut c_ulonglong,
4635 point_volume: *mut c_float,
4636 ) -> FMOD_RESULT;
4637 pub fn FMOD_Channel_GetDSP(
4638 channel: *mut FMOD_CHANNEL,
4639 index: c_int,
4640 dsp: *mut *mut FMOD_DSP,
4641 ) -> FMOD_RESULT;
4642 pub fn FMOD_Channel_AddDSP(
4643 channel: *mut FMOD_CHANNEL,
4644 index: c_int,
4645 dsp: *mut FMOD_DSP,
4646 ) -> FMOD_RESULT;
4647 pub fn FMOD_Channel_RemoveDSP(channel: *mut FMOD_CHANNEL, dsp: *mut FMOD_DSP) -> FMOD_RESULT;
4648 pub fn FMOD_Channel_GetNumDSPs(channel: *mut FMOD_CHANNEL, numdsps: *mut c_int) -> FMOD_RESULT;
4649 pub fn FMOD_Channel_SetDSPIndex(
4650 channel: *mut FMOD_CHANNEL,
4651 dsp: *mut FMOD_DSP,
4652 index: c_int,
4653 ) -> FMOD_RESULT;
4654 pub fn FMOD_Channel_GetDSPIndex(
4655 channel: *mut FMOD_CHANNEL,
4656 dsp: *mut FMOD_DSP,
4657 index: *mut c_int,
4658 ) -> FMOD_RESULT;
4659 pub fn FMOD_Channel_Set3DAttributes(
4660 channel: *mut FMOD_CHANNEL,
4661 pos: *const FMOD_VECTOR,
4662 vel: *const FMOD_VECTOR,
4663 ) -> FMOD_RESULT;
4664 pub fn FMOD_Channel_Get3DAttributes(
4665 channel: *mut FMOD_CHANNEL,
4666 pos: *mut FMOD_VECTOR,
4667 vel: *mut FMOD_VECTOR,
4668 ) -> FMOD_RESULT;
4669 pub fn FMOD_Channel_Set3DMinMaxDistance(
4670 channel: *mut FMOD_CHANNEL,
4671 mindistance: c_float,
4672 maxdistance: c_float,
4673 ) -> FMOD_RESULT;
4674 pub fn FMOD_Channel_Get3DMinMaxDistance(
4675 channel: *mut FMOD_CHANNEL,
4676 mindistance: *mut c_float,
4677 maxdistance: *mut c_float,
4678 ) -> FMOD_RESULT;
4679 pub fn FMOD_Channel_Set3DConeSettings(
4680 channel: *mut FMOD_CHANNEL,
4681 insideconeangle: c_float,
4682 outsideconeangle: c_float,
4683 outsidevolume: c_float,
4684 ) -> FMOD_RESULT;
4685 pub fn FMOD_Channel_Get3DConeSettings(
4686 channel: *mut FMOD_CHANNEL,
4687 insideconeangle: *mut c_float,
4688 outsideconeangle: *mut c_float,
4689 outsidevolume: *mut c_float,
4690 ) -> FMOD_RESULT;
4691 pub fn FMOD_Channel_Set3DConeOrientation(
4692 channel: *mut FMOD_CHANNEL,
4693 orientation: *mut FMOD_VECTOR,
4694 ) -> FMOD_RESULT;
4695 pub fn FMOD_Channel_Get3DConeOrientation(
4696 channel: *mut FMOD_CHANNEL,
4697 orientation: *mut FMOD_VECTOR,
4698 ) -> FMOD_RESULT;
4699 pub fn FMOD_Channel_Set3DCustomRolloff(
4700 channel: *mut FMOD_CHANNEL,
4701 points: *mut FMOD_VECTOR,
4702 numpoints: c_int,
4703 ) -> FMOD_RESULT;
4704 pub fn FMOD_Channel_Get3DCustomRolloff(
4705 channel: *mut FMOD_CHANNEL,
4706 points: *mut *mut FMOD_VECTOR,
4707 numpoints: *mut c_int,
4708 ) -> FMOD_RESULT;
4709 pub fn FMOD_Channel_Set3DOcclusion(
4710 channel: *mut FMOD_CHANNEL,
4711 directocclusion: c_float,
4712 reverbocclusion: c_float,
4713 ) -> FMOD_RESULT;
4714 pub fn FMOD_Channel_Get3DOcclusion(
4715 channel: *mut FMOD_CHANNEL,
4716 directocclusion: *mut c_float,
4717 reverbocclusion: *mut c_float,
4718 ) -> FMOD_RESULT;
4719 pub fn FMOD_Channel_Set3DSpread(channel: *mut FMOD_CHANNEL, angle: c_float) -> FMOD_RESULT;
4720 pub fn FMOD_Channel_Get3DSpread(channel: *mut FMOD_CHANNEL, angle: *mut c_float)
4721 -> FMOD_RESULT;
4722 pub fn FMOD_Channel_Set3DLevel(channel: *mut FMOD_CHANNEL, level: c_float) -> FMOD_RESULT;
4723 pub fn FMOD_Channel_Get3DLevel(channel: *mut FMOD_CHANNEL, level: *mut c_float) -> FMOD_RESULT;
4724 pub fn FMOD_Channel_Set3DDopplerLevel(
4725 channel: *mut FMOD_CHANNEL,
4726 level: c_float,
4727 ) -> FMOD_RESULT;
4728 pub fn FMOD_Channel_Get3DDopplerLevel(
4729 channel: *mut FMOD_CHANNEL,
4730 level: *mut c_float,
4731 ) -> FMOD_RESULT;
4732 pub fn FMOD_Channel_Set3DDistanceFilter(
4733 channel: *mut FMOD_CHANNEL,
4734 custom: FMOD_BOOL,
4735 customLevel: c_float,
4736 centerFreq: c_float,
4737 ) -> FMOD_RESULT;
4738 pub fn FMOD_Channel_Get3DDistanceFilter(
4739 channel: *mut FMOD_CHANNEL,
4740 custom: *mut FMOD_BOOL,
4741 customLevel: *mut c_float,
4742 centerFreq: *mut c_float,
4743 ) -> FMOD_RESULT;
4744 pub fn FMOD_Channel_SetUserData(
4745 channel: *mut FMOD_CHANNEL,
4746 userdata: *mut c_void,
4747 ) -> FMOD_RESULT;
4748 pub fn FMOD_Channel_GetUserData(
4749 channel: *mut FMOD_CHANNEL,
4750 userdata: *mut *mut c_void,
4751 ) -> FMOD_RESULT;
4752 pub fn FMOD_Channel_SetFrequency(channel: *mut FMOD_CHANNEL, frequency: c_float)
4753 -> FMOD_RESULT;
4754 pub fn FMOD_Channel_GetFrequency(
4755 channel: *mut FMOD_CHANNEL,
4756 frequency: *mut c_float,
4757 ) -> FMOD_RESULT;
4758 pub fn FMOD_Channel_SetPriority(channel: *mut FMOD_CHANNEL, priority: c_int) -> FMOD_RESULT;
4759 pub fn FMOD_Channel_GetPriority(
4760 channel: *mut FMOD_CHANNEL,
4761 priority: *mut c_int,
4762 ) -> FMOD_RESULT;
4763 pub fn FMOD_Channel_SetPosition(
4764 channel: *mut FMOD_CHANNEL,
4765 position: c_uint,
4766 postype: FMOD_TIMEUNIT,
4767 ) -> FMOD_RESULT;
4768 pub fn FMOD_Channel_GetPosition(
4769 channel: *mut FMOD_CHANNEL,
4770 position: *mut c_uint,
4771 postype: FMOD_TIMEUNIT,
4772 ) -> FMOD_RESULT;
4773 pub fn FMOD_Channel_SetChannelGroup(
4774 channel: *mut FMOD_CHANNEL,
4775 channelgroup: *mut FMOD_CHANNELGROUP,
4776 ) -> FMOD_RESULT;
4777 pub fn FMOD_Channel_GetChannelGroup(
4778 channel: *mut FMOD_CHANNEL,
4779 channelgroup: *mut *mut FMOD_CHANNELGROUP,
4780 ) -> FMOD_RESULT;
4781 pub fn FMOD_Channel_SetLoopCount(channel: *mut FMOD_CHANNEL, loopcount: c_int) -> FMOD_RESULT;
4782 pub fn FMOD_Channel_GetLoopCount(
4783 channel: *mut FMOD_CHANNEL,
4784 loopcount: *mut c_int,
4785 ) -> FMOD_RESULT;
4786 pub fn FMOD_Channel_SetLoopPoints(
4787 channel: *mut FMOD_CHANNEL,
4788 loopstart: c_uint,
4789 loopstarttype: FMOD_TIMEUNIT,
4790 loopend: c_uint,
4791 loopendtype: FMOD_TIMEUNIT,
4792 ) -> FMOD_RESULT;
4793 pub fn FMOD_Channel_GetLoopPoints(
4794 channel: *mut FMOD_CHANNEL,
4795 loopstart: *mut c_uint,
4796 loopstarttype: FMOD_TIMEUNIT,
4797 loopend: *mut c_uint,
4798 loopendtype: FMOD_TIMEUNIT,
4799 ) -> FMOD_RESULT;
4800 pub fn FMOD_Channel_IsVirtual(
4801 channel: *mut FMOD_CHANNEL,
4802 isvirtual: *mut FMOD_BOOL,
4803 ) -> FMOD_RESULT;
4804 pub fn FMOD_Channel_GetCurrentSound(
4805 channel: *mut FMOD_CHANNEL,
4806 sound: *mut *mut FMOD_SOUND,
4807 ) -> FMOD_RESULT;
4808 pub fn FMOD_Channel_GetIndex(channel: *mut FMOD_CHANNEL, index: *mut c_int) -> FMOD_RESULT;
4809 pub fn FMOD_ChannelGroup_GetSystemObject(
4810 channelgroup: *mut FMOD_CHANNELGROUP,
4811 system: *mut *mut FMOD_SYSTEM,
4812 ) -> FMOD_RESULT;
4813 pub fn FMOD_ChannelGroup_Stop(channelgroup: *mut FMOD_CHANNELGROUP) -> FMOD_RESULT;
4814 pub fn FMOD_ChannelGroup_SetPaused(
4815 channelgroup: *mut FMOD_CHANNELGROUP,
4816 paused: FMOD_BOOL,
4817 ) -> FMOD_RESULT;
4818 pub fn FMOD_ChannelGroup_GetPaused(
4819 channelgroup: *mut FMOD_CHANNELGROUP,
4820 paused: *mut FMOD_BOOL,
4821 ) -> FMOD_RESULT;
4822 pub fn FMOD_ChannelGroup_SetVolume(
4823 channelgroup: *mut FMOD_CHANNELGROUP,
4824 volume: c_float,
4825 ) -> FMOD_RESULT;
4826 pub fn FMOD_ChannelGroup_GetVolume(
4827 channelgroup: *mut FMOD_CHANNELGROUP,
4828 volume: *mut c_float,
4829 ) -> FMOD_RESULT;
4830 pub fn FMOD_ChannelGroup_SetVolumeRamp(
4831 channelgroup: *mut FMOD_CHANNELGROUP,
4832 ramp: FMOD_BOOL,
4833 ) -> FMOD_RESULT;
4834 pub fn FMOD_ChannelGroup_GetVolumeRamp(
4835 channelgroup: *mut FMOD_CHANNELGROUP,
4836 ramp: *mut FMOD_BOOL,
4837 ) -> FMOD_RESULT;
4838 pub fn FMOD_ChannelGroup_GetAudibility(
4839 channelgroup: *mut FMOD_CHANNELGROUP,
4840 audibility: *mut c_float,
4841 ) -> FMOD_RESULT;
4842 pub fn FMOD_ChannelGroup_SetPitch(
4843 channelgroup: *mut FMOD_CHANNELGROUP,
4844 pitch: c_float,
4845 ) -> FMOD_RESULT;
4846 pub fn FMOD_ChannelGroup_GetPitch(
4847 channelgroup: *mut FMOD_CHANNELGROUP,
4848 pitch: *mut c_float,
4849 ) -> FMOD_RESULT;
4850 pub fn FMOD_ChannelGroup_SetMute(
4851 channelgroup: *mut FMOD_CHANNELGROUP,
4852 mute: FMOD_BOOL,
4853 ) -> FMOD_RESULT;
4854 pub fn FMOD_ChannelGroup_GetMute(
4855 channelgroup: *mut FMOD_CHANNELGROUP,
4856 mute: *mut FMOD_BOOL,
4857 ) -> FMOD_RESULT;
4858 pub fn FMOD_ChannelGroup_SetReverbProperties(
4859 channelgroup: *mut FMOD_CHANNELGROUP,
4860 instance: c_int,
4861 wet: c_float,
4862 ) -> FMOD_RESULT;
4863 pub fn FMOD_ChannelGroup_GetReverbProperties(
4864 channelgroup: *mut FMOD_CHANNELGROUP,
4865 instance: c_int,
4866 wet: *mut c_float,
4867 ) -> FMOD_RESULT;
4868 pub fn FMOD_ChannelGroup_SetLowPassGain(
4869 channelgroup: *mut FMOD_CHANNELGROUP,
4870 gain: c_float,
4871 ) -> FMOD_RESULT;
4872 pub fn FMOD_ChannelGroup_GetLowPassGain(
4873 channelgroup: *mut FMOD_CHANNELGROUP,
4874 gain: *mut c_float,
4875 ) -> FMOD_RESULT;
4876 pub fn FMOD_ChannelGroup_SetMode(
4877 channelgroup: *mut FMOD_CHANNELGROUP,
4878 mode: FMOD_MODE,
4879 ) -> FMOD_RESULT;
4880 pub fn FMOD_ChannelGroup_GetMode(
4881 channelgroup: *mut FMOD_CHANNELGROUP,
4882 mode: *mut FMOD_MODE,
4883 ) -> FMOD_RESULT;
4884 pub fn FMOD_ChannelGroup_SetCallback(
4885 channelgroup: *mut FMOD_CHANNELGROUP,
4886 callback: FMOD_CHANNELCONTROL_CALLBACK,
4887 ) -> FMOD_RESULT;
4888 pub fn FMOD_ChannelGroup_IsPlaying(
4889 channelgroup: *mut FMOD_CHANNELGROUP,
4890 isplaying: *mut FMOD_BOOL,
4891 ) -> FMOD_RESULT;
4892 pub fn FMOD_ChannelGroup_SetPan(
4893 channelgroup: *mut FMOD_CHANNELGROUP,
4894 pan: c_float,
4895 ) -> FMOD_RESULT;
4896 pub fn FMOD_ChannelGroup_SetMixLevelsOutput(
4897 channelgroup: *mut FMOD_CHANNELGROUP,
4898 frontleft: c_float,
4899 frontright: c_float,
4900 center: c_float,
4901 lfe: c_float,
4902 surroundleft: c_float,
4903 surroundright: c_float,
4904 backleft: c_float,
4905 backright: c_float,
4906 ) -> FMOD_RESULT;
4907 pub fn FMOD_ChannelGroup_SetMixLevelsInput(
4908 channelgroup: *mut FMOD_CHANNELGROUP,
4909 levels: *mut c_float,
4910 numlevels: c_int,
4911 ) -> FMOD_RESULT;
4912 pub fn FMOD_ChannelGroup_SetMixMatrix(
4913 channelgroup: *mut FMOD_CHANNELGROUP,
4914 matrix: *mut c_float,
4915 outchannels: c_int,
4916 inchannels: c_int,
4917 inchannel_hop: c_int,
4918 ) -> FMOD_RESULT;
4919 pub fn FMOD_ChannelGroup_GetMixMatrix(
4920 channelgroup: *mut FMOD_CHANNELGROUP,
4921 matrix: *mut c_float,
4922 outchannels: *mut c_int,
4923 inchannels: *mut c_int,
4924 inchannel_hop: c_int,
4925 ) -> FMOD_RESULT;
4926 pub fn FMOD_ChannelGroup_GetDSPClock(
4927 channelgroup: *mut FMOD_CHANNELGROUP,
4928 dspclock: *mut c_ulonglong,
4929 parentclock: *mut c_ulonglong,
4930 ) -> FMOD_RESULT;
4931 pub fn FMOD_ChannelGroup_SetDelay(
4932 channelgroup: *mut FMOD_CHANNELGROUP,
4933 dspclock_start: c_ulonglong,
4934 dspclock_end: c_ulonglong,
4935 stopchannels: FMOD_BOOL,
4936 ) -> FMOD_RESULT;
4937 pub fn FMOD_ChannelGroup_GetDelay(
4938 channelgroup: *mut FMOD_CHANNELGROUP,
4939 dspclock_start: *mut c_ulonglong,
4940 dspclock_end: *mut c_ulonglong,
4941 stopchannels: *mut FMOD_BOOL,
4942 ) -> FMOD_RESULT;
4943 pub fn FMOD_ChannelGroup_AddFadePoint(
4944 channelgroup: *mut FMOD_CHANNELGROUP,
4945 dspclock: c_ulonglong,
4946 volume: c_float,
4947 ) -> FMOD_RESULT;
4948 pub fn FMOD_ChannelGroup_SetFadePointRamp(
4949 channelgroup: *mut FMOD_CHANNELGROUP,
4950 dspclock: c_ulonglong,
4951 volume: c_float,
4952 ) -> FMOD_RESULT;
4953 pub fn FMOD_ChannelGroup_RemoveFadePoints(
4954 channelgroup: *mut FMOD_CHANNELGROUP,
4955 dspclock_start: c_ulonglong,
4956 dspclock_end: c_ulonglong,
4957 ) -> FMOD_RESULT;
4958 pub fn FMOD_ChannelGroup_GetFadePoints(
4959 channelgroup: *mut FMOD_CHANNELGROUP,
4960 numpoints: *mut c_uint,
4961 point_dspclock: *mut c_ulonglong,
4962 point_volume: *mut c_float,
4963 ) -> FMOD_RESULT;
4964 pub fn FMOD_ChannelGroup_GetDSP(
4965 channelgroup: *mut FMOD_CHANNELGROUP,
4966 index: c_int,
4967 dsp: *mut *mut FMOD_DSP,
4968 ) -> FMOD_RESULT;
4969 pub fn FMOD_ChannelGroup_AddDSP(
4970 channelgroup: *mut FMOD_CHANNELGROUP,
4971 index: c_int,
4972 dsp: *mut FMOD_DSP,
4973 ) -> FMOD_RESULT;
4974 pub fn FMOD_ChannelGroup_RemoveDSP(
4975 channelgroup: *mut FMOD_CHANNELGROUP,
4976 dsp: *mut FMOD_DSP,
4977 ) -> FMOD_RESULT;
4978 pub fn FMOD_ChannelGroup_GetNumDSPs(
4979 channelgroup: *mut FMOD_CHANNELGROUP,
4980 numdsps: *mut c_int,
4981 ) -> FMOD_RESULT;
4982 pub fn FMOD_ChannelGroup_SetDSPIndex(
4983 channelgroup: *mut FMOD_CHANNELGROUP,
4984 dsp: *mut FMOD_DSP,
4985 index: c_int,
4986 ) -> FMOD_RESULT;
4987 pub fn FMOD_ChannelGroup_GetDSPIndex(
4988 channelgroup: *mut FMOD_CHANNELGROUP,
4989 dsp: *mut FMOD_DSP,
4990 index: *mut c_int,
4991 ) -> FMOD_RESULT;
4992 pub fn FMOD_ChannelGroup_Set3DAttributes(
4993 channelgroup: *mut FMOD_CHANNELGROUP,
4994 pos: *const FMOD_VECTOR,
4995 vel: *const FMOD_VECTOR,
4996 ) -> FMOD_RESULT;
4997 pub fn FMOD_ChannelGroup_Get3DAttributes(
4998 channelgroup: *mut FMOD_CHANNELGROUP,
4999 pos: *mut FMOD_VECTOR,
5000 vel: *mut FMOD_VECTOR,
5001 ) -> FMOD_RESULT;
5002 pub fn FMOD_ChannelGroup_Set3DMinMaxDistance(
5003 channelgroup: *mut FMOD_CHANNELGROUP,
5004 mindistance: c_float,
5005 maxdistance: c_float,
5006 ) -> FMOD_RESULT;
5007 pub fn FMOD_ChannelGroup_Get3DMinMaxDistance(
5008 channelgroup: *mut FMOD_CHANNELGROUP,
5009 mindistance: *mut c_float,
5010 maxdistance: *mut c_float,
5011 ) -> FMOD_RESULT;
5012 pub fn FMOD_ChannelGroup_Set3DConeSettings(
5013 channelgroup: *mut FMOD_CHANNELGROUP,
5014 insideconeangle: c_float,
5015 outsideconeangle: c_float,
5016 outsidevolume: c_float,
5017 ) -> FMOD_RESULT;
5018 pub fn FMOD_ChannelGroup_Get3DConeSettings(
5019 channelgroup: *mut FMOD_CHANNELGROUP,
5020 insideconeangle: *mut c_float,
5021 outsideconeangle: *mut c_float,
5022 outsidevolume: *mut c_float,
5023 ) -> FMOD_RESULT;
5024 pub fn FMOD_ChannelGroup_Set3DConeOrientation(
5025 channelgroup: *mut FMOD_CHANNELGROUP,
5026 orientation: *mut FMOD_VECTOR,
5027 ) -> FMOD_RESULT;
5028 pub fn FMOD_ChannelGroup_Get3DConeOrientation(
5029 channelgroup: *mut FMOD_CHANNELGROUP,
5030 orientation: *mut FMOD_VECTOR,
5031 ) -> FMOD_RESULT;
5032 pub fn FMOD_ChannelGroup_Set3DCustomRolloff(
5033 channelgroup: *mut FMOD_CHANNELGROUP,
5034 points: *mut FMOD_VECTOR,
5035 numpoints: c_int,
5036 ) -> FMOD_RESULT;
5037 pub fn FMOD_ChannelGroup_Get3DCustomRolloff(
5038 channelgroup: *mut FMOD_CHANNELGROUP,
5039 points: *mut *mut FMOD_VECTOR,
5040 numpoints: *mut c_int,
5041 ) -> FMOD_RESULT;
5042 pub fn FMOD_ChannelGroup_Set3DOcclusion(
5043 channelgroup: *mut FMOD_CHANNELGROUP,
5044 directocclusion: c_float,
5045 reverbocclusion: c_float,
5046 ) -> FMOD_RESULT;
5047 pub fn FMOD_ChannelGroup_Get3DOcclusion(
5048 channelgroup: *mut FMOD_CHANNELGROUP,
5049 directocclusion: *mut c_float,
5050 reverbocclusion: *mut c_float,
5051 ) -> FMOD_RESULT;
5052 pub fn FMOD_ChannelGroup_Set3DSpread(
5053 channelgroup: *mut FMOD_CHANNELGROUP,
5054 angle: c_float,
5055 ) -> FMOD_RESULT;
5056 pub fn FMOD_ChannelGroup_Get3DSpread(
5057 channelgroup: *mut FMOD_CHANNELGROUP,
5058 angle: *mut c_float,
5059 ) -> FMOD_RESULT;
5060 pub fn FMOD_ChannelGroup_Set3DLevel(
5061 channelgroup: *mut FMOD_CHANNELGROUP,
5062 level: c_float,
5063 ) -> FMOD_RESULT;
5064 pub fn FMOD_ChannelGroup_Get3DLevel(
5065 channelgroup: *mut FMOD_CHANNELGROUP,
5066 level: *mut c_float,
5067 ) -> FMOD_RESULT;
5068 pub fn FMOD_ChannelGroup_Set3DDopplerLevel(
5069 channelgroup: *mut FMOD_CHANNELGROUP,
5070 level: c_float,
5071 ) -> FMOD_RESULT;
5072 pub fn FMOD_ChannelGroup_Get3DDopplerLevel(
5073 channelgroup: *mut FMOD_CHANNELGROUP,
5074 level: *mut c_float,
5075 ) -> FMOD_RESULT;
5076 pub fn FMOD_ChannelGroup_Set3DDistanceFilter(
5077 channelgroup: *mut FMOD_CHANNELGROUP,
5078 custom: FMOD_BOOL,
5079 customLevel: c_float,
5080 centerFreq: c_float,
5081 ) -> FMOD_RESULT;
5082 pub fn FMOD_ChannelGroup_Get3DDistanceFilter(
5083 channelgroup: *mut FMOD_CHANNELGROUP,
5084 custom: *mut FMOD_BOOL,
5085 customLevel: *mut c_float,
5086 centerFreq: *mut c_float,
5087 ) -> FMOD_RESULT;
5088 pub fn FMOD_ChannelGroup_SetUserData(
5089 channelgroup: *mut FMOD_CHANNELGROUP,
5090 userdata: *mut c_void,
5091 ) -> FMOD_RESULT;
5092 pub fn FMOD_ChannelGroup_GetUserData(
5093 channelgroup: *mut FMOD_CHANNELGROUP,
5094 userdata: *mut *mut c_void,
5095 ) -> FMOD_RESULT;
5096 pub fn FMOD_ChannelGroup_Release(channelgroup: *mut FMOD_CHANNELGROUP) -> FMOD_RESULT;
5097 pub fn FMOD_ChannelGroup_AddGroup(
5098 channelgroup: *mut FMOD_CHANNELGROUP,
5099 group: *mut FMOD_CHANNELGROUP,
5100 propagatedspclock: FMOD_BOOL,
5101 connection: *mut *mut FMOD_DSPCONNECTION,
5102 ) -> FMOD_RESULT;
5103 pub fn FMOD_ChannelGroup_GetNumGroups(
5104 channelgroup: *mut FMOD_CHANNELGROUP,
5105 numgroups: *mut c_int,
5106 ) -> FMOD_RESULT;
5107 pub fn FMOD_ChannelGroup_GetGroup(
5108 channelgroup: *mut FMOD_CHANNELGROUP,
5109 index: c_int,
5110 group: *mut *mut FMOD_CHANNELGROUP,
5111 ) -> FMOD_RESULT;
5112 pub fn FMOD_ChannelGroup_GetParentGroup(
5113 channelgroup: *mut FMOD_CHANNELGROUP,
5114 group: *mut *mut FMOD_CHANNELGROUP,
5115 ) -> FMOD_RESULT;
5116 pub fn FMOD_ChannelGroup_GetName(
5117 channelgroup: *mut FMOD_CHANNELGROUP,
5118 name: *mut c_char,
5119 namelen: c_int,
5120 ) -> FMOD_RESULT;
5121 pub fn FMOD_ChannelGroup_GetNumChannels(
5122 channelgroup: *mut FMOD_CHANNELGROUP,
5123 numchannels: *mut c_int,
5124 ) -> FMOD_RESULT;
5125 pub fn FMOD_ChannelGroup_GetChannel(
5126 channelgroup: *mut FMOD_CHANNELGROUP,
5127 index: c_int,
5128 channel: *mut *mut FMOD_CHANNEL,
5129 ) -> FMOD_RESULT;
5130 pub fn FMOD_SoundGroup_Release(soundgroup: *mut FMOD_SOUNDGROUP) -> FMOD_RESULT;
5131 pub fn FMOD_SoundGroup_GetSystemObject(
5132 soundgroup: *mut FMOD_SOUNDGROUP,
5133 system: *mut *mut FMOD_SYSTEM,
5134 ) -> FMOD_RESULT;
5135 pub fn FMOD_SoundGroup_SetMaxAudible(
5136 soundgroup: *mut FMOD_SOUNDGROUP,
5137 maxaudible: c_int,
5138 ) -> FMOD_RESULT;
5139 pub fn FMOD_SoundGroup_GetMaxAudible(
5140 soundgroup: *mut FMOD_SOUNDGROUP,
5141 maxaudible: *mut c_int,
5142 ) -> FMOD_RESULT;
5143 pub fn FMOD_SoundGroup_SetMaxAudibleBehavior(
5144 soundgroup: *mut FMOD_SOUNDGROUP,
5145 behavior: FMOD_SOUNDGROUP_BEHAVIOR,
5146 ) -> FMOD_RESULT;
5147 pub fn FMOD_SoundGroup_GetMaxAudibleBehavior(
5148 soundgroup: *mut FMOD_SOUNDGROUP,
5149 behavior: *mut FMOD_SOUNDGROUP_BEHAVIOR,
5150 ) -> FMOD_RESULT;
5151 pub fn FMOD_SoundGroup_SetMuteFadeSpeed(
5152 soundgroup: *mut FMOD_SOUNDGROUP,
5153 speed: c_float,
5154 ) -> FMOD_RESULT;
5155 pub fn FMOD_SoundGroup_GetMuteFadeSpeed(
5156 soundgroup: *mut FMOD_SOUNDGROUP,
5157 speed: *mut c_float,
5158 ) -> FMOD_RESULT;
5159 pub fn FMOD_SoundGroup_SetVolume(
5160 soundgroup: *mut FMOD_SOUNDGROUP,
5161 volume: c_float,
5162 ) -> FMOD_RESULT;
5163 pub fn FMOD_SoundGroup_GetVolume(
5164 soundgroup: *mut FMOD_SOUNDGROUP,
5165 volume: *mut c_float,
5166 ) -> FMOD_RESULT;
5167 pub fn FMOD_SoundGroup_Stop(soundgroup: *mut FMOD_SOUNDGROUP) -> FMOD_RESULT;
5168 pub fn FMOD_SoundGroup_GetName(
5169 soundgroup: *mut FMOD_SOUNDGROUP,
5170 name: *mut c_char,
5171 namelen: c_int,
5172 ) -> FMOD_RESULT;
5173 pub fn FMOD_SoundGroup_GetNumSounds(
5174 soundgroup: *mut FMOD_SOUNDGROUP,
5175 numsounds: *mut c_int,
5176 ) -> FMOD_RESULT;
5177 pub fn FMOD_SoundGroup_GetSound(
5178 soundgroup: *mut FMOD_SOUNDGROUP,
5179 index: c_int,
5180 sound: *mut *mut FMOD_SOUND,
5181 ) -> FMOD_RESULT;
5182 pub fn FMOD_SoundGroup_GetNumPlaying(
5183 soundgroup: *mut FMOD_SOUNDGROUP,
5184 numplaying: *mut c_int,
5185 ) -> FMOD_RESULT;
5186 pub fn FMOD_SoundGroup_SetUserData(
5187 soundgroup: *mut FMOD_SOUNDGROUP,
5188 userdata: *mut c_void,
5189 ) -> FMOD_RESULT;
5190 pub fn FMOD_SoundGroup_GetUserData(
5191 soundgroup: *mut FMOD_SOUNDGROUP,
5192 userdata: *mut *mut c_void,
5193 ) -> FMOD_RESULT;
5194 pub fn FMOD_DSP_Release(dsp: *mut FMOD_DSP) -> FMOD_RESULT;
5195 pub fn FMOD_DSP_GetSystemObject(
5196 dsp: *mut FMOD_DSP,
5197 system: *mut *mut FMOD_SYSTEM,
5198 ) -> FMOD_RESULT;
5199 pub fn FMOD_DSP_AddInput(
5200 dsp: *mut FMOD_DSP,
5201 input: *mut FMOD_DSP,
5202 connection: *mut *mut FMOD_DSPCONNECTION,
5203 type_: FMOD_DSPCONNECTION_TYPE,
5204 ) -> FMOD_RESULT;
5205 pub fn FMOD_DSP_DisconnectFrom(
5206 dsp: *mut FMOD_DSP,
5207 target: *mut FMOD_DSP,
5208 connection: *mut FMOD_DSPCONNECTION,
5209 ) -> FMOD_RESULT;
5210 pub fn FMOD_DSP_DisconnectAll(
5211 dsp: *mut FMOD_DSP,
5212 inputs: FMOD_BOOL,
5213 outputs: FMOD_BOOL,
5214 ) -> FMOD_RESULT;
5215 pub fn FMOD_DSP_GetNumInputs(dsp: *mut FMOD_DSP, numinputs: *mut c_int) -> FMOD_RESULT;
5216 pub fn FMOD_DSP_GetNumOutputs(dsp: *mut FMOD_DSP, numoutputs: *mut c_int) -> FMOD_RESULT;
5217 pub fn FMOD_DSP_GetInput(
5218 dsp: *mut FMOD_DSP,
5219 index: c_int,
5220 input: *mut *mut FMOD_DSP,
5221 inputconnection: *mut *mut FMOD_DSPCONNECTION,
5222 ) -> FMOD_RESULT;
5223 pub fn FMOD_DSP_GetOutput(
5224 dsp: *mut FMOD_DSP,
5225 index: c_int,
5226 output: *mut *mut FMOD_DSP,
5227 outputconnection: *mut *mut FMOD_DSPCONNECTION,
5228 ) -> FMOD_RESULT;
5229 pub fn FMOD_DSP_SetActive(dsp: *mut FMOD_DSP, active: FMOD_BOOL) -> FMOD_RESULT;
5230 pub fn FMOD_DSP_GetActive(dsp: *mut FMOD_DSP, active: *mut FMOD_BOOL) -> FMOD_RESULT;
5231 pub fn FMOD_DSP_SetBypass(dsp: *mut FMOD_DSP, bypass: FMOD_BOOL) -> FMOD_RESULT;
5232 pub fn FMOD_DSP_GetBypass(dsp: *mut FMOD_DSP, bypass: *mut FMOD_BOOL) -> FMOD_RESULT;
5233 pub fn FMOD_DSP_SetWetDryMix(
5234 dsp: *mut FMOD_DSP,
5235 prewet: c_float,
5236 postwet: c_float,
5237 dry: c_float,
5238 ) -> FMOD_RESULT;
5239 pub fn FMOD_DSP_GetWetDryMix(
5240 dsp: *mut FMOD_DSP,
5241 prewet: *mut c_float,
5242 postwet: *mut c_float,
5243 dry: *mut c_float,
5244 ) -> FMOD_RESULT;
5245 pub fn FMOD_DSP_SetChannelFormat(
5246 dsp: *mut FMOD_DSP,
5247 channelmask: FMOD_CHANNELMASK,
5248 numchannels: c_int,
5249 source_speakermode: FMOD_SPEAKERMODE,
5250 ) -> FMOD_RESULT;
5251 pub fn FMOD_DSP_GetChannelFormat(
5252 dsp: *mut FMOD_DSP,
5253 channelmask: *mut FMOD_CHANNELMASK,
5254 numchannels: *mut c_int,
5255 source_speakermode: *mut FMOD_SPEAKERMODE,
5256 ) -> FMOD_RESULT;
5257 pub fn FMOD_DSP_GetOutputChannelFormat(
5258 dsp: *mut FMOD_DSP,
5259 inmask: FMOD_CHANNELMASK,
5260 inchannels: c_int,
5261 inspeakermode: FMOD_SPEAKERMODE,
5262 outmask: *mut FMOD_CHANNELMASK,
5263 outchannels: *mut c_int,
5264 outspeakermode: *mut FMOD_SPEAKERMODE,
5265 ) -> FMOD_RESULT;
5266 pub fn FMOD_DSP_Reset(dsp: *mut FMOD_DSP) -> FMOD_RESULT;
5267 pub fn FMOD_DSP_SetCallback(dsp: *mut FMOD_DSP, callback: FMOD_DSP_CALLBACK) -> FMOD_RESULT;
5268 pub fn FMOD_DSP_SetParameterFloat(
5269 dsp: *mut FMOD_DSP,
5270 index: c_int,
5271 value: c_float,
5272 ) -> FMOD_RESULT;
5273 pub fn FMOD_DSP_SetParameterInt(dsp: *mut FMOD_DSP, index: c_int, value: c_int) -> FMOD_RESULT;
5274 pub fn FMOD_DSP_SetParameterBool(
5275 dsp: *mut FMOD_DSP,
5276 index: c_int,
5277 value: FMOD_BOOL,
5278 ) -> FMOD_RESULT;
5279 pub fn FMOD_DSP_SetParameterData(
5280 dsp: *mut FMOD_DSP,
5281 index: c_int,
5282 data: *mut c_void,
5283 length: c_uint,
5284 ) -> FMOD_RESULT;
5285 pub fn FMOD_DSP_GetParameterFloat(
5286 dsp: *mut FMOD_DSP,
5287 index: c_int,
5288 value: *mut c_float,
5289 valuestr: *mut c_char,
5290 valuestrlen: c_int,
5291 ) -> FMOD_RESULT;
5292 pub fn FMOD_DSP_GetParameterInt(
5293 dsp: *mut FMOD_DSP,
5294 index: c_int,
5295 value: *mut c_int,
5296 valuestr: *mut c_char,
5297 valuestrlen: c_int,
5298 ) -> FMOD_RESULT;
5299 pub fn FMOD_DSP_GetParameterBool(
5300 dsp: *mut FMOD_DSP,
5301 index: c_int,
5302 value: *mut FMOD_BOOL,
5303 valuestr: *mut c_char,
5304 valuestrlen: c_int,
5305 ) -> FMOD_RESULT;
5306 pub fn FMOD_DSP_GetParameterData(
5307 dsp: *mut FMOD_DSP,
5308 index: c_int,
5309 data: *mut *mut c_void,
5310 length: *mut c_uint,
5311 valuestr: *mut c_char,
5312 valuestrlen: c_int,
5313 ) -> FMOD_RESULT;
5314 pub fn FMOD_DSP_GetNumParameters(dsp: *mut FMOD_DSP, numparams: *mut c_int) -> FMOD_RESULT;
5315 pub fn FMOD_DSP_GetParameterInfo(
5316 dsp: *mut FMOD_DSP,
5317 index: c_int,
5318 desc: *mut *mut FMOD_DSP_PARAMETER_DESC,
5319 ) -> FMOD_RESULT;
5320 pub fn FMOD_DSP_GetDataParameterIndex(
5321 dsp: *mut FMOD_DSP,
5322 datatype: c_int,
5323 index: *mut c_int,
5324 ) -> FMOD_RESULT;
5325 pub fn FMOD_DSP_ShowConfigDialog(
5326 dsp: *mut FMOD_DSP,
5327 hwnd: *mut c_void,
5328 show: FMOD_BOOL,
5329 ) -> FMOD_RESULT;
5330 pub fn FMOD_DSP_GetInfo(
5331 dsp: *mut FMOD_DSP,
5332 name: *mut c_char,
5333 version: *mut c_uint,
5334 channels: *mut c_int,
5335 configwidth: *mut c_int,
5336 configheight: *mut c_int,
5337 ) -> FMOD_RESULT;
5338 pub fn FMOD_DSP_GetType(dsp: *mut FMOD_DSP, type_: *mut FMOD_DSP_TYPE) -> FMOD_RESULT;
5339 pub fn FMOD_DSP_GetIdle(dsp: *mut FMOD_DSP, idle: *mut FMOD_BOOL) -> FMOD_RESULT;
5340 pub fn FMOD_DSP_SetUserData(dsp: *mut FMOD_DSP, userdata: *mut c_void) -> FMOD_RESULT;
5341 pub fn FMOD_DSP_GetUserData(dsp: *mut FMOD_DSP, userdata: *mut *mut c_void) -> FMOD_RESULT;
5342 pub fn FMOD_DSP_SetMeteringEnabled(
5343 dsp: *mut FMOD_DSP,
5344 inputEnabled: FMOD_BOOL,
5345 outputEnabled: FMOD_BOOL,
5346 ) -> FMOD_RESULT;
5347 pub fn FMOD_DSP_GetMeteringEnabled(
5348 dsp: *mut FMOD_DSP,
5349 inputEnabled: *mut FMOD_BOOL,
5350 outputEnabled: *mut FMOD_BOOL,
5351 ) -> FMOD_RESULT;
5352 pub fn FMOD_DSP_GetMeteringInfo(
5353 dsp: *mut FMOD_DSP,
5354 inputInfo: *mut FMOD_DSP_METERING_INFO,
5355 outputInfo: *mut FMOD_DSP_METERING_INFO,
5356 ) -> FMOD_RESULT;
5357 pub fn FMOD_DSP_GetCPUUsage(
5358 dsp: *mut FMOD_DSP,
5359 exclusive: *mut c_uint,
5360 inclusive: *mut c_uint,
5361 ) -> FMOD_RESULT;
5362 pub fn FMOD_DSPConnection_GetInput(
5363 dspconnection: *mut FMOD_DSPCONNECTION,
5364 input: *mut *mut FMOD_DSP,
5365 ) -> FMOD_RESULT;
5366 pub fn FMOD_DSPConnection_GetOutput(
5367 dspconnection: *mut FMOD_DSPCONNECTION,
5368 output: *mut *mut FMOD_DSP,
5369 ) -> FMOD_RESULT;
5370 pub fn FMOD_DSPConnection_SetMix(
5371 dspconnection: *mut FMOD_DSPCONNECTION,
5372 volume: c_float,
5373 ) -> FMOD_RESULT;
5374 pub fn FMOD_DSPConnection_GetMix(
5375 dspconnection: *mut FMOD_DSPCONNECTION,
5376 volume: *mut c_float,
5377 ) -> FMOD_RESULT;
5378 pub fn FMOD_DSPConnection_SetMixMatrix(
5379 dspconnection: *mut FMOD_DSPCONNECTION,
5380 matrix: *mut c_float,
5381 outchannels: c_int,
5382 inchannels: c_int,
5383 inchannel_hop: c_int,
5384 ) -> FMOD_RESULT;
5385 pub fn FMOD_DSPConnection_GetMixMatrix(
5386 dspconnection: *mut FMOD_DSPCONNECTION,
5387 matrix: *mut c_float,
5388 outchannels: *mut c_int,
5389 inchannels: *mut c_int,
5390 inchannel_hop: c_int,
5391 ) -> FMOD_RESULT;
5392 pub fn FMOD_DSPConnection_GetType(
5393 dspconnection: *mut FMOD_DSPCONNECTION,
5394 type_: *mut FMOD_DSPCONNECTION_TYPE,
5395 ) -> FMOD_RESULT;
5396 pub fn FMOD_DSPConnection_SetUserData(
5397 dspconnection: *mut FMOD_DSPCONNECTION,
5398 userdata: *mut c_void,
5399 ) -> FMOD_RESULT;
5400 pub fn FMOD_DSPConnection_GetUserData(
5401 dspconnection: *mut FMOD_DSPCONNECTION,
5402 userdata: *mut *mut c_void,
5403 ) -> FMOD_RESULT;
5404 pub fn FMOD_Geometry_Release(geometry: *mut FMOD_GEOMETRY) -> FMOD_RESULT;
5405 pub fn FMOD_Geometry_AddPolygon(
5406 geometry: *mut FMOD_GEOMETRY,
5407 directocclusion: c_float,
5408 reverbocclusion: c_float,
5409 doublesided: FMOD_BOOL,
5410 numvertices: c_int,
5411 vertices: *const FMOD_VECTOR,
5412 polygonindex: *mut c_int,
5413 ) -> FMOD_RESULT;
5414 pub fn FMOD_Geometry_GetNumPolygons(
5415 geometry: *mut FMOD_GEOMETRY,
5416 numpolygons: *mut c_int,
5417 ) -> FMOD_RESULT;
5418 pub fn FMOD_Geometry_GetMaxPolygons(
5419 geometry: *mut FMOD_GEOMETRY,
5420 maxpolygons: *mut c_int,
5421 maxvertices: *mut c_int,
5422 ) -> FMOD_RESULT;
5423 pub fn FMOD_Geometry_GetPolygonNumVertices(
5424 geometry: *mut FMOD_GEOMETRY,
5425 index: c_int,
5426 numvertices: *mut c_int,
5427 ) -> FMOD_RESULT;
5428 pub fn FMOD_Geometry_SetPolygonVertex(
5429 geometry: *mut FMOD_GEOMETRY,
5430 index: c_int,
5431 vertexindex: c_int,
5432 vertex: *const FMOD_VECTOR,
5433 ) -> FMOD_RESULT;
5434 pub fn FMOD_Geometry_GetPolygonVertex(
5435 geometry: *mut FMOD_GEOMETRY,
5436 index: c_int,
5437 vertexindex: c_int,
5438 vertex: *mut FMOD_VECTOR,
5439 ) -> FMOD_RESULT;
5440 pub fn FMOD_Geometry_SetPolygonAttributes(
5441 geometry: *mut FMOD_GEOMETRY,
5442 index: c_int,
5443 directocclusion: c_float,
5444 reverbocclusion: c_float,
5445 doublesided: FMOD_BOOL,
5446 ) -> FMOD_RESULT;
5447 pub fn FMOD_Geometry_GetPolygonAttributes(
5448 geometry: *mut FMOD_GEOMETRY,
5449 index: c_int,
5450 directocclusion: *mut c_float,
5451 reverbocclusion: *mut c_float,
5452 doublesided: *mut FMOD_BOOL,
5453 ) -> FMOD_RESULT;
5454 pub fn FMOD_Geometry_SetActive(geometry: *mut FMOD_GEOMETRY, active: FMOD_BOOL) -> FMOD_RESULT;
5455 pub fn FMOD_Geometry_GetActive(
5456 geometry: *mut FMOD_GEOMETRY,
5457 active: *mut FMOD_BOOL,
5458 ) -> FMOD_RESULT;
5459 pub fn FMOD_Geometry_SetRotation(
5460 geometry: *mut FMOD_GEOMETRY,
5461 forward: *const FMOD_VECTOR,
5462 up: *const FMOD_VECTOR,
5463 ) -> FMOD_RESULT;
5464 pub fn FMOD_Geometry_GetRotation(
5465 geometry: *mut FMOD_GEOMETRY,
5466 forward: *mut FMOD_VECTOR,
5467 up: *mut FMOD_VECTOR,
5468 ) -> FMOD_RESULT;
5469 pub fn FMOD_Geometry_SetPosition(
5470 geometry: *mut FMOD_GEOMETRY,
5471 position: *const FMOD_VECTOR,
5472 ) -> FMOD_RESULT;
5473 pub fn FMOD_Geometry_GetPosition(
5474 geometry: *mut FMOD_GEOMETRY,
5475 position: *mut FMOD_VECTOR,
5476 ) -> FMOD_RESULT;
5477 pub fn FMOD_Geometry_SetScale(
5478 geometry: *mut FMOD_GEOMETRY,
5479 scale: *const FMOD_VECTOR,
5480 ) -> FMOD_RESULT;
5481 pub fn FMOD_Geometry_GetScale(
5482 geometry: *mut FMOD_GEOMETRY,
5483 scale: *mut FMOD_VECTOR,
5484 ) -> FMOD_RESULT;
5485 pub fn FMOD_Geometry_Save(
5486 geometry: *mut FMOD_GEOMETRY,
5487 data: *mut c_void,
5488 datasize: *mut c_int,
5489 ) -> FMOD_RESULT;
5490 pub fn FMOD_Geometry_SetUserData(
5491 geometry: *mut FMOD_GEOMETRY,
5492 userdata: *mut c_void,
5493 ) -> FMOD_RESULT;
5494 pub fn FMOD_Geometry_GetUserData(
5495 geometry: *mut FMOD_GEOMETRY,
5496 userdata: *mut *mut c_void,
5497 ) -> FMOD_RESULT;
5498 pub fn FMOD_Reverb3D_Release(reverb3d: *mut FMOD_REVERB3D) -> FMOD_RESULT;
5499 pub fn FMOD_Reverb3D_Set3DAttributes(
5500 reverb3d: *mut FMOD_REVERB3D,
5501 position: *const FMOD_VECTOR,
5502 mindistance: c_float,
5503 maxdistance: c_float,
5504 ) -> FMOD_RESULT;
5505 pub fn FMOD_Reverb3D_Get3DAttributes(
5506 reverb3d: *mut FMOD_REVERB3D,
5507 position: *mut FMOD_VECTOR,
5508 mindistance: *mut c_float,
5509 maxdistance: *mut c_float,
5510 ) -> FMOD_RESULT;
5511 pub fn FMOD_Reverb3D_SetProperties(
5512 reverb3d: *mut FMOD_REVERB3D,
5513 properties: *const FMOD_REVERB_PROPERTIES,
5514 ) -> FMOD_RESULT;
5515 pub fn FMOD_Reverb3D_GetProperties(
5516 reverb3d: *mut FMOD_REVERB3D,
5517 properties: *mut FMOD_REVERB_PROPERTIES,
5518 ) -> FMOD_RESULT;
5519 pub fn FMOD_Reverb3D_SetActive(reverb3d: *mut FMOD_REVERB3D, active: FMOD_BOOL) -> FMOD_RESULT;
5520 pub fn FMOD_Reverb3D_GetActive(
5521 reverb3d: *mut FMOD_REVERB3D,
5522 active: *mut FMOD_BOOL,
5523 ) -> FMOD_RESULT;
5524 pub fn FMOD_Reverb3D_SetUserData(
5525 reverb3d: *mut FMOD_REVERB3D,
5526 userdata: *mut c_void,
5527 ) -> FMOD_RESULT;
5528 pub fn FMOD_Reverb3D_GetUserData(
5529 reverb3d: *mut FMOD_REVERB3D,
5530 userdata: *mut *mut c_void,
5531 ) -> FMOD_RESULT;
5532}