This PR defines RegionTravel::ToBoostGraph(), which converts a RegionTravel to a boost::adjacency_list<boost::vecS, boost::vecS, boost::directedS, AirportDescription, boost::property<boost::edge_weight_t, double>>. There's also a unit test in there somewhere that verifies the accuracy of the translation from our model to a boost graph.
I couldn't implement the inverse transformation because ToBoostGraph() is lossy: our model includes region information (such as population file paths) that cannot easily/sensibly be converted to a graph.
In addition to this, I have also implemented ID recycling in the simulator plus some miscellaneous optimizations.
This PR defines
RegionTravel::ToBoostGraph()
, which converts aRegionTravel
to aboost::adjacency_list<boost::vecS, boost::vecS, boost::directedS, AirportDescription, boost::property<boost::edge_weight_t, double>>
. There's also a unit test in there somewhere that verifies the accuracy of the translation from our model to a boost graph.I couldn't implement the inverse transformation because
ToBoostGraph()
is lossy: our model includes region information (such as population file paths) that cannot easily/sensibly be converted to a graph.In addition to this, I have also implemented ID recycling in the simulator plus some miscellaneous optimizations.