Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- ==============================================================================
- This file was auto-generated!
- It contains the basic framework code for a JUCE plugin processor.
- ==============================================================================
- */
- #pragma once
- #include "../JuceLibraryCode/JuceHeader.h"
- //==============================================================================
- /**
- */
- class DelayTutAudioProcessor : public AudioProcessor
- {
- public:
- //==============================================================================
- DelayTutAudioProcessor();
- ~DelayTutAudioProcessor();
- //==============================================================================
- void prepareToPlay (double sampleRate, int samplesPerBlock) override;
- void releaseResources() override;
- #ifndef JucePlugin_PreferredChannelConfigurations
- bool isBusesLayoutSupported (const BusesLayout& layouts) const override;
- #endif
- void processBlock (AudioBuffer<float>&, MidiBuffer&) override;
- //==============================================================================
- AudioProcessorEditor* createEditor() override;
- bool hasEditor() const override;
- //==============================================================================
- const String getName() const override;
- bool acceptsMidi() const override;
- bool producesMidi() const override;
- bool isMidiEffect() const override;
- double getTailLengthSeconds() const override;
- //==============================================================================
- int getNumPrograms() override;
- int getCurrentProgram() override;
- void setCurrentProgram (int index) override;
- const String getProgramName (int index) override;
- void changeProgramName (int index, const String& newName) override;
- //==============================================================================
- void getStateInformation (MemoryBlock& destData) override;
- void setStateInformation (const void* data, int sizeInBytes) override;
- private:
- //PARAMS
- //=========================
- int delayTime{500};
- float delayGain{ 0.5 };
- //PROCESSOR VARS
- //=========================
- int m_sampleRate{ 44100 };
- int ms; //Length in samples of a millisecond
- AudioBuffer<float> m_delayBuffer; //where delayed signal is stored
- int m_writePosition{0};
- float m_maxDelayTime{ 2.0 }; //longest delay time allowed in seconds
- //PROCESSOR FUNCTIONS
- //=======================
- void fillDelayBuffer(const int delayBufferLength, const int bufferLength, int channel,
- const float* bufferData, const float* delayBufferData);
- void getFromDelayBuffer(AudioBuffer<float>& buffer, int channel, const int bufferLength, const int delayBufferLength,
- const float* bufferData, const float* delayBufferData);
- //==============================================================================
- JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (DelayTutAudioProcessor)
- };
Add Comment
Please, Sign In to add comment