Patrick Niklaus
6339395cba
Fix clang format
2017-08-21 13:00:12 +02:00
Patrick Niklaus
303a8fae32
Refactor cell weights and durations to own file and allow for multiple metrics
2017-08-21 13:00:12 +02:00
Patrick Niklaus
21686ee8a9
Add datafacade factory to select avoid flags
2017-08-21 13:00:12 +02:00
Patrick Niklaus
c8b142a676
Add placeholders for up to 8 weights
2017-08-21 13:00:12 +02:00
Daniel Patterson
be5fc50136
Save both forward and reverse datasources.
2017-07-27 14:45:28 -07:00
Patrick Niklaus
fef0344be0
Don't use bool flags on ExternalMemoryNode because they blow up the struct
2017-07-07 13:24:34 +00:00
Patrick Niklaus
44739f2dc3
Allow users to specify a class for each way
...
This adds the ability to mark ways with a user-defined
class in the profile. This class information will be included
in the response as property of the RouteStep object.
2017-07-06 09:17:49 +00:00
Daniel J. Hofmann
7d900e3b5a
Implements Exit Numbers + Names (junction:ref
way tag for now)
2017-07-04 20:58:19 +00:00
Michael Krasnyk
b910ab9bcb
Add duration values to overlay graph
2017-07-03 14:57:52 +00:00
Patrick Niklaus
e5464526c8
Port isc file
2017-06-27 09:58:19 +00:00
Daniel Patterson
1c3cb897c1
Refactor RTree so that .fileIndex only contains EdgeDataT, and all r-tree structure is in the .ramIndex file.
...
Also tunes the BRANCHING_FACTOR a bit to speed up access with this new layout.
2017-06-02 12:15:06 +00:00
FILLAU Jean-Maxime
98ad9d8b61
Refactoring enum Approach in enum class.
...
Suppress "engine::"
Signed-off-by: FILLAU Jean-Maxime <jean-maxime.fillau@mapotempo.com>
2017-05-30 10:19:41 +00:00
FILLAU Jean-Maxime
c573cdb0ae
Use formating script.
...
Signed-off-by: FILLAU Jean-Maxime <jean-maxime.fillau@mapotempo.com>
2017-05-30 10:19:41 +00:00
FILLAU Jean-Maxime
82a149eb87
Propagating approach parameter to every phantom nodes search function.
...
Propagating approach parameter for plugins :
- tabler
- nearest
- trip
Signed-off-by: FILLAU Jean-Maxime <jean-maxime.fillau@mapotempo.com>
2017-05-30 10:19:41 +00:00
FILLAU Jean-Maxime
089c98a107
Adding support for left left hand driving.
...
Signed-off-by: FILLAU Jean-Maxime <jean-maxime.fillau@mapotempo.com>
2017-05-30 10:19:41 +00:00
FILLAU Jean-Maxime
f65299d665
Rename side API
...
Side -> Approach
- DEFAULT -> CURB
- BOTH -> UNRESTRICTED
- remove OPPOSITE param
Signed-off-by: FILLAU Jean-Maxime <jean-maxime.fillau@mapotempo.com>
2017-05-30 10:19:41 +00:00
FILLAU Jean-Maxime
ec7934ea33
Change qi::lit for qi::symbols for the sides parameter parser.
...
Refactor code :
- Suppress StartSide Enum
- Change Side Structure for Enum
Signed-off-by: FILLAU Jean-Maxime <jean-maxime.fillau@mapotempo.com>
2017-05-30 10:19:41 +00:00
FILLAU Jean-Maxime
8e70c87e64
New "sides" setting in base parameters for phantom nodes.
...
- Adding sides parameter into base parameters, it can take the values SIDE, OPPOSITE or DEFAULT.
- Adding url parser for "sides" parameter, url values are "s" for SIDE, "o" for OPPOSITE and "d" for DEFAULT, example : "sides=s;s".
- Checking parameters, if "sides" parameter is used, the number of parameter is the same as number of location.
- Create a phantom to start at side driving or Opposite side driving.
Signed-off-by: FILLAU Jean-Maxime <jean-maxime.fillau@mapotempo.com>
2017-05-30 10:19:41 +00:00
Daniel Patterson
c21a476b00
Overridden virtual function should be marked as override final.
2017-05-26 09:15:34 +00:00
Patrick Niklaus
3599d1db8e
Switch code to use packed vector for segment weights/durations
2017-05-19 08:25:03 +00:00
Michael Krasnyk
5e2e1d4c96
Renamed EdgeBasedNode to EdgeBasedNodeSegment
2017-05-17 15:21:51 +00:00
Michael Krasnyk
26702920b4
Move ComponentID to EdgeBasedNodeDataContainer
2017-05-17 15:21:51 +00:00
Patrick Niklaus
6bd724fe24
Rewrite packed vector to also allow random access
...
This fixes issues #3952 . The new approach pre-computes masks for fast
access. Since elements can potentially span multiple words we need masks
and offsets for each upper and lower word.
Due to a bug in the C++14 standart the mask computation is not
recognized as constexpr, but would work on C++17.
2017-05-16 10:25:29 +00:00
Michael Krasnyk
88082c48cf
Remove GetEdgeBasedNodeID from TurnDataContainer
2017-05-03 21:59:38 +00:00
Michael Krasnyk
f1e4349c82
Move geometry ids, name_ids and travel_modes to EdgeBasedNodeData
2017-05-03 21:59:38 +00:00
Patrick Niklaus
d6c6a262d8
Use 16bit for SegmentWeight and SegmentDuration
2017-04-20 14:58:26 +00:00
Patrick Niklaus
e96545be2e
Disable is_integral check because it fails for strong-type-def
2017-04-18 17:24:46 +00:00
Patrick Niklaus
a66918a303
Make PackedVector generic
2017-04-18 17:24:46 +00:00
Patrick Niklaus
7f6e0c478b
Split QueryNode into coordinates and osm id
2017-04-06 15:42:38 +00:00
Patrick Niklaus
ef3fcdc6e6
Refactor graph writing code in contractor
2017-04-06 15:42:38 +00:00
Patrick Niklaus
c87ce2dede
Load data directly into MLPView
2017-04-06 15:42:38 +00:00
Patrick Niklaus
97d1de1beb
Pull turn data up into server
2017-04-06 15:42:38 +00:00
Patrick Niklaus
d7e1c9c09c
Refactor turn data into own class
2017-04-06 15:42:38 +00:00
Michael Krasnyk
8c64b01d67
itroduce ADL via algorithm specific ch, corech and mld namespaces
2017-04-06 10:36:40 +02:00
Pepijn Schoen
789311abd6
Remove osrm namespace indication where possible, wrap out shared_memory_ownership
2017-04-04 17:00:36 +00:00
Pepijn Schoen
091a495632
clang-format
2017-04-04 17:00:36 +00:00
Pepijn Schoen
16665aeb00
Renaming of MemorySetting > Ownership
2017-04-04 17:00:36 +00:00
Pepijn Schoen
87874006c7
rename to vector_view, replace some missing ShM occurences
2017-04-04 17:00:36 +00:00
Pepijn Schoen
b21ee1b63b
Fixed regression
2017-04-04 17:00:36 +00:00
Pepijn Schoen
427437d49b
Use a one-time defined generic signature for SharedMemoryVectors
2017-04-04 17:00:36 +00:00
Pepijn Schoen
01deefc3bc
First pass at adjustment for comments
2017-04-04 17:00:36 +00:00
Pepijn Schoen
157ca9161f
clang-format
2017-04-04 17:00:36 +00:00
Pepijn Schoen
266e65e6d2
Replace bool for using shared memory with MemorySetting enum
2017-04-04 17:00:36 +00:00
Patrick Niklaus
655ca803d8
Adds a special graph for MLD with effcient boundary scan
...
This graph enables efficient boundary edge scans at each level.
Currenly this needs about |V|*|L| bytes of storage.
We can optimize this when the highest boundary nodes ID is << |V|.
2017-03-21 16:23:10 +00:00
Michael Krasnyk
79ef204e1f
Change edge_id to from_clique_arc in MultiLayerDijkstraHeapData
2017-03-17 13:20:34 +01:00
Michael Krasnyk
81771a3bfd
Fix cell storage for tiny maps
2017-03-17 12:27:47 +01:00
Patrick Niklaus
809d8a7d03
Remove duration fallback for turn penalties to simplify logic
2017-03-17 11:19:58 +00:00
Patrick Niklaus
907f933a54
Add update functionality to osrm-customize
...
All speed file flags are compatible with osrm-contract.
2017-03-13 23:04:45 +00:00
Patrick Niklaus
a636e8cc13
Include datasources in .geometries file and refactor .datasource_names
2017-03-10 20:40:59 +00:00
Patrick Niklaus
fb552fd751
Apply clang-format
2017-03-10 14:43:02 +00:00
Patrick Niklaus
4986f5ea2d
Consolidate read/write code in updater for compressed geometries
2017-03-10 14:43:02 +00:00
Michael Krasnyk
ec3cda32fa
moved basic type definitions to osrm namespace
2017-03-08 16:08:00 +00:00
Michael Krasnyk
264cec12e9
Fix reading MLD data into shared memory block
2017-03-08 00:56:50 +00:00
Michael Krasnyk
f42136637d
Add edge-based graph loading in MLD facade
2017-03-08 00:56:50 +00:00
Patrick Niklaus
6cb401b1ff
Run clang-format
2017-03-08 00:56:50 +00:00
Patrick Niklaus
00d01946cd
Moved MultiLevelPartition and CellStorage to partition namespace
2017-03-08 00:56:50 +00:00
Patrick Niklaus
694bf9d8b1
Integrate CellStorage into datafacade
2017-03-08 00:56:50 +00:00
Patrick Niklaus
ef71cc0d12
Clang format
2017-03-08 00:56:50 +00:00
Patrick Niklaus
108fce896b
Pull everthing in the facades
2017-03-08 00:56:50 +00:00
Michael Krasnyk
ff0a98196f
Initial interation on writing out MLD partition/cell data
2017-03-08 00:56:50 +00:00
Patrick Niklaus
93cdd8bb46
Remove unneccessar branch in CoreCH code
2017-03-03 16:02:12 +00:00
Patrick Niklaus
7da86b5984
Implement CoreCH algorithm
2017-03-03 16:02:12 +00:00
Patrick Niklaus
2fa8d0f534
Port OSRM, Engine and Datafacades to be algorithm aware
2017-03-03 16:02:12 +00:00
Michael Krasnyk
71e95c92b6
Fix incorrect forward datasources getter in facade
2017-03-03 10:52:34 +00:00
Moritz Kobitzsch
d56db500d3
Initial Skeleton for Recursive Bisection via Inertial Flow
2017-03-01 16:09:29 +00:00
Michael Krasnyk
3e2db47cc8
cleanup in facade GetUncompressed members
2017-02-10 09:22:24 +00:00
Patrick Niklaus
0c04c6cafb
Address PR comments
2017-02-07 18:12:49 +00:00
Michael Krasnyk
6e1c4bfecd
Added indexed array data type with variable and fixed group blocks
2017-02-07 07:41:12 +00:00
Michael Krasnyk
c22ce3ae1f
Use shared memory region mapping at fixed address for OSX
2017-01-31 13:25:59 +01:00
Michael Krasnyk
c059d15cb9
Added weight multipliers for speed and turn updates
2017-01-27 11:19:37 +01:00
Patrick Niklaus
279f8aabfb
Allow specifing a weight for routing that is independent of duration
2017-01-27 11:19:37 +01:00
Daniel J. Hofmann
c277b95f03
Implements Zero-Copy String Views onto Contiguous Memory, resolves #3265 .
...
- http://www.boost.org/doc/libs/1_61_0/libs/utility/doc/html/string_ref.html
- http://en.cppreference.com/w/cpp/string/basic_string_view
2017-01-23 15:22:39 +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
Patrick Niklaus
104e23abf3
Restore --max-wait and file_lock for osrm-datastore
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
24ab71a346
Fix c++ formatting
2017-01-04 08:46:16 +01:00
Michael Krasnyk
b376c97db8
Join LAYOUT and DATA shared memory blocks into REGION
2016-12-23 11:56:22 +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
Michael Krasnyk
84b618ed1a
Add headers consistency check
2016-12-15 10:58:17 +01:00
Patrick Niklaus
03d653c0bb
Fix removing shared memory segments in a multi-process setup
2016-12-09 12:18:05 +01:00
Daniel Patterson
468d8c0031
Refactor logging, improve error handling workflow, clang-format. ( #3385 )
2016-12-06 12:30:46 -08:00
Moritz Kobitzsch
a1127c3e09
reduce numbers of intersections in findNextIntersection, don't normalise for turn lanes
2016-11-30 10:21:53 +01:00
Daniel Patterson
17c32f5ce7
Fully revert 04f8b653c94614
2016-11-15 16:55:02 -08:00
Daniel Patterson
1fc969e6c8
Fix naming convention, and pass-by-reference for data layout.
2016-11-15 16:55:02 -08:00
Daniel Patterson
49f960064c
Partial revert of 04f8b653c94614 - the PackedVector is special.
2016-11-15 16:55:02 -08:00
Daniel Patterson
83a9d0590d
Pass-by-reference instead of pointer.
2016-11-15 16:55:02 -08:00
Daniel Patterson
608044305d
Rename the datafacades to more clearly describe what they do.
2016-11-15 16:55:02 -08:00
Daniel Patterson
2f9b5788d0
Destructor should fail hard if an exception is raised.
2016-11-15 16:55:02 -08:00
Daniel Patterson
97244557b1
Don't need to use new, make_unique<> can do what we need here.
2016-11-15 16:55:02 -08:00
Daniel Patterson
e2e5eb0169
Remove use of ShM<>::vector in favour of the boost::iterator_range
2016-11-15 16:55:02 -08:00
Daniel Patterson
6949d7ee5b
Remove ownership of block pointers from base class.
2016-11-15 16:55:02 -08:00
Daniel Patterson
b1125b7f1f
Rename base class to something more in line with it's actual function.
2016-11-15 16:55:02 -08:00
Daniel Patterson
bf6df74d44
Consolidate datafacade file loading logic.
...
Both datafacades now use a single large memory block and common
file loading logic.
2016-11-15 16:55:02 -08:00
Kajari Ghosh
c30f43b148
added max_speed to the profiles ( #3089 )
2016-11-01 17:13:10 -04:00
Patrick Niklaus
f02b7b0910
[skip ci] Fix formating using format.sh
2016-10-28 14:45:05 -07:00
Huyen Chau Nguyen
cf35bbeb50
refactor function names; consolidate readCount() functions;
...
remove templated types as much as possible for type safety;
add more comments;
clean up code, add const if possible;
2016-10-26 13:18:52 -07:00
Huyen Chau Nguyen
69a60686dc
refactor loading code of .datasource_indexes and .datasource_names files and move to io.hpp
2016-10-26 13:18:52 -07:00
Huyen Chau Nguyen
7b97e1035f
refactor loading code of .nodes and .edges files and move to io.hpp
2016-10-26 13:18:52 -07:00
karenzshea
c4f010e363
read properties stream to size of properties object, not 1
2016-10-26 13:18:52 -07:00
karenzshea
51ebadfc45
deduplicate code for loading profile properties into io.hpp
2016-10-26 13:18:52 -07:00