LMMS
Loading...
Searching...
No Matches
LOMMControls.h
Go to the documentation of this file.
1/*
2 * LOMMControls.h
3 *
4 * Copyright (c) 2023 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_LOMM_CONTROLS_H
26#define LMMS_LOMM_CONTROLS_H
27
28#include "LOMMControlDialog.h"
29#include "EffectControls.h"
30
31namespace lmms
32{
33class LOMMEffect;
34
36{
37 Q_OBJECT
38public:
40 ~LOMMControls() override = default;
41
42 void saveSettings(QDomDocument & doc, QDomElement & parent) override;
43 void loadSettings(const QDomElement & parent) override;
44 inline QString nodeName() const override
45 {
46 return "LOMMControls";
47 }
48
49 int controlCount() override
50 {
51 return 49;
52 }
53
55 {
57 return m_view;
58 }
59
60 template <typename T>
61 void setInitAndReset(AutomatableModel& model, T initValue)
62 {
63 model.setInitValue(initValue);
64 model.reset();
65 }
66
67public slots:
68 void resetAllParameters();
69
70private:
73
124
126 friend class LOMMEffect;
127};
128
129} // namespace lmms
130
131#endif // LMMS_LOMM_CONTROLS_H
Definition AutomatableModel.h:77
void setInitValue(const float value)
Definition AutomatableModel.cpp:647
virtual void reset()
Definition AutomatableModel.cpp:660
Definition AutomatableModel.h:497
Effect * effect()
Definition EffectControls.h:70
EffectControls(Effect *_eff)
Definition EffectControls.h:46
Definition AutomatableModel.h:463
FloatModel m_bRatioLModel
Definition LOMMControls.h:104
FloatModel m_split1Model
Definition LOMMControls.h:80
FloatModel m_atkLModel
Definition LOMMControls.h:107
LOMMEffect * m_effect
Definition LOMMControls.h:71
FloatModel m_relHModel
Definition LOMMControls.h:108
FloatModel m_aRatioLModel
Definition LOMMControls.h:98
BoolModel m_lowSideUpwardSuppressModel
Definition LOMMControls.h:123
void setInitAndReset(AutomatableModel &model, T initValue)
Definition LOMMControls.h:61
FloatModel m_kneeModel
Definition LOMMControls.h:112
BoolModel m_band1EnabledModel
Definition LOMMControls.h:84
FloatModel m_atkHModel
Definition LOMMControls.h:105
FloatModel m_outLowModel
Definition LOMMControls.h:92
FloatModel m_aThreshMModel
Definition LOMMControls.h:94
FloatModel m_outHighModel
Definition LOMMControls.h:90
FloatModel m_depthModel
Definition LOMMControls.h:74
FloatModel m_rmsTimeModel
Definition LOMMControls.h:111
BoolModel m_lookaheadEnableModel
Definition LOMMControls.h:121
BoolModel m_depthScalingModel
Definition LOMMControls.h:115
LOMMControls(LOMMEffect *effect)
Definition LOMMControls.cpp:34
FloatModel m_aRatioHModel
Definition LOMMControls.h:96
FloatModel m_lookaheadModel
Definition LOMMControls.h:122
FloatModel m_inVolModel
Definition LOMMControls.h:76
FloatModel m_autoTimeModel
Definition LOMMControls.h:117
BoolModel m_band3EnabledModel
Definition LOMMControls.h:86
FloatModel m_downwardModel
Definition LOMMControls.h:79
~LOMMControls() override=default
FloatModel m_relLModel
Definition LOMMControls.h:110
FloatModel m_bThreshHModel
Definition LOMMControls.h:99
BoolModel m_split2EnabledModel
Definition LOMMControls.h:83
int controlCount() override
Definition LOMMControls.h:49
FloatModel m_bThreshMModel
Definition LOMMControls.h:100
FloatModel m_outVolModel
Definition LOMMControls.h:77
BoolModel m_split1EnabledModel
Definition LOMMControls.h:82
FloatModel m_split2Model
Definition LOMMControls.h:81
BoolModel m_feedbackModel
Definition LOMMControls.h:119
FloatModel m_upwardModel
Definition LOMMControls.h:78
FloatModel m_rangeModel
Definition LOMMControls.h:113
FloatModel m_mixModel
Definition LOMMControls.h:118
friend class LOMMEffect
Definition LOMMControls.h:126
void resetAllParameters()
Definition LOMMControls.cpp:97
FloatModel m_timeModel
Definition LOMMControls.h:75
FloatModel m_bRatioMModel
Definition LOMMControls.h:103
FloatModel m_inMidModel
Definition LOMMControls.h:88
void saveSettings(QDomDocument &doc, QDomElement &parent) override
Definition LOMMControls.cpp:219
BoolModel m_band2EnabledModel
Definition LOMMControls.h:85
BoolModel m_midsideModel
Definition LOMMControls.h:120
FloatModel m_outMidModel
Definition LOMMControls.h:91
void loadSettings(const QDomElement &parent) override
Definition LOMMControls.cpp:162
FloatModel m_atkMModel
Definition LOMMControls.h:106
gui::EffectControlDialog * createView() override
Definition LOMMControls.h:54
FloatModel m_bThreshLModel
Definition LOMMControls.h:101
FloatModel m_aThreshHModel
Definition LOMMControls.h:93
FloatModel m_aRatioMModel
Definition LOMMControls.h:97
FloatModel m_relMModel
Definition LOMMControls.h:109
FloatModel m_aThreshLModel
Definition LOMMControls.h:95
FloatModel m_inLowModel
Definition LOMMControls.h:89
FloatModel m_inHighModel
Definition LOMMControls.h:87
FloatModel m_bRatioHModel
Definition LOMMControls.h:102
QString nodeName() const override
Definition LOMMControls.h:44
FloatModel m_balanceModel
Definition LOMMControls.h:114
gui::LOMMControlDialog * m_view
Definition LOMMControls.h:72
BoolModel m_stereoLinkModel
Definition LOMMControls.h:116
Definition LOMM.h:42
Definition EffectControlDialog.h:42
Definition LOMMControlDialog.h:54
static uintptr_t parent
Definition pugl.h:1644
Definition AudioAlsa.cpp:35