lmms
Cross-platform music production software
Toggle main menu visibility
Loading...
Searching...
No Matches
plugins
Lv2Effect
Lv2Effect.h
Go to the documentation of this file.
1
/*
2
* Lv2Effect.h - implementation of LV2 effect
3
*
4
* Copyright (c) 2018-2023 Johannes Lorenz <jlsf2013$users.sourceforge.net, $=@>
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 LV2_EFFECT_H
26
#define LV2_EFFECT_H
27
28
#include "
Effect.h
"
29
#include "
Lv2FxControls.h
"
30
31
namespace
lmms
32
{
33
34
35
class
Lv2Effect
:
public
Effect
36
{
37
Q_OBJECT
38
39
public
:
40
/*
41
initialization
42
*/
43
Lv2Effect
(
Model
* parent,
const
Descriptor::SubPluginFeatures::Key* _key);
44
45
ProcessStatus
processImpl
(
SampleFrame
* buf,
const
f_cnt_t
frames)
override
;
46
47
EffectControls
*
controls
()
override
{
return
&
m_controls
; }
48
49
Lv2FxControls
*
lv2Controls
() {
return
&
m_controls
; }
50
const
Lv2FxControls
*
lv2Controls
()
const
{
return
&
m_controls
; }
51
52
private
:
53
Lv2FxControls
m_controls
;
54
std::vector<SampleFrame>
m_tmpOutputSmps
;
55
};
56
57
58
}
// namespace lmms
59
60
#endif
Effect.h
Lv2FxControls.h
lmms::EffectControls
Definition
EffectControls.h:44
lmms::Effect::Effect
Effect(const Plugin::Descriptor *_desc, Model *_parent, const Descriptor::SubPluginFeatures::Key *_key)
Definition
Effect.cpp:41
lmms::Effect::ProcessStatus
ProcessStatus
Definition
Effect.h:150
lmms::Lv2Effect::lv2Controls
const Lv2FxControls * lv2Controls() const
Definition
Lv2Effect.h:50
lmms::Lv2Effect::m_tmpOutputSmps
std::vector< SampleFrame > m_tmpOutputSmps
Definition
Lv2Effect.h:54
lmms::Lv2Effect::Lv2Effect
Lv2Effect(Model *parent, const Descriptor::SubPluginFeatures::Key *_key)
Definition
Lv2Effect.cpp:61
lmms::Lv2Effect::controls
EffectControls * controls() override
Definition
Lv2Effect.h:47
lmms::Lv2Effect::lv2Controls
Lv2FxControls * lv2Controls()
Definition
Lv2Effect.h:49
lmms::Lv2Effect::processImpl
ProcessStatus processImpl(SampleFrame *buf, const f_cnt_t frames) override
Definition
Lv2Effect.cpp:71
lmms::Lv2Effect::m_controls
Lv2FxControls m_controls
Definition
Lv2Effect.h:53
lmms::Lv2FxControls
Definition
Lv2FxControls.h:44
lmms::Model
Definition
Model.h:37
lmms::SampleFrame
Definition
SampleFrame.h:41
lmms
Definition
RemotePluginBase.cpp:34
lmms::f_cnt_t
std::uint64_t f_cnt_t
Definition
LmmsTypes.h:43
Generated on
for lmms by
1.18.0