TracktionEngine
Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
tracktion::engine::MidiNote Class Reference

Public Types

enum  NoteEdge { startEdge , endEdge }
 

Public Member Functions

 MidiNote (const juce::ValueTree &)
 
 MidiNote (MidiNote &&)=default
 
bool operator== (const MidiNote &other) const noexcept
 
bool operator!= (const MidiNote &other) const noexcept
 
BeatPosition getBeatPosition () const noexcept
 Start pos, in beats, from the start of the clip. More...
 
BeatPosition getStartBeat () const noexcept
 
BeatPosition getEndBeat () const noexcept
 
BeatDuration getLengthBeats () const noexcept
 
BeatRange getRangeBeats () const noexcept
 
TimePosition getPlaybackTime (NoteEdge, const MidiClip &, const GrooveTemplate *) const
 
BeatPosition getPlaybackBeats (NoteEdge, const MidiClip &, const GrooveTemplate *) const
 
BeatPosition getQuantisedStartBeat (const MidiClip &) const
 Returns the start, quantised according to the clip's settings. More...
 
BeatPosition getQuantisedStartBeat (const MidiClip *) const
 
BeatPosition getQuantisedEndBeat (const MidiClip &) const
 
BeatPosition getQuantisedEndBeat (const MidiClip *) const
 
BeatDuration getQuantisedLengthBeats (const MidiClip &) const
 
BeatDuration getQuantisedLengthBeats (const MidiClip *) const
 
TimePosition getEditStartTime (const MidiClip &) const
 Gets the start of this note in terms of edit time, taking into account quantising, groove templates, clip offset, etc... More...
 
TimePosition getEditEndTime (const MidiClip &) const
 
TimeDuration getLengthSeconds (const MidiClip &) const
 
TimeRange getEditTimeRange (const MidiClip &) const
 
void setStartAndLength (BeatPosition newStartBeat, BeatDuration newLengthInBeats, juce::UndoManager *)
 
int getNoteNumber () const noexcept
 
void setNoteNumber (int newNoteNumber, juce::UndoManager *)
 
int getVelocity () const noexcept
 
void setVelocity (int newVelocity, juce::UndoManager *)
 
int getColour () const noexcept
 
void setColour (int newColourIndex, juce::UndoManager *)
 
bool isMute () const noexcept
 
void setMute (bool shouldMute, juce::UndoManager *)
 

Static Public Member Functions

static juce::ValueTree createNote (const MidiNote &, BeatPosition newStart, BeatDuration newLength)
 

Public Attributes

juce::ValueTree state
 

Member Enumeration Documentation

◆ NoteEdge

Enumerator
startEdge 
endEdge 

Constructor & Destructor Documentation

◆ MidiNote() [1/2]

tracktion::engine::MidiNote::MidiNote ( const juce::ValueTree &  )

◆ MidiNote() [2/2]

tracktion::engine::MidiNote::MidiNote ( MidiNote &&  )
default

Member Function Documentation

◆ createNote()

static juce::ValueTree tracktion::engine::MidiNote::createNote ( const MidiNote ,
BeatPosition  newStart,
BeatDuration  newLength 
)
static

◆ operator==()

bool tracktion::engine::MidiNote::operator== ( const MidiNote other) const
noexcept

References state.

◆ operator!=()

bool tracktion::engine::MidiNote::operator!= ( const MidiNote other) const
noexcept

References state.

◆ getBeatPosition()

BeatPosition tracktion::engine::MidiNote::getBeatPosition ( ) const
noexcept

Start pos, in beats, from the start of the clip.

◆ getStartBeat()

BeatPosition tracktion::engine::MidiNote::getStartBeat ( ) const
noexcept

Referenced by getRangeBeats().

◆ getEndBeat()

BeatPosition tracktion::engine::MidiNote::getEndBeat ( ) const
noexcept

Referenced by getRangeBeats().

◆ getLengthBeats()

BeatDuration tracktion::engine::MidiNote::getLengthBeats ( ) const
noexcept

◆ getRangeBeats()

BeatRange tracktion::engine::MidiNote::getRangeBeats ( ) const
noexcept

References getEndBeat(), and getStartBeat().

◆ getPlaybackTime()

TimePosition tracktion::engine::MidiNote::getPlaybackTime ( NoteEdge  ,
const MidiClip ,
const GrooveTemplate  
) const

◆ getPlaybackBeats()

BeatPosition tracktion::engine::MidiNote::getPlaybackBeats ( NoteEdge  ,
const MidiClip ,
const GrooveTemplate  
) const

◆ getQuantisedStartBeat() [1/2]

BeatPosition tracktion::engine::MidiNote::getQuantisedStartBeat ( const MidiClip ) const

Returns the start, quantised according to the clip's settings.

◆ getQuantisedStartBeat() [2/2]

BeatPosition tracktion::engine::MidiNote::getQuantisedStartBeat ( const MidiClip ) const

◆ getQuantisedEndBeat() [1/2]

BeatPosition tracktion::engine::MidiNote::getQuantisedEndBeat ( const MidiClip ) const

◆ getQuantisedEndBeat() [2/2]

BeatPosition tracktion::engine::MidiNote::getQuantisedEndBeat ( const MidiClip ) const

◆ getQuantisedLengthBeats() [1/2]

BeatDuration tracktion::engine::MidiNote::getQuantisedLengthBeats ( const MidiClip ) const

◆ getQuantisedLengthBeats() [2/2]

BeatDuration tracktion::engine::MidiNote::getQuantisedLengthBeats ( const MidiClip ) const

◆ getEditStartTime()

TimePosition tracktion::engine::MidiNote::getEditStartTime ( const MidiClip ) const

Gets the start of this note in terms of edit time, taking into account quantising, groove templates, clip offset, etc...

◆ getEditEndTime()

TimePosition tracktion::engine::MidiNote::getEditEndTime ( const MidiClip ) const

◆ getLengthSeconds()

TimeDuration tracktion::engine::MidiNote::getLengthSeconds ( const MidiClip ) const

◆ getEditTimeRange()

TimeRange tracktion::engine::MidiNote::getEditTimeRange ( const MidiClip ) const

◆ setStartAndLength()

void tracktion::engine::MidiNote::setStartAndLength ( BeatPosition  newStartBeat,
BeatDuration  newLengthInBeats,
juce::UndoManager *   
)

◆ getNoteNumber()

int tracktion::engine::MidiNote::getNoteNumber ( ) const
noexcept

◆ setNoteNumber()

void tracktion::engine::MidiNote::setNoteNumber ( int  newNoteNumber,
juce::UndoManager *   
)

◆ getVelocity()

int tracktion::engine::MidiNote::getVelocity ( ) const
noexcept

◆ setVelocity()

void tracktion::engine::MidiNote::setVelocity ( int  newVelocity,
juce::UndoManager *   
)

◆ getColour()

int tracktion::engine::MidiNote::getColour ( ) const
noexcept

◆ setColour()

void tracktion::engine::MidiNote::setColour ( int  newColourIndex,
juce::UndoManager *   
)

◆ isMute()

bool tracktion::engine::MidiNote::isMute ( ) const
noexcept

◆ setMute()

void tracktion::engine::MidiNote::setMute ( bool  shouldMute,
juce::UndoManager *   
)

Member Data Documentation

◆ state

juce::ValueTree tracktion::engine::MidiNote::state

Referenced by operator!=(), and operator==().


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