All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
RoutingQueryResultParser.h
1 #pragma once
2 
3 #include "RouteData.h"
4 #include "LatLongAltitude.h"
5 #include "document.h"
6 #include <string>
7 #include <vector>
8 
9 
10 namespace Eegeo
11 {
12  namespace Routes
13  {
14  namespace Webservice
15  {
17  {
18  public:
19  bool TryParseRoutes(const std::string& responseJson, std::vector<RouteData>& out_routingResult);
20 
21  private:
22  bool TryParseRouteSection(const rapidjson::Value& routesJson, RouteSection& out_route);
23  bool TryParseGeometry(const rapidjson::Value& geometryJson, std::vector<Space::LatLong>& out_geometry);
24  bool TryParseSteps(const rapidjson::Value& stepsJson, std::vector<RouteStep>& out_steps);
25  bool TryParseDirections(const rapidjson::Value& directionsJson, RouteDirections& out_directions);
26  bool TryParseLongLat(const rapidjson::Value& longLatArray, Space::LatLong& out_latLong);
27  bool TryParseTransportationMode(const rapidjson::Value& stepJson, TransportationMode& mode);
28  };
29  }
30  }
31 }
32