From a9abe3b1e1a1e260cf1cbf148ab3909a719817d1 Mon Sep 17 00:00:00 2001 From: Robin Gareus Date: Fri, 12 Oct 2012 01:08:29 +0000 Subject: move TimecodeFormat to libtimecode provide a way to convert any TimecodeFormat to float frame-rate, not only the currently active timecode_foramt. git-svn-id: svn://localhost/ardour2/branches/3.0@13249 d708f5d6-7413-0410-9779-e7cbd77b26cf --- libs/ardour/session_time.cc | 96 +++------------------------------------------ 1 file changed, 5 insertions(+), 91 deletions(-) (limited to 'libs/ardour/session_time.cc') diff --git a/libs/ardour/session_time.cc b/libs/ardour/session_time.cc index 42ae315597..36f4aac01f 100644 --- a/libs/ardour/session_time.cc +++ b/libs/ardour/session_time.cc @@ -50,105 +50,19 @@ Session::bbt_time (framepos_t when, Timecode::BBT_Time& bbt) } /* Timecode TIME */ + float Session::timecode_frames_per_second() const { - switch (config.get_timecode_format()) { - case timecode_23976: - return 23.976; - - break; - case timecode_24: - return 24; - - break; - case timecode_24976: - return 24.976; - - break; - case timecode_25: - return 25; - - break; - case timecode_2997: - return 29.97; - - break; - case timecode_2997drop: - return 29.97; - - break; - case timecode_30: - return 30; - - break; - case timecode_30drop: - return 30; - - break; - case timecode_5994: - return 59.94; - - break; - case timecode_60: - return 60; - - break; - default: - cerr << "Editor received unexpected timecode type" << endl; - } - return 30.0; + return Timecode::timecode_to_frames_per_second (config.get_timecode_format()); } + bool Session::timecode_drop_frames() const { - switch (config.get_timecode_format()) { - case timecode_23976: - return false; - - break; - case timecode_24: - return false; - - break; - case timecode_24976: - return false; - - break; - case timecode_25: - return false; - - break; - case timecode_2997: - return false; - - break; - case timecode_2997drop: - return true; - - break; - case timecode_30: - return false; - - break; - case timecode_30drop: - return true; - - break; - case timecode_5994: - return false; - - break; - case timecode_60: - return false; - - break; - default: - error << "Editor received unexpected timecode type" << endmsg; - } - - return false; + return Timecode::timecode_has_drop_frames(config.get_timecode_format()); } + void Session::sync_time_vars () { -- cgit v1.2.3