Commit Graph

65 Commits

Author SHA1 Message Date
Patrick Niklaus d1b9c09c23 Remove leftover hello_world and timestamp plugins 2016-03-31 21:35:48 +02:00
Daniel J. Hofmann 6cd3b8bc00 Object Encoder -> Base64, kill false dependencies while doing so 2016-03-31 18:58:52 +02:00
Daniel J. Hofmann ea81866e28 Runs scripts/format.sh 2016-03-31 18:58:52 +02:00
Moritz Kobitzsch 8322a7ccaf bugfixing/classification 2016-03-31 18:58:52 +02:00
Patrick Niklaus 8c71239e48 Big Restructuring / Cleanup 2016-03-31 18:58:52 +02:00
Moritz Kobitzsch 3cdd282e0f enter and exit roundabout feature - currently not showing turn 2016-03-31 18:58:52 +02:00
Patrick Niklaus 666d363c93 Preliminary integration of the tile plugin 2016-03-31 18:58:52 +02:00
Patrick Niklaus 17382b2a28 Fix if the last coordinate is not found 2016-03-31 18:58:52 +02:00
Patrick Niklaus 60d83ccf53 First round of lat,lng -> lng,lat switcheroo 2016-03-31 18:58:52 +02:00
Patrick Niklaus 776add7ea2 Fix out-of-bounds write in map_matching 2016-03-31 18:58:52 +02:00
Patrick Niklaus db170d006a Finish the nearest plugin 2016-03-31 18:58:52 +02:00
Patrick Niklaus 1b1211092b Add trip plugin 2016-03-31 18:58:52 +02:00
Patrick Niklaus 28961ed593 First compiling version of map_match plugin 2016-03-31 18:58:52 +02:00
Daniel J. Hofmann d989714007 Adapts Nearest plugin to new API 2016-03-31 18:58:52 +02:00
Daniel J. Hofmann ec79d1e933 Adapts publicly facing new API 2016-03-31 18:58:52 +02:00
Patrick Niklaus 7d51a76e79 Initial non-building match plugin 2016-03-31 18:58:52 +02:00
Patrick Niklaus 9e5a300cbb Fix table plugin 2016-03-31 18:58:52 +02:00
Daniel J. Hofmann bf9824502a First take at distance table API re-write 2016-03-31 18:58:52 +02:00
Patrick Niklaus 66d241a2d8 Add viaroute suport for new API 2016-03-31 18:58:52 +02:00
Daniel J. Hofmann 655dd2277c Eliminate extra semicola 2016-03-15 11:47:57 +01:00
Patrick Niklaus 8912928581 Disable alternatives by defaul fixes #2072 2016-03-10 21:01:30 +01:00
Daniel Patterson 49441fe204 Make forward/reverse weight/offset calculated at query time,
rather than being cached in the StaticRTree.  This means we
can freely apply traffic data and not have stale values lying
around.  It reduces the size of the RTree on disk, at the expense
of some additional data in RAM.
2016-03-03 10:49:12 -08:00
Daniel J. Hofmann e90b1bbead Allow no sources and no destinations for full table query 2016-03-03 02:00:39 +01:00
Daniel J. Hofmann ce1ca1b625 Fixes critical error in table plugin accessing uninitialized memory
Although we check for valid coordinates in the table plugin via
`check_all_coordinates`, we do not check for #srcs > 0 and #dsts > 0.

This would be fine as the grammar parser combines adding coordinates and
setting their `is_source` and `is_destination` property, which makes
adding coordinates without specifying source or destination impossible.

See: route_parameters.cpp, AddSource, AddDestination, and api_grammar.hpp

In contract, the Polyline codepath does not do this! In fact, it only lets
you set coordinates, but not their `is_source` or `is_destination` property.

See: route_parameters.cpp, SetCoordinatesFromGeometry

Therefore, the following queries only set coordinates:

    http 'http://localhost:5000/table?locs=s_hhFg{arEgEfEgEfEgEfEgEfEgEfEgEfEgEfEgEfEgEfE'
    http 'http://localhost:5000/table?locs=_p~iF~ps|U_ulLnnqC_mqNvxq`@'

but fail to specify sources and targets!

The distance table plugin now assumes `is_course` and `is_destination`
is the same size as `coordinates`.

And happily accesses uninitialized memory.
2016-03-03 02:00:39 +01:00
David Low 79e8d1aac3 Minor typo fix 2016-03-02 15:16:28 +08:00
Daniel J. Hofmann 2ce553d661 Math functions are not constexpr since they have side-effects (setting errno) :( 2016-03-01 23:51:26 +01:00
Daniel J. Hofmann 2efef91f1c Fixes const correctnes and explicit types in tile header 2016-03-01 23:51:26 +01:00
Daniel J. Hofmann 3feba9a581 Fixes Undefined Behavior in tile header from ODR-violation 2016-03-01 23:51:26 +01:00
Daniel J. Hofmann afae896d05 Makes compile time constants properly ROM-able and deduplicates them across TUs 2016-03-01 23:51:26 +01:00
Daniel J. Hofmann bcbaa21739 Fixes tile header includes 2016-03-01 23:51:25 +01:00
Daniel J. Hofmann aeee565115 Formats all the files we touch.. 2016-03-01 23:51:25 +01:00
Daniel Patterson 8126793b18 Don't need to actually create a vector, we just write out all speeds from 0-127 2016-03-01 23:51:25 +01:00
Daniel Patterson 6a2592421c Optimize encoding of speed values. Only store 0-127, so we can efficiently pack into a byte. Speed and is_tiny values are now shared, so tiles should be much smaller. 2016-03-01 23:51:25 +01:00
Daniel Patterson 95bf81f528 Add a bunch of comments. 2016-03-01 23:51:25 +01:00
Daniel Patterson ae802a8a83 No need to send a back to the client, km/h are specific enough. 2016-03-01 23:51:25 +01:00
Daniel Patterson ee71d2fe5f Don't need to static cast. 2016-03-01 23:51:25 +01:00
Daniel Patterson 8dd2447cc5 Don't round until necessary, this keeps coordinates in much better positions. 2016-03-01 23:51:25 +01:00
Daniel Patterson 26453af1b9 Add a distinct Buffer type for encoding binary data in JSON responses. Treated like a string, but allows other consumers (a-la node-osrm) to recognize and not break string encodings. 2016-03-01 23:51:25 +01:00
Daniel Patterson 5dc7b79bb6 Implements a vector tileserver so you can see what's going on inside
OSRM.
2016-03-01 23:51:25 +01:00
Mortada Mehyar aae02cd1be fixed minor typos 2016-02-18 23:05:11 -05:00
Moritz Kobitzsch f14352f494 modify turn angles and instructions 2016-02-15 20:13:55 +01:00
Daniel J. Hofmann 4b8c0ac143 Revert "Folds json_* utilities into json subfolder and adapts includes"
This reverts commit cd039c69c0a92a35889e3c875b8eb53cf07377bb.
2016-02-12 15:46:24 -08:00
Daniel J. Hofmann aac21f932b Refactors Base64 encoding and decoding, it's almost beautiful now 2016-02-12 15:46:24 -08:00
Daniel J. Hofmann ec01c2a119 Folds json_* utilities into json subfolder and adapts includes 2016-02-12 15:46:24 -08:00
Patrick Niklaus efee07e20b Move arrays don't copy 2016-01-29 15:58:48 +01:00
Daniel J. Hofmann d391df52ba Be kind to the optimizer, pass coordinates by value (just two ints) 2016-01-26 22:57:02 +01:00
Daniel J. Hofmann 46fc6f8da4 Collapse computeAngle into coordinate calculation 2016-01-26 22:57:02 +01:00
Mortada Mehyar 17c3c1d66a improve comments for gps_precision 2016-01-25 15:17:44 -08:00
Patrick Niklaus 439eb9da3d Create public facing libraries for extractor, contractor and datastore
New libraries libosrm_extract, libosrm_contract, libosrm_store
2016-01-21 06:47:34 +01:00
Patrick Niklaus 9d12de9bce Fix wrong assertion and emplace_back bug in trip plugin 2016-01-19 17:36:29 +01:00