diff options
author | Chris Robinson <chris.kcat@gmail.com> | 2020-02-16 23:49:29 -0800 |
---|---|---|
committer | Chris Robinson <chris.kcat@gmail.com> | 2020-02-16 23:49:29 -0800 |
commit | 3156b17057569fb8d3074603d8d8b4ba0dd73c57 (patch) | |
tree | 6d031182957c77fc9273ccc1f09236732ef931f3 /alc | |
parent | 8665f404a5a25525748c7dd59495368c3592fff8 (diff) |
Stub out an interface for a callback-driven buffer
Diffstat (limited to 'alc')
-rw-r--r-- | alc/alc.cpp | 5 | ||||
-rw-r--r-- | alc/inprogext.h | 17 |
2 files changed, 22 insertions, 0 deletions
diff --git a/alc/alc.cpp b/alc/alc.cpp index 52edbe1e..948fbfb1 100644 --- a/alc/alc.cpp +++ b/alc/alc.cpp @@ -393,6 +393,11 @@ const struct { DECL(alEventCallbackSOFT), DECL(alGetPointerSOFT), DECL(alGetPointervSOFT), + + DECL(alBufferCallbackSOFT), + DECL(alGetBufferPtrSOFT), + DECL(alGetBuffer3PtrSOFT), + DECL(alGetBufferPtrvSOFT), }; #undef DECL diff --git a/alc/inprogext.h b/alc/inprogext.h index ad3ea288..1eeeddf2 100644 --- a/alc/inprogext.h +++ b/alc/inprogext.h @@ -77,6 +77,23 @@ AL_API void AL_APIENTRY alGetPointervSOFT(ALenum pname, void **values); #define AL_EFFECTSLOT_TARGET_SOFT 0xf000 #endif +#ifndef AL_SOFT_callback_buffer +#define AL_SOFT_callback_buffer +#define AL_BUFFER_CALLBACK_FUNCTION_SOFT 0x19A0 +#define AL_BUFFER_CALLBACK_USER_PARAM_SOFT 0x19A1 +typedef ALsizei (AL_APIENTRY*LPALBUFFERCALLBACKTYPESOFT)(ALvoid *userptr, ALvoid *sampledata, ALsizei numsamples); +typedef void (AL_APIENTRY*LPALBUFFERCALLBACKSOFT)(ALuint buffer, ALenum format, ALsizei freq, LPALBUFFERCALLBACKTYPESOFT callback, ALvoid *userptr, ALbitfieldSOFT flags); +typedef void (AL_APIENTRY*LPALGETBUFFERPTRSOFT)(ALuint buffer, ALenum param, ALvoid **value); +typedef void (AL_APIENTRY*LPALGETBUFFER3PTRSOFT)(ALuint buffer, ALenum param, ALvoid **value1, ALvoid **value2, ALvoid **value3); +typedef void (AL_APIENTRY*LPALGETBUFFERPTRVSOFT)(ALuint buffer, ALenum param, ALvoid **values); +#ifdef AL_ALEXT_PROTOTYPES +AL_API void AL_APIENTRY alBufferCallbackSOFT(ALuint buffer, ALenum format, ALsizei freq, LPALBUFFERCALLBACKTYPESOFT callback, ALvoid *userptr, ALbitfieldSOFT flags); +AL_API void AL_APIENTRY alGetBufferPtrSOFT(ALuint buffer, ALenum param, ALvoid **ptr); +AL_API void AL_APIENTRY alGetBuffer3PtrSOFT(ALuint buffer, ALenum param, ALvoid **ptr0, ALvoid **ptr1, ALvoid **ptr2); +AL_API void AL_APIENTRY alGetBufferPtrvSOFT(ALuint buffer, ALenum param, ALvoid **ptr); +#endif +#endif + #ifdef __cplusplus } /* extern "C" */ #endif |