LMMS
Loading...
Searching...
No Matches
DualFilter.h
Go to the documentation of this file.
1/*
2 * DualFilter.h - dual filter effect-plugin
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
27#ifndef DUALFILTER_H
28#define DUALFILTER_H
29
30#include "Effect.h"
31#include "DualFilterControls.h"
32#include "BasicFilters.h"
33
34namespace lmms
35{
36
37
39{
40public:
41 DualFilterEffect( Model* parent, const Descriptor::SubPluginFeatures::Key* key );
42 ~DualFilterEffect() override;
43
44 ProcessStatus processImpl(SampleFrame* buf, const f_cnt_t frames) override;
45
47 {
48 return &m_dfControls;
49 }
50
51protected:
52 void onEnabledChanged() override;
53
54private:
56
59
62
67
68 friend class DualFilterControls;
69
70} ;
71
72
73} // namespace lmms
74
75#endif
Definition BasicFilters.h:224
~DualFilterEffect() override
Definition DualFilter.cpp:71
BasicFilters< 2 > * m_filter1
Definition DualFilter.h:57
float m_currentCut2
Definition DualFilter.h:65
void onEnabledChanged() override
Definition DualFilter.cpp:212
DualFilterEffect(Model *parent, const Descriptor::SubPluginFeatures::Key *key)
Definition DualFilter.cpp:56
ProcessStatus processImpl(SampleFrame *buf, const f_cnt_t frames) override
Definition DualFilter.cpp:80
float m_currentCut1
Definition DualFilter.h:63
float m_currentRes2
Definition DualFilter.h:66
DualFilterControls m_dfControls
Definition DualFilter.h:55
BasicFilters< 2 > * m_filter2
Definition DualFilter.h:58
float m_currentRes1
Definition DualFilter.h:64
EffectControls * controls() override
Definition DualFilter.h:46
bool m_filter1changed
Definition DualFilter.h:60
friend class DualFilterControls
Definition DualFilter.h:68
bool m_filter2changed
Definition DualFilter.h:61
Definition EffectControls.h:44
Effect(const Plugin::Descriptor *_desc, Model *_parent, const Descriptor::SubPluginFeatures::Key *_key)
Definition Effect.cpp:41
ProcessStatus
Definition Effect.h:147
Definition Model.h:37
const Descriptor::SubPluginFeatures::Key & key() const
Definition Plugin.h:266
Definition SampleFrame.h:41
static uintptr_t parent
Definition pugl.h:1644
Definition AudioAlsa.cpp:35
std::uint64_t f_cnt_t
Definition LmmsTypes.h:43