diff options
| author | Carl Hetherington <cth@carlh.net> | 2013-05-24 14:51:43 +0100 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2013-05-24 14:51:43 +0100 |
| commit | 2dce4be6728fcb58170c7c8ef824c674d7462f63 (patch) | |
| tree | 9b0bcc394eaecde25a7747e9ed7bfa4bc6914e61 /src/lib | |
| parent | 5ece2775cee162d7523a5318663a6dd8f7e52651 (diff) | |
Remove unused bits of Format.
Diffstat (limited to 'src/lib')
| -rw-r--r-- | src/lib/format.cc | 123 | ||||
| -rw-r--r-- | src/lib/format.h | 53 |
2 files changed, 17 insertions, 159 deletions
diff --git a/src/lib/format.cc b/src/lib/format.cc index e2efe9a6b..87bdda3d1 100644 --- a/src/lib/format.cc +++ b/src/lib/format.cc @@ -44,14 +44,14 @@ vector<Format const *> Format::_formats; /** @return A name to be presented to the user */ string -FixedFormat::name () const +Format::name () const { stringstream s; if (!_nickname.empty ()) { s << _nickname << N_(" ("); } - s << setprecision(3) << _ratio << N_(":1"); + s << setprecision(3) << ratio() << N_(":1"); if (!_nickname.empty ()) { s << N_(")"); @@ -65,65 +65,15 @@ void Format::setup_formats () { /// TRANSLATORS: these are film picture aspect ratios; "Academy" means 1.37, "Flat" 1.85 and "Scope" 2.39. - _formats.push_back ( - new FixedFormat (1.19, libdcp::Size (1285, 1080), "119", _("1.19"), "F" - )); - - _formats.push_back ( - new FixedFormat (4.0 / 3.0, libdcp::Size (1436, 1080), "133", _("4:3"), "F" - )); - - _formats.push_back ( - new FixedFormat (1.38, libdcp::Size (1485, 1080), "138", _("1.375"), "F" - )); - - _formats.push_back ( - new FixedFormat (4.0 / 3.0, libdcp::Size (1998, 1080), "133-in-flat", _("4:3 within Flat"), "F" - )); - - _formats.push_back ( - new FixedFormat (1.37, libdcp::Size (1480, 1080), "137", _("Academy"), "F" - )); - - _formats.push_back ( - new FixedFormat (1.66, libdcp::Size (1793, 1080), "166", _("1.66"), "F" - )); - - _formats.push_back ( - new FixedFormat (1.66, libdcp::Size (1998, 1080), "166-in-flat", _("1.66 within Flat"), "F" - )); - - _formats.push_back ( - new FixedFormat (1.78, libdcp::Size (1998, 1080), "178-in-flat", _("16:9 within Flat"), "F" - )); - - _formats.push_back ( - new FixedFormat (1.78, libdcp::Size (1920, 1080), "178", _("16:9"), "F" - )); - - _formats.push_back ( - new FixedFormat (1.85, libdcp::Size (1998, 1080), "185", _("Flat"), "F" - )); - - _formats.push_back ( - new FixedFormat (1.78, libdcp::Size (2048, 858), "178-in-scope", _("16:9 within Scope"), "S" - )); - - _formats.push_back ( - new FixedFormat (2.39, libdcp::Size (2048, 858), "239", _("Scope"), "S" - )); - - _formats.push_back ( - new FixedFormat (1.896, libdcp::Size (2048, 1080), "full-frame", _("Full frame"), "C" - )); - - _formats.push_back ( - new VariableFormat (libdcp::Size (1998, 1080), "var-185", _("Flat without stretch"), "F" - )); - - _formats.push_back ( - new VariableFormat (libdcp::Size (2048, 858), "var-239", _("Scope without stretch"), "S" - )); + _formats.push_back (new Format (libdcp::Size (1285, 1080), "119", _("1.19"))); + _formats.push_back (new Format (libdcp::Size (1436, 1080), "133", _("4:3"))); + _formats.push_back (new Format (libdcp::Size (1485, 1080), "138", _("1.375"))); + _formats.push_back (new Format (libdcp::Size (1480, 1080), "137", _("Academy"))); + _formats.push_back (new Format (libdcp::Size (1793, 1080), "166", _("1.66"))); + _formats.push_back (new Format (libdcp::Size (1920, 1080), "178", _("16:9"))); + _formats.push_back (new Format (libdcp::Size (1998, 1080), "185", _("Flat"))); + _formats.push_back (new Format (libdcp::Size (2048, 858), "239", _("Scope"))); + _formats.push_back (new Format (libdcp::Size (2048, 1080), "full-frame", _("Full frame"))); } /** @param n Nickname. @@ -169,57 +119,8 @@ Format::all () return _formats; } -/** @param r Ratio - * @param dcp Size (in pixels) of the images that we should put in a DCP. - * @param id ID (e.g. 185) - * @param n Nick name (e.g. Flat) - */ -FixedFormat::FixedFormat (float r, libdcp::Size dcp, string id, string n, string d) - : Format (dcp, id, n, d) - , _ratio (r) -{ - -} - -/** @return Number of pixels (int the DCP image) to pad either side of the film - * (so there are dcp_padding() pixels on the left and dcp_padding() on the right) - */ -int -Format::dcp_padding (shared_ptr<const Film> f) const -{ - int p = rint ((_dcp_size.width - (_dcp_size.height * ratio(f))) / 2.0); - - /* This comes out -ve for Scope; bodge it */ - if (p < 0) { - p = 0; - } - - return p; -} - float -Format::container_ratio () const +Format::ratio () const { return static_cast<float> (_dcp_size.width) / _dcp_size.height; } - -VariableFormat::VariableFormat (libdcp::Size dcp, string id, string n, string d) - : Format (dcp, id, n, d) -{ - -} - -float -VariableFormat::ratio (shared_ptr<const Film> f) const -{ - /* XXX */ - libdcp::Size const c;// = f->cropped_size (f->video_size ()); - return float (c.width) / c.height; -} - -/** @return A name to be presented to the user */ -string -VariableFormat::name () const -{ - return _nickname; -} diff --git a/src/lib/format.h b/src/lib/format.h index 29347a3fd..06423d2b1 100644 --- a/src/lib/format.h +++ b/src/lib/format.h @@ -31,21 +31,14 @@ class Film; class Format { public: - Format (libdcp::Size dcp, std::string id, std::string n, std::string d) + Format (libdcp::Size dcp, std::string id, std::string n) : _dcp_size (dcp) , _id (id) , _nickname (n) - , _dci_name (d) {} - /** @return the ratio of the container (including any padding) */ - float container_ratio () const; - - int dcp_padding (boost::shared_ptr<const Film>) const; - /** @return size in pixels of the images that we should - * put in a DCP for this ratio. This size will not correspond - * to the ratio when we are doing things like 16:9 in a Flat frame. + * put in a DCP for this format. */ libdcp::Size dcp_size () const { return _dcp_size; @@ -56,17 +49,13 @@ public: } /** @return Full name to present to the user */ - virtual std::string name () const = 0; + std::string name () const; /** @return Nickname (e.g. Flat, Scope) */ std::string nickname () const { return _nickname; } - std::string dci_name () const { - return _dci_name; - } - static Format const * from_nickname (std::string n); static Format const * from_id (std::string i); static std::vector<Format const *> all (); @@ -74,50 +63,18 @@ public: protected: /** @return the ratio */ - virtual float ratio (boost::shared_ptr<const Film> f) const = 0; + float ratio () const; /** libdcp::Size in pixels of the images that we should - * put in a DCP for this ratio. This size will not correspond - * to the ratio when we are doing things like 16:9 in a Flat frame. + * put in a DCP for this format. */ libdcp::Size _dcp_size; /** id for use in metadata */ std::string _id; /** nickname (e.g. Flat, Scope) */ std::string _nickname; - std::string _dci_name; private: /** all available formats */ static std::vector<Format const *> _formats; }; - -/** @class FixedFormat - * @brief Class to describe a format whose ratio is fixed regardless - * of source size. - */ -class FixedFormat : public Format -{ -public: - FixedFormat (float, libdcp::Size, std::string, std::string, std::string); - - float ratio (boost::shared_ptr<const Film>) const { - return _ratio; - } - - std::string name () const; - -private: - - float _ratio; -}; - -class VariableFormat : public Format -{ -public: - VariableFormat (libdcp::Size, std::string, std::string, std::string); - - float ratio (boost::shared_ptr<const Film> f) const; - - std::string name () const; -}; |
