| 503 | } |
| 504 | |
| 505 | HighwayCategory IndexGraphStarter::GetHighwayCategory(Segment seg) const |
| 506 | { |
| 507 | if (IsFakeSegment(seg)) |
| 508 | { |
| 509 | Segment real; |
| 510 | if (m_fake.FindReal(seg, real)) |
| 511 | seg = real; |
| 512 | else |
| 513 | return HighwayCategory::Unknown; |
| 514 | } |
| 515 | |
| 516 | auto const hwType = m_graph.GetIndexGraph(seg.GetMwmId()).GetRoadGeometry(seg.GetFeatureId()).GetHighwayType(); |
| 517 | if (!hwType) |
| 518 | return HighwayCategory::Unknown; |
| 519 | |
| 520 | switch (*hwType) |
| 521 | { |
| 522 | case HighwayType::HighwayMotorway: |
| 523 | case HighwayType::HighwayMotorwayLink: |
| 524 | case HighwayType::HighwayTrunk: |
| 525 | case HighwayType::HighwayTrunkLink: return HighwayCategory::Major; |
| 526 | case HighwayType::HighwayPrimary: |
| 527 | case HighwayType::HighwayPrimaryLink: return HighwayCategory::Primary; |
| 528 | case HighwayType::HighwaySecondary: |
| 529 | case HighwayType::HighwaySecondaryLink: |
| 530 | case HighwayType::HighwayTertiary: |
| 531 | case HighwayType::HighwayTertiaryLink: return HighwayCategory::Usual; |
| 532 | case HighwayType::RouteFerry: |
| 533 | case HighwayType::RouteShuttleTrain: return HighwayCategory::Transit; |
| 534 | default: return HighwayCategory::Minor; |
| 535 | } |
| 536 | } |
| 537 | |
| 538 | void IndexGraphStarter::AddStart(FakeEnding const & startEnding, FakeEnding const & finishEnding, bool strictForward) |
| 539 | { |
no test coverage detected