aboutsummaryrefslogtreecommitdiff
path: root/Src/external_dependencies/openmpt-trunk/sounddsp/AGC.h
diff options
context:
space:
mode:
Diffstat (limited to 'Src/external_dependencies/openmpt-trunk/sounddsp/AGC.h')
-rw-r--r--Src/external_dependencies/openmpt-trunk/sounddsp/AGC.h38
1 files changed, 38 insertions, 0 deletions
diff --git a/Src/external_dependencies/openmpt-trunk/sounddsp/AGC.h b/Src/external_dependencies/openmpt-trunk/sounddsp/AGC.h
new file mode 100644
index 00000000..4317e035
--- /dev/null
+++ b/Src/external_dependencies/openmpt-trunk/sounddsp/AGC.h
@@ -0,0 +1,38 @@
+/*
+ * AGC.h
+ * -----
+ * Purpose: Automatic Gain Control
+ * Notes : Ugh... This should really be removed at some point.
+ * Authors: Olivier Lapicque
+ * OpenMPT Devs
+ * The OpenMPT source code is released under the BSD license. Read LICENSE for more details.
+ */
+
+#pragma once
+
+#include "openmpt/all/BuildSettings.hpp"
+
+
+OPENMPT_NAMESPACE_BEGIN
+
+
+#ifndef NO_AGC
+
+class CAGC
+{
+private:
+ UINT m_nAGC;
+ std::size_t m_nAGCRecoverCount;
+ UINT m_Timeout;
+public:
+ CAGC();
+ void Initialize(bool bReset, DWORD MixingFreq);
+public:
+ void Process(int *MixSoundBuffer, int *RearSoundBuffer, std::size_t count, std::size_t nChannels);
+ void Adjust(UINT oldVol, UINT newVol);
+};
+
+#endif // NO_AGC
+
+
+OPENMPT_NAMESPACE_END