Open Source Routing Machine - C++ backend
Go to file
Patrick Niklaus f90ce77da4 Use differential encoding for name offsets
Each name is represented as an integer range in a vector of chars.
Instead of storing the absolute offset inside this array, we can store
only the offset to the previous entry (the string size). By doing this we reduce
the number of bytes need to store an offset from 4 to 1 bytes (if we
set a maximum string length of 255).
This is however slower, since the absolute offset must be computed on
each querry by summing up all previous lengths. To limit the
performance inpact we only do this for blocks of a certain size (16).
2014-06-12 22:00:03 +02:00
Algorithms add include 2014-06-11 13:44:10 +02:00
cmake Globally rename UUID to FingerPrint 2014-06-05 10:31:19 +02:00
config new cucumber profile for Jenkins that doesn't fail because of an old Gherkin bug 2014-03-24 14:29:19 +01:00
Contractor fixes #1041, some only_ turn restrictions are inverted under certain conditions 2014-06-10 17:26:22 +02:00
DataStructures Use differential encoding for name offsets 2014-06-12 22:00:03 +02:00
Descriptors make conversion explicit 2014-06-11 18:15:31 +02:00
Docs Replaced submodule with a text referencing the subproject directly 2012-12-26 18:32:57 +01:00
Extractor Use differential encoding for name offsets 2014-06-12 22:00:03 +02:00
features patch Ruby files for successful testing on Windows 2014-06-11 18:38:01 +06:00
Include/osrm rename some function names in Reply 2014-06-09 17:57:35 +02:00
Library further include untangling, chops 5sec compile time 2014-06-11 12:25:57 +02:00
Plugins make conversion explicit 2014-06-11 18:15:36 +02:00
profiles add test for roundabout with oneone links 2014-05-20 13:27:32 +02:00
RoutingAlgorithms make sure result is always > 0, hits when origin and destination are on the same one-way segment in reversed order 2014-06-05 18:28:54 +02:00
Server remove one fwd decl, add more comments to Connection 2014-06-12 13:46:07 +02:00
test use boost program_options in osrm-prepare/routed 2013-10-12 09:59:42 +02:00
Tools disable io-benchmark on Windows 2014-06-11 18:38:01 +06:00
Util explicitly cast from int to bool 2014-06-11 17:44:50 +02:00
.clang-format don't binpack parameters on 100 column width 2014-04-21 17:40:05 +02:00
.gitignore Globally rename UUID to FingerPrint 2014-06-05 10:31:19 +02:00
.gitmodules Removing Docs submodule 2012-12-26 18:29:16 +01:00
.travis.yml Add TBB to travis.ymk 2014-05-21 21:49:22 +02:00
appveyor.yml adapt for merge, add deployment details 2014-06-11 15:17:51 +02:00
CMakeLists.txt remove empty line 2014-06-11 15:19:11 +02:00
datastore.cpp further include untangling, chops 5sec compile time 2014-06-11 12:25:57 +02:00
extractor.cpp get char* from boost::filesystem::path 2014-06-05 23:48:54 +06:00
Gemfile add test for process error codes 2012-09-28 15:29:13 +02:00
Gemfile.lock update ruby gems used for cucumber testing 2013-10-02 20:10:13 +02:00
LICENCE.TXT License change to (simplified) 2-clause BSD. Good riddance, AGPL 2013-10-14 13:42:28 +02:00
prepare.cpp Replace sizeof asserts with warning on Windows 2014-06-11 18:37:26 +06:00
profile.lua readding profile.lua 2013-07-02 22:51:21 +02:00
Rakefile fix some indentation and spelling 2013-10-18 18:33:56 +02:00
README.md Updateing Readme to give proper reference (again) 2013-07-31 13:12:25 +02:00
routed.cpp workaround for std::packaged_task<void()> problem on MSVC 2014-06-11 18:38:00 +06:00
typedefs.h Avoid constexpr by #ifdef (not supported in MSVC18) 2014-06-11 18:15:16 +06:00

Readme

For instructions on how to compile and run OSRM, please consult the Wiki at

https://github.com/DennisOSRM/Project-OSRM/wiki

or use our free and daily updated online service at

http://map.project-osrm.org

References in publications

When using the code in a (scientific) publication, please cite

@inproceedings{luxen-vetter-2011,
 author = {Luxen, Dennis and Vetter, Christian},
 title = {Real-time routing with OpenStreetMap data},
 booktitle = {Proceedings of the 19th ACM SIGSPATIAL International Conference on Advances in Geographic Information Systems},
 series = {GIS '11},
 year = {2011},
 isbn = {978-1-4503-1031-4},
 location = {Chicago, Illinois},
 pages = {513--516},
 numpages = {4},
 url = {http://doi.acm.org/10.1145/2093973.2094062},
 doi = {10.1145/2093973.2094062},
 acmid = {2094062},
 publisher = {ACM},
 address = {New York, NY, USA},
}

Current build status

build config branch status
Project OSRM  master Build Status
Project OSRM  develop Build Status
LUAbind fork  master Build Status