From fdf4bfbca898ba5401a6853f481968d15b6ebded Mon Sep 17 00:00:00 2001 From: Carl Hetherington Date: Sat, 9 Aug 2014 13:07:55 +0100 Subject: Only build FrameRateChange description when required, not every time one is constructed. --- src/lib/frame_rate_change.cc | 10 ++++++++++ src/lib/frame_rate_change.h | 2 +- 2 files changed, 11 insertions(+), 1 deletion(-) (limited to 'src/lib') diff --git a/src/lib/frame_rate_change.cc b/src/lib/frame_rate_change.cc index 454938ada..31fce6b6d 100644 --- a/src/lib/frame_rate_change.cc +++ b/src/lib/frame_rate_change.cc @@ -23,6 +23,8 @@ #include "i18n.h" +using std::string; + static bool about_equal (float a, float b) { @@ -73,7 +75,13 @@ FrameRateChange::FrameRateChange (float source_, int dcp_) speed_up = dcp / (source * factor()); change_speed = !about_equal (speed_up, 1.0); +} +string +FrameRateChange::description () const +{ + string description; + if (!skip && repeat == 1 && !change_speed) { description = _("Content and DCP have the same rate.\n"); } else { @@ -90,4 +98,6 @@ FrameRateChange::FrameRateChange (float source_, int dcp_) description += String::compose (_("DCP will run at %1%% of the content speed.\n"), pc); } } + + return description; } diff --git a/src/lib/frame_rate_change.h b/src/lib/frame_rate_change.h index f53adc059..f5244fea2 100644 --- a/src/lib/frame_rate_change.h +++ b/src/lib/frame_rate_change.h @@ -60,7 +60,7 @@ struct FrameRateChange */ float speed_up; - std::string description; + std::string description () const; }; #endif -- cgit v1.2.3