18 #ifndef ZENI_SOUND_RENDERER_AL_H
19 #define ZENI_SOUND_RENDERER_AL_H
26 #include <OpenAL/alc.h>
31 #define OV_EXCLUDE_STATIC_CALLBACKS
33 #undef OV_EXCLUDE_STATIC_CALLBACKS
89 static alGetError_fcn
alGetError() {
return g_alGetError;}
98 static alSourcef_fcn
alSourcef() {
return g_alSourcef;}
99 static alSourcefv_fcn
alSourcefv() {
return g_alSourcefv;}
106 static String errorString();
110 void set_listener_velocity(
const Vector3f &velocity);
111 void set_listener_forward_and_up(
const Vector3f &forward,
const Vector3f &up);
112 void set_listener_gain(
const float &gain);
114 std::pair<Vector3f, Vector3f> get_listener_forward_and_up()
const;
120 typedef void * HMODULE;
124 static alBufferData_fcn g_alBufferData;
125 static alcCloseDevice_fcn g_alcCloseDevice;
126 static alcCreateContext_fcn g_alcCreateContext;
127 static alcDestroyContext_fcn g_alcDestroyContext;
128 static alIsExtensionPresent_fcn g_alIsExtensionPresent;
129 static alcMakeContextCurrent_fcn g_alcMakeContextCurrent;
130 static alcOpenDevice_fcn g_alcOpenDevice;
131 static alDeleteBuffers_fcn g_alDeleteBuffers;
132 static alDeleteSources_fcn g_alDeleteSources;
133 static alGenBuffers_fcn g_alGenBuffers;
134 static alGetError_fcn g_alGetError;
135 static alGetListenerf_fcn g_alGetListenerf;
136 static alGetListenerfv_fcn g_alGetListenerfv;
137 static alGetSourcef_fcn g_alGetSourcef;
138 static alGetSourcefv_fcn g_alGetSourcefv;
139 static alGetSourcei_fcn g_alGetSourcei;
140 static alGenSources_fcn g_alGenSources;
141 static alListenerf_fcn g_alListenerf;
142 static alListenerfv_fcn g_alListenerfv;
143 static alSourcef_fcn g_alSourcef;
144 static alSourcefv_fcn g_alSourcefv;
145 static alSourcei_fcn g_alSourcei;
146 static alSourcePause_fcn g_alSourcePause;
147 static alSourcePlay_fcn g_alSourcePlay;
148 static alSourceStop_fcn g_alSourceStop;