TracktionEngine
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | List of all members
tracktion::engine::MidiMessageArray Struct Reference

#include <tracktion_MidiMessageArray.h>

Public Types

using MidiMessageWithSource = tracktion::engine::MidiMessageWithSource
 
using MPESourceID = tracktion::engine::MPESourceID
 

Public Member Functions

bool isEmpty () const noexcept
 
bool isNotEmpty () const noexcept
 
int size () const noexcept
 
MidiMessageWithSourceoperator[] (int i)
 
const MidiMessageWithSourceoperator[] (int i) const
 
MidiMessageWithSourcebegin () noexcept
 
const MidiMessageWithSourcebegin () const noexcept
 
MidiMessageWithSourceend () noexcept
 
const MidiMessageWithSourceend () const noexcept
 
void remove (int index)
 
void swapWith (MidiMessageArray &other) noexcept
 
void clear () noexcept
 
void addMidiMessage (const juce::MidiMessage &m, MPESourceID mpeSourceID)
 
void addMidiMessage (juce::MidiMessage &&m, MPESourceID mpeSourceID)
 
void addMidiMessage (const juce::MidiMessage &m, double time, MPESourceID mpeSourceID)
 
void addMidiMessage (juce::MidiMessage &&m, double time, MPESourceID mpeSourceID)
 
void add (const MidiMessageWithSource &m)
 
void add (MidiMessageWithSource &&m)
 
void add (const MidiMessageWithSource &m, double time)
 
void add (MidiMessageWithSource &&m, double time)
 
void copyFrom (const MidiMessageArray &source)
 
void mergeFrom (const MidiMessageArray &source)
 
void mergeFromWithOffset (const MidiMessageArray &source, double delta)
 
void mergeFromAndClear (MidiMessageArray &source)
 
void mergeFromAndClearWithOffset (MidiMessageArray &source, double delta)
 
void mergeFromAndClearWithOffsetAndLimit (MidiMessageArray &source, double delta, int numItemsToTake)
 
void mergeFromAndClear (juce::Array< juce::MidiMessage > &source, MPESourceID mpeSourceID)
 
void removeNoteOnsAndOffs ()
 
template<typename Predicate >
void removeIf (Predicate &&pred)
 Removes any notes that match the given predicate.
 
void addToTimestamps (double delta) noexcept
 
void addToNoteNumbers (int delta) noexcept
 
void multiplyVelocities (float factor) noexcept
 
void sortByTimestamp ()
 
void reserve (int size)
 

Static Public Member Functions

static tracktion::engine::MPESourceID createUniqueMPESourceID ()
 

Public Attributes

bool isAllNotesOff = false
 

Static Public Attributes

static constexpr tracktion::engine::MPESourceID notMPE = {}
 

Member Typedef Documentation

◆ MidiMessageWithSource

◆ MPESourceID

Member Function Documentation

◆ isEmpty()

bool tracktion::engine::MidiMessageArray::isEmpty ( ) const
noexcept

◆ isNotEmpty()

bool tracktion::engine::MidiMessageArray::isNotEmpty ( ) const
noexcept

◆ size()

int tracktion::engine::MidiMessageArray::size ( ) const
noexcept

◆ operator[]() [1/2]

MidiMessageWithSource & tracktion::engine::MidiMessageArray::operator[] ( int  i)

◆ operator[]() [2/2]

const MidiMessageWithSource & tracktion::engine::MidiMessageArray::operator[] ( int  i) const

◆ begin() [1/2]

MidiMessageWithSource * tracktion::engine::MidiMessageArray::begin ( )
noexcept

◆ begin() [2/2]

const MidiMessageWithSource * tracktion::engine::MidiMessageArray::begin ( ) const
noexcept

◆ end() [1/2]

MidiMessageWithSource * tracktion::engine::MidiMessageArray::end ( )
noexcept

◆ end() [2/2]

const MidiMessageWithSource * tracktion::engine::MidiMessageArray::end ( ) const
noexcept

◆ remove()

void tracktion::engine::MidiMessageArray::remove ( int  index)

◆ swapWith()

void tracktion::engine::MidiMessageArray::swapWith ( MidiMessageArray other)
noexcept

◆ clear()

void tracktion::engine::MidiMessageArray::clear ( )
noexcept

◆ addMidiMessage() [1/4]

void tracktion::engine::MidiMessageArray::addMidiMessage ( const juce::MidiMessage &  m,
MPESourceID  mpeSourceID 
)

◆ addMidiMessage() [2/4]

void tracktion::engine::MidiMessageArray::addMidiMessage ( juce::MidiMessage &&  m,
MPESourceID  mpeSourceID 
)

◆ addMidiMessage() [3/4]

void tracktion::engine::MidiMessageArray::addMidiMessage ( const juce::MidiMessage &  m,
double  time,
MPESourceID  mpeSourceID 
)

◆ addMidiMessage() [4/4]

void tracktion::engine::MidiMessageArray::addMidiMessage ( juce::MidiMessage &&  m,
double  time,
MPESourceID  mpeSourceID 
)

◆ add() [1/4]

void tracktion::engine::MidiMessageArray::add ( const MidiMessageWithSource m)

◆ add() [2/4]

void tracktion::engine::MidiMessageArray::add ( MidiMessageWithSource &&  m)

◆ add() [3/4]

void tracktion::engine::MidiMessageArray::add ( const MidiMessageWithSource m,
double  time 
)

◆ add() [4/4]

void tracktion::engine::MidiMessageArray::add ( MidiMessageWithSource &&  m,
double  time 
)

◆ copyFrom()

void tracktion::engine::MidiMessageArray::copyFrom ( const MidiMessageArray source)

◆ mergeFrom()

void tracktion::engine::MidiMessageArray::mergeFrom ( const MidiMessageArray source)

References isAllNotesOff, isEmpty(), and size().

Referenced by copyFrom().

◆ mergeFromWithOffset()

void tracktion::engine::MidiMessageArray::mergeFromWithOffset ( const MidiMessageArray source,
double  delta 
)

References isAllNotesOff, isEmpty(), and size().

◆ mergeFromAndClear() [1/2]

void tracktion::engine::MidiMessageArray::mergeFromAndClear ( MidiMessageArray source)

◆ mergeFromAndClearWithOffset()

void tracktion::engine::MidiMessageArray::mergeFromAndClearWithOffset ( MidiMessageArray source,
double  delta 
)

◆ mergeFromAndClearWithOffsetAndLimit()

void tracktion::engine::MidiMessageArray::mergeFromAndClearWithOffsetAndLimit ( MidiMessageArray source,
double  delta,
int  numItemsToTake 
)

◆ mergeFromAndClear() [2/2]

void tracktion::engine::MidiMessageArray::mergeFromAndClear ( juce::Array< juce::MidiMessage > &  source,
MPESourceID  mpeSourceID 
)

References addMidiMessage().

◆ removeNoteOnsAndOffs()

void tracktion::engine::MidiMessageArray::removeNoteOnsAndOffs ( )

◆ removeIf()

template<typename Predicate >
void tracktion::engine::MidiMessageArray::removeIf ( Predicate &&  pred)

Removes any notes that match the given predicate.

◆ addToTimestamps()

void tracktion::engine::MidiMessageArray::addToTimestamps ( double  delta)
noexcept

◆ addToNoteNumbers()

void tracktion::engine::MidiMessageArray::addToNoteNumbers ( int  delta)
noexcept

◆ multiplyVelocities()

void tracktion::engine::MidiMessageArray::multiplyVelocities ( float  factor)
noexcept

◆ sortByTimestamp()

void tracktion::engine::MidiMessageArray::sortByTimestamp ( )

◆ reserve()

void tracktion::engine::MidiMessageArray::reserve ( int  size)

◆ createUniqueMPESourceID()

static tracktion::engine::MPESourceID tracktion::engine::MidiMessageArray::createUniqueMPESourceID ( )
static

Member Data Documentation

◆ isAllNotesOff

bool tracktion::engine::MidiMessageArray::isAllNotesOff = false

◆ notMPE

constexpr tracktion::engine::MPESourceID tracktion::engine::MidiMessageArray::notMPE = {}
staticconstexpr

The documentation for this struct was generated from the following file: