Add a deprecated event type for alDopplerVelocity
This commit is contained in:
parent
1d86aea61c
commit
2a7f5aa569
@ -665,6 +665,7 @@ static const struct {
|
||||
DECL(AL_EVENT_TYPE_SOURCE_STATE_CHANGED_SOFT),
|
||||
DECL(AL_EVENT_TYPE_ERROR_SOFT),
|
||||
DECL(AL_EVENT_TYPE_PERFORMANCE_SOFT),
|
||||
DECL(AL_EVENT_TYPE_DEPRECATED_SOFT),
|
||||
};
|
||||
#undef DECL
|
||||
|
||||
|
@ -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 {
|
||||
|
@ -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);
|
||||
|
||||
|
@ -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);
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user