Computes a route given some parameters.
VgRoutingModule::VgIRoutingModule* lRoutingModule = static_cast< VgRoutingModule::VgIRoutingModule* >(lApp->editModuleManager()->queryModule("Routing"));
VgRoutingModule::VgIRouteRequestParameters lParams;
lParams.mDestinationsOrder = VgRoutingModule::eClosest;
lParams.mOrigin = lRoutingModule->getRoutingSolver()->getRoutingNode("L25");
lParams.mRequestType = VgRoutingModule::eShortest;
lParams.mDestinations.push_back(lRoutingModule->getRoutingSolver()->getRoutingNode("UL01-WC1"));
lParams.mDestinations.push_back(lRoutingModule->getRoutingSolver()->getRoutingNode("UL01-WC2"));
lParams.mDestinations.push_back(lRoutingModule->getRoutingSolver()->getRoutingNode("UL02-WC1"));
VgEngine::VgRefPtr< VgRoutingModule::VgIRoute > lRoute = lRoutingModule->getRoutingSolver()->computeRouteDirect(lParams);
if (lRoute.isValid())
{
const std::vector< int >& lDestinationIndices = lRoute->getDestinationIndices();
const VgRoutingModule::VgIRouteRequestParameters& lRequest = lRoute->getRequestParameters();
VgEngine::VgRefPtr< VgRoutingModule::VgIRoutingNode > lClosestToiletNode = lRequest.mDestinations[lDestinationIndices[0]];
if (lClosestToiletNode.isValid() && lClosestToiletNode->hasPoiID())
{
printf("closest toilet is: %s\n",lClosestToiletNode->getPoiID().c_str());
}
}