-
- void timestamp_metrics (bool use_bbt);
-
- nframes_t round_to_type (nframes_t fr, int dir, BBTPointType);
-
- nframes_t frame_time_unlocked (const BBT_Time&) const;
-
- void bbt_time_unlocked (nframes_t, BBT_Time&) const;
-
- nframes_t bbt_duration_at_unlocked (const BBT_Time& when, const BBT_Time& bbt, int dir) const;
-
+ BBTPointList _map;
+
+ void recompute_map (bool reassign_tempo_bbt, framepos_t end = -1);
+ void extend_map (framepos_t end);
+ void require_map_to (framepos_t pos);
+ void require_map_to (const Timecode::BBT_Time&);
+ void _extend_map (TempoSection* tempo, MeterSection* meter,
+ Metrics::iterator next_metric,
+ Timecode::BBT_Time current, framepos_t current_frame, framepos_t end);
+
+ BBTPointList::const_iterator bbt_before_or_at (framepos_t);
+ BBTPointList::const_iterator bbt_before_or_at (const Timecode::BBT_Time&);
+ BBTPointList::const_iterator bbt_after_or_at (framepos_t);
+
+ framepos_t round_to_type (framepos_t fr, int dir, BBTPointType);
+ void bbt_time (framepos_t, Timecode::BBT_Time&, const BBTPointList::const_iterator&);
+ framecnt_t bbt_duration_at_unlocked (const Timecode::BBT_Time& when, const Timecode::BBT_Time& bbt, int dir);
+