| 718 | |
| 719 | template <class T> |
| 720 | void FillMwmTransitPT(unique_ptr<TransitDisplayInfo> & mwmTransit, routing::TransitInfo const & transitInfo, T mwmId) |
| 721 | { |
| 722 | switch (transitInfo.GetType()) |
| 723 | { |
| 724 | case routing::TransitInfo::Type::Edge: |
| 725 | { |
| 726 | auto const & edge = transitInfo.GetEdgePT(); |
| 727 | |
| 728 | mwmTransit->m_stopsPT[edge.m_stop1Id] = {}; |
| 729 | mwmTransit->m_stopsPT[edge.m_stop2Id] = {}; |
| 730 | mwmTransit->m_linesPT[edge.m_lineId] = {}; |
| 731 | mwmTransit->m_shapesPT[edge.m_shapeLink.m_shapeId] = {}; |
| 732 | break; |
| 733 | } |
| 734 | case routing::TransitInfo::Type::Transfer: |
| 735 | { |
| 736 | auto const & transfer = transitInfo.GetTransferPT(); |
| 737 | mwmTransit->m_stopsPT[transfer.m_stop1Id] = {}; |
| 738 | mwmTransit->m_stopsPT[transfer.m_stop2Id] = {}; |
| 739 | break; |
| 740 | } |
| 741 | case routing::TransitInfo::Type::Gate: |
| 742 | { |
| 743 | auto const & gate = transitInfo.GetGatePT(); |
| 744 | if (gate.m_featureId != kInvalidFeatureId) |
| 745 | { |
| 746 | auto const featureId = FeatureID(mwmId, gate.m_featureId); |
| 747 | TransitFeatureInfo featureInfo; |
| 748 | featureInfo.m_isGate = true; |
| 749 | mwmTransit->m_features[featureId] = featureInfo; |
| 750 | } |
| 751 | break; |
| 752 | } |
| 753 | } |
| 754 | } |
| 755 | |
| 756 | void TransitRouteDisplay::CollectTransitDisplayInfo(vector<routing::RouteSegment> const & segments, |
| 757 | TransitDisplayInfos & transitDisplayInfos) |
no test coverage detected