summaryrefslogtreecommitdiff
path: root/src/qcam/viewfinder_qt.cpp
diff options
context:
space:
mode:
authorLaurent Pinchart <laurent.pinchart@ideasonboard.com>2021-09-06 01:35:22 +0300
committerLaurent Pinchart <laurent.pinchart@ideasonboard.com>2021-09-07 19:18:51 +0300
commita13676f2bb9a86ced75ed640f571512cf1a76afe (patch)
treeda0bfea97abec2b03c4feca663dd1f0304230055 /src/qcam/viewfinder_qt.cpp
parent013084310836519b57883176d65fb5e9f6c00f8d (diff)
qcam: Use Image class to access pixel data
Replace the manual implementation of frame buffer mapping with the Image class to improve code sharing. The ViewFinder API is updated to take an Image pointer in the render() function to prepare for multi-planar buffer support. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Jean-Michel Hautbois <jeanmichel.hautbois@ideasonboard.com> Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
Diffstat (limited to 'src/qcam/viewfinder_qt.cpp')
-rw-r--r--src/qcam/viewfinder_qt.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/qcam/viewfinder_qt.cpp b/src/qcam/viewfinder_qt.cpp
index a0bf99b0..fef6d53e 100644
--- a/src/qcam/viewfinder_qt.cpp
+++ b/src/qcam/viewfinder_qt.cpp
@@ -19,6 +19,7 @@
#include <libcamera/formats.h>
+#include "../cam/image.h"
#include "format_converter.h"
static const QMap<libcamera::PixelFormat, QImage::Format> nativeFormats
@@ -78,15 +79,14 @@ int ViewFinderQt::setFormat(const libcamera::PixelFormat &format,
return 0;
}
-void ViewFinderQt::render(libcamera::FrameBuffer *buffer,
- libcamera::Span<uint8_t> mem)
+void ViewFinderQt::render(libcamera::FrameBuffer *buffer, Image *image)
{
if (buffer->planes().size() != 1) {
qWarning() << "Multi-planar buffers are not supported";
return;
}
- unsigned char *memory = mem.data();
+ unsigned char *memory = image->data(0).data();
size_t size = buffer->metadata().planes()[0].bytesused;
{