summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2022-04-23 22:35:07 +0200
committerCarl Hetherington <cth@carlh.net>2022-04-23 22:35:07 +0200
commit59ba9648836cb96795dc93531967737f0ecea053 (patch)
tree83e8090a53ec0d1dc3eaedf4c044842a53d92ba6
parente3db3771b27e6b622f04ba79abfde829ebd85876 (diff)
Add move constructor.
-rw-r--r--src/dcp.cc22
-rw-r--r--src/dcp.h2
2 files changed, 24 insertions, 0 deletions
diff --git a/src/dcp.cc b/src/dcp.cc
index 05c93b54..da083a35 100644
--- a/src/dcp.cc
+++ b/src/dcp.cc
@@ -108,6 +108,28 @@ DCP::DCP (boost::filesystem::path directory)
}
+DCP::DCP (DCP&& other)
+ : _directory(std::move(other._directory))
+ , _cpls(std::move(other._cpls))
+ , _pkls(std::move(other._pkls))
+ , _asset_map(std::move(other._asset_map))
+ , _standard(std::move(other._standard))
+{
+
+}
+
+
+dcp::DCP& DCP::operator= (DCP&& other)
+{
+ _directory = std::move(other._directory);
+ _cpls = std::move(other._cpls);
+ _pkls = std::move(other._pkls);
+ _asset_map = std::move(other._asset_map);
+ _standard = std::move(other._standard);
+ return *this;
+}
+
+
void
DCP::read (vector<dcp::VerificationNote>* notes, bool ignore_incorrect_picture_mxf_type)
{
diff --git a/src/dcp.h b/src/dcp.h
index 6e50c48e..d80aa9db 100644
--- a/src/dcp.h
+++ b/src/dcp.h
@@ -93,6 +93,8 @@ public:
DCP (DCP const&) = delete;
DCP& operator= (DCP const&) = delete;
+ DCP (DCP &&);
+ DCP& operator= (DCP &&);
/** Read a DCP. This method does not do any deep checking of the DCP's validity, but
* if it comes across any bad things it will do one of two things.