25 #ifndef JUCE_AUDIOPROCESSOR_H_INCLUDED 26 #define JUCE_AUDIOPROCESSOR_H_INCLUDED 56 virtual const String getName()
const = 0;
69 virtual void prepareToPlay (
double sampleRate,
70 int estimatedSamplesPerBlock) = 0;
75 virtual void releaseResources() = 0;
220 virtual const String getInputChannelName (
int channelIndex)
const = 0;
227 virtual const String getOutputChannelName (
int channelIndex)
const = 0;
230 virtual bool isInputChannelStereoPair (
int index)
const = 0;
233 virtual bool isOutputChannelStereoPair (
int index)
const = 0;
248 void setLatencySamples (
int newLatency);
251 virtual bool silenceInProducesSilenceOut()
const = 0;
254 virtual double getTailLengthSeconds()
const = 0;
257 virtual bool acceptsMidi()
const = 0;
260 virtual bool producesMidi()
const = 0;
304 void suspendProcessing (
bool shouldBeSuspended);
316 virtual void reset();
334 virtual void setNonRealtime (
bool isNonRealtime)
noexcept;
369 virtual bool hasEditor()
const = 0;
389 virtual int getNumParameters();
396 virtual const String getParameterName (
int parameterIndex);
409 virtual float getParameter (
int parameterIndex);
421 virtual String getParameterName (
int parameterIndex,
int maximumStringLength);
427 virtual const String getParameterText (
int parameterIndex);
439 virtual String getParameterText (
int parameterIndex,
int maximumStringLength);
450 virtual int getParameterNumSteps (
int parameterIndex);
458 static int getDefaultNumParameterSteps()
noexcept;
467 virtual float getParameterDefaultValue (
int parameterIndex);
475 virtual String getParameterLabel (
int index)
const;
483 virtual bool isParameterOrientationInverted (
int index)
const;
501 virtual void setParameter (
int parameterIndex,
float newValue);
516 void setParameterNotifyingHost (
int parameterIndex,
float newValue);
524 virtual bool isParameterAutomatable (
int parameterIndex)
const;
534 virtual bool isMetaParameter (
int parameterIndex)
const;
547 void beginParameterChangeGesture (
int parameterIndex);
559 void endParameterChangeGesture (
int parameterIndex);
566 void updateHostDisplay();
586 virtual int getNumPrograms() = 0;
589 virtual int getCurrentProgram() = 0;
592 virtual void setCurrentProgram (
int index) = 0;
595 virtual const String getProgramName (
int index) = 0;
598 virtual void changeProgramName (
int index,
const String& newName) = 0;
638 virtual void setStateInformation (
const void*
data,
int sizeInBytes) = 0;
649 virtual void setCurrentProgramStateInformation (
const void* data,
int sizeInBytes);
652 virtual void numChannelsChanged();
670 void setPlayConfigDetails (
int numIns,
int numOuts,
double sampleRate,
int blockSize)
noexcept;
677 void setSpeakerArrangement (
const String& inputs,
const String& outputs);
682 wrapperType_Undefined = 0,
688 wrapperType_Standalone
705 static void copyXmlToBinary (
const XmlElement& xml,
713 static XmlElement* getXmlFromBinary (
const void* data,
int sizeInBytes);
723 void sendParamChangeMessageToListeners (
int parameterIndex,
float newValue);
729 int blockSize, numInputChannels, numOutputChannels, latencySamples;
730 bool suspended, nonRealtime;
732 String inputSpeakerArrangement, outputSpeakerArrangement;
737 #if JUCE_DEBUG && ! JUCE_DISABLE_AUDIOPROCESSOR_BEGIN_END_GESTURE_CHECKING 747 #endif // JUCE_AUDIOPROCESSOR_H_INCLUDED Definition: juce_AudioSampleBuffer.h:34
WrapperType wrapperType
Definition: juce_AudioProcessor.h:694
CriticalSection callbackLock
Definition: juce_mac_CoreMidi.cpp:258
Definition: juce_BigInteger.h:43
Definition: juce_AudioProcessor.h:687
AudioPlayHead * playHead
Definition: juce_AudioProcessor.h:720
#define noexcept
Definition: juce_CompilerSupport.h:141
double getSampleRate() const noexcept
Definition: juce_AudioProcessor.h:164
Definition: juce_AudioProcessorEditor.h:38
const String & getOutputSpeakerArrangement() const noexcept
Definition: juce_AudioProcessor.h:212
int getNumInputChannels() const noexcept
Definition: juce_AudioProcessor.h:187
Definition: juce_String.h:43
Definition: juce_AudioProcessor.h:683
#define JUCE_API
Definition: juce_StandardHeader.h:139
JOCTET * buffer
Definition: juce_JPEGLoader.cpp:302
Definition: juce_CriticalSection.h:47
int getNumOutputChannels() const noexcept
Definition: juce_AudioProcessor.h:198
Definition: juce_AudioPlayHead.h:39
Definition: juce_XmlElement.h:142
Definition: juce_AudioProcessor.h:686
WrapperType
Definition: juce_AudioProcessor.h:680
AudioPlayHead * getPlayHead() const noexcept
Definition: juce_AudioProcessor.h:155
bool isSuspended() const noexcept
Definition: juce_AudioProcessor.h:309
int getLatencySamples() const noexcept
Definition: juce_AudioProcessor.h:241
const CriticalSection & getCallbackLock() const noexcept
Definition: juce_AudioProcessor.h:274
Definition: juce_AudioProcessor.h:685
Definition: juce_Array.h:60
int getBlockSize() const noexcept
Definition: juce_AudioProcessor.h:175
Definition: juce_AudioProcessorListener.h:37
Definition: juce_AudioProcessor.h:43
bool isNonRealtime() const noexcept
Definition: juce_AudioProcessor.h:329
JSAMPIMAGE data
Definition: jpeglib.h:945
Definition: juce_MidiBuffer.h:43
Definition: juce_core.h:39
Definition: juce_AudioProcessor.h:684
const String & getInputSpeakerArrangement() const noexcept
Definition: juce_AudioProcessor.h:205
Definition: juce_AudioProcessorParameter.h:35
AudioProcessorEditor * getActiveEditor() const noexcept
Definition: juce_AudioProcessor.h:375