TracktionEngine
Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
tracktion::engine::MidiExpression Struct Reference

Public Member Functions

 MidiExpression (const juce::ValueTree &v)
 Creates a MidiExpression interface to an existing MIDI note state. More...
 
BeatPosition getBeatPosition () const noexcept
 Returns the beat position relative to the note's start. More...
 
void setBeatPosition (BeatPosition newBeat, juce::UndoManager *um)
 Sets the beat position. More...
 
float getValue () const noexcept
 Returns the value of the expression. More...
 
void setValue (float newValue, juce::UndoManager *um)
 Sets the value with some range validation. More...
 

Static Public Member Functions

static bool noteHasExpression (const juce::ValueTree &noteState) noexcept
 Returns true if this MidiNote is an expressive note. More...
 
static bool noteHasExpression (const juce::ValueTree &noteState, const juce::Identifier &type) noexcept
 Returns true if this MidiNote is an expressive note of type. More...
 
static bool listHasExpression (const MidiList &midiList) noexcept
 Returns true if this MidiList is an expressive note. More...
 
static bool isExpression (const juce::Identifier &type) noexcept
 
static juce::ValueTree createAndAddExpressionToNote (juce::ValueTree &noteState, const juce::Identifier &expressionType, BeatPosition beat, float value, juce::UndoManager *um)
 

Public Attributes

juce::ValueTree state
 

Constructor & Destructor Documentation

◆ MidiExpression()

tracktion::engine::MidiExpression::MidiExpression ( const juce::ValueTree &  v)

Creates a MidiExpression interface to an existing MIDI note state.

This can be either a MidiNote or expression tree.

References isExpression().

Member Function Documentation

◆ noteHasExpression() [1/2]

static bool tracktion::engine::MidiExpression::noteHasExpression ( const juce::ValueTree &  noteState)
staticnoexcept

Returns true if this MidiNote is an expressive note.

◆ noteHasExpression() [2/2]

static bool tracktion::engine::MidiExpression::noteHasExpression ( const juce::ValueTree &  noteState,
const juce::Identifier &  type 
)
staticnoexcept

Returns true if this MidiNote is an expressive note of type.

◆ listHasExpression()

static bool tracktion::engine::MidiExpression::listHasExpression ( const MidiList midiList)
staticnoexcept

Returns true if this MidiList is an expressive note.

◆ isExpression()

static bool tracktion::engine::MidiExpression::isExpression ( const juce::Identifier &  type)
staticnoexcept

◆ createAndAddExpressionToNote()

static juce::ValueTree tracktion::engine::MidiExpression::createAndAddExpressionToNote ( juce::ValueTree &  noteState,
const juce::Identifier &  expressionType,
BeatPosition  beat,
float  value,
juce::UndoManager *  um 
)
static

◆ getBeatPosition()

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

Returns the beat position relative to the note's start.

References state.

◆ setBeatPosition()

void tracktion::engine::MidiExpression::setBeatPosition ( BeatPosition  newBeat,
juce::UndoManager *  um 
)

Sets the beat position.

References state.

Referenced by createAndAddExpressionToNote().

◆ getValue()

float tracktion::engine::MidiExpression::getValue ( ) const
noexcept

Returns the value of the expression.

N.B. The range will vary depending on the type.

References state.

◆ setValue()

void tracktion::engine::MidiExpression::setValue ( float  newValue,
juce::UndoManager *  um 
)

Sets the value with some range validation.

References state.

Referenced by createAndAddExpressionToNote().

Member Data Documentation

◆ state

juce::ValueTree tracktion::engine::MidiExpression::state

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