|
|
|
@@ -35,7 +35,8 @@ namespace juce |
|
|
|
give it a processor to use by calling setProcessor().
|
|
|
|
|
|
|
|
It's also a MidiInputCallback, so you can connect it to both an audio and midi
|
|
|
|
input to send both streams through the processor.
|
|
|
|
input to send both streams through the processor. To set a MidiOutput for the processor,
|
|
|
|
use the setMidiOutput() method.
|
|
|
|
|
|
|
|
@see AudioProcessor, AudioProcessorGraph
|
|
|
|
|
|
|
|
@@ -68,18 +69,26 @@ public: |
|
|
|
*/
|
|
|
|
MidiMessageCollector& getMidiMessageCollector() noexcept { return messageCollector; }
|
|
|
|
|
|
|
|
/** Sets the MIDI output that should be used, if required.
|
|
|
|
|
|
|
|
The MIDI output will not be deleted or owned by this object. If the MIDI output is
|
|
|
|
deleted, pass a nullptr to this method.
|
|
|
|
*/
|
|
|
|
void setMidiOutput (MidiOutput* midiOutputToUse);
|
|
|
|
|
|
|
|
/** Switch between double and single floating point precisions processing.
|
|
|
|
The audio IO callbacks will still operate in single floating point
|
|
|
|
precision, however, all internal processing including the
|
|
|
|
AudioProcessor will be processed in double floating point precision if
|
|
|
|
the AudioProcessor supports it (see
|
|
|
|
AudioProcessor::supportsDoublePrecisionProcessing()).
|
|
|
|
Otherwise, the processing will remain single precision irrespective of
|
|
|
|
the parameter doublePrecision. */
|
|
|
|
|
|
|
|
The audio IO callbacks will still operate in single floating point precision,
|
|
|
|
however, all internal processing including the AudioProcessor will be processed in
|
|
|
|
double floating point precision if the AudioProcessor supports it (see
|
|
|
|
AudioProcessor::supportsDoublePrecisionProcessing()). Otherwise, the processing will
|
|
|
|
remain single precision irrespective of the parameter doublePrecision.
|
|
|
|
*/
|
|
|
|
void setDoublePrecisionProcessing (bool doublePrecision);
|
|
|
|
|
|
|
|
/** Returns true if this player processes internally processes the samples with
|
|
|
|
double floating point precision. */
|
|
|
|
double floating point precision.
|
|
|
|
*/
|
|
|
|
inline bool getDoublePrecisionProcessing() { return isDoublePrecision; }
|
|
|
|
|
|
|
|
//==============================================================================
|
|
|
|
@@ -107,6 +116,7 @@ private: |
|
|
|
|
|
|
|
MidiBuffer incomingMidi;
|
|
|
|
MidiMessageCollector messageCollector;
|
|
|
|
MidiOutput* midiOutput = nullptr;
|
|
|
|
|
|
|
|
JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (AudioProcessorPlayer)
|
|
|
|
};
|
|
|
|
|