From aa01a84ed5deee9fa1674dff9c657606dadf8942 Mon Sep 17 00:00:00 2001 From: ed Date: Thu, 8 Feb 2018 15:35:27 +0000 Subject: [PATCH] Added MidiMessage::isResetAllControllers() method --- modules/juce_audio_basics/midi/juce_MidiMessage.cpp | 6 ++++++ modules/juce_audio_basics/midi/juce_MidiMessage.h | 5 +++++ 2 files changed, 11 insertions(+) diff --git a/modules/juce_audio_basics/midi/juce_MidiMessage.cpp b/modules/juce_audio_basics/midi/juce_MidiMessage.cpp index 36cbd03448..d1ad950583 100644 --- a/modules/juce_audio_basics/midi/juce_MidiMessage.cpp +++ b/modules/juce_audio_basics/midi/juce_MidiMessage.cpp @@ -623,6 +623,12 @@ bool MidiMessage::isAllSoundOff() const noexcept return data[1] == 120 && (data[0] & 0xf0) == 0xb0; } +bool MidiMessage::isResetAllControllers() const noexcept +{ + auto data = getRawData(); + return (data[0] & 0xf0) == 0xb0 && data[1] == 121; +} + MidiMessage MidiMessage::allControllersOff (const int channel) noexcept { return controllerEvent (channel, 121, 0); diff --git a/modules/juce_audio_basics/midi/juce_MidiMessage.h b/modules/juce_audio_basics/midi/juce_MidiMessage.h index 867831f5e0..8327223ca7 100644 --- a/modules/juce_audio_basics/midi/juce_MidiMessage.h +++ b/modules/juce_audio_basics/midi/juce_MidiMessage.h @@ -501,6 +501,11 @@ public: */ bool isAllSoundOff() const noexcept; + /** Checks whether this message is a reset all controllers message. + @see allControllerOff + */ + bool isResetAllControllers() const noexcept; + /** Creates an all-notes-off message. @param channel the midi channel, in the range 1 to 16 @see isAllNotesOff