[libcamera-devel] [PATCH v3 7/7] libcamera: MappedBuffer: Disable copy and assignment
Kieran Bingham
kieran.bingham at ideasonboard.com
Fri Feb 12 14:30:56 CET 2021
MappedBuffers have a custom move constructor and assignment operator to
ensure that memory is not unmapped during object manipulation.
Because of the user-defined move constructor, the implicitly-declared
copy-constructor will already be deleted, however delete it explicitly
to help readability of the code, and make it clear that the object can
not be copied.
Reviewed-by: Laurent Pinchart <laurent.pinchart at ideasonboard.com>
Signed-off-by: Kieran Bingham <kieran.bingham at ideasonboard.com>
---
include/libcamera/internal/buffer.h | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/include/libcamera/internal/buffer.h b/include/libcamera/internal/buffer.h
index b7b0173f93f5..9da1fbd12c27 100644
--- a/include/libcamera/internal/buffer.h
+++ b/include/libcamera/internal/buffer.h
@@ -10,6 +10,7 @@
#include <sys/mman.h>
#include <vector>
+#include <libcamera/class.h>
#include <libcamera/buffer.h>
#include <libcamera/span.h>
@@ -34,6 +35,9 @@ protected:
int error_;
std::vector<Plane> maps_;
+
+private:
+ LIBCAMERA_DISABLE_COPY(MappedBuffer)
};
class MappedFrameBuffer : public MappedBuffer
--
2.25.1
More information about the libcamera-devel
mailing list