diff options
Diffstat (limited to 'libs/ardour/ardour')
-rw-r--r-- | libs/ardour/ardour/midi_region.h | 5 | ||||
-rw-r--r-- | libs/ardour/ardour/region.h | 2 | ||||
-rw-r--r-- | libs/ardour/ardour/tempo.h | 1 |
3 files changed, 7 insertions, 1 deletions
diff --git a/libs/ardour/ardour/midi_region.h b/libs/ardour/ardour/midi_region.h index 9e8c7441fc..a5c9e23a0f 100644 --- a/libs/ardour/ardour/midi_region.h +++ b/libs/ardour/ardour/midi_region.h @@ -35,6 +35,7 @@ namespace ARDOUR { MidiModel used by the MidiRegion */ extern PBD::PropertyDescriptor<void*> midi_data; + extern PBD::PropertyDescriptor<Evoral::MusicalTime> start_beats; extern PBD::PropertyDescriptor<Evoral::MusicalTime> length_beats; } } @@ -111,6 +112,7 @@ class MidiRegion : public Region private: friend class RegionFactory; + PBD::Property<Evoral::MusicalTime> _start_beats; PBD::Property<Evoral::MusicalTime> _length_beats; MidiRegion (const SourceList&); @@ -138,6 +140,9 @@ class MidiRegion : public Region void model_automation_state_changed (Evoral::Parameter const &); void model_contents_changed (); + void set_start_beats_from_start_frames (); + void update_after_tempo_map_change (); + std::set<Evoral::Parameter> _filtered_parameters; ///< parameters that we ask our source not to return when reading PBD::ScopedConnection _model_connection; PBD::ScopedConnection _source_connection; diff --git a/libs/ardour/ardour/region.h b/libs/ardour/ardour/region.h index a2cc3f4cf7..8be4709fbf 100644 --- a/libs/ardour/ardour/region.h +++ b/libs/ardour/ardour/region.h @@ -189,7 +189,7 @@ class Region void set_position (framepos_t); void set_position_on_top (framepos_t); void special_set_position (framepos_t); - void update_position_after_tempo_map_change (); + virtual void update_after_tempo_map_change (); void nudge_position (frameoffset_t); bool at_natural_position () const; diff --git a/libs/ardour/ardour/tempo.h b/libs/ardour/ardour/tempo.h index a6f7a36541..05d65602cf 100644 --- a/libs/ardour/ardour/tempo.h +++ b/libs/ardour/ardour/tempo.h @@ -249,6 +249,7 @@ class TempoMap : public PBD::StatefulDestructible framepos_t framepos_plus_bbt (framepos_t pos, Timecode::BBT_Time b) const; framepos_t framepos_plus_beats (framepos_t, Evoral::MusicalTime) const; + framepos_t framepos_minus_beats (framepos_t, Evoral::MusicalTime) const; Evoral::MusicalTime framewalk_to_beats (framepos_t pos, framecnt_t distance) const; void change_existing_tempo_at (framepos_t, double bpm, double note_type); |