#ifndef OSRM_LOCATION_DEPENDENT_DATA_HPP #define OSRM_LOCATION_DEPENDENT_DATA_HPP #include #include #include #include #include #include #include namespace osrm { namespace extractor { struct LocationDependentData { using point_t = boost::geometry::model:: point>; using polygon_t = boost::geometry::model::polygon; using box_t = boost::geometry::model::box; using polygon_position_t = std::size_t; using rtree_t = boost::geometry::index::rtree, boost::geometry::index::rstar<8>>; using property_t = boost::variant; using properties_t = std::unordered_map; LocationDependentData(const boost::filesystem::path &file_path); sol::table operator()(sol::state &state, const osmium::Way &way) const; private: rtree_t rtree; std::vector> polygons; }; } } #endif