From aeb2f36ede25d6e8ce583592c23bbb1dfb05041e Mon Sep 17 00:00:00 2001 From: Carl Hetherington Date: Mon, 9 Dec 2019 00:04:07 +0100 Subject: Note any file that is used for reading/writing a PKL, like we do with assets. --- src/pkl.cc | 2 ++ src/pkl.h | 7 +++++++ 2 files changed, 9 insertions(+) (limited to 'src') diff --git a/src/pkl.cc b/src/pkl.cc index adcad573..b2fe875b 100644 --- a/src/pkl.cc +++ b/src/pkl.cc @@ -49,6 +49,7 @@ static string const pkl_interop_ns = "http://www.digicine.com/PROTO-ASDCP-PKL-20 static string const pkl_smpte_ns = "http://www.smpte-ra.org/schemas/429-8/2007/PKL"; PKL::PKL (boost::filesystem::path file) + : _file (file) { cxml::Document pkl ("PackingList"); pkl.read_file (file); @@ -116,6 +117,7 @@ PKL::write (boost::filesystem::path file, shared_ptr sig } doc.write_to_file_formatted (file.string(), "UTF-8"); + _file = file; } optional diff --git a/src/pkl.h b/src/pkl.h index bc71279e..39996318 100644 --- a/src/pkl.h +++ b/src/pkl.h @@ -66,6 +66,11 @@ public: void add_asset (std::string id, boost::optional annotation_text, std::string hash, int64_t size, std::string type); void write (boost::filesystem::path file, boost::shared_ptr signer) const; + /** @return the most recent disk file used to read or write this PKL, if there is one */ + boost::optional file () const { + return _file; + } + private: class Asset : public Object @@ -99,6 +104,8 @@ private: std::string _issuer; std::string _creator; std::list > _asset_list; + /** The most recent disk file used to read or write this PKL */ + mutable boost::optional _file; }; } -- cgit v1.2.3