slouken@312: /* slouken@518: SDL_mixer: An audio mixer library based on the SDL library slouken@518: Copyright (C) 1997-2012 Sam Lantinga slouken@312: slouken@518: This software is provided 'as-is', without any express or implied slouken@518: warranty. In no event will the authors be held liable for any damages slouken@518: arising from the use of this software. slouken@312: slouken@518: Permission is granted to anyone to use this software for any purpose, slouken@518: including commercial applications, and to alter it and redistribute it slouken@518: freely, subject to the following restrictions: slouken@312: slouken@518: 1. The origin of this software must not be misrepresented; you must not slouken@518: claim that you wrote the original software. If you use this software slouken@518: in a product, an acknowledgment in the product documentation would be slouken@518: appreciated but is not required. slouken@518: 2. Altered source versions must be plainly marked as such, and must not be slouken@518: misrepresented as being the original software. slouken@518: 3. This notice may not be removed or altered from any source distribution. slouken@312: */ slouken@312: slouken@312: #ifdef OGG_MUSIC slouken@353: #ifdef OGG_USE_TREMOR slouken@353: #include slouken@353: #else slouken@312: #include slouken@353: #endif slouken@312: slouken@312: typedef struct { slouken@312: int loaded; slouken@312: void *handle; slouken@312: int (*ov_clear)(OggVorbis_File *vf); slouken@312: vorbis_info *(*ov_info)(OggVorbis_File *vf,int link); slouken@312: int (*ov_open_callbacks)(void *datasource, OggVorbis_File *vf, char *initial, long ibytes, ov_callbacks callbacks); slouken@312: ogg_int64_t (*ov_pcm_total)(OggVorbis_File *vf,int i); slouken@353: #ifdef OGG_USE_TREMOR slouken@353: long (*ov_read)(OggVorbis_File *vf,char *buffer,int length, int *bitstream); slouken@353: #else slouken@312: long (*ov_read)(OggVorbis_File *vf,char *buffer,int length, int bigendianp,int word,int sgned,int *bitstream); slouken@353: #endif slouken@505: #ifdef OGG_USE_TREMOR slouken@505: int (*ov_time_seek)(OggVorbis_File *vf,ogg_int64_t pos); slouken@505: #else slouken@312: int (*ov_time_seek)(OggVorbis_File *vf,double pos); slouken@505: #endif slouken@312: } vorbis_loader; slouken@312: slouken@312: extern vorbis_loader vorbis; slouken@312: slouken@470: #endif /* OGG_MUSIC */ slouken@470: slouken@312: extern int Mix_InitOgg(); slouken@312: extern void Mix_QuitOgg();