diff options
| author | Carl Hetherington <cth@carlh.net> | 2021-04-11 20:49:44 +0200 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2021-04-12 01:22:10 +0200 |
| commit | 7d66bda50ade8ea618f331b885f1bfa4fa0a2af9 (patch) | |
| tree | 9846716f11327850e9a6bdd2cb00243be828590f /src/reel_subtitle_asset.h | |
| parent | 3370a67e8a9aeaec45911ba1c714a0d259781fdf (diff) | |
Split ReelSubtitleAsset into Interop and SMPTE classes.
Diffstat (limited to 'src/reel_subtitle_asset.h')
| -rw-r--r-- | src/reel_subtitle_asset.h | 18 |
1 files changed, 8 insertions, 10 deletions
diff --git a/src/reel_subtitle_asset.h b/src/reel_subtitle_asset.h index b8dcf6d7..ad1ea6cd 100644 --- a/src/reel_subtitle_asset.h +++ b/src/reel_subtitle_asset.h @@ -43,7 +43,6 @@ #include "language_tag.h" #include "reel_asset.h" -#include "reel_encryptable_asset.h" #include "reel_file_asset.h" #include "subtitle_asset.h" @@ -60,17 +59,16 @@ class SubtitleAsset; /** @class ReelSubtitleAsset * @brief Part of a Reel's description which refers to a subtitle XML/MXF file */ -class ReelSubtitleAsset : public ReelAsset, public ReelFileAsset, public ReelEncryptableAsset +class ReelSubtitleAsset : public ReelAsset, public ReelFileAsset { public: ReelSubtitleAsset (std::shared_ptr<SubtitleAsset> asset, Fraction edit_rate, int64_t intrinsic_duration, int64_t entry_point); explicit ReelSubtitleAsset (std::shared_ptr<const cxml::Node>); - xmlpp::Node* write_to_cpl (xmlpp::Node* node, Standard standard) const; bool equals (std::shared_ptr<const ReelSubtitleAsset>, EqualityOptions, NoteHandler) const; std::shared_ptr<SubtitleAsset> asset () const { - return asset_of_type<SubtitleAsset> (); + return std::dynamic_pointer_cast<SubtitleAsset>(_asset_ref.asset()); } void set_language (dcp::LanguageTag language); @@ -79,17 +77,17 @@ public: return _language; } -private: - friend struct ::verify_invalid_language1; - - std::string key_type () const; - std::string cpl_node_name (Standard standard) const; - +protected: /** As in other places, this is stored and returned as a string so that * we can tolerate non-RFC-5646 strings, but must be set as a dcp::LanguageTag * to try to ensure that we create compliant output. */ boost::optional<std::string> _language; + +private: + friend struct ::verify_invalid_language1; + + std::string cpl_node_name (Standard standard) const; }; |
