Commit Graph

5229 Commits

Author SHA1 Message Date
Daniel J. Hofmann
e050f15cf8 Provide correct Base64 implementation.
Phew, this was painful. Turns out most hints out there on how to use the
Boost serialization iterators are wrong. Here's why:

    transform_width<6, 8>

needs an input stream of length: common multiple of 6 and 8.

That is, the padding needs to happen _before_ using the provided
iterators, otherwise the behavior is undefined!

See: http://www.boost.org/doc/libs/1_60_0/boost/archive/iterators/transform_width.hpp

Thanks @mokob for pointing that out to me!

We also need to manually add as many padding chars "=" to the encoded
result as many bytes we had to append to the input to conform to the
rule above.

Decoding then knows the number of padding chars by counting for "=" and
then using it in order to split off the last bytes from the decoded
result.
2016-03-31 18:58:52 +02:00
Daniel J. Hofmann
0acf7f7400 Adds round trip tests for RFC 4648 Test Vectors and equality checks 2016-03-31 18:58:52 +02:00
Daniel J. Hofmann
9abfb7ea3b Makes hint Equatable and Printable for tests 2016-03-31 18:58:52 +02:00
Daniel J. Hofmann
8a4551500d Make Hint encoding safe for passing them as GET parameter in URLs
Thanks @TheMarex for flagging this!
2016-03-31 18:58:52 +02:00
Daniel J. Hofmann
d0c534e5fa Completely re-write base64 logic, make API suck less in doing so 2016-03-31 18:58:52 +02:00
Daniel J. Hofmann
822bb97a5f RFC 4648 Test Vectors 2016-03-31 18:58:52 +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
a145520b5b Adapts Hint encoding and decoding to new fixed data facade 2016-03-31 18:58:52 +02:00
Daniel J. Hofmann
3d75d15361 Formats parameter parser unit tests 2016-03-31 18:58:52 +02:00
Patrick Niklaus
8dd3fe3173 Fix hint size 2016-03-31 18:58:52 +02:00
Patrick Niklaus
0bb1b04170 Always safe the absolute path to .fileIndex 2016-03-31 18:58:52 +02:00
Patrick Niklaus
11629e0538 Install storage_config.hpp 2016-03-31 18:58:52 +02:00
Aleksei Potov
6462ea14a2 compilation error on debian jessie with boost 1.54 2016-03-31 18:58:52 +02:00
Daniel Patterson
993c4796c1 Fix boost geometry constructor.
Versions older than 1.58 don't support the initializer-list form.
2016-03-31 18:58:52 +02:00
Moritz Kobitzsch
b11d3ad1ba syncronize geometry and steps after post-processing 2016-03-31 18:58:52 +02:00
Moritz Kobitzsch
9681d662cb added list of intersections to the step-maneuver, not in api so far 2016-03-31 18:58:52 +02:00
Moritz Kobitzsch
6a5ffc126a fix initial maneuvers 2016-03-31 18:58:52 +02:00
Moritz Kobitzsch
7bf2cb1917 post processing moved onto route-steps, looses sync with geometry segments 2016-03-31 18:58:52 +02:00
Patrick Niklaus
2b0a1bbb63 Simplify the timestamp handling 2016-03-31 18:58:52 +02:00
Patrick Niklaus
31297d1c9f Check all streams 2016-03-31 18:58:52 +02:00
Patrick Niklaus
4e854399b6 std::string -> boost::filesystem::path 2016-03-31 18:58:52 +02:00
Patrick Niklaus
17adeaf3e2 Only allow to specify the common base path 2016-03-31 18:58:52 +02:00
Patrick Niklaus
cf92e52b86 print -> io.write 2016-03-31 18:58:52 +02:00
Patrick Niklaus
250acf6a2a Address PR comments
Renamed lua_function_exists and removes unused print function
2016-03-31 18:58:52 +02:00
Patrick Niklaus
49c852917f Use uturn default from .properties file 2016-03-31 18:58:52 +02:00
Patrick Niklaus
3467696f8a Adds .properties file to osrm-extract ouput
This file contains global properties set by the lua
profile, such as enabling uturns at vias and penalties.
This file will be consumed by the server.
2016-03-31 18:58:52 +02:00
Patrick Niklaus
a6a4fb0d49 Use global uturns parameter.
Instead of previously per-via settings like uturns=true;false;true;; it
now only supports a global setting uturns=true.
2016-03-31 18:58:52 +02:00
Moritz Kobitzsch
d3888942e8 improves consistency of fork handling 2016-03-31 18:58:52 +02:00
Patrick Niklaus
1f853385d5 Make gcc 4.8 happy and disable protected because of lambdas 2016-03-31 18:58:52 +02:00
Daniel Patterson
08e56956d6 Properly clip lines so that we don't get crazy coords with long linestrings (relative to tile coords) 2016-03-31 18:58:52 +02:00
Daniel Patterson
fc027417d8 Include edge duration information. 2016-03-31 18:58:52 +02:00
Patrick Niklaus
f07da00dfe Implement viewport code to fix simplification
This fixes #2083
2016-03-31 18:58:52 +02:00
Patrick Niklaus
5bd874aab6 Add tests for coordinate transformation 2016-03-31 18:58:52 +02:00
Patrick Niklaus
6904851eb6 Consolidate math functions 2016-03-31 18:58:52 +02:00
Patrick Niklaus
6d70e1d47d get_name_for_id -> GetNameForID 2016-03-31 18:58:52 +02:00
Patrick Niklaus
7a55b46848 Simplfy name change announcement 2016-03-31 18:58:52 +02:00
Moritz Kobitzsch
989b374d86 fix division by zero 2016-03-31 18:58:52 +02:00
Moritz Kobitzsch
9034d0c521 restructured to only return valid turns to the outside + cleanup 2016-03-31 18:58:52 +02:00
Moritz Kobitzsch
064eb8bca7 less new names, forks consider road classes, api clean-up 2016-03-31 18:58:52 +02:00
Moritz Kobitzsch
b63f3cc247 implement basic turn handling 2016-03-31 18:58:52 +02:00
Moritz Kobitzsch
4f1503c4a1 implements relative position feature based on coordinates 2016-03-31 18:58:52 +02:00
Patrick Niklaus
64ace032f6 Don't sum up durations of merged steps since we do that in a different place now 2016-03-31 18:58:52 +02:00
Patrick Niklaus
2d4fc9a0b7 Fix foward/backwad swap 2016-03-31 18:58:52 +02:00
Patrick Niklaus
0c4cb9fb1b Limit zoomlevel to 18 2016-03-31 18:58:52 +02:00
Patrick Niklaus
d2bd2c7ec6 Fix shared memory 2016-03-31 18:58:52 +02:00
Patrick Niklaus
10f8bf53b4 Fixup for last commit 2016-03-31 18:58:52 +02:00
Daniel Patterson
3058135f55 Enables the use of multiple segment-speed-files on the osrm-contract
command line, and exposes the file name used for each edge in the debug
tiles.
2016-03-31 18:58:52 +02:00
Patrick Niklaus
ba00871793 Fix ingestion fixed duration values from UnpackPath 2016-03-31 18:58:52 +02:00
Patrick Niklaus
bd66ba9eee Fix durations in UnpackPath 2016-03-31 18:58:52 +02:00
Moritz Kobitzsch
dacd3b4833 fixes a broken assertion 2016-03-31 18:58:52 +02:00