| 679 | |
| 680 | template <class T> |
| 681 | void FillMwmTransitSubway(unique_ptr<TransitDisplayInfo> & mwmTransit, routing::TransitInfo const & transitInfo, |
| 682 | T mwmId) |
| 683 | { |
| 684 | switch (transitInfo.GetType()) |
| 685 | { |
| 686 | case routing::TransitInfo::Type::Edge: |
| 687 | { |
| 688 | auto const & edge = transitInfo.GetEdgeSubway(); |
| 689 | |
| 690 | mwmTransit->m_stopsSubway[edge.m_stop1Id] = {}; |
| 691 | mwmTransit->m_stopsSubway[edge.m_stop2Id] = {}; |
| 692 | mwmTransit->m_linesSubway[edge.m_lineId] = {}; |
| 693 | for (auto const & shapeId : edge.m_shapeIds) |
| 694 | mwmTransit->m_shapesSubway[shapeId] = {}; |
| 695 | break; |
| 696 | } |
| 697 | case routing::TransitInfo::Type::Transfer: |
| 698 | { |
| 699 | auto const & transfer = transitInfo.GetTransferSubway(); |
| 700 | mwmTransit->m_stopsSubway[transfer.m_stop1Id] = {}; |
| 701 | mwmTransit->m_stopsSubway[transfer.m_stop2Id] = {}; |
| 702 | break; |
| 703 | } |
| 704 | case routing::TransitInfo::Type::Gate: |
| 705 | { |
| 706 | auto const & gate = transitInfo.GetGateSubway(); |
| 707 | if (gate.m_featureId != kInvalidFeatureId) |
| 708 | { |
| 709 | auto const featureId = FeatureID(mwmId, gate.m_featureId); |
| 710 | TransitFeatureInfo featureInfo; |
| 711 | featureInfo.m_isGate = true; |
| 712 | mwmTransit->m_features[featureId] = featureInfo; |
| 713 | } |
| 714 | break; |
| 715 | } |
| 716 | } |
| 717 | } |
| 718 | |
| 719 | template <class T> |
| 720 | void FillMwmTransitPT(unique_ptr<TransitDisplayInfo> & mwmTransit, routing::TransitInfo const & transitInfo, T mwmId) |
no test coverage detected