X-Git-Url: https://git.jsancho.org/?a=blobdiff_plain;f=Source%2Fopenal_wrapper.h;h=51a9f5ca9aa17b67eb4ccc384d9ea50f5619ba48;hb=5509b55dbc13227bdc7b97f2934fa71dad02cc66;hp=99fad2cea8eaa4d4f7b1512f8c91fceef8bd4736;hpb=85f9eeb8f438d6d542c0c7b7446b31585cc9c23d;p=lugaru.git diff --git a/Source/openal_wrapper.h b/Source/openal_wrapper.h index 99fad2c..51a9f5c 100644 --- a/Source/openal_wrapper.h +++ b/Source/openal_wrapper.h @@ -1,3 +1,23 @@ +/* +Copyright (C) 2003, 2010 - Wolfire Games +Copyright (C) 2010-2016 - Lugaru contributors (see AUTHORS file) + +This file is part of Lugaru. + +Lugaru is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2 of the License, or +(at your option) any later version. + +Lugaru is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with Lugaru. If not, see . +*/ + #ifndef OPENAL_WRAPPER_H #define OPENAL_WRAPPER_H @@ -5,8 +25,8 @@ #include #endif -#include "al.h" -#include "alc.h" +#include "AL/al.h" +#include "AL/alc.h" #include "ogg/ogg.h" #include "vorbis/vorbisfile.h" @@ -47,11 +67,10 @@ typedef struct OPENAL_SAMPLE OPENAL_SAMPLE; typedef OPENAL_SAMPLE OPENAL_STREAM; typedef struct OPENAL_DSPUNIT OPENAL_DSPUNIT; -enum OPENAL_OUTPUTTYPES -{ - OPENAL_OUTPUT_NOSOUND, /* NoSound driver, all calls to this succeed but do nothing. */ - OPENAL_OUTPUT_OSS, /* Linux/Unix OSS (Open Sound System) driver, i.e. the kernel sound drivers. */ - OPENAL_OUTPUT_ALSA, /* Linux Alsa driver. */ +enum OPENAL_OUTPUTTYPES { + OPENAL_OUTPUT_NOSOUND, /* NoSound driver, all calls to this succeed but do nothing. */ + OPENAL_OUTPUT_OSS, /* Linux/Unix OSS (Open Sound System) driver, i.e. the kernel sound drivers. */ + OPENAL_OUTPUT_ALSA, /* Linux Alsa driver. */ }; #define OPENAL_LOOP_OFF 0x00000001 /* For non looping samples. */ @@ -68,31 +87,23 @@ extern "C" { #undef AL_API #define AL_API -AL_API void OPENAL_3D_Listener_SetAttributes(const float *pos, const float *vel, float fx, float fy, float fz, float tx, float ty, float tz); -AL_API signed char OPENAL_3D_SetAttributes(int channel, const float *pos, const float *vel); -AL_API void OPENAL_3D_SetDopplerFactor(float scale); -AL_API signed char OPENAL_Init(int mixrate, int maxsoftwarechannels, unsigned int flags); -AL_API void OPENAL_Close(); -AL_API OPENAL_SAMPLE *OPENAL_GetCurrentSample(int channel); -AL_API signed char OPENAL_GetPaused(int channel); -AL_API unsigned int OPENAL_GetLoopMode(int channel); -AL_API signed char OPENAL_IsPlaying(int channel); -AL_API int OPENAL_PlaySoundEx(int channel, OPENAL_SAMPLE *sptr, OPENAL_DSPUNIT *dsp, signed char startpaused); -AL_API OPENAL_SAMPLE *OPENAL_Sample_Load(int index, const char *name_or_data, unsigned int mode, int offset, int length); -AL_API void OPENAL_Sample_Free(OPENAL_SAMPLE *sptr); -AL_API signed char OPENAL_Sample_SetMode(OPENAL_SAMPLE *sptr, unsigned int mode); -AL_API signed char OPENAL_SetFrequency(int channel, int freq); -AL_API signed char OPENAL_SetVolume(int channel, int vol); -AL_API signed char OPENAL_SetPaused(int channel, signed char paused); -AL_API void OPENAL_SetSFXMasterVolume(int volume); -AL_API signed char OPENAL_StopSound(int channel); -AL_API void OPENAL_Stream_Close(OPENAL_STREAM *stream); -AL_API OPENAL_SAMPLE *OPENAL_Stream_GetSample(OPENAL_STREAM *stream); -AL_API int OPENAL_Stream_PlayEx(int channel, OPENAL_STREAM *stream, OPENAL_DSPUNIT *dsp, signed char startpaused); -AL_API signed char OPENAL_Stream_Stop(OPENAL_STREAM *stream); -AL_API signed char OPENAL_Stream_SetMode(OPENAL_STREAM *stream, unsigned int mode); -AL_API void OPENAL_Update(); -AL_API signed char OPENAL_SetOutput(int outputtype); + AL_API void OPENAL_3D_Listener_SetAttributes(const float *pos, const float *vel, float fx, float fy, float fz, float tx, float ty, float tz); + AL_API signed char OPENAL_3D_SetAttributes(int channel, const float *pos, const float *vel); + AL_API signed char OPENAL_3D_SetAttributes_(int channel, const XYZ &pos, const float *vel); + AL_API signed char OPENAL_Init(int mixrate, int maxsoftwarechannels, unsigned int flags); + AL_API void OPENAL_Close(); + AL_API OPENAL_SAMPLE *OPENAL_Sample_Load(int index, const char *name_or_data, unsigned int mode, int offset, int length); + AL_API void OPENAL_Sample_Free(OPENAL_SAMPLE *sptr); + AL_API signed char OPENAL_SetFrequency(int channel, int freq); + AL_API signed char OPENAL_SetVolume(int channel, int vol); + AL_API signed char OPENAL_SetPaused(int channel, signed char paused); + AL_API void OPENAL_SetSFXMasterVolume(int volume); + AL_API signed char OPENAL_StopSound(int channel); + AL_API signed char OPENAL_Stream_SetMode(OPENAL_STREAM *stream, unsigned int mode); + AL_API void OPENAL_Update(); + AL_API signed char OPENAL_SetOutput(int outputtype); + void PlaySoundEx(int chan, OPENAL_SAMPLE *sptr, OPENAL_DSPUNIT *dsp, signed char startpaused); + void PlayStreamEx(int chan, OPENAL_SAMPLE *sptr, OPENAL_DSPUNIT *dsp, signed char startpaused); #ifdef __cplusplus }