diff options
| author | Carl Hetherington <cth@carlh.net> | 2015-01-14 17:39:32 +0000 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2015-01-20 11:20:25 +0000 |
| commit | 3f630fb8334238ab8a58fbe1a0f513ae2c00de80 (patch) | |
| tree | 4b773b91029d6374bfd4f2194053d3e249d597cd /src/time_pair.cc | |
| parent | 49cafda01b3e07c47e3b20dd5ee91e1426446aea (diff) | |
Simplify time representation; better in-tree DCP subtitle parser.
Diffstat (limited to 'src/time_pair.cc')
| -rw-r--r-- | src/time_pair.cc | 94 |
1 files changed, 0 insertions, 94 deletions
diff --git a/src/time_pair.cc b/src/time_pair.cc deleted file mode 100644 index b625aca..0000000 --- a/src/time_pair.cc +++ /dev/null @@ -1,94 +0,0 @@ -/* - Copyright (C) 2014 Carl Hetherington <cth@carlh.net> - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - -*/ - -/** @file src/time_pair.cc - * @brief TimePair class. - */ - -#include "time_pair.h" -#include <cmath> - -using std::ostream; -using namespace sub; - -FrameTime -TimePair::frame (float fps) const -{ - if (_frame) { - return _frame.get (); - } - - MetricTime const m = _metric.get (); - return FrameTime (m.hours(), m.minutes(), m.seconds(), rint (m.milliseconds() * fps / 1000)); -} - -MetricTime -TimePair::metric (float fps) const -{ - if (_metric) { - return _metric.get (); - } - - FrameTime const f = _frame.get (); - return MetricTime (f.hours(), f.minutes(), f.seconds(), rint (f.frames() * 1000 / fps)); -} - -void -TimePair::add (FrameTime t, float fps) -{ - if (_frame) { - _frame.get().add (t, fps); - } else { - _metric.get().add (MetricTime (t.hours(), t.minutes(), t.seconds(), rint (t.frames() * 1000 / fps))); - } -} - -void -TimePair::scale (float f, float fps) -{ - if (_frame) { - _frame.get().scale (f, fps); - } else { - _metric.get().scale (f); - } -} - -bool -TimePair::operator== (TimePair const & other) const -{ - if (_metric && other._metric) { - return _metric.get() == other._metric.get(); - } else if (_frame && other._frame) { - return _frame.get() == other._frame.get(); - } - - return false; -} - -ostream & -sub::operator<< (ostream& s, TimePair const & t) -{ - if (t.frame ()) { - s << "[FRAME] " << t.frame().get(); - } else { - s << "[METRIC]" << t.metric().get(); - } - - return s; -} |
