+
+ double beat_at_frame_locked (const Metrics& metrics, const framecnt_t& frame) const;
+ framecnt_t frame_at_beat_locked (const Metrics& metrics, const double& beat) const;
+
+ double pulse_at_beat_locked (const Metrics& metrics, const double& beat) const;
+ double beat_at_pulse_locked (const Metrics& metrics, const double& pulse) const;
+
+ double pulse_at_frame_locked (const Metrics& metrics, const framecnt_t& frame) const;
+ framecnt_t frame_at_pulse_locked (const Metrics& metrics, const double& pulse) const;
+
+ Tempo tempo_at_frame_locked (const Metrics& metrics, const framepos_t& frame) const;
+ framepos_t frame_at_tempo_locked (const Metrics& metrics, const Tempo& tempo) const;
+
+ Timecode::BBT_Time bbt_at_frame_locked (const Metrics& metrics, const framepos_t& frame) const;
+ framepos_t frame_at_bbt_locked (const Metrics& metrics, const Timecode::BBT_Time&) const;
+
+ double beat_at_bbt_locked (const Metrics& metrics, const Timecode::BBT_Time& bbt) const ;
+ Timecode::BBT_Time bbt_at_beat_locked (const Metrics& metrics, const double& beats) const;
+
+ double pulse_at_bbt_locked (const Metrics& metrics, const Timecode::BBT_Time& bbt) const;
+ Timecode::BBT_Time bbt_at_pulse_locked (const Metrics& metrics, const double& pulse) const;
+
+ const TempoSection& tempo_section_at_frame_locked (const Metrics& metrics, framepos_t frame) const;
+ const TempoSection& tempo_section_at_beat_locked (const Metrics& metrics, const double& beat) const;
+
+ const MeterSection& meter_section_at_frame_locked (const Metrics& metrics, framepos_t frame) const;
+ const MeterSection& meter_section_at_beat_locked (const Metrics& metrics, const double& beat) const;
+
+ bool check_solved (const Metrics& metrics) const;
+ bool set_active_tempos (const Metrics& metrics, const framepos_t& frame);
+
+ bool solve_map_frame (Metrics& metrics, TempoSection* section, const framepos_t& frame);
+ bool solve_map_pulse (Metrics& metrics, TempoSection* section, const double& pulse);
+ bool solve_map_frame (Metrics& metrics, MeterSection* section, const framepos_t& frame);
+ bool solve_map_bbt (Metrics& metrics, MeterSection* section, const Timecode::BBT_Time& bbt);