Contains Lua profile properties that affect run time queries.
tar -tvf nevada-latest.osrm.properties
-rw-rw-r-- 0/0 8 1970-01-01 00:00 osrm_fingerprint.meta
-rw-rw-r-- 0/0 8 1970-01-01 00:00 /common/properties.meta
-rw-rw-r-- 0/0 2344 1970-01-01 00:00 /common/properties
The data stored in /common/properties
is the struct ProfileProperties
in C++
implementation.
struct ProfileProperties
's data values are come from Lua properties or default values if it doesn't present in Lua. But be aware that some details maybe special, e.g.u_turn_penality = lua.properties.u_turn_penality * 10
, since they have different units(deci-seconds instruct ProfileProperties
but seconds in Lua).- Refer to Sol2ScriptingEnvironment::InitContext() for the loading process from Lua to
struct ProfileProperties
. Interaction Between C++ and Lua In OSRM has more explaination on this part. - osrm::extractor::files::writeProfileProperties() is designed for write the
struct ProfileProperties
into file. It will call the osrm::storage::tar::detail::WriteFrom() at underlying which will writeT
to file by taking its address andsizeof
directly.