LMMS
Loading...
Searching...
No Matches
CrossoverEQControls.h
Go to the documentation of this file.
1/*
2 * CrossoverEQControls.h - A native 4-band Crossover Equalizer
3 * good for simulating tonestacks or simple peakless (flat-band) equalization
4 *
5 * Copyright (c) 2014 Vesa Kivimäki <contact/dot/diizy/at/nbl/dot/fi>
6 * Copyright (c) 2006-2014 Tobias Doerffel <tobydox/at/users.sourceforge.net>
7 *
8 * This file is part of LMMS - https://lmms.io
9 *
10 * This program is free software; you can redistribute it and/or
11 * modify it under the terms of the GNU General Public
12 * License as published by the Free Software Foundation; either
13 * version 2 of the License, or (at your option) any later version.
14 *
15 * This program is distributed in the hope that it will be useful,
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
18 * General Public License for more details.
19 *
20 * You should have received a copy of the GNU General Public
21 * License along with this program (see COPYING); if not, write to the
22 * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
23 * Boston, MA 02110-1301 USA.
24 *
25 */
26
27#ifndef CROSSOVEREQ_CONTROLS_H
28#define CROSSOVEREQ_CONTROLS_H
29
30#include "EffectControls.h"
32
33namespace lmms
34{
35
37
39{
40 Q_OBJECT
41public:
43 ~CrossoverEQControls() 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( "crossoevereqcontrols" );
50 }
51
52 int controlCount() override
53 {
54 return( 11 );
55 }
56
58 {
59 return( new gui::CrossoverEQControlDialog( this ) );
60 }
61
62private slots:
63 void xover12Changed();
64 void xover23Changed();
65 void xover34Changed();
66 void sampleRateChanged();
67
68private:
70
74
79
84
86 friend class CrossoverEQEffect;
87};
88
89
90} // namespace lmms
91
92#endif
Definition AutomatableModel.h:497
CrossoverEQControls(CrossoverEQEffect *eff)
Definition CrossoverEQControls.cpp:34
CrossoverEQEffect * m_effect
Definition CrossoverEQControls.h:69
void xover34Changed()
Definition CrossoverEQControls.cpp:110
void loadSettings(const QDomElement &elem) override
Definition CrossoverEQControls.cpp:76
QString nodeName() const override
Definition CrossoverEQControls.h:47
BoolModel m_mute4
Definition CrossoverEQControls.h:83
FloatModel m_xover34
Definition CrossoverEQControls.h:73
friend class CrossoverEQEffect
Definition CrossoverEQControls.h:86
void saveSettings(QDomDocument &doc, QDomElement &elem) override
Definition CrossoverEQControls.cpp:59
void xover12Changed()
Definition CrossoverEQControls.cpp:96
void xover23Changed()
Definition CrossoverEQControls.cpp:103
void sampleRateChanged()
Definition CrossoverEQControls.cpp:118
FloatModel m_gain2
Definition CrossoverEQControls.h:76
FloatModel m_xover12
Definition CrossoverEQControls.h:71
int controlCount() override
Definition CrossoverEQControls.h:52
BoolModel m_mute3
Definition CrossoverEQControls.h:82
BoolModel m_mute2
Definition CrossoverEQControls.h:81
FloatModel m_gain1
Definition CrossoverEQControls.h:75
~CrossoverEQControls() override=default
FloatModel m_gain4
Definition CrossoverEQControls.h:78
FloatModel m_xover23
Definition CrossoverEQControls.h:72
gui::EffectControlDialog * createView() override
Definition CrossoverEQControls.h:57
BoolModel m_mute1
Definition CrossoverEQControls.h:80
FloatModel m_gain3
Definition CrossoverEQControls.h:77
Definition CrossoverEQ.h:39
EffectControls(Effect *_eff)
Definition EffectControls.h:46
Definition AutomatableModel.h:463
Definition CrossoverEQControlDialog.h:43
Definition EffectControlDialog.h:42
Definition AudioAlsa.cpp:35