aboutsummaryrefslogtreecommitdiffstats
path: root/OpenAL32/Include/alMain.h
diff options
context:
space:
mode:
authorChris Robinson <[email protected]>2018-11-30 21:39:59 -0800
committerChris Robinson <[email protected]>2018-11-30 21:39:59 -0800
commit7b1548af3cdda7f0023510a9ec12813a137a1668 (patch)
tree22339a93ca37352cdaebc5eda29e76c065ba2762 /OpenAL32/Include/alMain.h
parent1e6e84374b9928b614e7f36a26499d806f3c89cc (diff)
Handle source state changed events uniquely in the event loop
To avoid the need of constructing the string in the mixer thread, which is commonly formatted anyway.
Diffstat (limited to 'OpenAL32/Include/alMain.h')
-rw-r--r--OpenAL32/Include/alMain.h10
1 files changed, 7 insertions, 3 deletions
diff --git a/OpenAL32/Include/alMain.h b/OpenAL32/Include/alMain.h
index 898c8a08..bff3d52e 100644
--- a/OpenAL32/Include/alMain.h
+++ b/OpenAL32/Include/alMain.h
@@ -841,11 +841,15 @@ enum {
EventType_ReleaseEffectState = 65536,
};
-typedef struct AsyncEvent {
+struct AsyncEvent {
unsigned int EnumType;
union {
char dummy;
struct {
+ ALuint id;
+ ALenum state;
+ } srcstate;
+ struct {
ALenum type;
ALuint id;
ALuint param;
@@ -853,8 +857,8 @@ typedef struct AsyncEvent {
} user;
EffectState *mEffectState;
} u;
-} AsyncEvent;
-#define ASYNC_EVENT(t) { t, { 0 } }
+};
+#define ASYNC_EVENT(t) AsyncEvent{ t, { 0 } }
void AllocateVoices(ALCcontext *context, ALsizei num_voices, ALsizei old_sends);