aboutsummaryrefslogtreecommitdiffstats
path: root/OpenAL32
diff options
context:
space:
mode:
authorChris Robinson <[email protected]>2018-01-24 18:42:00 -0800
committerChris Robinson <[email protected]>2018-01-24 18:47:19 -0800
commit2a7f5aa569d181a47c28c98e67dcadf275835b15 (patch)
treeafb7fbbff40cb1b5adf08e282adb28d8dcf154ed /OpenAL32
parent1d86aea61c3d8b828ac3ceec585de4147f7909bf (diff)
Add a deprecated event type for alDopplerVelocity
Diffstat (limited to 'OpenAL32')
-rw-r--r--OpenAL32/Include/alMain.h2
-rw-r--r--OpenAL32/alState.c11
-rw-r--r--OpenAL32/event.c2
3 files changed, 15 insertions, 0 deletions
diff --git a/OpenAL32/Include/alMain.h b/OpenAL32/Include/alMain.h
index 438f7ed5..4661b713 100644
--- a/OpenAL32/Include/alMain.h
+++ b/OpenAL32/Include/alMain.h
@@ -74,6 +74,7 @@ AL_API void AL_APIENTRY alFlushMappedBufferSOFT(ALuint buffer, ALsizei offset, A
#define AL_EVENT_TYPE_SOURCE_STATE_CHANGED_SOFT 0xffe3
#define AL_EVENT_TYPE_ERROR_SOFT 0xffe4
#define AL_EVENT_TYPE_PERFORMANCE_SOFT 0xffe5
+#define AL_EVENT_TYPE_DEPRECATED_SOFT 0xffe6
typedef void (AL_APIENTRY*ALEVENTPROCSOFT)(ALenum eventType, ALuint object, ALuint param,
ALsizei length, const ALchar *message,
void *userParam);
@@ -570,6 +571,7 @@ enum {
EventType_BufferCompleted = 1<<1,
EventType_Error = 1<<2,
EventType_Performance = 1<<3,
+ EventType_Deprecated = 1<<4,
};
struct ALCcontext_struct {
diff --git a/OpenAL32/alState.c b/OpenAL32/alState.c
index 67f9aab7..9c49b2e8 100644
--- a/OpenAL32/alState.c
+++ b/OpenAL32/alState.c
@@ -715,6 +715,17 @@ AL_API ALvoid AL_APIENTRY alDopplerVelocity(ALfloat value)
context = GetContextRef();
if(!context) return;
+ if((context->EnabledEvts&EventType_Deprecated))
+ {
+ static const ALCchar msg[] =
+ "alDopplerVelocity is deprecated in AL1.1, use alSpeedOfSound";
+ almtx_lock(&context->EventLock);
+ if((context->EnabledEvts&EventType_Deprecated) && context->EventCb)
+ (*context->EventCb)(AL_EVENT_TYPE_DEPRECATED_SOFT, 0, 0, strlen(msg), msg,
+ context->EventParam);
+ almtx_unlock(&context->EventLock);
+ }
+
if(!(value >= 0.0f && isfinite(value)))
SETERR_GOTO(context, AL_INVALID_VALUE, 0, "Doppler velocity out of range", done);
diff --git a/OpenAL32/event.c b/OpenAL32/event.c
index 88885f52..06db8713 100644
--- a/OpenAL32/event.c
+++ b/OpenAL32/event.c
@@ -31,6 +31,8 @@ AL_API void AL_APIENTRY alEventControlSOFT(ALsizei count, const ALenum *types, A
flags |= EventType_Error;
else if(types[i] == AL_EVENT_TYPE_PERFORMANCE_SOFT)
flags |= EventType_Performance;
+ else if(types[i] == AL_EVENT_TYPE_DEPRECATED_SOFT)
+ flags |= EventType_Deprecated;
else
SETERR_GOTO(context, AL_INVALID_ENUM, 0, "Invalid event type", done);
}