diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/libcamera/camera.h | 27 |
1 files changed, 27 insertions, 0 deletions
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 <initializer_list> #include <memory> +#include <optional> #include <set> #include <stdint.h> #include <string> @@ -19,6 +20,7 @@ #include <libcamera/base/signal.h> #include <libcamera/controls.h> +#include <libcamera/geometry.h> #include <libcamera/request.h> #include <libcamera/stream.h> #include <libcamera/transform.h> @@ -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<SensorConfiguration> sensorConfig; Transform transform; protected: |