Daniel J. Hofmann
d60bc61d13
Properly constructs objects of type const RectangleInt2D in facades
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
56e35e8ef2
Remove GeoJSON based debugging output, we can now generate vector tiles with roughly the same data on-the-fly.
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
Patrick Niklaus
a0b4fcc05a
Remove last bits of GPX support code
2016-03-01 23:44:07 +01:00
Daniel J. Hofmann
96a5e594b3
Removes profiles from osrm-prepare, only needed in osrm-extract. Fixes #1950 .
2016-03-01 16:43:34 +01:00
Daniel J. Hofmann
04765d82ba
Fixes undefined behavior via One-Definition-Rule violations
...
Heuristic
find . -type f -name '*.hpp' |xargs ag -B 1 '^([^inline][a-zA-Z0-9_&\*::])+ (.*)\((.*)\)$'
2016-02-26 06:39:52 +01:00
Patrick Niklaus
69bc8a8b22
Fix unpacking for self-loop nodes not in core. Fixes #1999
2016-02-21 01:38:06 +01:00
Mortada Mehyar
aae02cd1be
fixed minor typos
2016-02-18 23:05:11 -05:00
Daniel J. Hofmann
47d56676f1
Don't bounds check by default in static rtree; fixes #1988
2016-02-17 18:20:27 -08:00
karenzshea
b80e96547e
remove ini parsing
2016-02-16 18:43:06 +01:00
Moritz Kobitzsch
2679c1cf0a
correct handling of travel modes
2016-02-16 01:35:04 +01:00
Daniel Patterson
65183e94c6
Use \n instead of std::endl to avoid unnecessary flushing. Cleanup some newlines to avoid blank lines in debug output.
2016-02-15 14:21:18 -08:00
Daniel Patterson
6b0fe683c9
Expose the base type. Going via the operator<< leaves us with invalid geojson.
2016-02-15 13:25:55 -08:00
Moritz Kobitzsch
f14352f494
modify turn angles and instructions
2016-02-15 20:13:55 +01:00
Moritz Kobitzsch
ab9426e260
fix routing when requiring loop at a core node
2016-02-15 18:26:39 +01:00
Daniel J. Hofmann
27fe85ac8b
Dividable-by-three instead of next-dividable-by-three
2016-02-12 18:10:44 -08:00
Daniel J. Hofmann
a6d406d2c3
Fix headers for JSON abstractions
2016-02-12 15:46:24 -08: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
c9f0158fdb
Ifdef is_trivially_copyable<T> behind gcc >= 5 guard
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
Daniel J. Hofmann
fbef77a942
Documents why not to use boost::irange in favor of our hand-written irange
2016-02-12 15:46:24 -08:00
Daniel J. Hofmann
f207d988f4
Removes floating point epsilon comparator
2016-02-12 15:46:24 -08:00
Daniel J. Hofmann
60fc486cea
Prefix exception header guard with osrm prefix
2016-02-12 15:46:24 -08:00
Daniel J. Hofmann
978b70c998
Adds a comment as to why the char to typed enum class transformation is not possible
2016-02-12 15:46:24 -08:00
Daniel J. Hofmann
ef171f3acd
Properly use typed math constants instead of impl. specific hacks
...
PI is not in the stdlib, neither is 1/pi, pi*2 and so on. Instead
of relying on implementations providing these, use properly typed
math constants.
Main benefits:
- portable and
- returns constexpr, for compile-time computation
References:
- http://www.boost.org/doc/libs/1_60_0/libs/math/doc/html/math_toolkit/constants_intro.html
- http://www.boost.org/doc/libs/1_60_0/libs/math/doc/html/math_toolkit/constants.html
2016-02-12 15:46:24 -08:00
Daniel J. Hofmann
64b36807d3
Transforms osrm_exception to exception
2016-02-12 15:46:24 -08:00
Daniel J. Hofmann
5de8f1803c
Folds mercator projections into coordinate_calculation
2016-02-12 15:46:24 -08:00
karenzshea
7398bed974
Include real coordinates in debug geojson mode
2016-02-11 17:09:20 -05:00
Daniel J. Hofmann
6cd55e535c
Removes potentially dangerous and misleading lat, lon subscript oeprator
2016-02-11 02:37:33 +01:00
Dane Springmeyer
2949a52a11
remove uneeded and deprecated usage of mapbox::util::static_visitor
2016-02-10 12:58:36 -08:00
Daniel J. Hofmann
b8d20dfe99
Prevent undefined behavior from left shifting into sign bit when offset is 31
2016-02-08 11:47:44 -08:00
Daniel J. Hofmann
fa8529949b
Make swap noexcept (as it has to be!) and fix swap misuses
2016-02-08 11:47:44 -08:00
Daniel J. Hofmann
7b37c847bd
Fixes shared memory wrapper includes
2016-02-08 11:47:02 -08:00
Daniel J. Hofmann
3075f6cea7
No need for deferred, non-blocking or timeout acquisition
2016-02-08 11:26:40 -08:00
Daniel J. Hofmann
ff966490bb
Fixes datafacade includes
2016-02-08 11:26:40 -08:00
Kerrick Staley
8804330d83
Add operator<< to OSRM_STRONG_TYPEDEF
...
Useful for debugging.
2016-02-01 12:32:30 -08:00
karenzshea
f5c12ec433
comments
2016-01-29 23:49:09 +01:00
karenzshea
262cdd7bc0
move tribool obj into request_parser
2016-01-29 23:49:09 +01:00
Patrick Niklaus
efee07e20b
Move arrays don't copy
2016-01-29 15:58:48 +01:00
Moritz Kobitzsch
603b83e1c3
Fixes Alternative Routing when including loops
2016-01-28 16:33:07 +01:00
Daniel J. Hofmann
a48f02e0da
Takes care of proper special member generation globally, fixes #1689
...
Phew, a lot of classes were affected by this. The rationale for the
changes are as follows:
- When a type X declares any constructor, the default constructor is
not declared, so there is no need for X() = delete there. In fact,
there is brutal difference between those two: deleted members
participate in overload resolution, but not-declared members do not!
- When a type X wants to be non-copyable (e.g. to be only movable, like
threads, unique_ptrs, and so on), you can either do it by inheriting
from boost::noncopyable (the old way), or better declare both (!) the
copy constructor _and_ the copy assignment operator as deleted:
X(X const&) = delete;
X& operator=(X const&) = delete;
We had tons of types with deleted copy constructors that were lacking
a corresponding deleted copy assignment operator, making them still
copyable and you wouldn't even notice (read: scary)!
References:
- http://accu.org/content/conf2014/Howard_Hinnant_Accu_2014.pdf
- http://www.boost.org/doc/libs/master/libs/core/doc/html/core/noncopyable.html
Note: I know, I'm quoting Hinnant's extraordinary slides a lot, but
getting the sematic right here is so incredibly important.
2016-01-27 17:25:30 +01:00