Make PolylineFormatter's encodedAsJSON and unencodedAsJSON free standing functions
This commit is contained in:
parent
c65dd16460
commit
0627c3443d
@ -243,9 +243,9 @@ util::json::Value ApiResponseGenerator<DataFacadeT>::GetGeometry(const bool retu
|
|||||||
const Segments &segments) const
|
const Segments &segments) const
|
||||||
{
|
{
|
||||||
if (return_encoded)
|
if (return_encoded)
|
||||||
return PolylineFormatter().printEncodedString(segments.Get());
|
return polylineEncodeAsJSON(segments.Get());
|
||||||
else
|
else
|
||||||
return PolylineFormatter().printUnencodedString(segments.Get());
|
return polylineUnencodedAsJSON(segments.Get());
|
||||||
}
|
}
|
||||||
|
|
||||||
template <typename DataFacadeT>
|
template <typename DataFacadeT>
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
#ifndef POLYLINE_FORMATTER_HPP
|
#ifndef POLYLINE_FORMATTER_HPP
|
||||||
#define POLYLINE_FORMATTER_HPP
|
#define POLYLINE_FORMATTER_HPP
|
||||||
|
|
||||||
|
#include "engine/segment_information.hpp"
|
||||||
#include "osrm/json_container.hpp"
|
#include "osrm/json_container.hpp"
|
||||||
|
|
||||||
#include <string>
|
#include <string>
|
||||||
@ -11,14 +12,12 @@ namespace osrm
|
|||||||
namespace engine
|
namespace engine
|
||||||
{
|
{
|
||||||
|
|
||||||
struct SegmentInformation;
|
// Encodes geometry into polyline format, returning an encoded JSON object
|
||||||
|
// See: https://developers.google.com/maps/documentation/utilities/polylinealgorithm
|
||||||
|
util::json::String polylineEncodeAsJSON(const std::vector<SegmentInformation> &geometry);
|
||||||
|
|
||||||
struct PolylineFormatter
|
// Does not encode the geometry in polyline format, instead returning an unencoded JSON object
|
||||||
{
|
util::json::Array polylineUnencodedAsJSON(const std::vector<SegmentInformation> &geometry);
|
||||||
util::json::String printEncodedString(const std::vector<SegmentInformation> &polyline) const;
|
|
||||||
|
|
||||||
util::json::Array printUnencodedString(const std::vector<SegmentInformation> &polyline) const;
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,25 +1,18 @@
|
|||||||
#include "engine/polyline_formatter.hpp"
|
#include "engine/polyline_formatter.hpp"
|
||||||
|
|
||||||
#include "engine/polyline_compressor.hpp"
|
#include "engine/polyline_compressor.hpp"
|
||||||
#include "engine/segment_information.hpp"
|
|
||||||
|
|
||||||
#include "osrm/coordinate.hpp"
|
#include "osrm/coordinate.hpp"
|
||||||
|
|
||||||
#include <vector>
|
|
||||||
|
|
||||||
namespace osrm
|
namespace osrm
|
||||||
{
|
{
|
||||||
namespace engine
|
namespace engine
|
||||||
{
|
{
|
||||||
|
|
||||||
util::json::String
|
util::json::String polylineEncodeAsJSON(const std::vector<SegmentInformation> &polyline)
|
||||||
PolylineFormatter::printEncodedString(const std::vector<SegmentInformation> &polyline) const
|
|
||||||
{
|
{
|
||||||
return util::json::String(polylineEncode(polyline));
|
return util::json::String(polylineEncode(polyline));
|
||||||
}
|
}
|
||||||
|
|
||||||
util::json::Array
|
util::json::Array polylineUnencodedAsJSON(const std::vector<SegmentInformation> &polyline)
|
||||||
PolylineFormatter::printUnencodedString(const std::vector<SegmentInformation> &polyline) const
|
|
||||||
{
|
{
|
||||||
util::json::Array json_geometry_array;
|
util::json::Array json_geometry_array;
|
||||||
for (const auto &segment : polyline)
|
for (const auto &segment : polyline)
|
||||||
|
Loading…
Reference in New Issue
Block a user