diff options
| author | Nikita Kostovsky <nikita@kostovsky.me> | 2025-11-14 22:49:35 +0100 |
|---|---|---|
| committer | Nikita Kostovsky <nikita@kostovsky.me> | 2025-11-14 22:49:35 +0100 |
| commit | 5b1b873f3f09f3e1644141a2cfc67b3a84dc4492 (patch) | |
| tree | edbc25ac40dcd2c2a3b47b1ed823b4d6466fea0c /src/main.cpp | |
| parent | ac27fb455c76aee4f9e9f65747483006909b14ab (diff) | |
cleanup
Diffstat (limited to 'src/main.cpp')
| -rw-r--r-- | src/main.cpp | 32 |
1 files changed, 8 insertions, 24 deletions
diff --git a/src/main.cpp b/src/main.cpp index 99ad57b..6986751 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -32,6 +32,7 @@ #include "imagealgos.h" #include "profile.h" #include "protocols/httpserver.h" +#include "scanner.h" // #include "rapidjson/document.h" @@ -181,7 +182,7 @@ int main(int argc, char *argv[]) // FIXME: don't use one var for everything int ret; - const auto cameras = VeyeIMX287m::search(); + auto cameras = VeyeIMX287m::search(); if (cameras.empty()) { std::cerr << "No cameras were identified on the system." << std::endl; @@ -201,31 +202,14 @@ int main(int argc, char *argv[]) return EXIT_FAILURE; } - QHttpServer qHttpServer; - auto httpGetImage = [&]() -> QHttpServerResponse { - auto cam = dynamic_cast<VeyeIMX287m *>(camera.get()); - - if (!cam) { - qDebug() << "NO CAM"; - return QHttpServerResponse::StatusCode::ServiceUnavailable; - } + auto httpServer = std::make_shared<HttpServer>(camera); - static Image img; + const auto scanner + = std::make_shared<Scanner>(camera, + std::vector<std::shared_ptr<IProtocol>>{ + httpServer}); - if (!cam->getImage(img)) { - qDebug() << "cannot get image"; - return QHttpServerResponse::StatusCode::ServiceUnavailable; - } - - pgm_save(&img); - std::lock_guard<std::mutex> lg(pgm_image_mtx); - - return QHttpServerResponse{QByteArray((const char *) pgm_image, - pgm_image_size), - QHttpServerResponse::StatusCode::Ok}; - }; - qHttpServer.route("/v1/sensor/image", httpGetImage); - qHttpServer.route("/v1/sensor/image2", httpGetImage); + QHttpServer qHttpServer; qHttpServer.route("/v1/profile", [&]() -> QHttpServerResponse { // std::cout << "http: profile" << std::endl; |
