diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/pkl.cc | 2 | ||||
| -rw-r--r-- | src/pkl.h | 7 |
2 files changed, 9 insertions, 0 deletions
@@ -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<const CertificateChain> sig } doc.write_to_file_formatted (file.string(), "UTF-8"); + _file = file; } optional<string> @@ -66,6 +66,11 @@ public: void add_asset (std::string id, boost::optional<std::string> annotation_text, std::string hash, int64_t size, std::string type); void write (boost::filesystem::path file, boost::shared_ptr<const CertificateChain> signer) const; + /** @return the most recent disk file used to read or write this PKL, if there is one */ + boost::optional<boost::filesystem::path> file () const { + return _file; + } + private: class Asset : public Object @@ -99,6 +104,8 @@ private: std::string _issuer; std::string _creator; std::list<boost::shared_ptr<Asset> > _asset_list; + /** The most recent disk file used to read or write this PKL */ + mutable boost::optional<boost::filesystem::path> _file; }; } |
