X-Git-Url: https://git.carlh.net/gitweb/?a=blobdiff_plain;f=src%2Flib%2Fformat.h;h=35dd4fb856ac4ed86e8ba31c7d503e63c5e97eb6;hb=abd57c6c2e8526eac93e9d0c9bd0b6080de1e6fa;hp=6172dc57d43b3b67881856a14d7d908c29b24b62;hpb=7c798f9e215282afb078da53b1d41d4c99e11f5d;p=dcpomatic.git diff --git a/src/lib/format.h b/src/lib/format.h index 6172dc57d..35dd4fb85 100644 --- a/src/lib/format.h +++ b/src/lib/format.h @@ -31,10 +31,11 @@ class Film; class Format { public: - Format (Size dcp, std::string id, std::string n) + Format (Size dcp, std::string id, std::string n, std::string d) : _dcp_size (dcp) , _id (id) , _nickname (n) + , _dci_name (d) {} /** @return the aspect ratio multiplied by 100 @@ -67,13 +68,15 @@ public: return _nickname; } + std::string dci_name () const { + return _dci_name; + } + std::string as_metadata () const; static Format const * from_nickname (std::string n); static Format const * from_metadata (std::string m); - static Format const * from_index (int i); static Format const * from_id (std::string i); - static int as_index (Format const * f); static std::vector all (); static void setup_formats (); @@ -87,6 +90,7 @@ protected: std::string _id; /** nickname (e.g. Flat, Scope) */ std::string _nickname; + std::string _dci_name; private: /** all available formats */ @@ -100,7 +104,7 @@ private: class FixedFormat : public Format { public: - FixedFormat (int, Size, std::string, std::string); + FixedFormat (int, Size, std::string, std::string, std::string); int ratio_as_integer (Film const *) const { return _ratio; @@ -121,7 +125,7 @@ private: class VariableFormat : public Format { public: - VariableFormat (Size, std::string, std::string); + VariableFormat (Size, std::string, std::string, std::string); int ratio_as_integer (Film const * f) const; float ratio_as_float (Film const * f) const;