Format all C++ and Java code via clang-format

Signed-off-by: Konstantin Pastbin <konstantin.pastbin@gmail.com>
This commit is contained in:
Konstantin Pastbin
2025-08-17 14:32:37 +07:00
parent 9f0290c0ec
commit bfffa1fff4
2169 changed files with 56441 additions and 64188 deletions

View File

@@ -36,8 +36,8 @@ void ShiftSegmentOnShape(transit::LineSegment & lineSegment, transit::ShapeLink
}
// Returns segment edge points on the polyline.
std::pair<m2::PointD, m2::PointD> GetSegmentEdgesOnPolyline(
std::vector<m2::PointD> const & polyline, transit::LineSegment const & segment)
std::pair<m2::PointD, m2::PointD> GetSegmentEdgesOnPolyline(std::vector<m2::PointD> const & polyline,
transit::LineSegment const & segment)
{
CHECK_GREATER(polyline.size(), std::max(segment.m_startIdx, segment.m_endIdx), ());
@@ -63,12 +63,10 @@ void UpdateReversedSegmentIndexes(transit::LineSegment & segment, size_t polylin
}
} // namespace
SubwayConverter::SubwayConverter(std::string const & subwayJson, WorldFeed & feed)
: m_subwayJson(subwayJson), m_feed(feed)
{
}
: m_subwayJson(subwayJson)
, m_feed(feed)
{}
bool SubwayConverter::Convert()
{
@@ -120,8 +118,7 @@ bool SubwayConverter::ConvertNetworks()
m_feed.m_networks.m_data.emplace(networkId, networkSubway.GetTitle());
}
LOG(LINFO,
("Converted", m_feed.m_networks.m_data.size(), "networks from subways to public transport."));
LOG(LINFO, ("Converted", m_feed.m_networks.m_data.size(), "networks from subways to public transport."));
return !m_feed.m_networks.m_data.empty();
}
@@ -143,13 +140,12 @@ bool SubwayConverter::SplitEdges()
return !m_edgesSubway.empty() && !m_edgesTransferSubway.empty();
}
std::pair<TransitId, RouteData> SubwayConverter::MakeRoute(
routing::transit::Line const & lineSubway)
std::pair<TransitId, RouteData> SubwayConverter::MakeRoute(routing::transit::Line const & lineSubway)
{
uint32_t routeSubwayId = GetSubwayRouteId(lineSubway.GetId());
std::string const routeHash = BuildHash(kHashPrefix, std::to_string(lineSubway.GetNetworkId()),
std::to_string(routeSubwayId));
std::string const routeHash =
BuildHash(kHashPrefix, std::to_string(lineSubway.GetNetworkId()), std::to_string(routeSubwayId));
TransitId const routeId = m_feed.m_idGenerator.MakeId(routeHash);
@@ -165,8 +161,7 @@ std::pair<TransitId, RouteData> SubwayConverter::MakeRoute(
std::pair<TransitId, GateData> SubwayConverter::MakeGate(routing::transit::Gate const & gateSubway)
{
// This id is used only for storing gates in gtfs_converter tool. It is not saved to json.
TransitId const gateId =
m_feed.m_idGenerator.MakeId(BuildHash(kHashPrefix, std::to_string(gateSubway.GetOsmId())));
TransitId const gateId = m_feed.m_idGenerator.MakeId(BuildHash(kHashPrefix, std::to_string(gateSubway.GetOsmId())));
GateData gateData;
gateData.m_isEntrance = gateSubway.GetEntrance();
@@ -176,15 +171,14 @@ std::pair<TransitId, GateData> SubwayConverter::MakeGate(routing::transit::Gate
for (auto stopIdSubway : gateSubway.GetStopIds())
{
gateData.m_weights.emplace_back(TimeFromGateToStop(m_stopIdMapping[stopIdSubway] /* stopId */,
gateSubway.GetWeight() /* timeSeconds */));
gateData.m_weights.emplace_back(
TimeFromGateToStop(m_stopIdMapping[stopIdSubway] /* stopId */, gateSubway.GetWeight() /* timeSeconds */));
}
return {gateId, gateData};
}
std::pair<TransitId, TransferData> SubwayConverter::MakeTransfer(
routing::transit::Transfer const & transferSubway)
std::pair<TransitId, TransferData> SubwayConverter::MakeTransfer(routing::transit::Transfer const & transferSubway)
{
TransitId const transferId =
m_feed.m_idGenerator.MakeId(BuildHash(kHashPrefix, std::to_string(transferSubway.GetId())));
@@ -198,8 +192,7 @@ std::pair<TransitId, TransferData> SubwayConverter::MakeTransfer(
return {transferId, transferData};
}
std::pair<TransitId, LineData> SubwayConverter::MakeLine(routing::transit::Line const & lineSubway,
TransitId routeId)
std::pair<TransitId, LineData> SubwayConverter::MakeLine(routing::transit::Line const & lineSubway, TransitId routeId)
{
TransitId const lineId = lineSubway.GetId();
CHECK(!routing::FakeFeatureIds::IsTransitFeature(lineId), (lineId));
@@ -212,12 +205,10 @@ std::pair<TransitId, LineData> SubwayConverter::MakeLine(routing::transit::Line
return {lineId, lineData};
}
std::pair<EdgeId, EdgeData> SubwayConverter::MakeEdge(routing::transit::Edge const & edgeSubway,
uint32_t index)
std::pair<EdgeId, EdgeData> SubwayConverter::MakeEdge(routing::transit::Edge const & edgeSubway, uint32_t index)
{
auto const lineId = edgeSubway.GetLineId();
EdgeId const edgeId(m_stopIdMapping[edgeSubway.GetStop1Id()],
m_stopIdMapping[edgeSubway.GetStop2Id()], lineId);
EdgeId const edgeId(m_stopIdMapping[edgeSubway.GetStop1Id()], m_stopIdMapping[edgeSubway.GetStop2Id()], lineId);
EdgeData edgeData;
edgeData.m_weight = edgeSubway.GetWeight();
edgeData.m_featureId = index;
@@ -229,8 +220,8 @@ std::pair<EdgeId, EdgeData> SubwayConverter::MakeEdge(routing::transit::Edge con
return {edgeId, edgeData};
}
std::pair<EdgeTransferId, EdgeData> SubwayConverter::MakeEdgeTransfer(
routing::transit::Edge const & edgeSubway, uint32_t index)
std::pair<EdgeTransferId, EdgeData> SubwayConverter::MakeEdgeTransfer(routing::transit::Edge const & edgeSubway,
uint32_t index)
{
EdgeTransferId const edgeTransferId(m_stopIdMapping[edgeSubway.GetStop1Id()] /* fromStopId */,
m_stopIdMapping[edgeSubway.GetStop2Id()] /* toStopId */);
@@ -270,8 +261,8 @@ bool SubwayConverter::ConvertLinesBasedData()
auto [lineId, lineData] = MakeLine(lineSubway, routeId);
TransitId const shapeId = m_feed.m_idGenerator.MakeId(
BuildHash(kHashPrefix, std::string("shape"), std::to_string(lineId)));
TransitId const shapeId =
m_feed.m_idGenerator.MakeId(BuildHash(kHashPrefix, std::string("shape"), std::to_string(lineId)));
lineData.m_shapeId = shapeId;
ShapeData shapeData;
@@ -342,8 +333,8 @@ bool SubwayConverter::ConvertLinesBasedData()
if (inserted)
{
itEdgeOnShape->second.push_back(edgePoints);
LOG(LWARNING, ("Edge duplicate in subways. stop1_id", stopIdSubwayPrev, "stop2_id",
stopIdSubway, "line_id", lineId));
LOG(LWARNING,
("Edge duplicate in subways. stop1_id", stopIdSubwayPrev, "stop2_id", stopIdSubway, "line_id", lineId));
}
}
@@ -351,8 +342,7 @@ bool SubwayConverter::ConvertLinesBasedData()
m_feed.m_shapes.m_data.emplace(shapeId, shapeData);
}
LOG(LDEBUG, ("Converted", m_feed.m_routes.m_data.size(), "routes,", m_feed.m_lines.m_data.size(),
"lines."));
LOG(LDEBUG, ("Converted", m_feed.m_routes.m_data.size(), "routes,", m_feed.m_lines.m_data.size(), "lines."));
return !m_feed.m_lines.m_data.empty();
}
@@ -384,10 +374,8 @@ bool SubwayConverter::ConvertTransfers()
for (auto const & stopId : transferData.m_stopsIds)
{
for (auto const & [lineId, lineData] : m_feed.m_lines.m_data)
{
if (base::IsExist(lineData.m_stopIds, stopId))
routeToStops[lineData.m_routeId].insert(stopId);
}
}
// We don't count as transfers transfer points between lines on the same route, so we skip them.
@@ -463,8 +451,7 @@ void SubwayConverter::MinimizeReversedLinesCount()
if (revStopIds == lineDataStraight.m_stopIds)
{
lineData.m_shapeLink = lineDataStraight.m_shapeLink;
LOG(LDEBUG, ("Reversed line", lineId, "to line", lineIdStraight, "shapeLink",
lineData.m_shapeLink));
LOG(LDEBUG, ("Reversed line", lineId, "to line", lineIdStraight, "shapeLink", lineData.m_shapeLink));
reversed = true;
break;
}
@@ -519,19 +506,15 @@ std::vector<LineSchemeData> SubwayConverter::GetLinesOnScheme(
continue;
// New shape link is fully included into the existing one.
if (shapeLink.m_startIndex <= newShapeLink.m_startIndex &&
shapeLink.m_endIndex >= newShapeLink.m_endIndex)
if (shapeLink.m_startIndex <= newShapeLink.m_startIndex && shapeLink.m_endIndex >= newShapeLink.m_endIndex)
{
insert = false;
continue;
}
// Existing shape link is fully included into the new one. It should be removed.
if (newShapeLink.m_startIndex <= shapeLink.m_startIndex &&
newShapeLink.m_endIndex >= shapeLink.m_endIndex)
{
if (newShapeLink.m_startIndex <= shapeLink.m_startIndex && newShapeLink.m_endIndex >= shapeLink.m_endIndex)
linksForRemoval.push_back(shapeLink);
}
}
for (auto const & sl : linksForRemoval)
@@ -570,10 +553,8 @@ enum class LineSegmentState
struct LineSegmentInfo
{
LineSegmentInfo() = default;
LineSegmentInfo(LineSegmentState const & state, bool codirectional)
: m_state(state), m_codirectional(codirectional)
{
}
LineSegmentInfo(LineSegmentState const & state, bool codirectional) : m_state(state), m_codirectional(codirectional)
{}
LineSegmentState m_state = LineSegmentState::Start;
bool m_codirectional = false;
@@ -594,16 +575,13 @@ bool Equal(LineGeometry const & line1, LineGeometry const & line2)
return false;
for (size_t i = 0; i < line1.size(); ++i)
{
if (!AlmostEqualAbs(line1[i], line2[i], kEps))
return false;
}
return true;
}
bool AddToCache(std::string const & color, LineGeometry const & linePart,
ColorToLinepartsCache & cache)
bool AddToCache(std::string const & color, LineGeometry const & linePart, ColorToLinepartsCache & cache)
{
auto [it, inserted] = cache.emplace(color, std::vector<LineGeometry>());
@@ -616,10 +594,8 @@ bool AddToCache(std::string const & color, LineGeometry const & linePart,
std::vector<m2::PointD> linePartRev = GetReversed(linePart);
for (LineGeometry const & cachedPart : it->second)
{
if (Equal(cachedPart, linePart) || Equal(cachedPart, linePartRev))
return false;
}
it->second.push_back(linePart);
return true;
@@ -643,13 +619,10 @@ void SubwayConverter::CalculateLinePriorities(std::vector<LineSchemeData> const
for (auto const & [parallelLineId, parallelFirstPoint] : linePart.m_commonLines)
{
bool const codirectional =
AlmostEqualAbs(linePart.m_firstPoint, parallelFirstPoint, kEps);
bool const codirectional = AlmostEqualAbs(linePart.m_firstPoint, parallelFirstPoint, kEps);
startPointState.parallelLineStates[parallelLineId] =
LineSegmentInfo(LineSegmentState::Start, codirectional);
endPointState.parallelLineStates[parallelLineId] =
LineSegmentInfo(LineSegmentState::Finish, codirectional);
startPointState.parallelLineStates[parallelLineId] = LineSegmentInfo(LineSegmentState::Start, codirectional);
endPointState.parallelLineStates[parallelLineId] = LineSegmentInfo(LineSegmentState::Finish, codirectional);
}
}
@@ -705,14 +678,11 @@ void SubwayConverter::CalculateLinePriorities(std::vector<LineSchemeData> const
}
LineSegmentOrder lso;
lso.m_segment =
LineSegment(static_cast<uint32_t>(startIndex), static_cast<uint32_t>(endIndex));
lso.m_segment = LineSegment(static_cast<uint32_t>(startIndex), static_cast<uint32_t>(endIndex));
auto const & polyline =
m_feed.m_shapes.m_data.at(lineSchemeData.m_shapeLink.m_shapeId).m_points;
auto const & polyline = m_feed.m_shapes.m_data.at(lineSchemeData.m_shapeLink.m_shapeId).m_points;
if (!AddToCache(color,
GetPolylinePart(polyline, lso.m_segment.m_startIdx, lso.m_segment.m_endIdx),
if (!AddToCache(color, GetPolylinePart(polyline, lso.m_segment.m_startIdx, lso.m_segment.m_endIdx),
routeSegmentsCache))
{
continue;
@@ -735,10 +705,9 @@ void SubwayConverter::CalculateLinePriorities(std::vector<LineSchemeData> const
m_feed.m_linesMetadata.m_data[lineId].push_back(lso);
LOG(LINFO,
("routeId", routeId, "lineId", lineId, "start", startIndex, "end", endIndex, "len",
endIndex - startIndex + 1, "order", lso.m_order, "index", index, "reversed", reversed,
"|| lines count:", parallelLines.size(), "colors count:", colors.size()));
LOG(LINFO, ("routeId", routeId, "lineId", lineId, "start", startIndex, "end", endIndex, "len",
endIndex - startIndex + 1, "order", lso.m_order, "index", index, "reversed", reversed,
"|| lines count:", parallelLines.size(), "colors count:", colors.size()));
}
}
}
@@ -757,9 +726,8 @@ void SubwayConverter::PrepareLinesMetadata()
auto const & shapeLink1 = linesInRegion.at(line1.m_lineId).m_shapeLink;
// |polyline1| is sub-polyline of the shapeLink1 geometry.
auto const polyline1 =
GetPolylinePart(m_feed.m_shapes.m_data.at(shapeLink1.m_shapeId).m_points,
shapeLink1.m_startIndex, shapeLink1.m_endIndex);
auto const polyline1 = GetPolylinePart(m_feed.m_shapes.m_data.at(shapeLink1.m_shapeId).m_points,
shapeLink1.m_startIndex, shapeLink1.m_endIndex);
for (size_t j = i + 1; j < linesOnScheme.size(); ++j)
{
@@ -771,9 +739,8 @@ void SubwayConverter::PrepareLinesMetadata()
CHECK_LESS(shapeLink1.m_startIndex, shapeLink1.m_endIndex, ());
CHECK_LESS(shapeLink2.m_startIndex, shapeLink2.m_endIndex, ());
std::optional<LineSegment> inter =
GetIntersection(shapeLink1.m_startIndex, shapeLink1.m_endIndex,
shapeLink2.m_startIndex, shapeLink2.m_endIndex);
std::optional<LineSegment> inter = GetIntersection(shapeLink1.m_startIndex, shapeLink1.m_endIndex,
shapeLink2.m_startIndex, shapeLink2.m_endIndex);
if (inter != std::nullopt)
{
@@ -798,33 +765,26 @@ void SubwayConverter::PrepareLinesMetadata()
std::tie(segments1, segments2) = FindIntersections(polyline1, polyline2Rev);
if (!segments1.empty())
{
for (auto & seg : segments2)
UpdateReversedSegmentIndexes(seg, polyline2.size());
}
}
if (!segments1.empty())
{
for (size_t k = 0; k < segments1.size(); ++k)
{
auto const & [startPoint1, endPoint1] =
GetSegmentEdgesOnPolyline(polyline1, segments1[k]);
auto const & [startPoint2, endPoint2] =
GetSegmentEdgesOnPolyline(polyline2, segments2[k]);
auto const & [startPoint1, endPoint1] = GetSegmentEdgesOnPolyline(polyline1, segments1[k]);
auto const & [startPoint2, endPoint2] = GetSegmentEdgesOnPolyline(polyline2, segments2[k]);
CHECK((AlmostEqualAbs(startPoint1, startPoint2, kEps) &&
AlmostEqualAbs(endPoint1, endPoint2, kEps)) ||
(AlmostEqualAbs(startPoint1, endPoint2, kEps) &&
AlmostEqualAbs(endPoint1, startPoint2, kEps)), ());
CHECK((AlmostEqualAbs(startPoint1, startPoint2, kEps) && AlmostEqualAbs(endPoint1, endPoint2, kEps)) ||
(AlmostEqualAbs(startPoint1, endPoint2, kEps) && AlmostEqualAbs(endPoint1, startPoint2, kEps)),
());
ShiftSegmentOnShape(segments1[k], shapeLink1);
ShiftSegmentOnShape(segments2[k], shapeLink2);
UpdateLinePart(line1.m_lineParts, segments1[k], startPoint1, line2.m_lineId,
startPoint2);
UpdateLinePart(line2.m_lineParts, segments2[k], startPoint2, line1.m_lineId,
startPoint1);
UpdateLinePart(line1.m_lineParts, segments1[k], startPoint1, line2.m_lineId, startPoint2);
UpdateLinePart(line2.m_lineParts, segments2[k], startPoint2, line1.m_lineId, startPoint1);
}
}
}
@@ -836,12 +796,10 @@ void SubwayConverter::PrepareLinesMetadata()
}
}
routing::transit::Edge SubwayConverter::FindEdge(routing::transit::StopId stop1Id,
routing::transit::StopId stop2Id,
routing::transit::Edge SubwayConverter::FindEdge(routing::transit::StopId stop1Id, routing::transit::StopId stop2Id,
routing::transit::LineId lineId) const
{
routing::transit::Edge edge(stop1Id, stop2Id, 0 /* weight */, lineId, false /* transfer */,
{} /* shapeIds */);
routing::transit::Edge edge(stop1Id, stop2Id, 0 /* weight */, lineId, false /* transfer */, {} /* shapeIds */);
auto const itEdge = m_edgesSubway.find(edge);