+
+ framecnt_t minute_to_frame (double time, framecnt_t frame_rate) const;
+ double frame_to_minute (framecnt_t frame, framecnt_t frame_rate) const;
+
+ /* tempo ramp functions. zero-based with time in minutes,
+ * 'tick tempo' in ticks per minute and tempo in bpm.
+ * time relative to section start.
+ */
+ double c_func (double end_tpm, double end_time) const;
+ double a_func (double begin_tpm, double end_tpm, double end_time) const;
+
+ double tempo_at_time (double time, double end_bpm, double end_time) const;
+ double time_at_tempo (double tempo, double end_bpm, double end_time) const;
+ double tick_tempo_at_time (double time, double end_tpm, double end_time) const;
+ double time_at_tick_tempo (double tick_tempo, double end_tpm, double end_time) const;
+
+ double tick_at_time (double time, double end_tpm, double end_time) const;
+ double time_at_tick (double tick, double end_tpm, double end_time) const;
+
+ double beat_at_time (double time, double end_tpm, double end_time) const;
+ double time_at_beat (double beat, double end_tpm, double end_time) const;
+