diff options
| author | Carl Hetherington <cth@carlh.net> | 2017-06-13 00:49:13 +0100 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2017-06-13 00:49:13 +0100 |
| commit | 863d9cc51b406500dba596b6f1de733ec3f410c5 (patch) | |
| tree | 7cb5d011ca101ff47a3aeb162efcaf5e127392e8 /src | |
| parent | b4fc0aa7792fe9e9d6ed83d024a712783ce5dfe6 (diff) | |
Remove redundant _annotation_text from CPL.
Diffstat (limited to 'src')
| -rw-r--r-- | src/cpl.cc | 14 | ||||
| -rw-r--r-- | src/cpl.h | 15 | ||||
| -rw-r--r-- | src/reel_asset.h | 4 |
3 files changed, 22 insertions, 11 deletions
@@ -62,12 +62,12 @@ static string const cpl_interop_ns = "http://www.digicine.com/PROTO-ASDCP-CPL-20 static string const cpl_smpte_ns = "http://www.smpte-ra.org/schemas/429-7/2006/CPL"; CPL::CPL (string annotation_text, ContentKind content_kind) - : _annotation_text (annotation_text) - /* default _content_title_text to _annotation_text */ - , _content_title_text (annotation_text) + /* default _content_title_text to annotation_text */ + : _content_title_text (annotation_text) , _content_kind (content_kind) , _content_version_id ("urn:uuid:" + make_uuid ()) { + _metadata.annotation_text = annotation_text; /* default _content_version_id to a random ID and _content_version_label to a random ID and the current time. */ @@ -92,7 +92,7 @@ CPL::CPL (boost::filesystem::path file) } _id = remove_urn_uuid (f.string_child ("Id")); - _annotation_text = f.optional_string_child ("AnnotationText").get_value_or (""); + _metadata.annotation_text = f.optional_string_child ("AnnotationText").get_value_or (""); _metadata.issuer = f.optional_string_child ("Issuer").get_value_or (""); _metadata.creator = f.optional_string_child ("Creator").get_value_or (""); _metadata.issue_date = f.string_child ("IssueDate"); @@ -144,7 +144,7 @@ CPL::write_xml (boost::filesystem::path file, Standard standard, shared_ptr<cons } root->add_child("Id")->add_child_text ("urn:uuid:" + _id); - root->add_child("AnnotationText")->add_child_text (_annotation_text); + root->add_child("AnnotationText")->add_child_text (_metadata.annotation_text); root->add_child("IssueDate")->add_child_text (_metadata.issue_date); root->add_child("Issuer")->add_child_text (_metadata.issuer); root->add_child("Creator")->add_child_text (_metadata.creator); @@ -204,8 +204,8 @@ CPL::equals (shared_ptr<const Asset> other, EqualityOptions opt, NoteHandler not return false; } - if (_annotation_text != other_cpl->_annotation_text && !opt.cpl_annotation_texts_can_differ) { - string const s = "CPL: annotation texts differ: " + _annotation_text + " vs " + other_cpl->_annotation_text + "\n"; + if (_metadata.annotation_text != other_cpl->_metadata.annotation_text && !opt.cpl_annotation_texts_can_differ) { + string const s = "CPL: annotation texts differ: " + _metadata.annotation_text + " vs " + other_cpl->_metadata.annotation_text + "\n"; note (DCP_ERROR, s); return false; } @@ -78,7 +78,11 @@ public: /** @return contents of the <AnnotationText> node */ std::string annotation_text () const { - return _annotation_text; + return _metadata.annotation_text; + } + + void set_annotation_text (std::string at) { + _metadata.annotation_text = at; } /** @return contents of the <ContentTitleText> node */ @@ -86,6 +90,10 @@ public: return _content_title_text; } + void set_content_title_text (std::string ct) { + _content_title_text = ct; + } + /** @return contents of the <Id> node within <ContentVersion> */ void set_content_version_id (std::string id) { _content_version_id = id; @@ -137,9 +145,8 @@ protected: std::string pkl_type (Standard standard) const; private: - std::string _annotation_text; ///< <AnnotationText> - /** <Issuer>, <Creator> and <IssueDate>. These are grouped - * because they occur together in a few places. + /** <Issuer>, <Creator>, <IssueDate> and <AnnotationText>. + * These are grouped because they occur together in a few places. */ XMLMetadata _metadata; std::string _content_title_text; ///< <ContentTitleText> diff --git a/src/reel_asset.h b/src/reel_asset.h index 06db76d5..d1d2e1b6 100644 --- a/src/reel_asset.h +++ b/src/reel_asset.h @@ -113,6 +113,10 @@ public: return _hash; } + void set_annotation_text (std::string at) { + _annotation_text = at; + } + protected: template <class T> |
