/* automatically generated by rust-bindgen */ use crate::*; pub const MIX_MAJOR_VERSION: u32 = 2; pub const MIX_MINOR_VERSION: u32 = 0; pub const MIX_PATCHLEVEL: u32 = 4; pub const MIX_CHANNELS: u32 = 8; pub const MIX_DEFAULT_FREQUENCY: u32 = 22050; pub const MIX_DEFAULT_FORMAT: u32 = 32784; pub const MIX_DEFAULT_CHANNELS: u32 = 2; pub const MIX_MAX_VOLUME: u32 = 128; pub const MIX_CHANNEL_POST: i32 = -2; pub const MIX_EFFECTSMAXSPEED: &'static [u8; 20usize] = b"MIX_EFFECTSMAXSPEED\0"; pub type __uint8_t = libc::c_uchar; pub type __int16_t = libc::c_short; pub type __uint16_t = libc::c_ushort; pub type __uint32_t = libc::c_uint; pub type __int64_t = libc::c_long; pub type __off_t = libc::c_long; pub type __off64_t = libc::c_long; pub type Uint8 = u8; pub type Sint16 = i16; pub type Uint16 = u16; pub type Uint32 = u32; pub type Sint64 = i64; extern "C" { pub fn Mix_Linked_Version() -> *const SDL_version; } pub const MIX_InitFlags_MIX_INIT_FLAC: MIX_InitFlags = 1; pub const MIX_InitFlags_MIX_INIT_MOD: MIX_InitFlags = 2; pub const MIX_InitFlags_MIX_INIT_MP3: MIX_InitFlags = 8; pub const MIX_InitFlags_MIX_INIT_OGG: MIX_InitFlags = 16; pub const MIX_InitFlags_MIX_INIT_MID: MIX_InitFlags = 32; pub const MIX_InitFlags_MIX_INIT_OPUS: MIX_InitFlags = 64; pub type MIX_InitFlags = u32; extern "C" { pub fn Mix_Init(flags: libc::c_int) -> libc::c_int; } extern "C" { pub fn Mix_Quit(); } #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct Mix_Chunk { pub allocated: libc::c_int, pub abuf: *mut Uint8, pub alen: Uint32, pub volume: Uint8, } #[test] fn bindgen_test_layout_Mix_Chunk() { assert_eq!( ::core::mem::size_of::(), 24usize, concat!("Size of: ", stringify!(Mix_Chunk)) ); assert_eq!( ::core::mem::align_of::(), 8usize, concat!("Alignment of ", stringify!(Mix_Chunk)) ); assert_eq!( unsafe { &(*(::core::ptr::null::())).allocated as *const _ as usize }, 0usize, concat!( "Offset of field: ", stringify!(Mix_Chunk), "::", stringify!(allocated) ) ); assert_eq!( unsafe { &(*(::core::ptr::null::())).abuf as *const _ as usize }, 8usize, concat!( "Offset of field: ", stringify!(Mix_Chunk), "::", stringify!(abuf) ) ); assert_eq!( unsafe { &(*(::core::ptr::null::())).alen as *const _ as usize }, 16usize, concat!( "Offset of field: ", stringify!(Mix_Chunk), "::", stringify!(alen) ) ); assert_eq!( unsafe { &(*(::core::ptr::null::())).volume as *const _ as usize }, 20usize, concat!( "Offset of field: ", stringify!(Mix_Chunk), "::", stringify!(volume) ) ); } pub const Mix_Fading_MIX_NO_FADING: Mix_Fading = 0; pub const Mix_Fading_MIX_FADING_OUT: Mix_Fading = 1; pub const Mix_Fading_MIX_FADING_IN: Mix_Fading = 2; pub type Mix_Fading = u32; pub const Mix_MusicType_MUS_NONE: Mix_MusicType = 0; pub const Mix_MusicType_MUS_CMD: Mix_MusicType = 1; pub const Mix_MusicType_MUS_WAV: Mix_MusicType = 2; pub const Mix_MusicType_MUS_MOD: Mix_MusicType = 3; pub const Mix_MusicType_MUS_MID: Mix_MusicType = 4; pub const Mix_MusicType_MUS_OGG: Mix_MusicType = 5; pub const Mix_MusicType_MUS_MP3: Mix_MusicType = 6; pub const Mix_MusicType_MUS_MP3_MAD_UNUSED: Mix_MusicType = 7; pub const Mix_MusicType_MUS_FLAC: Mix_MusicType = 8; pub const Mix_MusicType_MUS_MODPLUG_UNUSED: Mix_MusicType = 9; pub const Mix_MusicType_MUS_OPUS: Mix_MusicType = 10; pub type Mix_MusicType = u32; #[repr(C)] #[derive(Debug, Copy, Clone)] pub struct _Mix_Music { _unused: [u8; 0], } pub type Mix_Music = _Mix_Music; extern "C" { pub fn Mix_OpenAudio( frequency: libc::c_int, format: Uint16, channels: libc::c_int, chunksize: libc::c_int, ) -> libc::c_int; } extern "C" { pub fn Mix_OpenAudioDevice( frequency: libc::c_int, format: Uint16, channels: libc::c_int, chunksize: libc::c_int, device: *const libc::c_char, allowed_changes: libc::c_int, ) -> libc::c_int; } extern "C" { pub fn Mix_AllocateChannels(numchans: libc::c_int) -> libc::c_int; } extern "C" { pub fn Mix_QuerySpec( frequency: *mut libc::c_int, format: *mut Uint16, channels: *mut libc::c_int, ) -> libc::c_int; } extern "C" { pub fn Mix_LoadWAV_RW(src: *mut SDL_RWops, freesrc: libc::c_int) -> *mut Mix_Chunk; } extern "C" { pub fn Mix_LoadMUS(file: *const libc::c_char) -> *mut Mix_Music; } extern "C" { pub fn Mix_LoadMUS_RW(src: *mut SDL_RWops, freesrc: libc::c_int) -> *mut Mix_Music; } extern "C" { pub fn Mix_LoadMUSType_RW( src: *mut SDL_RWops, type_: Mix_MusicType, freesrc: libc::c_int, ) -> *mut Mix_Music; } extern "C" { pub fn Mix_QuickLoad_WAV(mem: *mut Uint8) -> *mut Mix_Chunk; } extern "C" { pub fn Mix_QuickLoad_RAW(mem: *mut Uint8, len: Uint32) -> *mut Mix_Chunk; } extern "C" { pub fn Mix_FreeChunk(chunk: *mut Mix_Chunk); } extern "C" { pub fn Mix_FreeMusic(music: *mut Mix_Music); } extern "C" { pub fn Mix_GetNumChunkDecoders() -> libc::c_int; } extern "C" { pub fn Mix_GetChunkDecoder(index: libc::c_int) -> *const libc::c_char; } extern "C" { pub fn Mix_HasChunkDecoder(name: *const libc::c_char) -> SDL_bool; } extern "C" { pub fn Mix_GetNumMusicDecoders() -> libc::c_int; } extern "C" { pub fn Mix_GetMusicDecoder(index: libc::c_int) -> *const libc::c_char; } extern "C" { pub fn Mix_HasMusicDecoder(name: *const libc::c_char) -> SDL_bool; } extern "C" { pub fn Mix_GetMusicType(music: *const Mix_Music) -> Mix_MusicType; } extern "C" { pub fn Mix_SetPostMix( mix_func: ::core::option::Option< unsafe extern "C" fn(udata: *mut libc::c_void, stream: *mut Uint8, len: libc::c_int), >, arg: *mut libc::c_void, ); } extern "C" { pub fn Mix_HookMusic( mix_func: ::core::option::Option< unsafe extern "C" fn(udata: *mut libc::c_void, stream: *mut Uint8, len: libc::c_int), >, arg: *mut libc::c_void, ); } extern "C" { pub fn Mix_HookMusicFinished(music_finished: ::core::option::Option); } extern "C" { pub fn Mix_GetMusicHookData() -> *mut libc::c_void; } extern "C" { pub fn Mix_ChannelFinished( channel_finished: ::core::option::Option, ); } pub type Mix_EffectFunc_t = ::core::option::Option< unsafe extern "C" fn( chan: libc::c_int, stream: *mut libc::c_void, len: libc::c_int, udata: *mut libc::c_void, ), >; pub type Mix_EffectDone_t = ::core::option::Option; extern "C" { pub fn Mix_RegisterEffect( chan: libc::c_int, f: Mix_EffectFunc_t, d: Mix_EffectDone_t, arg: *mut libc::c_void, ) -> libc::c_int; } extern "C" { pub fn Mix_UnregisterEffect(channel: libc::c_int, f: Mix_EffectFunc_t) -> libc::c_int; } extern "C" { pub fn Mix_UnregisterAllEffects(channel: libc::c_int) -> libc::c_int; } extern "C" { pub fn Mix_SetPanning(channel: libc::c_int, left: Uint8, right: Uint8) -> libc::c_int; } extern "C" { pub fn Mix_SetPosition(channel: libc::c_int, angle: Sint16, distance: Uint8) -> libc::c_int; } extern "C" { pub fn Mix_SetDistance(channel: libc::c_int, distance: Uint8) -> libc::c_int; } extern "C" { pub fn Mix_SetReverseStereo(channel: libc::c_int, flip: libc::c_int) -> libc::c_int; } extern "C" { pub fn Mix_ReserveChannels(num: libc::c_int) -> libc::c_int; } extern "C" { pub fn Mix_GroupChannel(which: libc::c_int, tag: libc::c_int) -> libc::c_int; } extern "C" { pub fn Mix_GroupChannels(from: libc::c_int, to: libc::c_int, tag: libc::c_int) -> libc::c_int; } extern "C" { pub fn Mix_GroupAvailable(tag: libc::c_int) -> libc::c_int; } extern "C" { pub fn Mix_GroupCount(tag: libc::c_int) -> libc::c_int; } extern "C" { pub fn Mix_GroupOldest(tag: libc::c_int) -> libc::c_int; } extern "C" { pub fn Mix_GroupNewer(tag: libc::c_int) -> libc::c_int; } extern "C" { pub fn Mix_PlayChannelTimed( channel: libc::c_int, chunk: *mut Mix_Chunk, loops: libc::c_int, ticks: libc::c_int, ) -> libc::c_int; } extern "C" { pub fn Mix_PlayMusic(music: *mut Mix_Music, loops: libc::c_int) -> libc::c_int; } extern "C" { pub fn Mix_FadeInMusic( music: *mut Mix_Music, loops: libc::c_int, ms: libc::c_int, ) -> libc::c_int; } extern "C" { pub fn Mix_FadeInMusicPos( music: *mut Mix_Music, loops: libc::c_int, ms: libc::c_int, position: f64, ) -> libc::c_int; } extern "C" { pub fn Mix_FadeInChannelTimed( channel: libc::c_int, chunk: *mut Mix_Chunk, loops: libc::c_int, ms: libc::c_int, ticks: libc::c_int, ) -> libc::c_int; } extern "C" { pub fn Mix_Volume(channel: libc::c_int, volume: libc::c_int) -> libc::c_int; } extern "C" { pub fn Mix_VolumeChunk(chunk: *mut Mix_Chunk, volume: libc::c_int) -> libc::c_int; } extern "C" { pub fn Mix_VolumeMusic(volume: libc::c_int) -> libc::c_int; } extern "C" { pub fn Mix_HaltChannel(channel: libc::c_int) -> libc::c_int; } extern "C" { pub fn Mix_HaltGroup(tag: libc::c_int) -> libc::c_int; } extern "C" { pub fn Mix_HaltMusic() -> libc::c_int; } extern "C" { pub fn Mix_ExpireChannel(channel: libc::c_int, ticks: libc::c_int) -> libc::c_int; } extern "C" { pub fn Mix_FadeOutChannel(which: libc::c_int, ms: libc::c_int) -> libc::c_int; } extern "C" { pub fn Mix_FadeOutGroup(tag: libc::c_int, ms: libc::c_int) -> libc::c_int; } extern "C" { pub fn Mix_FadeOutMusic(ms: libc::c_int) -> libc::c_int; } extern "C" { pub fn Mix_FadingMusic() -> Mix_Fading; } extern "C" { pub fn Mix_FadingChannel(which: libc::c_int) -> Mix_Fading; } extern "C" { pub fn Mix_Pause(channel: libc::c_int); } extern "C" { pub fn Mix_Resume(channel: libc::c_int); } extern "C" { pub fn Mix_Paused(channel: libc::c_int) -> libc::c_int; } extern "C" { pub fn Mix_PauseMusic(); } extern "C" { pub fn Mix_ResumeMusic(); } extern "C" { pub fn Mix_RewindMusic(); } extern "C" { pub fn Mix_PausedMusic() -> libc::c_int; } extern "C" { pub fn Mix_SetMusicPosition(position: f64) -> libc::c_int; } extern "C" { pub fn Mix_Playing(channel: libc::c_int) -> libc::c_int; } extern "C" { pub fn Mix_PlayingMusic() -> libc::c_int; } extern "C" { pub fn Mix_SetMusicCMD(command: *const libc::c_char) -> libc::c_int; } extern "C" { pub fn Mix_SetSynchroValue(value: libc::c_int) -> libc::c_int; } extern "C" { pub fn Mix_GetSynchroValue() -> libc::c_int; } extern "C" { pub fn Mix_SetSoundFonts(paths: *const libc::c_char) -> libc::c_int; } extern "C" { pub fn Mix_GetSoundFonts() -> *const libc::c_char; } extern "C" { pub fn Mix_EachSoundFont( function: ::core::option::Option< unsafe extern "C" fn(arg1: *const libc::c_char, arg2: *mut libc::c_void) -> libc::c_int, >, data: *mut libc::c_void, ) -> libc::c_int; } extern "C" { pub fn Mix_GetChunk(channel: libc::c_int) -> *mut Mix_Chunk; } extern "C" { pub fn Mix_CloseAudio(); }