Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mapsme/omim.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVladimir Byko-Ianko <v.bykoianko@corp.mail.ru>2016-05-20 16:20:51 +0300
committerVladimir Byko-Ianko <v.bykoianko@corp.mail.ru>2016-05-20 18:09:35 +0300
commit8afbbc31acb05ea2ffe9222f9c35f3387fa53c80 (patch)
tree5e4598e6997327e5fbe7ad4f3a6fe2e0d8108581 /routing
parentb45b5c76194b70046ae5678627fd5fe64f9f83a3 (diff)
Review fixes.
Diffstat (limited to 'routing')
-rw-r--r--routing/bicycle_directions.cpp14
-rw-r--r--routing/bicycle_directions.hpp18
-rw-r--r--routing/directions_engine.hpp3
-rw-r--r--routing/osrm_router.cpp1
-rw-r--r--routing/routing_integration_tests/routing_test_tools.cpp4
5 files changed, 23 insertions, 17 deletions
diff --git a/routing/bicycle_directions.cpp b/routing/bicycle_directions.cpp
index c9d8f42596..afb7e1195e 100644
--- a/routing/bicycle_directions.cpp
+++ b/routing/bicycle_directions.cpp
@@ -15,12 +15,12 @@ namespace
using namespace routing;
using namespace routing::turns;
-class RoutingResultGraph : public IRoutingResult
+class RoutingResult : public IRoutingResult
{
public:
- RoutingResultGraph(IRoadGraph::TEdgeVector const & routeEdges,
- TAdjacentEdgesMap const & adjacentEdges,
- TUnpackedPathSegments const & pathSegments)
+ RoutingResult(IRoadGraph::TEdgeVector const & routeEdges,
+ BicycleDirectionsEngine::TAdjacentEdgesMap const & adjacentEdges,
+ TUnpackedPathSegments const & pathSegments)
: m_routeEdges(routeEdges)
, m_adjacentEdges(adjacentEdges)
, m_pathSegments(pathSegments)
@@ -70,7 +70,7 @@ public:
private:
IRoadGraph::TEdgeVector const & m_routeEdges;
- TAdjacentEdgesMap const & m_adjacentEdges;
+ BicycleDirectionsEngine::TAdjacentEdgesMap const & m_adjacentEdges;
TUnpackedPathSegments const & m_pathSegments;
double m_routeLength;
};
@@ -151,14 +151,16 @@ void BicycleDirectionsEngine::Generate(IRoadGraph const & graph, vector<Junction
LoadedPathSegment pathSegment;
if (inFeatureId.IsValid())
+ {
LoadPathGeometry(inFeatureId, {prevJunction.GetPoint(), currJunction.GetPoint()},
pathSegment);
+ }
m_adjacentEdges.insert(make_pair(inFeatureId.m_index, move(adjacentEdges)));
m_pathSegments.push_back(move(pathSegment));
}
- RoutingResultGraph resultGraph(routeEdges, m_adjacentEdges, m_pathSegments);
+ RoutingResult resultGraph(routeEdges, m_adjacentEdges, m_pathSegments);
RouterDelegate delegate;
Route::TTimes turnAnnotationTimes;
Route::TStreets streetNames;
diff --git a/routing/bicycle_directions.hpp b/routing/bicycle_directions.hpp
index 158b76e699..8fd2ac23b2 100644
--- a/routing/bicycle_directions.hpp
+++ b/routing/bicycle_directions.hpp
@@ -11,19 +11,19 @@ class Index;
namespace routing
{
-struct AdjacentEdges
+class BicycleDirectionsEngine : public IDirectionsEngine
{
- explicit AdjacentEdges(size_t ingoingTurnsCount = 0) : m_ingoingTurnsCount(ingoingTurnsCount) {}
+public:
+ struct AdjacentEdges
+ {
+ explicit AdjacentEdges(size_t ingoingTurnsCount = 0) : m_ingoingTurnsCount(ingoingTurnsCount) {}
- turns::TurnCandidates m_outgoingTurns;
- size_t m_ingoingTurnsCount;
-};
+ turns::TurnCandidates m_outgoingTurns;
+ size_t m_ingoingTurnsCount;
+ };
-using TAdjacentEdgesMap = map<TNodeId, AdjacentEdges>;
+ using TAdjacentEdgesMap = map<TNodeId, AdjacentEdges>;
-class BicycleDirectionsEngine : public IDirectionsEngine
-{
-public:
BicycleDirectionsEngine(Index const & index);
// IDirectionsEngine override:
diff --git a/routing/directions_engine.hpp b/routing/directions_engine.hpp
index ada7b51c90..1dd3ee7794 100644
--- a/routing/directions_engine.hpp
+++ b/routing/directions_engine.hpp
@@ -21,6 +21,9 @@ public:
my::Cancellable const & cancellable) = 0;
protected:
+ /// \brief constructs route based on |graph| and |path|. Fills |routeEdges| with the route.
+ /// \returns false in case of any errors while reconstruction, if reconstruction process
+ /// was cancelled and in case of extremely short paths of 0 or 1 point. Returns true otherwise.
bool ReconstructPath(IRoadGraph const & graph, vector<Junction> const & path,
vector<Edge> & routeEdges, my::Cancellable const & cancellable) const;
diff --git a/routing/osrm_router.cpp b/routing/osrm_router.cpp
index 090a17efb6..11ee0619d4 100644
--- a/routing/osrm_router.cpp
+++ b/routing/osrm_router.cpp
@@ -61,6 +61,7 @@ class OSRMRoutingResult : public turns::IRoutingResult
public:
// turns::IRoutingResult overrides:
TUnpackedPathSegments const & GetSegments() const override { return m_loadedSegments; }
+
void GetPossibleTurns(TNodeId node, m2::PointD const & ingoingPoint,
m2::PointD const & junctionPoint, size_t & ingoingCount,
turns::TurnCandidates & outgoingTurns) const override
diff --git a/routing/routing_integration_tests/routing_test_tools.cpp b/routing/routing_integration_tests/routing_test_tools.cpp
index 56d7ba83aa..9447911d3e 100644
--- a/routing/routing_integration_tests/routing_test_tools.cpp
+++ b/routing/routing_integration_tests/routing_test_tools.cpp
@@ -36,8 +36,8 @@ using TRouterFactory =
namespace
{
-double kErrorMeters = 1.0;
-double kErrorSeconds = 1.0;
+double constexpr kErrorMeters = 1.0;
+double constexpr kErrorSeconds = 1.0;
void ChangeMaxNumberOfOpenFiles(size_t n)
{
struct rlimit rlp;