summaryrefslogtreecommitdiffstats
path: root/src/encoder
diff options
context:
space:
mode:
authorDaniel Schürmann <daschuer@mixxx.org>2020-01-07 21:30:16 +0100
committerDaniel Schürmann <daschuer@mixxx.org>2020-01-07 21:30:16 +0100
commitf2622defdb51a47dab90fc81322f806a911721eb (patch)
tree5bb979d17c373eaf89d035fe6d96faf888c18d9a /src/encoder
parent52db1ccc0af6779feb194e8f1feb87dea8f24dc0 (diff)
Add a default implementation of use.. functions and add a DEBUG_ASSERT if this is used wrong.
Diffstat (limited to 'src/encoder')
-rw-r--r--src/encoder/encoderflacsettings.h7
-rw-r--r--src/encoder/encodermp3settings.h25
-rw-r--r--src/encoder/encoderopussettings.h5
-rw-r--r--src/encoder/encoderrecordingsettings.h18
-rw-r--r--src/encoder/encodervorbissettings.h24
-rw-r--r--src/encoder/encoderwavesettings.h10
6 files changed, 29 insertions, 60 deletions
diff --git a/src/encoder/encoderflacsettings.h b/src/encoder/encoderflacsettings.h
index 978d7e3fed..83d640acf3 100644
--- a/src/encoder/encoderflacsettings.h
+++ b/src/encoder/encoderflacsettings.h
@@ -17,8 +17,6 @@ class EncoderFlacSettings : public EncoderRecordingSettings {
EncoderFlacSettings(UserSettingsPointer pConfig);
virtual ~EncoderFlacSettings();
- // Indicates that it uses the quality slider section of the preferences
- bool usesQualitySlider() const override;
// Indicates that it uses the compression slider section of the preferences
bool usesCompressionSlider() const override;
// Indicates that it uses the radio button section of the preferences.
@@ -52,11 +50,6 @@ class EncoderFlacSettings : public EncoderRecordingSettings {
UserSettingsPointer m_pConfig;
};
-
-inline bool EncoderFlacSettings::usesQualitySlider() const
-{
- return false;
-}
inline bool EncoderFlacSettings::usesOptionGroups() const
{
return true;
diff --git a/src/encoder/encodermp3settings.h b/src/encoder/encodermp3settings.h
index b50fe37f0c..be50505fa7 100644
--- a/src/encoder/encodermp3settings.h
+++ b/src/encoder/encodermp3settings.h
@@ -18,12 +18,13 @@ class EncoderMp3Settings : public EncoderRecordingSettings {
virtual ~EncoderMp3Settings();
// Indicates that it uses the quality slider section of the preferences
- bool usesQualitySlider() const override;
- // Indicates that it uses the compression slider section of the preferences
- bool usesCompressionSlider() const override;
+ bool usesQualitySlider() const override {
+ return true;
+ }
// Indicates that it uses the radio button section of the preferences.
- bool usesOptionGroups() const override;
-
+ bool usesOptionGroups() const override {
+ return true;
+ }
// Returns the list of quality values that it supports, to assign them to the slider
QList<int> getQualityValues() const override;
QList<int> getVBRQualityValues() const;
@@ -55,18 +56,4 @@ class EncoderMp3Settings : public EncoderRecordingSettings {
UserSettingsPointer m_pConfig;
};
-
-inline bool EncoderMp3Settings::usesQualitySlider() const
-{
- return true;
-}
-inline bool EncoderMp3Settings::usesCompressionSlider() const
-{
- return false;
-}
-inline bool EncoderMp3Settings::usesOptionGroups() const
-{
- return true;
-}
-
#endif // ENCODERMP3SETTINGS_H
diff --git a/src/encoder/encoderopussettings.h b/src/encoder/encoderopussettings.h
index 92efa71b5c..232b92c34c 100644
--- a/src/encoder/encoderopussettings.h
+++ b/src/encoder/encoderopussettings.h
@@ -22,10 +22,7 @@ class EncoderOpusSettings: public EncoderRecordingSettings {
bool usesQualitySlider() const override {
return true;
}
- // Indicates that it uses the compression slider section of the preferences
- bool usesCompressionSlider() const override {
- return false;
- }
+
// Indicates that it uses the radio button section of the preferences.
bool usesOptionGroups() const override {
return true;
diff --git a/src/encoder/encoderrecordingsettings.h b/src/encoder/encoderrecordingsettings.h
index d68e019ed0..2a12835d11 100644
--- a/src/encoder/encoderrecordingsettings.h
+++ b/src/encoder/encoderrecordingsettings.h
@@ -1,25 +1,36 @@
#pragma once
#include "encoder/encodersettings.h"
+#include "util/assert.h"
class EncoderRecordingSettings : public EncoderSettings {
public:
~EncoderRecordingSettings() override = default;
// Indicates that it uses the quality slider section of the preferences
- virtual bool usesQualitySlider() const = 0;
+ virtual bool usesQualitySlider() const {
+ return false;
+ }
+
// Indicates that it uses the compression slider section of the preferences
- virtual bool usesCompressionSlider() const = 0;
+ virtual bool usesCompressionSlider() const {
+ return false;
+ }
+
// Indicates that it uses the radio button section of the preferences.
- virtual bool usesOptionGroups() const = 0;
+ virtual bool usesOptionGroups() const {
+ return false;
+ }
virtual void setQualityByIndex(int qualityIndex) {
Q_UNUSED(qualityIndex);
+ DEBUG_ASSERT(!"unimplemented");
}
// Sets the compression level
virtual void setCompression(int compression) {
Q_UNUSED(compression);
+ DEBUG_ASSERT(!"unimplemented");
}
// Selects the option by its index. If it is a single-element option,
@@ -27,6 +38,7 @@ class EncoderRecordingSettings : public EncoderSettings {
virtual void setGroupOption(QString groupCode, int optionIndex) {
Q_UNUSED(groupCode);
Q_UNUSED(optionIndex);
+ DEBUG_ASSERT(!"unimplemented");
}
};
diff --git a/src/encoder/encodervorbissettings.h b/src/encoder/encodervorbissettings.h
index 310cf55aba..6cc7332b6c 100644
--- a/src/encoder/encodervorbissettings.h
+++ b/src/encoder/encodervorbissettings.h
@@ -18,11 +18,14 @@ class EncoderVorbisSettings : public EncoderRecordingSettings {
virtual ~EncoderVorbisSettings();
// Indicates that it uses the quality slider section of the preferences
- bool usesQualitySlider() const override;
- // Indicates that it uses the compression slider section of the preferences
- bool usesCompressionSlider() const override;
+ bool usesQualitySlider() const override {
+ return true;
+ }
+
// Indicates that it uses the radio button section of the preferences.
- bool usesOptionGroups() const override;
+ bool usesOptionGroups() const override{
+ return true;
+ }
// Returns the list of quality values that it supports, to assign them to the slider
QList<int> getQualityValues() const override;
@@ -43,17 +46,4 @@ class EncoderVorbisSettings : public EncoderRecordingSettings {
};
-inline bool EncoderVorbisSettings::usesQualitySlider() const
-{
- return true;
-}
-inline bool EncoderVorbisSettings::usesCompressionSlider() const
-{
- return false;
-}
-inline bool EncoderVorbisSettings::usesOptionGroups() const
-{
- return false;
-}
-
#endif // ENCODERVORBISSETTINGS_H
diff --git a/src/encoder/encoderwavesettings.h b/src/encoder/encoderwavesettings.h
index 7380c04747..2051eca98f 100644
--- a/src/encoder/encoderwavesettings.h
+++ b/src/encoder/encoderwavesettings.h
@@ -17,16 +17,6 @@ class EncoderWaveSettings : public EncoderRecordingSettings {
EncoderWaveSettings(UserSettingsPointer pConfig, QString format);
virtual ~EncoderWaveSettings();
- // Indicates that it uses the quality slider section of the preferences
- bool usesQualitySlider() const override {
- return false;
- }
-
- // Indicates that it uses the compression slider section of the preferences
- bool usesCompressionSlider() const override {
- return false;
- }
-
// Indicates that it uses the radio button section of the preferences.
bool usesOptionGroups() const override {
return true;