#pragma once #include #include "constants.h" struct Counters { uint32_t timestampUs{0}; uint32_t measurementCounter{0}; int32_t encoderPosition{0}; }; struct Image { int width; int height; uint16_t data[img_height][img_width]; uint16_t rotated_cw[img_width][img_height]; size_t dataSize; unsigned int stride; libcamera::PixelFormat pixelFormat; Counters counters{}; }; struct requested_params_t { int32_t exposureTime = {1000}; int32_t laserLevel = {3000}; uint32_t stepsPerMm{200}; }; enum ScanningModeFlags : uint8_t { None = 0, Calibration };