summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2023-03-17 14:11:34 +0100
committerCarl Hetherington <cth@carlh.net>2023-03-20 16:41:02 +0100
commit20e3e4c2a7a91e45740987a702f5d4c1ea2f9030 (patch)
treedd8d9a08834170980ff34ea288ed0334a8b2d9b0 /src
parent870f02f07ee51ee478006260e2c3b683e591b0c9 (diff)
Use an enum instead of a bool in PictureAsset::start_write().
Diffstat (limited to 'src')
-rw-r--r--src/mono_picture_asset.cc4
-rw-r--r--src/mono_picture_asset.h7
-rw-r--r--src/picture_asset.h7
-rw-r--r--src/stereo_picture_asset.cc4
-rw-r--r--src/stereo_picture_asset.h2
5 files changed, 15 insertions, 9 deletions
diff --git a/src/mono_picture_asset.cc b/src/mono_picture_asset.cc
index 5aba95d2..cdfcb0df 100644
--- a/src/mono_picture_asset.cc
+++ b/src/mono_picture_asset.cc
@@ -183,10 +183,10 @@ MonoPictureAsset::equals (shared_ptr<const Asset> other, EqualityOptions opt, No
shared_ptr<PictureAssetWriter>
-MonoPictureAsset::start_write (boost::filesystem::path file, bool overwrite)
+MonoPictureAsset::start_write(boost::filesystem::path file, Behaviour behaviour)
{
/* Can't use make_shared here as the MonoPictureAssetWriter constructor is private */
- return shared_ptr<MonoPictureAssetWriter>(new MonoPictureAssetWriter(this, file, overwrite));
+ return shared_ptr<MonoPictureAssetWriter>(new MonoPictureAssetWriter(this, file, behaviour == Behaviour::OVERWRITE_EXISTING));
}
shared_ptr<MonoPictureAssetReader>
diff --git a/src/mono_picture_asset.h b/src/mono_picture_asset.h
index 7a37fa73..625d6ac8 100644
--- a/src/mono_picture_asset.h
+++ b/src/mono_picture_asset.h
@@ -70,10 +70,11 @@ public:
/** Start a progressive write to a MonoPictureAsset.
* @path file File to write to.
- * @path overwrite true to overwrite an existing file; for use when continuing a write which
- * previously failed. If in doubt, use false here.
+ * @path behaviour OVERWRITE_EXISTING to overwrite and potentially add to an existing file
+ * (after a write previously failed), MAKE_NEW to create a new file.
+ * If in doubt, use MAKE_NEW here.
*/
- std::shared_ptr<PictureAssetWriter> start_write (boost::filesystem::path file, bool overwrite) override;
+ std::shared_ptr<PictureAssetWriter> start_write(boost::filesystem::path file, Behaviour behaviour) override;
std::shared_ptr<MonoPictureAssetReader> start_read () const;
bool equals (
diff --git a/src/picture_asset.h b/src/picture_asset.h
index 011dea87..236eca22 100644
--- a/src/picture_asset.h
+++ b/src/picture_asset.h
@@ -73,9 +73,14 @@ public:
/** Create a new PictureAsset with a given edit rate and standard */
explicit PictureAsset (Fraction edit_rate, Standard standard);
+ enum class Behaviour {
+ OVERWRITE_EXISTING,
+ MAKE_NEW
+ };
+
virtual std::shared_ptr<PictureAssetWriter> start_write (
boost::filesystem::path file,
- bool overwrite
+ Behaviour behaviour
) = 0;
Size size () const {
diff --git a/src/stereo_picture_asset.cc b/src/stereo_picture_asset.cc
index 7e3f6f63..cf07c6be 100644
--- a/src/stereo_picture_asset.cc
+++ b/src/stereo_picture_asset.cc
@@ -87,9 +87,9 @@ StereoPictureAsset::StereoPictureAsset (Fraction edit_rate, Standard standard)
shared_ptr<PictureAssetWriter>
-StereoPictureAsset::start_write (boost::filesystem::path file, bool overwrite)
+StereoPictureAsset::start_write(boost::filesystem::path file, Behaviour behaviour)
{
- return shared_ptr<StereoPictureAssetWriter> (new StereoPictureAssetWriter(this, file, overwrite));
+ return shared_ptr<StereoPictureAssetWriter>(new StereoPictureAssetWriter(this, file, behaviour == Behaviour::OVERWRITE_EXISTING));
}
diff --git a/src/stereo_picture_asset.h b/src/stereo_picture_asset.h
index a3365048..9c9a2fa1 100644
--- a/src/stereo_picture_asset.h
+++ b/src/stereo_picture_asset.h
@@ -58,7 +58,7 @@ public:
explicit StereoPictureAsset (Fraction edit_rate, Standard standard);
/** Start a progressive write to a StereoPictureAsset */
- std::shared_ptr<PictureAssetWriter> start_write (boost::filesystem::path file, bool) override;
+ std::shared_ptr<PictureAssetWriter> start_write(boost::filesystem::path file, Behaviour behaviour) override;
std::shared_ptr<StereoPictureAssetReader> start_read () const;
bool equals (