diff options
author | Chris Robinson <[email protected]> | 2018-12-07 18:38:56 -0800 |
---|---|---|
committer | Chris Robinson <[email protected]> | 2018-12-07 18:38:56 -0800 |
commit | 6e4c85625707b28da7baf51d7c315c3982531439 (patch) | |
tree | a986824bef717396dd40b6125217dd99ff5ab54f /Alc/filters/nfc.h | |
parent | 0f24139b57460c71d66b9a090217d34706d64dde (diff) |
Add fourth-order methods to the NFC filter
Unused, but it finishes out the currently possible implementations.
Diffstat (limited to 'Alc/filters/nfc.h')
-rw-r--r-- | Alc/filters/nfc.h | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/Alc/filters/nfc.h b/Alc/filters/nfc.h index 40aca36e..ca4f6f58 100644 --- a/Alc/filters/nfc.h +++ b/Alc/filters/nfc.h @@ -16,11 +16,17 @@ struct NfcFilter3 { float b1, b2, b3, a1, a2, a3; float z[3]; }; +struct NfcFilter4 { + float base_gain, gain; + float b1, b2, b3, b4, a1, a2, a3, a4; + float z[4]; +}; class NfcFilter { NfcFilter1 first; NfcFilter2 second; NfcFilter3 third; + NfcFilter4 fourth; public: /* NOTE: @@ -44,6 +50,9 @@ public: /* Near-field control filter for third-order ambisonic channels (9-15). */ void process3(float *RESTRICT dst, const float *RESTRICT src, const int count); + + /* Near-field control filter for fourth-order ambisonic channels (16-24). */ + void process4(float *RESTRICT dst, const float *RESTRICT src, const int count); }; #endif /* FILTER_NFC_H */ |