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
Patrick Niklaus
58681fa7ea
Refactor StaticGraph generation
2017-03-21 16:23:10 +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
4986f5ea2d
Consolidate read/write code in updater for compressed geometries
2017-03-10 14:43:02 +00:00
Pepijn Schoen
c7fc36a61b
Normalize file writes
2017-03-09 14:16:41 +00:00
Michael Krasnyk
ec3cda32fa
moved basic type definitions to osrm namespace
2017-03-08 16:08:00 +00:00
Michael Krasnyk
6f9aea4e56
fix clang format style
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
Michael Krasnyk
5bb933dd84
allows msb computation only for unsigned types
2017-03-08 00:56:50 +00:00
Patrick Niklaus
a92fa257af
Fix off-by-one in fallback MSB function
2017-03-08 00:56:50 +00:00
Patrick Niklaus
6cb401b1ff
Run clang-format
2017-03-08 00:56:50 +00:00
Patrick Niklaus
8f9e980945
Add class to translate from bisection ids to cell ids
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
3f485ac09b
Addressed PR comments by @daniel-j-h and @oxidase
2017-03-03 16:02:12 +00:00
Michael Krasnyk
f5e9c7df07
adjust extractor scc to new StaticGraph
2017-03-01 16:09:29 +00:00
Michael Krasnyk
1541d32a42
adjust cell_storage tests to new StaticGraph interface
2017-03-01 16:09:29 +00:00
Moritz Kobitzsch
d473acb56d
fix edge duration truncation in partition, pending global fix
...
fix windows compilation
no multi line warnings
sanitze on mason with newer TBB
2017-03-01 16:09:29 +00:00
Daniel J. Hofmann
3e409bea26
Loads the edge based graph edges and constructs a dynamic graph from it
2017-03-01 16:09:29 +00:00
Moritz Kobitzsch
be41e8b321
generate stats in annotation
2017-03-01 16:09:29 +00:00
Daniel Patterson
b62b09e5f6
Dump memory usage stats after partitioning.
2017-03-01 16:09:29 +00:00
Moritz Kobitzsch
b789da45bd
add unit tests for the different components of the parttion tool
2017-03-01 16:09:29 +00:00
Daniel J. Hofmann
e316dad1cb
No longer requires edges to have a .data member in static graph
...
some fixes to make branch compilable
Removes unneeded edge data from components search
2017-03-01 16:09:29 +00:00
Moritz Kobitzsch
786be6f570
Optimise Flow Algorithm/Datastructures in use
2017-03-01 16:09:29 +00:00
Daniel J. H
dd3f351874
Partitioner Improvements and Utils on top of #3603 ( #3611 )
...
* Implements Random Access Iterator Facade for EdgeIDIterator
* Makes StaticGraph Node and Edge requirements explicit
* Cleans up Bisection Graph, Node and Edge
* Cleans up GraphView
2017-03-01 16:09:29 +00:00
Moritz Kobitzsch
d56db500d3
Initial Skeleton for Recursive Bisection via Inertial Flow
2017-03-01 16:09:29 +00:00
Moritz Kobitzsch
6c3390f14d
refactor of post-processing
...
- moves collapse into a dedicated set of functions / files
- make collapse scenarios distinct (slight performance cost)
- reduce verbosity for short name segments (now actually working, was supposed to do so before)
2017-02-25 12:17:22 +00:00
Patrick Niklaus
438aa66b4c
Add packed storage of partition information
...
Right now we need a 64bit integer for every node in the graph.
Depending on the number of cells we will see, we might get away with
32bit eventually.
2017-02-24 15:58:47 +00:00
Patrick Niklaus
e06ffabf21
Add storage for cell weights used in the MLD algorithm
2017-02-20 16:31:36 +00:00
karenzshea
c2727f2029
expose data about turning onto restricted roads to turn function
2017-02-20 12:40:51 +00:00
Kajari Ghosh
2218658969
Trip with Fixed Start and End points (TFSE) ( #3408 )
...
* fixed start and end trip feature to trip service
2017-02-10 05:13:20 -05:00
Patrick Niklaus
bf690df97a
Merge branch 'minor_fixes' of https://github.com/seemoritz/osrm-backend into seemoritz-minor_fixes
2017-02-07 12:48:29 +00:00
Michael Krasnyk
6e1c4bfecd
Added indexed array data type with variable and fixed group blocks
2017-02-07 07:41:12 +00:00
Pepijn Schoen
9d2628b74f
Don't use bool return values on successful write, instead rely on exception throwing
2017-02-02 10:31:32 +01:00
Michael Krasnyk
c22ce3ae1f
Use shared memory region mapping at fixed address for OSX
2017-01-31 13:25:59 +01:00
Michael Krasnyk
25baf51a2c
Add duration to edges and use it in table plugin
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
Michael Krasnyk
337ecefa45
Added osrm-extract-conditionals tool
2017-01-24 10:31:59 +01:00
Michael Krasnyk
7961fa8863
Added conditional restrictions grammar
2017-01-24 10:31:59 +01:00
Michael Krasnyk
88eb9e5499
Added opening_hours grammar
2017-01-24 10:31:59 +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
Michael Krasnyk
e8167b2e4e
Use round for float to fixed coordinate transformations
2017-01-20 12:31:45 +01:00
Michael Krasnyk
c03b230e84
Refactor ShMemIterator, resolves #3458
2017-01-19 15:30:18 +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
104e23abf3
Restore --max-wait and file_lock for osrm-datastore
2017-01-14 01:14:29 +01:00
Moritz Seemann
f12fdeb23e
some comments for dynamic_graph.hpp
2017-01-13 11:12:02 +01:00
Moritz Seemann
f896aaf881
fix for DeallocatingVector::back
...
This method actually returned a reference to the one-past-the-last
element instead of the last element.
2017-01-13 11:12:02 +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
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
Daniel J. Hofmann
559c88b36d
Adds runtime alignment assertions, see #3267
2017-01-05 16:27:53 +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
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
Moritz Kobitzsch
dff7fe214b
don't assign exit
in arrive when ending in roundabout
2016-12-21 17:48:23 +01:00
Michael Krasnyk
84b618ed1a
Add headers consistency check
2016-12-15 10:58:17 +01:00
Daniel J. Hofmann
6e7fe5feb0
Clean plate: luabind ripped out and sol2 basic integration
2016-12-15 10:55:16 +01:00
Daniel Patterson
3dfbf42e61
Don't mark all lanes as designated when there are blank lane specifiers in the tag.
2016-12-15 10:55:16 +01:00
Daniel Patterson
f88f51fd98
Log some memory usage statistics after preprocessing tasks.
2016-12-13 21:59:12 +01:00
Huyen Chau Nguyen
62f0e11bfa
assert that there is an open logger file when trying to log geojson output ( #3417 )
2016-12-09 14:58:20 +01:00
Moritz Kobitzsch
df3c39cef5
clean-up guidance code/code in general
...
removes duplicated includes
removes unused includes
eliminates dedicated toolkits that resulted in circular dependencies
moves functionality close to data, where possible
2016-12-07 12:10:56 +01:00
Daniel Patterson
468d8c0031
Refactor logging, improve error handling workflow, clang-format. ( #3385 )
2016-12-06 12:30:46 -08:00
Pepijn Schoen
6f4c6e84ae
Handle file output through a FileWriter, align interfaces for FileWriter and FileReader
2016-12-06 15:59:12 +01:00
Daniel J. Hofmann
949d505783
Removes access_restricted flag internally
2016-12-05 14:15:47 +01:00
Daniel Patterson
928a6f0c7d
Variant got re-packaged, need to update search paths. ( #3392 )
2016-12-01 16:59:29 -08:00
Moritz Kobitzsch
561b7cc58e
Rember Intersection Shapes
...
Changes the processing order in the edge based graph factory.
Instead of iterating over all outgoing edges in order, we compute the edge
expanded graph in the order of intersections.
This allows to remember intersection shapes and re-use them for all possible ingoing edges.
Also: use low accuracry mode for intersections degree 2 intersections
We can use lower accuracy here, since the `bearing`
after the turn is not as relevant for off-route detection.
Getting lost is near impossible here.
2016-12-01 15:24:20 +01:00
Daniel Patterson
5a311012af
Consolidate file reading through the new FileReader class/interface. ( #3321 )
2016-11-30 19:08:01 -08:00
Moritz Kobitzsch
12d58ace10
add support for junction=circular, allowing named circular junctions to be treated as rotaries
2016-11-29 13:44:32 +01:00
Michael Krasnyk
e343f71541
Refactor Hilbert values computation
2016-11-28 14:17:12 +01:00
Kajari Ghosh
fc52dd85fe
refactor graph_loader ( #3333 )
...
Refactors the GraphLoader class to use the safer FileReader wrapper for better error handling.
2016-11-21 17:32:00 -08:00
Daniel J. Hofmann
1b4779a58c
Avoids Shuffling Data Around for Nothing, closes 3306
2016-11-17 12:51:18 +01:00
Daniel J. H
73e365d398
Conditionally checks std::is_trivially_copyable only if available. ( #3327 )
2016-11-16 12:07:45 -08:00
Michael Krasnyk
d5bf508046
Fix alignments in shared facade via alignof/std::align
2016-11-16 18:20:19 +01:00
Daniel Patterson
eb12c16fd6
Output newlines for each progress indicator when not on a tty.
2016-11-15 18:14:05 -08:00
Daniel Patterson
53ef2e2955
Use an enum type for the 'should read fingerprint' flag, rather than a mysterious boolean
...
Fix tests.
2016-11-15 16:55:02 -08:00
Daniel Patterson
7b1131b982
Consolidate vector deserialization.
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
4ad6d88888
Refactor file loading to use a common class that has proper error handling.
2016-11-15 16:55:02 -08:00
Daniel Patterson
e226b52f21
const-ify things, use RAII for file closure, and start to use io:: to read some stuff.
2016-11-15 16:55:02 -08:00
Daniel J. Hofmann
8f6dd805e5
Fixes ODR Violation in Graph Loader, closes #3308
2016-11-15 12:04:13 +01:00
Daniel J. Hofmann
7e4020c010
Allocates memory for the node info list upfront.
...
Turns out we were not doing this. Huh.
Callstack:
- 78583d2c8c/include/util/graph_loader.hpp (L65-L68)
- 538bbd47d1/src/extractor/extractor.cpp (L423-L424)
- 78583d2c8c/src/extractor/extractor.cpp (L465-L466)
- 78583d2c8c/src/extractor/extractor.cpp (L254-L261)
2016-11-15 00:06:52 +01:00
Moritz Kobitzsch
78583d2c8c
fix getTurnDirection, widen straight
range, adjust tests accordingly
2016-11-14 11:09:14 +01:00
Moritz Kobitzsch
f88ac989ea
reserve when possible
2016-11-11 14:48:50 +01:00
Daniel Patterson
af7960a796
Fix buffering of query box - it was shrinking in the Y axis, rather than growing.
2016-11-08 11:45:28 -08:00
Daniel Patterson
4c6d6aeaa7
Fix retrieval of forward/reverse data.
2016-11-08 11:45:27 -08:00
Moritz Kobitzsch
9c11f4231c
add locations feature to allow testing turn locations, fix minor bug breaking the arrival location
2016-11-08 13:42:15 +01:00
Moritz Kobitzsch
837ab105ad
fix error in ordering arguments for requiresNameAnnounced versions
2016-11-08 12:14:23 +01:00
Daniel J. Hofmann
6ac9617d49
Adapt test to returning ref, Take Pronunciation into Account, Fixes name change heuristic usage in UTurn check
2016-11-08 12:14:23 +01:00
Moritz Kobitzsch
cd03877c90
link ConnectedRoad and TurnOperation via class hierarchy
...
and empower intersection by adding basic functionality to pod type
refactor extractor/toolkit into intersection
2016-11-03 13:42:29 +01:00
Moritz Kobitzsch
4ba8ccfcce
add a geojson debugger that allows creating features for easy inspection
2016-11-02 14:54:00 +01: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
fe94977c9b
refactor loading code of .ramIndex files and move to io.hpp
2016-10-26 13:18:52 -07:00
Patrick Niklaus
b8795c7341
Rename increasingly inaccuratly named distance member of QueryEdge to weight
2016-10-21 21:00:02 +02:00