LMMS
Loading...
Searching...
No Matches
SlewDistortionControls.h
Go to the documentation of this file.
1/*
2 * SlewDistortionControls.h
3 *
4 * Copyright (c) 2025 Lost Robot <r94231/at/gmail/dot/com>
5 *
6 * This file is part of LMMS - https://lmms.io
7 *
8 * This program is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU General Public
10 * License as published by the Free Software Foundation; either
11 * version 2 of the License, or (at your option) any later version.
12 *
13 * This program is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16 * General Public License for more details.
17 *
18 * You should have received a copy of the GNU General Public
19 * License along with this program (see COPYING); if not, write to the
20 * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
21 * Boston, MA 02110-1301 USA.
22 *
23 */
24
25#ifndef LMMS_SLEW_DISTORTION_CONTROLS_H
26#define LMMS_SLEW_DISTORTION_CONTROLS_H
27
28#include "EffectControls.h"
30#include "ComboBox.h"
31
32namespace lmms
33{
34
36
37class SlewDistortion;
38
39namespace gui
40{
41class SlewDistortionControlDialog;
42}
43
58
60{
61 Q_OBJECT
62public:
64 ~SlewDistortionControls() override = default;
65
66 void saveSettings(QDomDocument& doc, QDomElement& parent) override;
67 void loadSettings(const QDomElement& parent) override;
68 inline QString nodeName() const override
69 {
70 return "SlewDistortionControls";
71 }
73 {
74 return new gui::SlewDistortionControlDialog(this);
75 }
76 int controlCount() override { return 32; }
77
78private:
80
113
115 friend class SlewDistortion;
116};
117
118} // namespace lmms
119
120#endif // LMMS_SLEW_DISTORTION_CONTROLS_H
Definition AutomatableModel.h:497
Definition ComboBoxModel.h:39
Effect * effect()
Definition EffectControls.h:70
EffectControls(Effect *_eff)
Definition EffectControls.h:46
Definition AutomatableModel.h:463
Definition AutomatableModel.h:481
FloatModel m_release2Model
Definition SlewDistortionControls.h:100
FloatModel m_attack2Model
Definition SlewDistortionControls.h:98
friend class SlewDistortion
Definition SlewDistortionControls.h:115
FloatModel m_dynamicSlew2Model
Definition SlewDistortionControls.h:104
FloatModel m_drive2Model
Definition SlewDistortionControls.h:84
FloatModel m_release1Model
Definition SlewDistortionControls.h:99
FloatModel m_mix1Model
Definition SlewDistortionControls.h:109
FloatModel m_drive1Model
Definition SlewDistortionControls.h:83
FloatModel m_warp2Model
Definition SlewDistortionControls.h:92
FloatModel m_bias2Model
Definition SlewDistortionControls.h:90
int controlCount() override
Definition SlewDistortionControls.h:76
~SlewDistortionControls() override=default
FloatModel m_splitModel
Definition SlewDistortionControls.h:108
FloatModel m_outVol1Model
Definition SlewDistortionControls.h:95
FloatModel m_dynamics1Model
Definition SlewDistortionControls.h:101
FloatModel m_dynamics2Model
Definition SlewDistortionControls.h:102
FloatModel m_dynamicSlew1Model
Definition SlewDistortionControls.h:103
BoolModel m_multibandModel
Definition SlewDistortionControls.h:106
SlewDistortion * m_effect
Definition SlewDistortionControls.h:79
FloatModel m_attack1Model
Definition SlewDistortionControls.h:97
FloatModel m_warp1Model
Definition SlewDistortionControls.h:91
BoolModel m_slewLink2Model
Definition SlewDistortionControls.h:112
FloatModel m_mix2Model
Definition SlewDistortionControls.h:110
ComboBoxModel m_distType1Model
Definition SlewDistortionControls.h:81
BoolModel m_dcRemoveModel
Definition SlewDistortionControls.h:105
void loadSettings(const QDomElement &parent) override
Definition SlewDistortionControls.cpp:108
IntModel m_oversamplingModel
Definition SlewDistortionControls.h:107
void saveSettings(QDomDocument &doc, QDomElement &parent) override
Definition SlewDistortionControls.cpp:146
gui::EffectControlDialog * createView() override
Definition SlewDistortionControls.h:72
SlewDistortionControls(SlewDistortion *effect)
Definition SlewDistortionControls.cpp:34
FloatModel m_outVol2Model
Definition SlewDistortionControls.h:96
FloatModel m_slewUp1Model
Definition SlewDistortionControls.h:85
FloatModel m_crush1Model
Definition SlewDistortionControls.h:93
FloatModel m_slewDown1Model
Definition SlewDistortionControls.h:87
FloatModel m_crush2Model
Definition SlewDistortionControls.h:94
FloatModel m_bias1Model
Definition SlewDistortionControls.h:89
QString nodeName() const override
Definition SlewDistortionControls.h:68
BoolModel m_slewLink1Model
Definition SlewDistortionControls.h:111
ComboBoxModel m_distType2Model
Definition SlewDistortionControls.h:82
FloatModel m_slewDown2Model
Definition SlewDistortionControls.h:88
FloatModel m_slewUp2Model
Definition SlewDistortionControls.h:86
Definition SlewDistortion.h:41
Definition EffectControlDialog.h:42
Definition SlewDistortionControlDialog.h:44
static uintptr_t parent
Definition pugl.h:1644
Definition AudioPortAudio.cpp:223
Definition AudioAlsa.cpp:35
constexpr int SLEWDIST_MAX_OVERSAMPLE_STAGES
Definition SlewDistortionControls.h:35
@ Count
Definition Sfxr.h:43
SlewDistortionType
Definition SlewDistortionControls.h:45
@ HalfRectify
Definition SlewDistortionControls.h:53
@ Bitcrush
Definition SlewDistortionControls.h:55
@ FastSoftClip2
Definition SlewDistortionControls.h:49
@ FullRectify
Definition SlewDistortionControls.h:52
@ Sinusoidal
Definition SlewDistortionControls.h:50
@ FastSoftClip1
Definition SlewDistortionControls.h:48
@ Foldback
Definition SlewDistortionControls.h:51
@ Tanh
Definition SlewDistortionControls.h:47
@ HardClip
Definition SlewDistortionControls.h:46
@ SmoothRectify
Definition SlewDistortionControls.h:54