Daniel Patterson
aef3ff3e7b
Use correct node-loading code in rtree benchmark. ( #4064 )
2017-05-18 13:29:50 -07:00
Michael Krasnyk
e605917083
Changed some assert to OSRM_ASSERT
2017-05-17 15:52:11 +00:00
Michael Krasnyk
e4b58c1258
Reverted connection of forward and backward nodes in one SCC
2017-05-17 15:21:51 +00:00
Michael Krasnyk
5e2e1d4c96
Renamed EdgeBasedNode to EdgeBasedNodeSegment
2017-05-17 15:21:51 +00:00
Michael Krasnyk
1a7cd785f2
Rename .nodes -> .nbg_nodes and .nodes_data -> .ebg_nodes
2017-05-17 15:21:51 +00:00
Michael Krasnyk
65de940882
Change EdgeBasedNodeDataExternalContainer to EdgeBasedNodeDataContainer
2017-05-17 15:21:51 +00:00
Michael Krasnyk
26702920b4
Move ComponentID to EdgeBasedNodeDataContainer
2017-05-17 15:21:51 +00:00
Michael Krasnyk
ca6b1b39b7
Remove data duplicates in .node file
2017-05-17 15:21:51 +00:00
Michael Krasnyk
8934167e76
Merge part of .nodes fields into .nodes_data
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
Daniel J. Hofmann
e064a9334b
Lifts restriction to only provide zero or one alternative routes
2017-05-12 13:54:22 +02:00
Daniel J. Hofmann
e12c7756d9
Weight-ifies alternatives related code-paths
2017-05-12 13:54:22 +02:00
Moritz Kobitzsch
f8002480c2
fix continue_straight interaction with bearing specification
2017-05-12 13:38:04 +02:00
Karen Shea
799a677e7a
Conditional turn restriction support ( #3841 )
...
* optionally include condition and via node coords in InputRestrictionContainer
* only write conditionals to disk, custom serialization for restrictions
* conditional turn lookup, reuse timezone validation from
extract-conditionals
* adapt updater to use coordinates/osm ids, remove internal to external map
* add utc time now parameter to contraction
* only compile timezone code where libshp is found, adapt test running
* slight refactor, more tests
* catch invalid via nodes in restriction parsing, set default cucumber
origin to guinée
* add another run to test mld routed paths
* cosmetic review changes
* Simplify Timezoner for windows build
* Split declaration and parsing parts for opening hours
* adjust conditional tests to run without shapefiles
* always include parse conditionals option
* Adjust travis timeout
* Added dummy TZ shapefile with test timezone polygons
* [skip ci] update changelog
2017-05-11 12:13:52 +02:00
Michael Krasnyk
12f47708cd
Adjust method and function names
2017-05-11 09:13:42 +00:00
Michael Krasnyk
9358aa1128
Disable nodes with invalid segments
2017-05-11 09:13:42 +00:00
Mateusz Łoskot
e2b7e8a4da
Refactor osrm-extract and osrm-contract to use osrm lib interface
...
Simplifies implementation of the tools slightly.
Ensures osrm::extract and osrm::contract keep working.
Follows up PR #3787
2017-05-10 21:35:42 +00:00
Patrick Niklaus
faa2094488
Fix docs for radius
2017-05-05 08:51:36 +00:00
Patrick Niklaus
e6d776699f
Fix overloaded parameter docs
2017-05-05 08:51:36 +00:00
Michael Krasnyk
88082c48cf
Remove GetEdgeBasedNodeID from TurnDataContainer
2017-05-03 21:59:38 +00:00
Michael Krasnyk
40d0297885
Added unpacked_nodes vector to annotatePath interface
2017-05-03 21:59:38 +00:00
Michael Krasnyk
be1acae20c
Use edge_id as index in ebg_node_data_container
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
Michael Krasnyk
1f701341db
Move reserve call before pushing weights
2017-05-03 21:59:38 +00:00
Patrick Niklaus
f531a956f5
Update nodejs docs to document the constructor better
2017-05-03 15:23:03 +00:00
Michael Krasnyk
2402d60429
Adjusted to PR comments
2017-05-02 16:55:03 +00:00
Michael Krasnyk
19494984eb
Fix incorrect exit turn invalidation
2017-05-02 16:55:03 +00:00
Michael Krasnyk
07c7cb3c6c
Rename BinaryHeap to QueryHeap
2017-05-02 15:54:25 +00:00
Daniel J. Hofmann
9334cc463d
Fixes Table not checking for valid phantom nodes
...
We failed to check if we could actually find phantom nodes for all
coordinates in the table plugin, leading to corrupt internal state.
```
curl 'http://localhost:5000/table/v1/car/7.4151,43.7305;7.4222,43.7368?radiuses=0 ;'
```
```
[assert][140505627227904] /tmp/osrm-backend/include/engine/routing_algorithms/routing_base.hpp:68
in: void osrm::engine::routing_algorithms::insertNodesInHeap(osrm::engine::SearchEngineData<osrm::engine::routing_algorithms::ch::Algorithm>::ManyToManyQueryHeap&, const osrm::engine::PhantomNode&) [with bool DIRECTION = false; osrm::engine::SearchEngineData<osrm::engine::routing_algorithms::ch::Algorithm>::ManyToManyQueryHeap = osrm::util::BinaryHeap<unsigned int, unsigned int, int, osrm::engine::ManyToManyHeapData, osrm::util::UnorderedMapStorage<unsigned int, int> >]: phantom_node.IsValid()
terminate called without an active exception
```
2017-05-02 13:41:33 +02:00
Patrick Niklaus
0e39aa9488
Address PR comments
2017-04-24 16:04:41 +00:00
Patrick Niklaus
8ec0745883
Add benchmark
2017-04-24 16:04:41 +00:00
Patrick Niklaus
c446b017ef
Switch from macro based StrongTypedef to template version
2017-04-24 16:04:41 +00:00
Patrick Niklaus
a68435d856
Move clip functions to lambda
2017-04-20 14:58:26 +00:00
Patrick Niklaus
11d8b2ba5a
Add clipping for 20 bits to SegmentWeight/SegmentDuration
2017-04-20 14:58:26 +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
Pepijn Schoen
e85c4f87e9
Skip fingerprinting .turn_penalties_index, to be done in a separate iteration because of Appveyor issues.
2017-04-18 12:01:06 +00:00
Pepijn Schoen
8ff5a22799
clang-format
2017-04-18 12:01:06 +00:00
Pepijn Schoen
4929d1297e
Address PR comments
2017-04-18 12:01:06 +00:00
Pepijn Schoen
b830a8f942
Replace Count32 with Count64
2017-04-18 12:01:06 +00:00
Pepijn Schoen
0c388a5264
Fingerprint .turn_penalties_index
2017-04-18 12:01:06 +00:00
Pepijn Schoen
e4eb18cf4e
Fingerprint .properties
2017-04-18 12:01:06 +00:00
Pepijn Schoen
5b4f432cba
Fingerprint .tld
2017-04-18 12:01:06 +00:00
Pepijn Schoen
15f7257645
Fingerprint .turn_duration_penalties and .turn_weight_penalties
2017-04-18 12:01:06 +00:00
Pepijn Schoen
12c11f1d48
Fingerprint .names
2017-04-18 12:01:06 +00:00
Pepijn Schoen
a196d5ced3
Fingerprint .timestamp, normalize use of Size / GetSize and make that function Fingerprint-aware
2017-04-18 12:01:06 +00:00
Pepijn Schoen
802af08179
Fingerprint .core
2017-04-18 12:01:06 +00:00
Pepijn Schoen
85ec50552d
fingerprint .ramIndex / tree nodes
2017-04-18 12:01:06 +00:00
Pepijn Schoen
8da96f8d94
fingerprint .tld
2017-04-18 12:01:06 +00:00
Pepijn Schoen
5b9d858f57
Fingerprint .edges
2017-04-18 12:01:06 +00:00
Pepijn Schoen
023242ec03
Fingerprint geometries
2017-04-18 12:01:06 +00:00
Pepijn Schoen
df0ee955e8
Fingerprint and move .levels
2017-04-18 12:01:06 +00:00
Michael Krasnyk
dea3144c4d
Use total angle for turn instruction if entry step has large distance
2017-04-12 23:22:44 +00:00
Michael Krasnyk
59b70c4d11
Make CoreCH SearchEngineData inherited from CH one
...
this allows to keep a single Algorithm template parameter in internal
interfaces as
template <typename Algorithm>
search(SearchEngineData<Algorithm> &,
const datafacade::ContiguousInternalMemoryDataFacade<Algorithm> &, ...)
2017-04-12 10:54:09 +00:00
Michael Krasnyk
f96bae40ac
Remove unused {forward,reverse}_heap_2 in MLD engine data
2017-04-12 10:54:09 +00:00
Michael Krasnyk
ba974c73bf
Remove CoreCH heaps
2017-04-12 10:54:09 +00:00
Michael Krasnyk
e498ad3ee7
Make explicit fallback to CH heaps in CoreCH algorithms
2017-04-12 10:54:09 +00:00
Michael Krasnyk
1de031ed06
Remove {forward,reverse}_core_heap arguments from search interface
2017-04-12 10:54:09 +00:00
Michael Krasnyk
6698b5e07e
Use fallbacks counter to print a single warning message
2017-04-11 14:55:56 +00:00
Michael Krasnyk
37794a5e8a
Change traffic CSV field value from weight to rate
...
and make the value required.
If the weight name is 'duration' than the rate value
can be computed as speed / 3.6
Issue: https://github.com/Project-OSRM/osrm-backend/issues/3823
2017-04-11 14:55:56 +00:00
Patrick Niklaus
a88fef2937
Implement distance pruning for MLD as well
2017-04-10 17:25:55 +00:00
Patrick Niklaus
59bbfeb67f
Buffer turn data on disk to save memory
2017-04-10 17:25:02 +00:00
Patrick Niklaus
4e9e2ed5bd
Emit a notification when turning on a ferry and don't merge step
2017-04-07 15:29:53 +00:00
Patrick Niklaus
fe50f6590a
Fix formating
2017-04-06 15:42:38 +00:00
Patrick Niklaus
2da5da3f16
Don't leak ownership in partition/files
2017-04-06 15:42:38 +00:00
Patrick Niklaus
446c865415
Dont leak ownership in extractor::files
2017-04-06 15:42:38 +00:00
Patrick Niklaus
4ec7ca29f1
Fix formating
2017-04-06 15:42:38 +00:00
Patrick Niklaus
d94017dfae
No shared_memory_wrapper, (De)SerializeVector
2017-04-06 15:42:38 +00:00
Patrick Niklaus
d61102e255
Fix compilation of rtree benchmark
2017-04-06 15:42:38 +00:00
Patrick Niklaus
7f6e0c478b
Split QueryNode into coordinates and osm id
2017-04-06 15:42:38 +00:00
Patrick Niklaus
786a3d8919
Read multi level graph to view
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
90c194fc81
Refactor turn description into own file
2017-04-06 15:42:38 +00:00
Patrick Niklaus
4e3009260c
Load data directly into CellStorageView
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
99a87b4c83
Change serialisation of .geometries file.
2017-04-06 15:42:38 +00:00
Patrick Niklaus
3f5fc1e897
Read segment data directly into shm
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
Patrick Niklaus
865111bca9
Split partition serialization logic
2017-04-06 15:42:38 +00:00
Patrick Niklaus
08d62cd5e3
Separate serialization and files in extractor
2017-04-06 15:42:38 +00:00
Daniel J. Hofmann
603e2ee7de
Adapts bindings to node-cmake v2, resolves #3879
2017-04-06 15:26:54 +02:00
Michael Krasnyk
1aa8cc3b65
make getPathDistance algorithm-independent
2017-04-06 11:17:23 +00:00
Michael Krasnyk
c487d1307e
enable map matching in MLD
2017-04-06 11:17:23 +00:00
Michael Krasnyk
7726576bb7
use ADL and explicit instantiation for map matching
2017-04-06 11:17:23 +00:00
Michael Krasnyk
f660ae30dc
use explicit instantiation of shortestPathSearch
2017-04-06 10:36:40 +02:00
Michael Krasnyk
2766c24b42
prefer smaller legs for equal weights in shortest path plugin
2017-04-06 10:36:40 +02:00
Michael Krasnyk
48a098a9c7
implement MLD shortest path plugin
2017-04-06 10:36:40 +02:00
Michael Krasnyk
905ca69301
add Algorithm parameter to SearchEngineData
2017-04-06 10:36:40 +02:00
Michael Krasnyk
d66cc125aa
make first heaps algorithm-aware
2017-04-06 10:36:40 +02: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
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
Daniel J. Hofmann
70b3962c35
NodeJS Binding Tests
...
Does not run the nodejs tests in sanitized builds. We'd have to
export LD_PRELOAD='/usr/lib/x86_64-linux-gnu/libasan.so.2'
the asan lib. But it seems like our Clang from mason does not like the
system's libasan. Also we'd need a suppression file for v8 and node.
2017-04-04 16:57:44 +00:00
Patrick Niklaus
614398ed6c
Integrate MLD in node bindings
2017-03-30 20:12:07 +00:00