31 static Status Parse(
const tinyxml2::XMLElement& xml_node,
32 const std::string& road_id,
33 std::vector<RoadSectionInternal>* sections);
36 static Status ParseLaneSection(
const tinyxml2::XMLElement& xml_node,
37 std::vector<LaneInternal>* lanes);
39 static Status ParseSectionBoundary(
const tinyxml2::XMLElement& xml_node,
42 static Status ToPbBoundaryType(
const std::string& type,
44 static Status ParseLane(
const tinyxml2::XMLElement& xml_node,
46 static Status ParseDirection(
const tinyxml2::XMLElement& xml_node,
48 static Status ParseCenterCurve(
const tinyxml2::XMLElement& xml_node,
50 static Status ParseSpeed(
const tinyxml2::XMLElement& xml_node,
PbLane* lane);
51 static Status ParseSampleAssociates(
const tinyxml2::XMLElement& xml_node,
53 static Status ParseSingleSideRoadSampleAssociates(
54 const tinyxml2::XMLElement& xml_node,
bool bleft,
PbLane* lane);
55 static Status ParseLeftRoadSampleAssociates(
56 const tinyxml2::XMLElement& xml_node,
PbLane* lane);
57 static Status ParseRightRoadSampleAssociates(
58 const tinyxml2::XMLElement& xml_node,
PbLane* lane);
59 static Status ParseRoadSampleAssociates(
const tinyxml2::XMLElement& xml_node,
61 static Status ParseObjectOverlapGroup(
62 const tinyxml2::XMLElement& xml_node,
63 std::vector<OverlapWithLane>* object_overlaps);
64 static Status ParseSignalOverlapGroup(
65 const tinyxml2::XMLElement& xml_node,
66 std::vector<OverlapWithLane>* signal_overlaps);
67 static Status ParseJunctionOverlapGroup(
68 const tinyxml2::XMLElement& xml_node,
69 std::vector<OverlapWithLane>* junction_overlaps);
70 static Status ParseLaneOverlapGroup(
71 const tinyxml2::XMLElement& xml_node,
72 std::vector<OverlapWithLane>* lane_overlaps);
75 static Status ToPbTurnType(
const std::string& type,
PbTurnType* pb_turn_type);
76 static Status ToPbDirection(
const std::string& type,
79 static void ParseLaneLink(
const tinyxml2::XMLElement& xml_node,
PbLane* lane);
80 static Status ParseLaneBorderMark(
const tinyxml2::XMLElement& xml_node,
82 static Status ToPbLaneMarkType(
const std::string& type,
83 const std::string& color,
85 static Status ParseRegionOverlap(
86 const tinyxml2::XMLElement& xml_node,
87 std::vector<PbRegionOverlap>* region_overlaps);