Open Source Routing Machine - C++ backend
Go to file
Daniel J. Hofmann 21804aecdb Prefer inline over static inline for free standing functions
When you mark free standing functions as `static inline` instead
of just `inline` they can not get merged across TUs and therefore
produce code bloat which is bad for the binaries size, the CPUs
instruction cache, and so on.

Please also see the discussion at:

- https://groups.google.com/forum/#!topic/mozilla.dev.platform/Ulw9HoZbSyQ
- http://stackoverflow.com/a/12836392

Note that non-fully specialized templates (i.e. with a kind of at
least `Template :: * -> *`) are `inline` by default.
2016-01-08 23:33:31 +01:00
cmake Fix typo. 2016-01-05 14:25:14 -05: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
docker Remove protobuf dependencies from docker setup 2015-08-31 16:48:27 +02:00
features Disable via test that fails on OSX so that we can test everything else on Travis on OSX. 2016-01-06 14:42:31 -08:00
include Prefer inline over static inline for free standing functions 2016-01-08 23:33:31 +01:00
profiles Add comments to profiles about uturn 2015-12-18 15:54:33 +01:00
scripts Squashed 'third_party/libosmium/' changes from c43f8db..0ff2780 2016-01-05 12:00:40 +01:00
src Run clang-format 2016-01-08 01:31:57 +01:00
test Squashed 'third_party/libosmium/' changes from c43f8db..0ff2780 2016-01-05 12:00:40 +01:00
third_party Update in-tree libosmium dependency to 2.5.4 2016-01-05 12:01:06 +01:00
unit_tests Run clang-format 2016-01-08 01:31:57 +01:00
.clang-format don't binpack parameters on 100 column width 2014-04-21 17:40:05 +02:00
.clang-tidy Integration scripts for Clang's Modernize and Tidy tool. 2015-09-22 17:32:32 +02:00
.cncc.style Add simple cncc file 2016-01-05 12:06:33 +01:00
.gitignore Remove non-existent git_sha.cpp from .gitignore 2015-10-19 21:33:10 +02:00
.gitmodules Removing Docs submodule 2012-12-26 18:29:16 +01:00
.travis.yml Disable via test that fails on OSX so that we can test everything else on Travis on OSX. 2016-01-06 14:42:31 -08:00
appveyor-build.bat Fix AppVayor tests 2016-01-04 11:15:37 +01:00
appveyor.yml AppVeyor: include osrm.lib in artifact. don't stick to AppVeyor directory structure in build scripts. 2015-09-07 14:26:47 +00:00
build-local.bat Remove commented out line in windows build script. History is what git is for. 2015-11-19 15:02:42 -05:00
CMakeLists.txt Print message about ccache usage from cmake 2016-01-07 15:20:32 +01:00
Doxyfile.in Use Readme.md as mainpage untill we have something better. 2015-09-22 16:26:21 +02:00
Gemfile change copyright line from personal names to project 2015-02-19 09:19:51 +01:00
Gemfile.lock upgrade to cucumber 2.0 2015-04-30 18:15:46 +02:00
LICENCE.TXT We are at 2016 for the license 2016-01-04 18:13:05 +01:00
profile.lua readding profile.lua 2013-07-02 22:51:21 +02:00
Rakefile add raketask for clearing test cache files 2014-10-17 15:13:06 +02:00
README.md Squashed 'third_party/libosmium/' changes from c43f8db..0ff2780 2016-01-05 12:00:40 +01:00
taginfo.json Add object_types to some tags. 2014-09-07 20:39:56 +02:00

About

The Open Source Routing Machine is a high performance routing engine written in C++11 designed to run on OpenStreetMap data.

Current build status

build config branch status
Linux  master Build Status
Linux  develop Build Status
Windows master/develop Build status
LUAbind fork  master Build Status

Building

For instructions on how to build and run OSRM, please consult the Wiki.

To quickly try OSRM use our free and daily updated online service

Documentation

See the Wiki's server API documentation as well as the library API documentation

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},
}