Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mapsme/omim.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVladimir Byko-Ianko <v.bykoianko@corp.mail.ru>2016-06-08 17:56:28 +0300
committerVladimir Byko-Ianko <v.bykoianko@corp.mail.ru>2016-06-17 19:36:52 +0300
commitb0a831d8ebb0c88b3bfaee345ce31a255d30ef30 (patch)
tree74d7fa0f86492bdece6f98c726036c0b45de7f4b /routing/pedestrian_model.cpp
parenta35256f8e791dda8e5e343de8483efc75d83ef58 (diff)
Code refactoring. Implementing some functionality to VehicleModel class and removing it form derived classes.
Diffstat (limited to 'routing/pedestrian_model.cpp')
-rw-r--r--routing/pedestrian_model.cpp35
1 files changed, 4 insertions, 31 deletions
diff --git a/routing/pedestrian_model.cpp b/routing/pedestrian_model.cpp
index 9e30abd9ee..510568432f 100644
--- a/routing/pedestrian_model.cpp
+++ b/routing/pedestrian_model.cpp
@@ -633,39 +633,13 @@ void PedestrianModel::Init()
SetAdditionalRoadTypes(classif(), arr, ARRAY_SIZE(arr));
}
-VehicleModel::Restriction PedestrianModel::IsPedestrianAllowed(feature::TypesHolder const & types) const
+IVehicleModel::RoadAvailability PedestrianModel::GetRoadAvailability(feature::TypesHolder const & types) const
{
if (types.Has(m_yesFootType))
- return Restriction::Yes;
+ return RoadAvailability::Available;
if (types.Has(m_noFootType))
- return Restriction::No;
- return Restriction::Unknown;
-}
-
-double PedestrianModel::GetSpeed(FeatureType const & f) const
-{
- feature::TypesHolder const types(f);
-
- Restriction const restriction = IsPedestrianAllowed(types);
- if (restriction == Restriction::Yes)
- return VehicleModel::GetMaxSpeed();
- if (restriction != Restriction::No && HasRoadType(types))
- return VehicleModel::GetMinTypeSpeed(types);
-
- return 0.0;
-}
-
-bool PedestrianModel::IsRoad(FeatureType const & f) const
-{
- if (f.GetFeatureType() != feature::GEOM_LINE)
- return false;
-
- feature::TypesHolder const types(f);
-
- if (IsPedestrianAllowed(types) == Restriction::No)
- return false;
-
- return VehicleModel::HasRoadType(types);
+ return RoadAvailability::NotAvailable;
+ return RoadAvailability::Unknown;
}
PedestrianModelFactory::PedestrianModelFactory()
@@ -712,5 +686,4 @@ shared_ptr<IVehicleModel> PedestrianModelFactory::GetVehicleModelForCountry(stri
LOG(LDEBUG, ("Pedestrian model wasn't found, default model is used instead:", country));
return PedestrianModelFactory::GetVehicleModel();
}
-
} // routing