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
Patrick Niklaus
0802804677
Fix PR comments
2016-01-26 22:57:02 +01:00
Patrick Niklaus
d9c281cd7c
Remove boost fusion dependency in RouteParameters
2016-01-26 22:57:02 +01:00
Patrick Niklaus
46185fe9e8
Ptr -> auto
2016-01-26 22:57:02 +01:00
Daniel J. Hofmann
38e8a90f4e
Make HilbertCode a free standing function
2016-01-26 22:57:02 +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
Daniel J. Hofmann
0fcca04150
TU-local STXXL comparator for OSMNodeIDs, needs {min,max}_value
...
Can not use std::less<>{} because of this.
2016-01-26 22:57:02 +01:00
Daniel J. Hofmann
54a9173107
Make public RouteParameters header no longer depend on Spirit
...
And includes the optional header that was transitively included by the
spirit header before. Hopefully this will speed up compile times, as the
RouteParameters header is used in a lot of translation units.
2016-01-26 22:57:02 +01:00
Daniel J. Hofmann
312b414d8f
Adapts XORFastHashStorage to XORFastHash compile time limits
2016-01-26 17:54:08 +01:00
Daniel J. Hofmann
a6e7954128
Make XORFastHash's number of hashable elements compile time constant
...
Still constraint by the usage of uint32_t and subsequent splitting into
two uint16_t we use for indexing into the tables.
2016-01-26 17:54:08 +01:00
Daniel J. Hofmann
1417d43430
Cut down memory usage for tables in XORFastHash by factor of four
...
`pow(2, 16)` is not `2 << 16` but rather `1 << 16`.
With this change we cut memory usage in half for the XORFastHash's two
tables. Adapts XORFastHashStorage, memory usage reduction by factor two.
2016-01-26 17:54:08 +01:00
Daniel J. Hofmann
60ef6070b0
Simplify uint32_t splitting in XORFastHash
2016-01-26 17:54:08 +01:00
Daniel J. Hofmann
2f42196fca
Explicitely type XORFastHash
2016-01-26 17:54:08 +01:00
Daniel J. Hofmann
f8b5e7e2c9
Removes XORMiniHash, unused
2016-01-26 17:54:08 +01:00
Daniel J. Hofmann
2c0547bb0e
Make XORFastHash great again
2016-01-26 17:54:08 +01:00
Patrick Niklaus
4f792c40b7
Merge pull request #1928 from mortada/max_locations_map_matching
...
make it possible to disable max_locations in map_matching
2016-01-25 22:31:55 -05:00
Mortada Mehyar
17c3c1d66a
improve comments for gps_precision
2016-01-25 15:17:44 -08:00
Mortada Mehyar
b48022be22
make it possible to disable max_locations in map_matching
2016-01-25 14:53:44 -08:00
Daniel J. Hofmann
502aedb33e
Provide a way to selectively enable assertions in release mode
...
- Throwing an assertion exception for proper stack unwinding, making
sure destructors are called
- On in Debug mode, in Release, enable via:
cmake -DCMAKE_BUILD_TYPE=Release -DENABLE_ASSERTIONS=ON
Current problem that I'm seeing is that some code is not catching
exceptions or worse silently swallowing them. Would like to check the
whole pipeline before merging this in.
2016-01-21 15:37:25 +01:00