lmms
Cross-platform music production software
Toggle main menu visibility
Loading...
Searching...
No Matches
plugins
Bitcrush
BitcrushControls.h
Go to the documentation of this file.
1
/*
2
* BitcrushControls.h - A native bitcrusher
3
*
4
* Copyright (c) 2014 Vesa Kivimäki <contact/dot/diizy/at/nbl/dot/fi>
5
* Copyright (c) 2006-2014 Tobias Doerffel <tobydox/at/users.sourceforge.net>
6
*
7
* This file is part of LMMS - https://lmms.io
8
*
9
* This program is free software; you can redistribute it and/or
10
* modify it under the terms of the GNU General Public
11
* License as published by the Free Software Foundation; either
12
* version 2 of the License, or (at your option) any later version.
13
*
14
* This program is distributed in the hope that it will be useful,
15
* but WITHOUT ANY WARRANTY; without even the implied warranty of
16
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
17
* General Public License for more details.
18
*
19
* You should have received a copy of the GNU General Public
20
* License along with this program (see COPYING); if not, write to the
21
* Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
22
* Boston, MA 02110-1301 USA.
23
*
24
*/
25
26
#ifndef BITCRUSH_CONTROLS_H
27
#define BITCRUSH_CONTROLS_H
28
29
#include "
EffectControls.h
"
30
#include "
BitcrushControlDialog.h
"
31
32
namespace
lmms
33
{
34
35
36
class
BitcrushEffect
;
37
38
class
BitcrushControls
:
public
EffectControls
39
{
40
Q_OBJECT
41
public
:
42
BitcrushControls
(
BitcrushEffect
* eff );
43
~BitcrushControls
()
override
=
default
;
44
45
void
saveSettings
( QDomDocument & doc, QDomElement & elem )
override
;
46
void
loadSettings
(
const
QDomElement & elem )
override
;
47
inline
QString
nodeName
()
const override
48
{
49
return
(
"bitcrushcontrols"
);
50
}
51
52
int
controlCount
()
override
53
{
54
return
( 9 );
55
}
56
57
gui::EffectControlDialog
*
createView
()
override
58
{
59
return
(
new
gui::BitcrushControlDialog
(
this
) );
60
}
61
62
private
slots:
63
void
sampleRateChanged
();
64
65
private
:
66
BitcrushEffect
*
m_effect
;
67
68
FloatModel
m_inGain
;
69
FloatModel
m_inNoise
;
70
71
FloatModel
m_outGain
;
72
FloatModel
m_outClip
;
73
74
FloatModel
m_rate
;
75
FloatModel
m_stereoDiff
;
76
77
FloatModel
m_levels
;
78
79
BoolModel
m_rateEnabled
;
80
BoolModel
m_depthEnabled
;
81
82
friend
class
gui::BitcrushControlDialog
;
83
friend
class
BitcrushEffect
;
84
};
85
86
87
}
// namespace lmms
88
89
#endif
BitcrushControlDialog.h
EffectControls.h
lmms::BitcrushControls::m_outGain
FloatModel m_outGain
Definition
BitcrushControls.h:71
lmms::BitcrushControls::controlCount
int controlCount() override
Definition
BitcrushControls.h:52
lmms::BitcrushControls::~BitcrushControls
~BitcrushControls() override=default
lmms::BitcrushControls::nodeName
QString nodeName() const override
Definition
BitcrushControls.h:47
lmms::BitcrushControls::m_outClip
FloatModel m_outClip
Definition
BitcrushControls.h:72
lmms::BitcrushControls::m_stereoDiff
FloatModel m_stereoDiff
Definition
BitcrushControls.h:75
lmms::BitcrushControls::m_rateEnabled
BoolModel m_rateEnabled
Definition
BitcrushControls.h:79
lmms::BitcrushControls::m_inNoise
FloatModel m_inNoise
Definition
BitcrushControls.h:69
lmms::BitcrushControls::saveSettings
void saveSettings(QDomDocument &doc, QDomElement &elem) override
Definition
BitcrushControls.cpp:56
lmms::BitcrushControls::m_depthEnabled
BoolModel m_depthEnabled
Definition
BitcrushControls.h:80
lmms::BitcrushControls::BitcrushEffect
friend class BitcrushEffect
Definition
BitcrushControls.h:83
lmms::BitcrushControls::m_effect
BitcrushEffect * m_effect
Definition
BitcrushControls.h:66
lmms::BitcrushControls::createView
gui::EffectControlDialog * createView() override
Definition
BitcrushControls.h:57
lmms::BitcrushControls::sampleRateChanged
void sampleRateChanged()
Definition
BitcrushControls.cpp:85
lmms::BitcrushControls::m_levels
FloatModel m_levels
Definition
BitcrushControls.h:77
lmms::BitcrushControls::m_rate
FloatModel m_rate
Definition
BitcrushControls.h:74
lmms::BitcrushControls::m_inGain
FloatModel m_inGain
Definition
BitcrushControls.h:68
lmms::BitcrushControls::BitcrushControls
BitcrushControls(BitcrushEffect *eff)
Definition
BitcrushControls.cpp:36
lmms::BitcrushControls::loadSettings
void loadSettings(const QDomElement &elem) override
Definition
BitcrushControls.cpp:70
lmms::BitcrushEffect
Definition
Bitcrush.h:40
lmms::BoolModel
Definition
AutomatableModel.h:502
lmms::EffectControls::EffectControls
EffectControls(Effect *_eff)
Definition
EffectControls.h:46
lmms::FloatModel
Definition
AutomatableModel.h:468
lmms::gui::BitcrushControlDialog
Definition
BitcrushControlDialog.h:42
lmms::gui::EffectControlDialog
Definition
EffectControlDialog.h:42
lmms
Definition
RemotePluginBase.cpp:34
Generated on
for lmms by
1.18.0