aboutsummaryrefslogtreecommitdiff
path: root/src/chips/nuked_opl3.h
diff options
context:
space:
mode:
authorJP Cimalando <jpcima@users.noreply.github.com>2018-06-03 14:50:53 +0200
committerJP Cimalando <jpcima@users.noreply.github.com>2018-06-03 15:45:44 +0200
commite3cad2f46925ac0b9ae303bea68a5fe508e78bc9 (patch)
treeb72c940f22221f55c582115a71a4dd12259b94a7 /src/chips/nuked_opl3.h
parent9ed43c5b909b1a0aafe16bbd431d6a90af3c9920 (diff)
downloadlibADLMIDI-e3cad2f46925ac0b9ae303bea68a5fe508e78bc9.tar.gz
libADLMIDI-e3cad2f46925ac0b9ae303bea68a5fe508e78bc9.tar.bz2
libADLMIDI-e3cad2f46925ac0b9ae303bea68a5fe508e78bc9.zip
optional high-quality resampling
Diffstat (limited to 'src/chips/nuked_opl3.h')
-rw-r--r--src/chips/nuked_opl3.h13
1 files changed, 12 insertions, 1 deletions
diff --git a/src/chips/nuked_opl3.h b/src/chips/nuked_opl3.h
index ceb1dfd..765a451 100644
--- a/src/chips/nuked_opl3.h
+++ b/src/chips/nuked_opl3.h
@@ -3,12 +3,18 @@
#include "opl_chip_base.h"
+#if defined(ADLMIDI_ENABLE_HQ_RESAMPLER)
+class VResampler;
+#endif
+
class NukedOPL3 final : public OPLChipBase
{
void *m_chip;
+#if defined(ADLMIDI_ENABLE_HQ_RESAMPLER)
+ VResampler *m_resampler;
+#endif
public:
NukedOPL3();
- NukedOPL3(const NukedOPL3 &c);
virtual ~NukedOPL3() override;
virtual void setRate(uint32_t rate) override;
@@ -20,6 +26,11 @@ public:
virtual int generate32(int32_t *output, size_t frames) override;
virtual int generateAndMix32(int32_t *output, size_t frames) override;
virtual const char *emulatorName() override;
+private:
+#if defined(ADLMIDI_ENABLE_HQ_RESAMPLER)
+ void generateResampledHq(int16_t *out);
+ void generateResampledHq32(int32_t *out);
+#endif
};
#endif // NUKED_OPL3_H