summaryrefslogtreecommitdiff
path: root/src/protocols/httpserver.cpp
diff options
context:
space:
mode:
authorNikita Kostovsky <nikita@kostovsky.me>2026-07-15 10:13:10 +0200
committerNikita Kostovsky <nikita@kostovsky.me>2026-07-15 10:13:10 +0200
commit2aefb6902465c3c8a313f95bb1b7d9a80fe4c52a (patch)
tree525cafbc1a9f38df2f0d2ebe6fe9fd206e5f30d0 /src/protocols/httpserver.cpp
parent169ddcb09cd26fa0a685f691f63b49e70e1be93b (diff)
in the middle of non-linear pixels debuggingconflicting_master
Diffstat (limited to 'src/protocols/httpserver.cpp')
-rw-r--r--src/protocols/httpserver.cpp34
1 files changed, 34 insertions, 0 deletions
diff --git a/src/protocols/httpserver.cpp b/src/protocols/httpserver.cpp
index e5772da..b20ee45 100644
--- a/src/protocols/httpserver.cpp
+++ b/src/protocols/httpserver.cpp
@@ -233,6 +233,8 @@ QHttpServerResponse HttpServer::POST_params(const QHttpServerRequest &request)
const auto autoGain = json["autoGain"];
const auto gain = json["gain"];
const auto triggerExposureDelayUs = json["triggerExposureDelayUs"];
+ const auto blackLevel = json["blackLevel"];
+ const auto isBlackLevelManual = json["isBlackLevelManual"];
// TODO: unify args processing to avoid code duplicates
if (!autoExposure.isNull()) {
@@ -278,17 +280,47 @@ QHttpServerResponse HttpServer::POST_params(const QHttpServerRequest &request)
std::chrono::microseconds{triggerExposureDelayUs.toInt()});
if (!ok) {
+ qCritical() << "cannot write delay value";
{
invalidValue("triggerExposureDelayUs"),
QHttpServerResponse::StatusCode::BadRequest;
}
}
+
+ const auto delay = m_scanner->camera()->get_triggerExposureDelay();
+
+ if (delay.has_value()) {
+ std::cout << "NEW DELAY IS: " << *delay << std::endl;
+ } else {
+ qCritical() << "cannot read new delay value";
+ }
} else {
return {invalidValue("triggerExposureDelayUs"),
QHttpServerResponse::StatusCode::BadRequest};
}
}
+ if (!isBlackLevelManual.isNull()) {
+ if (isBlackLevelManual.isBool()) {
+ if (!m_scanner->camera()->set_isBlackLevelManual(isBlackLevelManual.toBool())) {
+ return {invalidValue("isBlackLevelManualisBlackLevelManual"),
+ QHttpServerResponse::StatusCode::BadRequest};
+ }
+ } else {
+ return {invalidValue("isBlackLevelManual"), QHttpServerResponse::StatusCode::BadRequest};
+ }
+ }
+
+ if (!blackLevel.isNull()) {
+ if (blackLevel.isDouble()) {
+ if (!m_scanner->camera()->set_blackLevel(blackLevel.toInteger())) {
+ return {invalidValue("blackLevel"), QHttpServerResponse::StatusCode::BadRequest};
+ }
+ } else {
+ return {invalidValue("blackLevel"), QHttpServerResponse::StatusCode::BadRequest};
+ }
+ }
+
return QHttpServerResponse::StatusCode::Ok;
}
@@ -308,6 +340,8 @@ QHttpServerResponse HttpServer::GET_params()
{"exposureTime", chrono_val_or_null(m_scanner->camera()->get_exposureTime())},
{"autoGain", val_or_null(m_scanner->camera()->get_autoGain())},
{"gain", val_or_null(m_scanner->camera()->get_gain())},
+ {"blackLevel", static_cast<qint64>(m_scanner->camera()->get_blackLevel().value_or(0))},
+ {"isBlackLevelManual", val_or_null(m_scanner->camera()->get_isBlackLevelManual())},
};
qDebug().noquote() << __func__ << ": " << json;