Browse Source

MIDI: Allow MidiMessageCollector to preallocate storage

tags/2021-05-28
reuk 5 years ago
parent
commit
9dc6e687c1
No known key found for this signature in database GPG Key ID: 9ADCD339CFC98A11
2 changed files with 13 additions and 0 deletions
  1. +5
    -0
      modules/juce_audio_devices/midi_io/juce_MidiMessageCollector.cpp
  2. +8
    -0
      modules/juce_audio_devices/midi_io/juce_MidiMessageCollector.h

+ 5
- 0
modules/juce_audio_devices/midi_io/juce_MidiMessageCollector.cpp View File

@@ -128,6 +128,11 @@ void MidiMessageCollector::removeNextBlockOfMessages (MidiBuffer& destBuffer,
}
}
void MidiMessageCollector::ensureStorageAllocated (size_t bytes)
{
incomingMessages.ensureSize (bytes);
}
//==============================================================================
void MidiMessageCollector::handleNoteOn (MidiKeyboardState*, int midiChannel, int midiNoteNumber, float velocity)
{


+ 8
- 0
modules/juce_audio_devices/midi_io/juce_MidiMessageCollector.h View File

@@ -80,6 +80,14 @@ public:
*/
void removeNextBlockOfMessages (MidiBuffer& destBuffer, int numSamples);
/** Preallocates storage for collected messages.
This can be called before audio processing begins to ensure that there
is sufficient space for the expected MIDI messages, in order to avoid
allocations within the audio callback.
*/
void ensureStorageAllocated (size_t bytes);
//==============================================================================
/** @internal */


Loading…
Cancel
Save