@@ -65,7 +65,8 @@ class NearestAPI final : public BaseAPI
6565 auto &phantom_node = phantom_with_distance.phantom_node ;
6666
6767 auto node_values = MakeNodes (phantom_node);
68- fbresult::Uint64Pair nodes{node_values.first , node_values.second };
68+ fbresult::Uint64Pair nodes{from_alias<uint64_t >(node_values.first ),
69+ from_alias<uint64_t >(node_values.second )};
6970
7071 auto waypoint = MakeWaypoint (&fb_result, {phantom_node});
7172 waypoint->add_nodes (&nodes);
@@ -123,10 +124,10 @@ class NearestAPI final : public BaseAPI
123124 const NearestParameters ¶meters;
124125
125126 protected:
126- std::pair<uint64_t , uint64_t > MakeNodes (const PhantomNode &phantom_node) const
127+ std::pair<OSMNodeID, OSMNodeID > MakeNodes (const PhantomNode &phantom_node) const
127128 {
128- std:: uint64_t from_node = 0 ;
129- std:: uint64_t to_node = 0 ;
129+ OSMNodeID from_node = OSMNodeID{ 0 } ;
130+ OSMNodeID to_node = OSMNodeID{ 0 } ;
130131
131132 datafacade::BaseDataFacade::NodeForwardRange forward_geometry;
132133 if (phantom_node.forward_segment_id .enabled )
@@ -135,26 +136,22 @@ class NearestAPI final : public BaseAPI
135136 const auto geometry_id = facade.GetGeometryIndex (segment_id).id ;
136137 forward_geometry = facade.GetUncompressedForwardGeometry (geometry_id);
137138
138- auto osm_node_id =
139+ to_node =
139140 facade.GetOSMNodeIDOfNode (forward_geometry[phantom_node.fwd_segment_position ]);
140- to_node = static_cast <std::uint64_t >(osm_node_id);
141141 }
142142
143143 if (phantom_node.reverse_segment_id .enabled )
144144 {
145145 auto segment_id = phantom_node.reverse_segment_id .id ;
146146 const auto geometry_id = facade.GetGeometryIndex (segment_id).id ;
147147 const auto geometry = facade.GetUncompressedForwardGeometry (geometry_id);
148- auto osm_node_id =
149- facade.GetOSMNodeIDOfNode (geometry[phantom_node.fwd_segment_position + 1 ]);
150- from_node = static_cast <std::uint64_t >(osm_node_id);
148+ from_node = facade.GetOSMNodeIDOfNode (geometry[phantom_node.fwd_segment_position + 1 ]);
151149 }
152150 else if (phantom_node.forward_segment_id .enabled && phantom_node.fwd_segment_position > 0 )
153151 {
154152 // In the case of one way, rely on forward segment only
155- auto osm_node_id =
153+ from_node =
156154 facade.GetOSMNodeIDOfNode (forward_geometry[phantom_node.fwd_segment_position - 1 ]);
157- from_node = static_cast <std::uint64_t >(osm_node_id);
158155 }
159156
160157 return std::make_pair (from_node, to_node);
0 commit comments