summaryrefslogtreecommitdiff
path: root/src/protocols
diff options
context:
space:
mode:
authorNikita Kostovsky <nikita@kostovsky.me>2026-02-26 16:33:12 +0100
committerNikita Kostovsky <nikita@kostovsky.me>2026-02-26 16:33:12 +0100
commita688e436f03309d5813b68a375f694412018ca0b (patch)
tree8a5cdbb170fbb8417de42a09832d2eaf527ff61e /src/protocols
parent1664027209ea3b8eb327b7755e4111577e66a2ee (diff)
add sync moveSteps
Diffstat (limited to 'src/protocols')
-rw-r--r--src/protocols/httpserver.cpp27
1 files changed, 25 insertions, 2 deletions
diff --git a/src/protocols/httpserver.cpp b/src/protocols/httpserver.cpp
index 3d5a0d5..dc3b59a 100644
--- a/src/protocols/httpserver.cpp
+++ b/src/protocols/httpserver.cpp
@@ -185,15 +185,21 @@ QHttpServerResponse HttpServer::POST_params(const QHttpServerRequest &request)
return QJsonDocument{QJsonObject{{QStringLiteral("error"), message}}}
.toJson();
};
- const auto invalidValue =
- [jsonError](const auto fieldName) -> const QString {
+ const auto invalidValue = [jsonError](const auto fieldName) -> const QString {
+ qDebug() << "invalid value:" << fieldName;
return jsonError(fieldName + QStringLiteral(" has invalid value"));
};
+ const auto failedToSet = [jsonError](const auto fieldName) -> const QString {
+ qDebug() << "failed to set" << fieldName;
+ return jsonError(QStringLiteral("failed to set") + fieldName);
+ };
+
const auto autoExposure = json["autoExposure"];
const auto exposureTime = json["exposureTime"];
const auto autoGain = json["autoGain"];
const auto gain = json["gain"];
+ const auto triggerExposureDelayUs = json["triggerExposureDelayUs"];
if (!autoExposure.isNull()) {
if (autoExposure.isBool()) {
@@ -232,6 +238,23 @@ QHttpServerResponse HttpServer::POST_params(const QHttpServerRequest &request)
}
}
+ if (!triggerExposureDelayUs.isNull()) {
+ if (triggerExposureDelayUs.isDouble()) {
+ const auto ok = m_camera->set_triggerExposureDelay(
+ std::chrono::microseconds{triggerExposureDelayUs.toInt()});
+
+ if (!ok) {
+ {
+ invalidValue("triggerExposureDelayUs"),
+ QHttpServerResponse::StatusCode::BadRequest;
+ }
+ }
+ } else {
+ return {invalidValue("triggerExposureDelayUs"),
+ QHttpServerResponse::StatusCode::BadRequest};
+ }
+ }
+
return QHttpServerResponse::StatusCode::Ok;
}