aboutsummaryrefslogtreecommitdiffstats
path: root/OpenAL32
diff options
context:
space:
mode:
authorChris Robinson <[email protected]>2014-05-19 02:24:31 -0700
committerChris Robinson <[email protected]>2014-05-19 02:24:31 -0700
commit8e04a8a0228aea5df0881f6b44d0fea61036d080 (patch)
treee6f66dfe1a5e896e9f19d9371695b4e1dbc58d7f /OpenAL32
parent7b782f6afa0d69459868c4bf954c1d42f0de08a7 (diff)
Put per-channel filter properties together
Diffstat (limited to 'OpenAL32')
-rw-r--r--OpenAL32/Include/alu.h20
1 files changed, 12 insertions, 8 deletions
diff --git a/OpenAL32/Include/alu.h b/OpenAL32/Include/alu.h
index 254b15e3..7fdb75cc 100644
--- a/OpenAL32/Include/alu.h
+++ b/OpenAL32/Include/alu.h
@@ -76,10 +76,6 @@ typedef struct MixGainMono {
typedef struct DirectParams {
ALfloat (*OutBuffer)[BUFFERSIZE];
- enum ActiveFilters Filters[MAX_INPUT_CHANNELS];
- ALfilterState LpFilter[MAX_INPUT_CHANNELS];
- ALfilterState HpFilter[MAX_INPUT_CHANNELS];
-
/* If not 'moving', gain/coefficients are set directly without fading. */
ALboolean Moving;
/* Stepping counter for gain/coefficient fading. */
@@ -87,6 +83,12 @@ typedef struct DirectParams {
/* History/coefficient offset. */
ALuint Offset;
+ struct {
+ enum ActiveFilters ActiveType;
+ ALfilterState LowPass;
+ ALfilterState HighPass;
+ } Filters[MAX_INPUT_CHANNELS];
+
union {
struct {
HrtfParams Params[MAX_INPUT_CHANNELS];
@@ -103,13 +105,15 @@ typedef struct DirectParams {
typedef struct SendParams {
ALfloat (*OutBuffer)[BUFFERSIZE];
- enum ActiveFilters Filters[MAX_INPUT_CHANNELS];
- ALfilterState LpFilter[MAX_INPUT_CHANNELS];
- ALfilterState HpFilter[MAX_INPUT_CHANNELS];
-
ALboolean Moving;
ALuint Counter;
+ struct {
+ enum ActiveFilters ActiveType;
+ ALfilterState LowPass;
+ ALfilterState HighPass;
+ } Filters[MAX_INPUT_CHANNELS];
+
/* Gain control, which applies to all input channels to a single (mono)
* output buffer. */
MixGainMono Gain;