/* This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ #ifndef DOM_MIDI_MIDIUTILS_H_ #define DOM_MIDI_MIDIUTILS_H_ #include "mozilla/TimeStamp.h" #include "nsTArray.h" namespace mozilla::dom { class MIDIMessage; /** * Set of utility functions for dealing with MIDI Messages. * */ namespace MIDIUtils { // Takes a nsTArray of bytes and parses it into zero or more MIDI messages. // Returns true if no errors were encountered, false otherwise. bool ParseMessages(const nsTArray& aByteBuffer, const TimeStamp& aTimestamp, nsTArray& aMsgArray); // Returns true if a message is a sysex message. bool IsSysexMessage(const MIDIMessage& a); } // namespace MIDIUtils } // namespace mozilla::dom #endif // DOM_MIDI_MIDIUTILS_H_