summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin Gareus <robin@gareus.org>2017-01-19 12:40:34 +0100
committerRobin Gareus <robin@gareus.org>2017-01-19 13:05:54 +0100
commit22eae69078786c672115b6a34255bba7a696ea1a (patch)
tree221d9e03617022c24bf4ebe04666f6f24c501028
parent0f020e59b8c5c6c63af2a3891ddb431e5d99bf12 (diff)
Remove Editor API to calc preroll duration
-rw-r--r--gtk2_ardour/editor.h1
-rw-r--r--gtk2_ardour/editor_ops.cc23
2 files changed, 4 insertions, 20 deletions
diff --git a/gtk2_ardour/editor.h b/gtk2_ardour/editor.h
index 14151b95ff..0106f34382 100644
--- a/gtk2_ardour/editor.h
+++ b/gtk2_ardour/editor.h
@@ -261,7 +261,6 @@ class Editor : public PublicEditor, public PBD::ScopedConnectionList, public ARD
bool extend_selection_to_track (TimeAxisView&);
void play_selection ();
- framepos_t get_preroll (framepos_t);
void maybe_locate_with_edit_preroll (framepos_t);
void play_with_preroll ();
void rec_with_preroll ();
diff --git a/gtk2_ardour/editor_ops.cc b/gtk2_ardour/editor_ops.cc
index 6d78b9fac0..8354173bf4 100644
--- a/gtk2_ardour/editor_ops.cc
+++ b/gtk2_ardour/editor_ops.cc
@@ -2606,21 +2606,6 @@ Editor::play_selection ()
_session->request_play_range (&lar, true);
}
-framepos_t
-Editor::get_preroll (framepos_t pos)
-{
- const float pr = Config->get_preroll_seconds();
- if (pos >= 0 && pr < 0) {
- /* currently 1 bar's worth of pre-roll, not aligned to bar/beat
- * to align to a bar before pos, see count_in, session_transport.cc
- */
- const Tempo& tempo = _session->tempo_map().tempo_at_frame (pos);
- const Meter& meter = _session->tempo_map().meter_at_frame (pos);
- return meter.frames_per_bar (tempo, _session->frame_rate()) * -pr;
- }
- return pr * _session->frame_rate();
-}
-
void
Editor::maybe_locate_with_edit_preroll (framepos_t location)
@@ -2628,7 +2613,7 @@ Editor::maybe_locate_with_edit_preroll (framepos_t location)
if ( _session->transport_rolling() || !UIConfiguration::instance().get_follow_edits() || _session->config.get_external_sync() )
return;
- location -= get_preroll (location);
+ location -= _session->preroll_samples (location);
//don't try to locate before the beginning of time
if (location < 0) {
@@ -2648,7 +2633,7 @@ Editor::play_with_preroll ()
{
framepos_t start, end;
if ( UIConfiguration::instance().get_follow_edits() && get_selection_extents ( start, end) ) {
- const framepos_t preroll = get_preroll (start);
+ const framepos_t preroll = _session->preroll_samples (start);
framepos_t ret = start;
@@ -2666,7 +2651,7 @@ Editor::play_with_preroll ()
_session->set_requested_return_frame (ret); //force auto-return to return to range start, without the preroll
} else {
framepos_t ph = playhead_cursor->current_frame ();
- const framepos_t preroll = get_preroll (ph);
+ const framepos_t preroll = _session->preroll_samples (ph);
framepos_t start;
if (ph > preroll) {
start = ph - preroll;
@@ -2682,7 +2667,7 @@ void
Editor::rec_with_preroll ()
{
framepos_t ph = playhead_cursor->current_frame ();
- framepos_t preroll = get_preroll (ph);
+ framepos_t preroll = _session->preroll_samples (ph);
framepos_t start = std::max ((framepos_t)0, ph - preroll);
_session->request_preroll_record (ph);