MCPcopy Create free account
hub / github.com/OpenLoco/OpenLoco / findAllRoadsFilterTransform

Function findAllRoadsFilterTransform

src/OpenLoco/src/Vehicles/Routing.cpp:847–859  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

845
846 template<typename FilterFunction, typename TransformFunction>
847 static void findAllRoadsFilterTransform(RoutingResults& results, TrackNetworkSearchFlags searchFlags, const World::Pos3& loc, const TrackAndDirection::_RoadAndDirection trackAndDirection, const CompanyId company, const uint8_t trackType, FilterFunction&& filterFunction, TransformFunction&& transformFunction)
848 {
849 // Note: This function and its call chain findAllUsableTrackInNetwork and findAllUsableTrackPieces have been modified
850 // to not be recursive anymore.
851 LocationOfInterestQueue roadToCheck{ LocationOfInterest{ loc, trackAndDirection._data, company, trackType } };
852 while (!roadToCheck.empty())
853 {
854 const auto interest = roadToCheck.back();
855 roadToCheck.pop_back();
856 findAllUsableRoadInNetwork(roadToCheck, searchFlags, interest, filterFunction, results);
857 }
858 transformFunction(results);
859 }
860
861 // 0x004A2AD7
862 void sub_4A2AD7(const World::Pos3& loc, const TrackAndDirection::_TrackAndDirection trackAndDirection, const CompanyId company, const uint8_t trackType)

Callers 2

Calls 2

emptyMethod · 0.45

Tested by

no test coverage detected