aboutsummaryrefslogtreecommitdiffstats
path: root/OpenAL32/Include
diff options
context:
space:
mode:
Diffstat (limited to 'OpenAL32/Include')
-rw-r--r--OpenAL32/Include/alSource.h7
-rw-r--r--OpenAL32/Include/alu.h4
2 files changed, 10 insertions, 1 deletions
diff --git a/OpenAL32/Include/alSource.h b/OpenAL32/Include/alSource.h
index dbbc445f..448c9acc 100644
--- a/OpenAL32/Include/alSource.h
+++ b/OpenAL32/Include/alSource.h
@@ -96,12 +96,17 @@ typedef struct ALsource
FILTER iirFilter;
ALfloat history[OUTPUTCHANNELS*2];
} Params;
+
ALvoid (*Update)(struct ALsource *self, const ALCcontext *context);
+ ALvoid (*Mix)(struct ALsource *self, ALuint SamplesToDo,
+ ALfloat (*DryBuffer)[OUTPUTCHANNELS],
+ ALfloat *ClickRemoval, ALfloat *PendingClicks);
// Index to itself
ALuint source;
} ALsource;
-#define ALsource_Update(s,a) ((s)->Update(s,a))
+#define ALsource_Update(s,a) ((s)->Update(s,a))
+#define ALsource_Mix(s,a,b,c,d) ((s)->Mix(s,a,b,c,d))
ALvoid ReleaseALSources(ALCcontext *Context);
diff --git a/OpenAL32/Include/alu.h b/OpenAL32/Include/alu.h
index c77a0129..9f742e24 100644
--- a/OpenAL32/Include/alu.h
+++ b/OpenAL32/Include/alu.h
@@ -189,6 +189,10 @@ ALvoid aluInitPanning(ALCdevice *Device);
ALvoid CalcSourceParams(struct ALsource *ALSource, const ALCcontext *ALContext);
ALvoid CalcNonAttnSourceParams(struct ALsource *ALSource, const ALCcontext *ALContext);
+ALvoid MixSource(struct ALsource *Source, ALuint SamplesToDo,
+ ALfloat (*DryBuffer)[OUTPUTCHANNELS],
+ ALfloat *ClickRemoval, ALfloat *PendingClicks);
+
ALvoid aluMixData(ALCdevice *device, ALvoid *buffer, ALsizei size);
ALvoid aluHandleDisconnect(ALCdevice *device);