summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorJacopo Mondi <jacopo.mondi@ideasonboard.com>2023-02-06 19:21:32 +0100
committerJacopo Mondi <jacopo.mondi@ideasonboard.com>2023-02-09 23:40:15 +0100
commit85befa816e5a01372b52ecbd345f34815d1b9bc6 (patch)
tree4572b49b0313d07b812b8faae0a32be24b6713db /include
parent3aa42f36c0d7de48e267b6505158ab1e89374285 (diff)
libcamera: Remove transform from V4L2SubdeviceFormat
Commit 6f6e1bf704fe ("libcamera: camera_sensor: Apply flips at setFormat()") extended the CameraSensor::setFormat() function to apply vertical/horizontal flips on the sensor based on the supplied Transform. To pass the Transform to the function the V4L2SubdeviceFormat structure has been augmented with a Transform member. However as the newly added Transform is not used at all in the V4L2Subdevice class, it should not be part of V4L2SubdeviceFormat. Fix that by removing the transform field from V4L2SubdeviceFormat and pass it as an explicit parameter to CameraSensor::setFormat(). Fixes: 6f6e1bf704fe ("libcamera: camera_sensor: Apply flips at setFormat()) Signed-off-by: Jacopo Mondi <jacopo.mondi@ideasonboard.com> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Diffstat (limited to 'include')
-rw-r--r--include/libcamera/internal/camera_sensor.h6
-rw-r--r--include/libcamera/internal/v4l2_subdevice.h2
2 files changed, 3 insertions, 5 deletions
diff --git a/include/libcamera/internal/camera_sensor.h b/include/libcamera/internal/camera_sensor.h
index bea52bad..928c61af 100644
--- a/include/libcamera/internal/camera_sensor.h
+++ b/include/libcamera/internal/camera_sensor.h
@@ -17,6 +17,7 @@
#include <libcamera/control_ids.h>
#include <libcamera/controls.h>
#include <libcamera/geometry.h>
+#include <libcamera/transform.h>
#include <libcamera/ipa/core_ipa_interface.h>
@@ -29,8 +30,6 @@ class BayerFormat;
class CameraLens;
class MediaEntity;
-enum class Transform;
-
struct CameraSensorProperties;
class CameraSensor : protected Loggable
@@ -55,7 +54,8 @@ public:
V4L2SubdeviceFormat getFormat(const std::vector<unsigned int> &mbusCodes,
const Size &size) const;
- int setFormat(V4L2SubdeviceFormat *format);
+ int setFormat(V4L2SubdeviceFormat *format,
+ Transform transform = Transform::Identity);
const ControlInfoMap &controls() const;
ControlList getControls(const std::vector<uint32_t> &ids);
diff --git a/include/libcamera/internal/v4l2_subdevice.h b/include/libcamera/internal/v4l2_subdevice.h
index 576faf97..69862de0 100644
--- a/include/libcamera/internal/v4l2_subdevice.h
+++ b/include/libcamera/internal/v4l2_subdevice.h
@@ -20,7 +20,6 @@
#include <libcamera/color_space.h>
#include <libcamera/geometry.h>
-#include <libcamera/transform.h>
#include "libcamera/internal/formats.h"
#include "libcamera/internal/media_object.h"
@@ -45,7 +44,6 @@ struct V4L2SubdeviceFormat {
uint32_t mbus_code;
Size size;
std::optional<ColorSpace> colorSpace;
- Transform transform = Transform::Identity;
const std::string toString() const;
uint8_t bitsPerPixel() const;