Pepijn Schoen
fe00a8a0ca
superclass storage_config with io_config
2017-07-20 12:01:05 +02:00
Patrick Niklaus
440dccb81b
Move classes to intersection object and don't emit notifications
2017-07-18 16:48:22 +00:00
Emil Tin
e413b25cd9
profiles api v2
2017-07-18 10:09:22 +00:00
Daniel J. Hofmann
5ece65cade
Trigger lane anticipation based on distance, see discussion in #4260
2017-07-18 11:23:46 +02:00
Moritz Kobitzsch
f2f00b99e0
remove usage of use-lane completely
2017-07-18 11:23:46 +02:00
Moritz Kobitzsch
7b755d6f8b
deprecate use-lane -- the information can be found in the intersections array
2017-07-18 11:23:46 +02:00
Patrick Niklaus
49f0b1eb59
Add abstraction to change the data facade at compile time
2017-07-17 11:40:55 +00:00
Michael Krasnyk
b2ed46efb5
Check activation index of EntryClass and warn if activation failed
2017-07-13 22:14:41 +00:00
Daniel J. Hofmann
58b61c68a3
Exposes EngineConfig system-wide limits in Node.js bindings, resolves #4226
2017-07-13 21:48:48 +00:00
Michael Krasnyk
924a8a7e38
Remove STXXL from OSM parsing and enable in CMake by default
2017-07-11 08:23:26 +00:00
Michael Krasnyk
960f9ba29a
Don't use stxxl vector in contractor
2017-07-11 08:23:26 +00:00
Michael Krasnyk
3940cc1641
Switch from stxxl::vector to std::vector in extractor
2017-07-11 08:23:26 +00:00
Michael Krasnyk
a498ba6537
Removed external_to_internal_node_id_map container
2017-07-11 08:23:26 +00:00
Daniel J. Hofmann
c1cb3ebff7
Fixes Node.js bindings always enabling alternatives when using boolean overload
2017-07-10 10:44:15 +02:00
Daniel J. Hofmann
54ceb05420
Implements Alternatives for MLD
2017-07-07 16:12:46 +00:00
Patrick Niklaus
fef0344be0
Don't use bool flags on ExternalMemoryNode because they blow up the struct
2017-07-07 13:24:34 +00:00
Patrick Niklaus
44739f2dc3
Allow users to specify a class for each way
...
This adds the ability to mark ways with a user-defined
class in the profile. This class information will be included
in the response as property of the RouteStep object.
2017-07-06 09:17:49 +00:00
Moritz Kobitzsch
3073f4c0d1
don't announce something if we loose exit numbers while on the ramp
2017-07-04 20:58:19 +00:00
Daniel J. Hofmann
7d900e3b5a
Implements Exit Numbers + Names (junction:ref
way tag for now)
2017-07-04 20:58:19 +00:00
Michael Krasnyk
359ab2b56e
Use highest different level with source but not parent node
2017-07-03 14:57:52 +00:00
Michael Krasnyk
aa736dbe3a
Generalize directShortestPathSearch interface
2017-07-03 14:57:52 +00:00
Michael Krasnyk
3534203083
Generalize manyToManySearch and remove duplications
2017-07-03 14:57:52 +00:00
Michael Krasnyk
517cb5f094
Matrix plugin with MLD overlay
2017-07-03 14:57:52 +00:00
Michael Krasnyk
b910ab9bcb
Add duration values to overlay graph
2017-07-03 14:57:52 +00:00
Michael Krasnyk
0fd71260d3
Enable ManyToManySearch in MLD
2017-07-03 14:57:52 +00:00
Michael Krasnyk
c914afdbf1
Fix missing-field-initializers warnings in PackedVector
2017-06-30 14:27:43 +02:00
Michael Krasnyk
929e5a4de6
Review adjustments for driveway handler, #4151
2017-06-29 15:07:32 +00:00
Michael Krasnyk
df4f0d043a
Added driveway handler
2017-06-29 15:07:32 +00:00
Michael Krasnyk
c8b75c9046
Use thread-safe lock-free assignment in PackedVector::set_value
...
PR uses TBB internal atomic's for atomic CAS on non-atomic data
Corresponding PR https://github.com/Project-OSRM/osrm-backend/pull/4199
Other options:
* use sequential update
* use an internal packed vector lock -> makes packed vector non-movable
* use boost.interprocess atomics implementation -> outdated and only 32 bit version
* use glib atomic's -> requires new dependency
* wait for https://isocpp.org/blog/2014/05/n4013 as_atomic
* use c11 _Atomic and atomic_compare_exchange_weak -> not possible to mix c++11 and c11
* use builtin functions gcc __sync_bool_compare_and_swap and msvc _InterlockedCompareExchange64 -> possible, but requires proper testing
boolean CompareAndSwapPointer(volatile * void * ptr,
void * new_value,
void * old_value) {
if defined(_MSC_VER)
if (InterlockedCompareExchange(ptr, new_value, old_value) == old_value) return false;
else return true;
elif (__GNUC__ * 10000 + __GNUC_MINOR__ * 100 + __GNUC_PATCHLEVEL__) > 40100
return __sync_bool_compare_and_swap(ptr, old_value, new_value);
else
error No implementation
endif
}
* use Boost.Atomic -> requires new dependency
WordT local_lower_word = lower_word, new_lower_word;
do
{
new_lower_word = set_lower_value<WordT, T>(local_lower_word,
lower_mask[internal_index.element],
lower_offset[internal_index.element],
value);
} while (!boost::atomics::detail::operations<sizeof(WordT), false>::compare_exchange_weak(
lower_word,
local_lower_word,
new_lower_word,
boost::memory_order_release,
boost::memory_order_relaxed));
2017-06-27 13:02:53 +02:00
Patrick Niklaus
dd8f5ac01d
Make EMPTY_ENTRY_CLASS constexpr
2017-06-27 09:58:19 +00:00
Patrick Niklaus
22479ff5d8
Avoid dead-lock if other = this
2017-06-27 09:58:19 +00:00
Patrick Niklaus
e5464526c8
Port isc file
2017-06-27 09:58:19 +00:00
Patrick Niklaus
37b8d3acd4
Refactor turn lane passing
2017-06-27 09:58:19 +00:00
Patrick Niklaus
4f13208ce8
Fix the propfile properties reading/writing
2017-06-27 09:58:19 +00:00
Patrick Niklaus
7fb57c924f
Explicitly implement move constructor for DeallocationVector
2017-06-23 09:22:30 +00:00
Patrick Niklaus
97592e5bc3
Refactor file writing in OSRM contract
2017-06-23 09:22:30 +00:00
Daniel J. Hofmann
df000debe9
Adapts obvious turn classification: no longer take entry_allowed into account, resolves #3987
2017-06-21 18:09:32 +02:00
Moritz Kobitzsch
f80e5db346
add support for visualising turn penalties in MLD Debug tiles ( #4157 )
...
- template function for tile functionality with edge finder operator
- refactors unit tests into single function (reduce code duplication)
- adds unit tests for core-ch
2017-06-15 13:59:44 +02:00
Daniel Patterson
35550d8c0a
Parallelize generation of the edge-expanded-edges.
2017-06-15 09:05:45 +00:00
Daniel J. Hofmann
b68d79407e
Takes fn by forwarding ref. in for_each_pair, resolves #4148
2017-06-14 15:17:26 +00:00
Patrick Niklaus
27ed69b08f
Parallize scripting on osmium::Buffer granularity
...
Fixes #3447 and reduces parsing time by about 15%.
2017-06-13 21:47:54 +00:00
Daniel Patterson
cd8fb82215
Add flag to allow skipping calling node function for nodes with no tags.
2017-06-13 12:23:00 +00:00
Daniel Patterson
5c8e2b6f78
Don't copy the node/way/segment/turn function objects for every call. 12-13% speedup for lua processing right there.
2017-06-13 12:23:00 +00:00
Stepan Kuzmin
5ee3c4de9f
Expose Map Matching gaps
and tidy
parameters in Node.js bindings #4021
2017-06-12 11:32:06 +00:00
Daniel Patterson
5026741652
Make initialization fail with a specific exception if the dataset isn't compatible with the algorithm being used, rather than crashing when a query occurs.
2017-06-08 18:31:51 +00:00
Daniel Patterson
3d77714c36
Make most command-line tools return useful error codes on well-known exceptions.
2017-06-08 15:03:24 +00:00
Lev Dragunov
d7035291ea
clang-format
2017-06-07 15:39:08 +03:00
Lev Dragunov
6b8f3c7fef
Polyline6 support in the REST input
2017-06-06 19:51:00 +03:00
Patrick Niklaus
0d12d2fd28
Merge pull request #4094 from Project-OSRM/refactor/rapidash
...
Replace timezone shapefile parsing with geojson parsing
2017-06-02 20:01:04 +00:00
Patrick Niklaus
10460fc2fb
Fix PR comments
2017-06-02 18:46:21 +00:00