LMMS
Loading...
Searching...
No Matches
juce_ProcessorWrapper.h
Go to the documentation of this file.
1/*
2 ==============================================================================
3
4 This file is part of the JUCE library.
5 Copyright (c) 2022 - Raw Material Software Limited
6
7 JUCE is an open source library subject to commercial or open-source
8 licensing.
9
10 By using JUCE, you agree to the terms of both the JUCE 7 End-User License
11 Agreement and JUCE Privacy Policy.
12
13 End User License Agreement: www.juce.com/juce-7-licence
14 Privacy Policy: www.juce.com/juce-privacy-policy
15
16 Or: You may also use this code under the terms of the GPL v3 (see
17 www.gnu.org/licenses).
18
19 JUCE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL WARRANTIES, WHETHER
20 EXPRESSED OR IMPLIED, INCLUDING MERCHANTABILITY AND FITNESS FOR PURPOSE, ARE
21 DISCLAIMED.
22
23 ==============================================================================
24*/
25
26namespace juce
27{
28namespace dsp
29{
30
41{
42 ProcessorBase() = default;
43 virtual ~ProcessorBase() = default;
44
45 virtual void prepare (const ProcessSpec&) = 0;
46 virtual void process (const ProcessContextReplacing<float>&) = 0;
47 virtual void reset() = 0;
48};
49
50
51//==============================================================================
59template <typename ProcessorType>
61{
62 void prepare (const ProcessSpec& spec) override
63 {
64 processor.prepare (spec);
65 }
66
67 void process (const ProcessContextReplacing<float>& context) override
68 {
69 processor.process (context);
70 }
71
72 void reset() override
73 {
74 processor.reset();
75 }
76
77 ProcessorType processor;
78};
79
80} // namespace dsp
81} // namespace juce
Definition juce_AudioBlock.h:29
Definition carla_juce.cpp:31
Definition juce_ProcessContext.h:88
Definition juce_ProcessContext.h:38
virtual void reset()=0
virtual ~ProcessorBase()=default
virtual void prepare(const ProcessSpec &)=0
virtual void process(const ProcessContextReplacing< float > &)=0
Definition juce_ProcessorWrapper.h:61
void reset() override
Definition juce_ProcessorWrapper.h:72
void process(const ProcessContextReplacing< float > &context) override
Definition juce_ProcessorWrapper.h:67
void prepare(const ProcessSpec &spec) override
Definition juce_ProcessorWrapper.h:62
ProcessorType processor
Definition juce_ProcessorWrapper.h:77