FahlGrahn Audio v1.0.0
Loading...
Searching...
No Matches
DenoiserProcessor.h
1#pragma once
2
3#include "NoiseReduction.h"
4#include <juce_audio_processors/juce_audio_processors.h>
5
6//==============================================================================
7class DenoiserAudioProcessor final : public juce::AudioProcessor
8{
9public:
10 //==============================================================================
12 ~DenoiserAudioProcessor() override;
13
14 //==============================================================================
15 void prepareToPlay (double sampleRate, int samplesPerBlock) override;
16 void releaseResources() override;
17
18 bool isBusesLayoutSupported (const BusesLayout& layouts) const override;
19
20 void processBlock (juce::AudioBuffer<float>&, juce::MidiBuffer&) override;
21 using AudioProcessor::processBlock;
22
23 //==============================================================================
24 juce::AudioProcessorEditor* createEditor() override;
25 bool hasEditor() const override;
26
27 //==============================================================================
28 const juce::String getName() const override;
29
30 bool acceptsMidi() const override;
31 bool producesMidi() const override;
32 bool isMidiEffect() const override;
33 double getTailLengthSeconds() const override;
34
35 //==============================================================================
36 int getNumPrograms() override;
37 int getCurrentProgram() override;
38 void setCurrentProgram (int index) override;
39 const juce::String getProgramName (int index) override;
40 void changeProgramName (int index, const juce::String& newName) override;
41
42 //==============================================================================
43 void getStateInformation (juce::MemoryBlock& destData) override;
44 void setStateInformation (const void* data, int sizeInBytes) override;
45
46 juce::AudioProcessorValueTreeState::ParameterLayout createParameters();
47 juce::AudioProcessorValueTreeState mParameters;
48
49
50private:
51 NoiseReduction mNoiseReduction;
52 juce::AudioParameterFloat *mDenoiserParameter;
53
54 //==============================================================================
55 JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (DenoiserAudioProcessor)
56};
Definition DenoiserProcessor.h:8
Definition NoiseReduction.h:6