mirror of
https://codeberg.org/armin/beamgrid.git
synced 2026-09-01 20:30:47 +02:00
45 lines
1.6 KiB
C
45 lines
1.6 KiB
C
|
|
#pragma once
|
||
|
|
|
||
|
|
#include "JuceHeader.h"
|
||
|
|
#include "Analyser.h"
|
||
|
|
|
||
|
|
class BeamgridAudioProcessor : public juce::AudioProcessor
|
||
|
|
{
|
||
|
|
public:
|
||
|
|
BeamgridAudioProcessor();
|
||
|
|
~BeamgridAudioProcessor() override;
|
||
|
|
|
||
|
|
void prepareToPlay (double sampleRate, int samplesPerBlock) override;
|
||
|
|
void releaseResources() override;
|
||
|
|
bool isBusesLayoutSupported (const BusesLayout& layouts) const override;
|
||
|
|
void processBlock (juce::AudioBuffer<float>&, juce::MidiBuffer&) override;
|
||
|
|
|
||
|
|
juce::AudioProcessorEditor* createEditor() override;
|
||
|
|
bool hasEditor() const override { return true; }
|
||
|
|
|
||
|
|
const juce::String getName() const override { return JucePlugin_Name; }
|
||
|
|
bool acceptsMidi() const override { return false; }
|
||
|
|
bool producesMidi() const override { return false; }
|
||
|
|
bool isMidiEffect() const override { return false; }
|
||
|
|
double getTailLengthSeconds() const override { return 0.0; }
|
||
|
|
|
||
|
|
int getNumPrograms() override { return 1; }
|
||
|
|
int getCurrentProgram() override { return 0; }
|
||
|
|
void setCurrentProgram (int) override {}
|
||
|
|
const juce::String getProgramName (int) override { return {}; }
|
||
|
|
void changeProgramName (int, const juce::String&) override {}
|
||
|
|
|
||
|
|
void getStateInformation (juce::MemoryBlock&) override;
|
||
|
|
void setStateInformation (const void* data, int sizeInBytes) override;
|
||
|
|
|
||
|
|
Analyser& getAnalyser() { return analyser; }
|
||
|
|
juce::AudioProcessorValueTreeState& getParametersState() { return params; }
|
||
|
|
|
||
|
|
private:
|
||
|
|
juce::AudioProcessorValueTreeState::ParameterLayout createParameterLayout();
|
||
|
|
|
||
|
|
juce::AudioProcessorValueTreeState params;
|
||
|
|
Analyser analyser;
|
||
|
|
|
||
|
|
JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (BeamgridAudioProcessor)
|
||
|
|
};
|