summaryrefslogtreecommitdiffstats
path: root/src/encoder/encoderrecordingsettings.h
blob: 6038d9e00c23de624df1f4d8bcd08ddcc36b76ff (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#pragma once

#include "encoder/encodersettings.h"
#include "util/assert.h"

class EncoderRecordingSettings : public EncoderSettings {
  public:
    // Indicates that it uses the quality slider section of the preferences
    virtual bool usesQualitySlider() const {
        return false;
    }

    // Indicates that it uses the compression slider section of the preferences
    virtual bool usesCompressionSlider() const {
        return false;
    }

    virtual void setQualityByIndex(int qualityIndex) {
        Q_UNUSED(qualityIndex);
        DEBUG_ASSERT(!"unimplemented");
    }

    // Sets the compression level
    void setCompression(int compression) override {
        Q_UNUSED(compression);
        DEBUG_ASSERT(!"unimplemented");
    }

    // Selects the option by its index. If it is a single-element option,
    // index 0 means disabled and 1 enabled.
    virtual void setGroupOption(QString groupCode, int optionIndex) {
        Q_UNUSED(groupCode);
        Q_UNUSED(optionIndex);
        DEBUG_ASSERT(!"unimplemented");
    }
};

typedef std::shared_ptr<EncoderRecordingSettings> EncoderRecordingSettingsPointer;