From 5df63c0bc7e3d6f1850d04f5bafbae2dd6fa619e Mon Sep 17 00:00:00 2001 From: Nikita Kostovsky Date: Fri, 14 Nov 2025 21:05:12 +0100 Subject: organize things a bit, populate ICamera --- src/camera/icamera.h | 39 ++++++++++++++++++++++++++------------- 1 file changed, 26 insertions(+), 13 deletions(-) (limited to 'src/camera/icamera.h') diff --git a/src/camera/icamera.h b/src/camera/icamera.h index 39d358f..391ce55 100644 --- a/src/camera/icamera.h +++ b/src/camera/icamera.h @@ -20,14 +20,11 @@ #define slots slots_backup #endif -#include "image.h" +// cpp +#include -// class ICamera -// { -// public: -// virtual bool setExposureTimeMs(int value) = 0; -// virtual bool setGain(int value) = 0; -// }; +// orpheus +#include "image.h" class ICamera { @@ -35,16 +32,32 @@ public: virtual ~ICamera() = default; public: - virtual bool setExposureTimeUs(int value) = 0; - virtual bool setGain(int value) = 0; + virtual bool set_autoExposure(const bool enable) = 0; + /*! + * \brief get_autoExposure - check if auto exposure is enabled + * \param ok - indicates successful read + * \return true if enabled, false otherwise + */ + + /*! + * \brief get_autoExposure - check if auto exposure is enabled + * \return non-empty value on success, empty value on failure + */ + virtual std::optional get_autoExposure() = 0; + + virtual bool set_exposureTime(const std::chrono::microseconds us) = 0; + virtual std::optional get_exposureTime() = 0; + + virtual bool set_autoGain(const bool enable) = 0; + virtual std::optional get_autoGain() = 0; + + virtual bool set_gain(const float value) = 0; + virtual std::optional get_gain() = 0; + virtual bool setLaserLevel(int value) = 0; - virtual bool setSomething(int value) = 0; public: - libcamera::Signal> newPixels; - libcamera::Signal> newImage; std::function)> newPixelsCallback; - // std::function)> newImageCallback; std::function newImageCallback; public: -- cgit v1.2.3-70-g09d2