From 1602043e626eee55944820dd17a242e352f9ab1f Mon Sep 17 00:00:00 2001 From: Jacopo Mondi Date: Thu, 21 Sep 2023 18:55:39 +0200 Subject: libcamera: camera: Introduce SensorConfiguration Introduce SensorConfiguration in the libcamera API. The SensorConfiguration is part of the CameraConfiguration class and allows applications to control the sensor settings. Signed-off-by: Jacopo Mondi Reviewed-by: Naushir Patuck Reviewed-by: Kieran Bingham Reviewed-by: Laurent Pinchart Signed-off-by: Laurent Pinchart --- include/libcamera/camera.h | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) (limited to 'include/libcamera') diff --git a/include/libcamera/camera.h b/include/libcamera/camera.h index 004bc894..decf4ec0 100644 --- a/include/libcamera/camera.h +++ b/include/libcamera/camera.h @@ -9,6 +9,7 @@ #include #include +#include #include #include #include @@ -19,6 +20,7 @@ #include #include +#include #include #include #include @@ -30,6 +32,30 @@ class FrameBufferAllocator; class PipelineHandler; class Request; +class SensorConfiguration +{ +public: + unsigned int bitDepth = 0; + + Rectangle analogCrop; + + struct { + unsigned int binX = 1; + unsigned int binY = 1; + } binning; + + struct { + unsigned int xOddInc = 1; + unsigned int xEvenInc = 1; + unsigned int yOddInc = 1; + unsigned int yEvenInc = 1; + } skipping; + + Size outputSize; + + bool isValid() const; +}; + class CameraConfiguration { public: @@ -66,6 +92,7 @@ public: bool empty() const; std::size_t size() const; + std::optional sensorConfig; Transform transform; protected: -- cgit v1.2.1