From a8c3f90f9f2a5d085d6ff95e73fc9a6bf68d8d11 Mon Sep 17 00:00:00 2001 From: Matt Hill Date: Sun, 23 Oct 2016 10:48:57 -0400 Subject: [PATCH] Added toJson function for single result --- src/openalpr/alpr.cpp | 4 ++++ src/openalpr/alpr.h | 1 + src/openalpr/alpr_impl.cpp | 15 +++++++++++++++ src/openalpr/alpr_impl.h | 2 ++ 4 files changed, 22 insertions(+) diff --git a/src/openalpr/alpr.cpp b/src/openalpr/alpr.cpp index c42b101..5ab89ea 100644 --- a/src/openalpr/alpr.cpp +++ b/src/openalpr/alpr.cpp @@ -82,6 +82,10 @@ namespace alpr { return AlprImpl::toJson(results); } + std::string Alpr::toJson( AlprPlateResult result ) + { + return AlprImpl::toJson(result); + } AlprResults Alpr::fromJson(std::string json) { return AlprImpl::fromJson(json); diff --git a/src/openalpr/alpr.h b/src/openalpr/alpr.h index ac6fd43..b08913a 100644 --- a/src/openalpr/alpr.h +++ b/src/openalpr/alpr.h @@ -163,6 +163,7 @@ namespace alpr static std::string toJson(const AlprResults results); + static std::string toJson(const AlprPlateResult result); static AlprResults fromJson(std::string json); bool isLoaded(); diff --git a/src/openalpr/alpr_impl.cpp b/src/openalpr/alpr_impl.cpp index 338b453..024bb5a 100644 --- a/src/openalpr/alpr_impl.cpp +++ b/src/openalpr/alpr_impl.cpp @@ -542,6 +542,21 @@ namespace alpr + std::string AlprImpl::toJson( const AlprPlateResult result ) + { + cJSON *resultObj = createJsonObj( &result ); + + char *out; + out=cJSON_PrintUnformatted(resultObj); + + cJSON_Delete(resultObj); + + string response(out); + + free(out); + + return response; + } cJSON* AlprImpl::createJsonObj(const AlprPlateResult* result) { cJSON *root, *coords, *candidates; diff --git a/src/openalpr/alpr_impl.h b/src/openalpr/alpr_impl.h index d098933..a849168 100644 --- a/src/openalpr/alpr_impl.h +++ b/src/openalpr/alpr_impl.h @@ -99,6 +99,8 @@ namespace alpr void setDefaultRegion(std::string region); static std::string toJson( const AlprResults results ); + static std::string toJson( const AlprPlateResult result ); + static AlprResults fromJson(std::string json); static std::string getVersion();