Patrick Niklaus
56ea24b03b
Add tests for bearing parsing
2016-04-05 22:58:32 +02:00
Patrick Niklaus
277829c280
Add table service
2016-04-05 22:58:32 +02:00
Patrick Niklaus
c127aaae6b
Add table API
2016-04-05 22:58:32 +02:00
Daniel J. Hofmann
c895848061
Optional<T> semantic action handler takes T argument
2016-04-05 22:58:32 +02:00
Patrick Niklaus
64e5ebb55f
Fix parameter parsing tests
2016-04-05 22:58:32 +02:00
Patrick Niklaus
83addd6bba
Fix table plugin
2016-04-05 22:58:32 +02:00
Daniel J. Hofmann
d87a19b2f9
First take at distance table API re-write
2016-04-05 22:58:32 +02:00
Daniel J. Hofmann
b58edc980c
Adapts TableParameters and its validation to new API
2016-04-05 22:58:32 +02:00
Patrick Niklaus
f3e72623e9
Add viaroute suport for new API
2016-04-05 22:58:32 +02:00
Michael Krasnyk
6b69946b9e
Fixes using uninitialised values in extractRouteNames
...
Conditional jump or move depends on uninitialised value(s)
at 0x5FEE48: osrm::engine::RouteNames osrm::engine::extractRouteNames<osrm::engine::datafacade::BaseDataFacade<osrm::contractor::QueryEdge::EdgeData>, osrm::engine::detail::Segment>(std::vector<osrm::engine::detail::Segment, std::allocator<osrm::engine::detail::Segment> >&, std::vector<osrm::engine::detail::Segment, std::allocator<osrm::engine::detail::Segment> >&, osrm::engine::datafacade::BaseDataFacade<osrm::contractor::QueryEdge::EdgeData> const*) (route_name_extraction.hpp:127)
by 0x61A1B2: osrm::engine::ApiResponseGenerator<osrm::engine::datafacade::BaseDataFacade<osrm::contractor::QueryEdge::EdgeData> >::DescribeRoute(osrm::engine::RouteParameters const&, osrm::engine::InternalRouteResult const&, osrm::util::json::Object&) (api_response_generator.hpp:173)
by 0x61AF47: osrm::engine::plugins::ViaRoutePlugin<osrm::engine::datafacade::BaseDataFacade<osrm::contractor::QueryEdge::EdgeData> >::HandleRequest(osrm::engine::RouteParameters const&, osrm::util::json::Object&) (viaroute.hpp:144)
by 0x61EEEC: osrm::engine::Engine::RunQuery(osrm::engine::RouteParameters const&, osrm::util::json::Object&) (engine.cpp:100)
by 0x5AE585: osrm::OSRM::RunQuery(osrm::engine::RouteParameters const&, osrm::util::json::Object&) (osrm.cpp:19)
by 0x5A8E07: main (in /home/miha/work/foss/osrm-backend/build.example/osrm-example)
2016-04-03 19:29:35 +02:00
Daniel J. Hofmann
a1b87b5236
Handle all distances between coordinates being zero in Farthest Insertion algorithm.
...
Assertions for additional safety and sanity.
References:
- see https://github.com/Project-OSRM/osrm-backend/issues/2147
2016-03-31 18:57:24 +02:00
bergwerkgis
d0636a9f6d
make AppVeyor work again
2016-03-31 16:49:30 +02:00
Patrick Niklaus
21245273b4
Also exclude the compressed flag from the data format
2016-03-24 21:24:08 +01:00
Patrick Niklaus
8d7821c84e
Remove geometry indicator
2016-03-24 21:24:08 +01:00
Daniel J. Hofmann
b1c84b598f
Print the _local_ endpoint Boost ASIO assigns a port to, fixes #2097
2016-03-18 12:09:28 +01:00
Daniel J. Hofmann
8640129835
Ampersand binds to variable name
2016-03-15 11:47:57 +01:00
Daniel J. Hofmann
655dd2277c
Eliminate extra semicola
2016-03-15 11:47:57 +01:00
Daniel J. Hofmann
40f95191a0
Do not copy pairs in loop
2016-03-15 11:47:57 +01:00
Daniel J. Hofmann
a013da860e
Fixes unneeded includes in contractor header and self-include
2016-03-15 10:44:33 +01:00
Moritz Kobitzsch
4150c804df
Improve the core search stopping criterion
2016-03-15 09:33:10 +01:00
Patrick Niklaus
8912928581
Disable alternatives by defaul fixes #2072
2016-03-10 21:01:30 +01:00
Daniel J. Hofmann
ac0279aa83
RAII for auto-closing file streams
...
Small fixes I didn't want to include in unrelated PRs.
There are a few left in `storage.cpp` but since it's a single function
in 600 lines of code, I didn't want to touch the mess. The others are
safe to remove, cucumber and test run on Finland gives 👍 .
2016-03-09 17:46:02 +01:00
Patrick Niklaus
adc3bacea9
Add pruning based on @MoKob's idea in #1921
2016-03-08 00:43:45 +01:00
Patrick Niklaus
f86b5a44bc
Adapt shortest_path and viaroute to core search
2016-03-07 21:26:12 +01:00
Patrick Niklaus
a98cc51ac2
Fix up some PR comments
2016-03-04 16:13:30 +01:00
Daniel Patterson
017ff53702
Code review updates.
2016-03-03 13:25:01 -08: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
Patrick Niklaus
0eaa393065
Limit tile zoomlevel to 12+
2016-03-02 19:59:49 +01:00
Daniel Patterson
6d749777fc
Using bind<T> in this case causes ambiguity with GCC 5.2.1 (see http://www.boost.org/doc/libs/develop/libs/bind/doc/html/bind.html#bind.faq.Q_forms ). Remove template and let the type be deduced automatically.
2016-03-02 09:54:08 -08: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
66cadac6b6
Explicitly std:: prefix fixed integral types in static rtree header
2016-03-01 23:51:26 +01:00
Daniel J. Hofmann
c237c5353b
Explicitly std:: prefix fixed integral types in rectangle header
2016-03-01 23:51:26 +01:00
Daniel J. Hofmann
c27a7e087f
Fixes rectangle header includes
2016-03-01 23:51:26 +01:00
Daniel J. Hofmann
0894590a96
Fixes default declared ctor in Buffer
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
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