summaryrefslogtreecommitdiff
path: root/src/protocols
diff options
context:
space:
mode:
Diffstat (limited to 'src/protocols')
-rw-r--r--src/protocols/httpserver.cpp14
1 files changed, 8 insertions, 6 deletions
diff --git a/src/protocols/httpserver.cpp b/src/protocols/httpserver.cpp
index 3d5a0d5..afc113e 100644
--- a/src/protocols/httpserver.cpp
+++ b/src/protocols/httpserver.cpp
@@ -94,7 +94,7 @@ QHttpServerResponse HttpServer::GET_image()
return QHttpServerResponse::StatusCode::ServiceUnavailable;
}
- pgm_save(image.get());
+ pgm_save(image);
std::lock_guard<std::mutex> lg(pgm_image_mtx);
return QHttpServerResponse{QByteArray{(const char *) (pgm_image),
@@ -115,12 +115,13 @@ QHttpServerResponse HttpServer::GET_pixels()
return QHttpServerResponse::StatusCode::ServiceUnavailable;
}
- std::shared_ptr<Image> image;
+ // std::shared_ptr<Image> image;
{
// const elapsed_logger logger{__func__};
- /*const auto */ image = m_camera->getImage();
+ // /*const auto */ image = m_camera->getImage();
}
+ const auto image = m_camera->getImage();
if (!image) {
qWarning() << "cannot get image";
return QHttpServerResponse::StatusCode::ServiceUnavailable;
@@ -128,9 +129,10 @@ QHttpServerResponse HttpServer::GET_pixels()
// FIXME: inc m_camera->processedCounter
// FIXME: not thread-safe, don't use this static shared_ptr at all
- const auto pixels = image->sharedPixels();
+ // const auto pixels = image->sharedPixels();
+ const auto &pixels = image->getPixels();
// const auto lines = pixelsToLines(::pixels);
- const auto lines = pixelsToLines(*pixels);
+ const auto lines = pixelsToLines(pixels);
// qt json does not allow to limit double precision, so using rapidjson
rapidjson::Document jd;
@@ -142,7 +144,7 @@ QHttpServerResponse HttpServer::GET_pixels()
rapidjson::Value rjPixels{rapidjson::kArrayType};
for (size_t i = 0; i < img_width; ++i) {
- rjPixels.PushBack(nan2zero(pixels->pixels[i]), al);
+ rjPixels.PushBack(nan2zero(pixels.pixels[i]), al);
}
rapidjson::Value rjLines{rapidjson::kArrayType};