Commit Graph

736 Commits

Author SHA1 Message Date
Moritz Kobitzsch
d129b0ef24 remove templates from routing algorithms 2017-01-21 23:59:15 +01:00
Moritz Kobitzsch
8c36012653 remove CRTP leftovers in search algorithms 2017-01-20 14:11:16 +01:00
Michael Krasnyk
e8167b2e4e Use round for float to fixed coordinate transformations 2017-01-20 12:31:45 +01:00
Huyen Chau Nguyen
a40abacfca Refactors the Turn Handler's Fork Abstraction, resolves #3457. 2017-01-19 19:49:40 +01:00
Moritz Kobitzsch
b8beac2d00 unite process/shared_memory datafacades into a single type using an allocator scheme 2017-01-19 17:18:35 +01:00
Michael Krasnyk
c03b230e84 Refactor ShMemIterator, resolves #3458 2017-01-19 15:30:18 +01:00
Moritz Kobitzsch
6b06c5bd32 fix emitting invalid turn types, now surfacing due to changes in obvious detection 2017-01-18 15:56:48 +01:00
Moritz Kobitzsch
226ee62981 refactor graph contractor for readability
move to a dedicated dijkstra, separate code and header
reduce heap size, we don't use more than 2000 nodes, so why allocate 170k?
2017-01-18 15:03:15 +01:00
Daniel J. Hofmann
fce3bb180c Provides OSRM_ASSERT_WITH_LOC macros for asserting with location, resolves #3533 2017-01-18 00:43:03 +01:00
Patrick Niklaus
70e899378d Replace shmctl with waiting on all on-Linux platforms 2017-01-14 01:14:29 +01:00
Patrick Niklaus
dbd70d4884 Throw exception with more helpful error message when shmctl fails 2017-01-14 01:14:29 +01:00
Michael Krasnyk
b8f631f6f6 fake waiting by sleep on windows 2017-01-14 01:14:29 +01:00
Patrick Niklaus
763ad0d047 Print warning on Windows that we can't wait for clients 2017-01-14 01:14:29 +01:00
Michael Krasnyk
b6f9ec2a33 make facades const to be consistent with const shmem block 2017-01-14 01:14:29 +01:00
Patrick Niklaus
104e23abf3 Restore --max-wait and file_lock for osrm-datastore 2017-01-14 01:14:29 +01:00
Patrick Niklaus
a7bb26f2d6 Remove unnecessary includes and rename in Engine 2017-01-14 01:14:29 +01:00
Michael Krasnyk
710ba20acc Add 1ms delay as a workaround for "faster" requests than facade update
in osrm-routed
2017-01-14 01:14:29 +01:00
Michael Krasnyk
fce8d72895 Change to condvar signaling if data region swapped 2017-01-14 01:14:29 +01:00
Michael Krasnyk
774b8688ca read_only if shmem size is 0, read_write otherwise 2017-01-14 01:14:29 +01:00
Michael Krasnyk
fe2beb6f68 Respect data constness in Write methods 2017-01-13 22:37:46 +01:00
Michael Krasnyk
1d4d3b80b5 Fix possible division by zero by clamping latitude to 85.05°
Resolves #3530
2017-01-12 16:44:58 +01:00
Moritz Kobitzsch
c1f833c80f fix forks exiting a ferry 2017-01-12 09:58:51 +01:00
Huyen Chau Nguyen
f313cb9913 Refactor fork handling in guidance (#3264)
refactor fork handler
2017-01-07 14:13:32 +01:00
Moritz Kobitzsch
15c8fd326f Remove assertions that could be triggered by bad data. (#3469)
When two consecutive nodes have identical coordinates, there is no valid
bearing.  For now, make equal nodes have bearing 0.

Full fix still needs to be done via https://github.com/Project-OSRM/osrm-backend/issues/3470.
2017-01-06 17:10:02 -08:00
Daniel Patterson
f7e8581a1b Replace fingerprint with semver-based scheme. (#3467) 2017-01-06 13:45:08 -08:00
Daniel J. Hofmann
1153b78c06 Fixes various compiler diagnostics
Found with LLVM 3.9.1 and then fixed the most severe categories.
2017-01-06 16:47:52 +01:00
Daniel J. Hofmann
5100f2cc7b Guards against no lanes for lanes left and right of turn, resolves #3518 2017-01-06 12:44:02 +01:00
Moritz Kobitzsch
f6fef5c166 refactor graph contraction: flush moved into dedicated function 2017-01-05 16:28:38 +01:00
Daniel J. Hofmann
559c88b36d Adds runtime alignment assertions, see #3267 2017-01-05 16:27:53 +01:00
FILLAU Jean-Maxime
300283d572 Adding a new command line option osrm-extract --with-osm-metadata
This keep the metadata reader flag disabled by default unless explicitly specified.

Signed-off-by: FILLAU Jean-Maxime <jean-maxime.fillau@mapotempo.com>
2017-01-04 14:35:45 +01:00
Michael Krasnyk
24ab71a346 Fix c++ formatting 2017-01-04 08:46:16 +01:00
Moritz Kobitzsch
e6ff17ab2a refactor merging of segregated roads
adjust to generalFindMaximum function
moved parallel detection to ratio/absolute based regression testing
considerably improved detection quality using normalised regression lines
only follow initial direction/narrow turns for parallel detection
2017-01-03 12:32:51 +01:00
Patrick Niklaus
f7ad2e1e26 Don't retain SharedDataFacade between queries (#3485)
* Don't retain SharedDataFacade between queries

* More caching code
2017-01-03 12:06:55 +01:00
Michael Krasnyk
8645d8c7fc Make osrm::util::range a model of SinglePassRangeConcept
References:
- http://www.boost.org/doc/libs/1_63_0/libs/range/doc/html/range/concepts/single_pass_range.html
2017-01-03 10:22:03 +01:00
Patrick Niklaus
0f3a463854 Add api_version gloabal variable to profiles
Currently only `0` is supported (the default).
2016-12-23 15:02:10 +01:00
Moritz Kobitzsch
b9b52cb857 clean-up unused headers, use NoTurn for ferries instead of suppressed 2016-12-23 15:01:02 +01:00
Daniel J. Hofmann
9af67c5a9f Refactors Karen's work a bit 2016-12-23 15:01:02 +01:00
karenzshea
8ffe915395 do not emit turns on ferries 2016-12-23 15:01:02 +01:00
Michael Krasnyk
b376c97db8 Join LAYOUT and DATA shared memory blocks into REGION 2016-12-23 11:56:22 +01:00
Moritz Kobitzsch
bc081b7132 refactor route step / intermediate intersections
rename intersection (engine version) to IntermediateIntersection
follow coding convention for existing functions, move invalidate into routeStep
moved elongate into route step
move forward-step-signage into route step
replace post-processings `forwardInto` with `RouteStep` functionality. Don't change maneuver in step
separete declaration and implementation
2016-12-22 08:33:27 +01:00
Patrick Niklaus
3cbac0f012 Revert "Smarter search radius formula for map matching"
This reverts commit b73c59088c.
2016-12-21 22:41:48 -08:00
Patrick Niklaus
cc14fb8bff Revert "Hardcode search radius parameters"
This reverts commit 2c9e18d5a9.
2016-12-21 22:41:34 -08:00
Moritz Kobitzsch
dff7fe214b don't assign exit in arrive when ending in roundabout 2016-12-21 17:48:23 +01:00
Moritz Kobitzsch
1ba5ff44cc reduce warnings when compiling tests, add constructor to base parameters, fixes gcc49 unit tests building 2016-12-19 14:24:17 -05:00
Daniel J. Hofmann
5ecd2e4c67 Fixes GCC 4.9's protected keywork issues 2016-12-19 14:22:17 +01:00
Daniel J. Hofmann
b1f6797aab Adds generate_hints=true for dropping hints in response, resolves #1789.
Adds an `generate_hints=false` option which lets us skip generating and
emitting hints for Waypoints. This can be used to decrease the response
size when the user does not need hints anyway.

We should think about making `false` the default here in v6.
2016-12-19 12:09:36 +01:00
Patrick Niklaus
c4b3cdfd80 Fix changing shared memory in multi-process setup (#3462)
This change fixes two bugs:

1. A dead-lock that occurs between osrm-datastore and libosrm when an
   old dataset is free during a data update. This happened because the
   mutexes where acquired in a different order.

2. A region is deleted eventhough it is still in use. This happens when
   libosrm gets overtaken by osrm-datastore, so the new dataset is in
   the same region the old one was.
2016-12-16 13:50:17 -08:00
Moritz Kobitzsch
d584bcad11 fix roundabout handling with lanes
instead of artificially removing lanes from a roundabout, we don't assing them in the first place.
this also prevents a problem where we would end up collapsing turns with lanes in a roundabout
2016-12-15 13:07:26 +01:00
Daniel Patterson
a51ef67db8 Use common function for clamping logic for all user-visible bearings. 2016-12-15 10:59:17 +01:00
Moritz Kobitzsch
67ce19cb14 fix problem at the source 2016-12-15 10:59:17 +01:00