An iterator to move over contiguous raw MIDI data, which Allows iterating over a MidiBuffer using C++11 range-for syntax. More...
#include <juce_MidiBuffer.h>

Public Types | |
| using | difference_type = std::iterator_traits< Ptr >::difference_type |
| using | iterator_category = std::input_iterator_tag |
| using | pointer = void |
| using | reference = MidiMessageMetadata |
| using | value_type = MidiMessageMetadata |
Public Member Functions | |
| MidiBufferIterator ()=default | |
| MidiBufferIterator (const uint8 *dataIn) noexcept | |
Constructs an iterator pointing at the message starting at the byte dataIn. More... | |
| bool | operator!= (const MidiBufferIterator &other) const noexcept |
| Return false if this iterator points to the same message as another iterator instance, otherwise returns true. More... | |
| reference | operator* () const noexcept |
| Return an instance of MidiMessageMetadata which describes the message to which the iterator is currently pointing. More... | |
| MidiBufferIterator & | operator++ () noexcept |
| Make this iterator point to the next message in the buffer. More... | |
| MidiBufferIterator | operator++ (int) noexcept |
| Create a copy of this object, make this iterator point to the next message in the buffer, then return the copy. More... | |
| bool | operator== (const MidiBufferIterator &other) const noexcept |
| Return true if this iterator points to the same message as another iterator instance, otherwise return false. More... | |
Private Types | |
| using | Ptr = const uint8 * |
Private Attributes | |
| Ptr | data = nullptr |
An iterator to move over contiguous raw MIDI data, which Allows iterating over a MidiBuffer using C++11 range-for syntax.
In the following example, we log all three-byte messages in a midi buffer.
@tags{Audio}
| using juce::MidiBufferIterator::difference_type = std::iterator_traits<Ptr>::difference_type |
| using juce::MidiBufferIterator::iterator_category = std::input_iterator_tag |
| using juce::MidiBufferIterator::pointer = void |
|
private |
|
default |
|
inlineexplicitnoexcept |
Constructs an iterator pointing at the message starting at the byte dataIn.
dataIn must point to the start of a valid MIDI message. If it does not, calling other member functions on the iterator will result in undefined behaviour.
|
inlinenoexcept |
Return false if this iterator points to the same message as another iterator instance, otherwise returns true.
References juce::operator==().
|
noexcept |
Return an instance of MidiMessageMetadata which describes the message to which the iterator is currently pointing.
|
noexcept |
Make this iterator point to the next message in the buffer.
|
noexcept |
Create a copy of this object, make this iterator point to the next message in the buffer, then return the copy.
|
inlinenoexcept |
Return true if this iterator points to the same message as another iterator instance, otherwise return false.
References juce::gl::data.
|
private |