summaryrefslogtreecommitdiff
path: root/src/camera/veyeimx287m.h
diff options
context:
space:
mode:
authorNikita Kostovsky <nikita@kostovsky.me>2026-03-06 20:40:29 +0100
committerNikita Kostovsky <nikita@kostovsky.me>2026-03-06 20:40:29 +0100
commit05f0938a65c4f8c330791097680e1e094260bb60 (patch)
treed11e48c96eed6de03c51b793081310d96dee8618 /src/camera/veyeimx287m.h
parent051cb23a807a6914e2cda7e3b08d69ed29f347dd (diff)
refactoring
Diffstat (limited to 'src/camera/veyeimx287m.h')
-rw-r--r--src/camera/veyeimx287m.h17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/camera/veyeimx287m.h b/src/camera/veyeimx287m.h
index b624fd2..bdc57d9 100644
--- a/src/camera/veyeimx287m.h
+++ b/src/camera/veyeimx287m.h
@@ -15,6 +15,8 @@
#include "constants.h"
#include "icamera.h"
#include "image.h"
+// TODO: remove this include
+#include "printerclient.h"
#include "utils/sem_queue.h"
namespace veye {
@@ -24,6 +26,7 @@ class i2c;
} // namespace veye
class HttpServer;
+class IStand;
/*
* start calibration
@@ -58,12 +61,17 @@ public:
VeyeIMX287m();
~VeyeIMX287m() override;
+public slots:
+ void onMoveFinished() override;
+
public:
static std::vector<std::shared_ptr<ICamera>> search();
public:
bool startStream() override;
+ void startCalibration(std::shared_ptr<IStand> stand, double zRangeMm) override;
+
bool dequeueImageBuffer(size_t &image);
std::shared_ptr<Image> getImage() override;
@@ -157,4 +165,13 @@ private:
std::shared_ptr<veye::imx287m::i2c> m_i2c;
std::shared_ptr<HttpServer> m_httpServer;
+
+ // calibration
+ // TODO: re-organize this logic
+ bool m_isCalibrating{false};
+ bool m_ignoreFrames{false};
+ std::vector<std::shared_ptr<Pixels>> m_calibrationPixels;
+ std::shared_ptr<IStand> m_stand;
+ double m_zRangeMm{std::numeric_limits<double>::quiet_NaN()};
+ bool m_isMoving{false};
};