bool ParseProtoMsg::DecodeLaneInfoListMessage(
msg::perception::lane::LaneInfoCameraList& proto_in,
ad_msg::LaneInfoCameraList* data_out) {
if (nullptr == data_out) {
return false;
}
// 清空输出结构
data_out->Clear();
// 1. 解析消息头
if (proto_in.has_msg_head()) {
auto& proto_head = proto_in.msg_head();
if (proto_head.has_seq()) {
data_out->msg_head.seq = proto_head.seq();
}
if (proto_head.has_timestamp()) {
data_out->msg_head.timestamp = proto_head.timestamp();
}
}
// 2. 解析基础字段
if (proto_in.has_quality()) {
data_out->quality = static_cast<Int8_t>(proto_in.quality());
}
if (proto_in.has_forward_len()) {
data_out->forward_len = proto_in.forward_len();
}
if (proto_in.has_left_width()) {
data_out->left_width = proto_in.left_width();
}
if (proto_in.has_right_width()) {
data_out->right_width = proto_in.right_width();
}
// 3. 解析边界线 (boundary_lines)
const int boundary_count = std::min(
proto_in.boundary_lines_size(),
ad_msg::LaneInfoCameraList::MAX_LANE_BOUNDARY_LINE_NUM);
data_out->boundary_lines_els_num = boundary_count;
for (int i = 0; i < boundary_count; ++i) {
const auto& proto_line = proto_in.boundary_lines(i);
auto& cpp_line = data_out->boundary_lines[i];
// 解析边界线基础字段
if (proto_line.has_id()) cpp_line.id = proto_line.id();
// 使用switch-case处理类型字段
if (proto_line.has_type()) {
switch (proto_line.type()) {
case msg::perception::lane::LaneBoundaryLineCamera::LaneMarkType_LANE_MARK_TYPE_INVALID:
cpp_line.type = 0; // 对应C++中的INVALID
break;
case msg::perception::lane::LaneBoundaryLineCamera::LaneMarkType_LANE_MARK_TYPE_UNKNOWN:
cpp_line.type = 1;
break;
case msg::perception::lane::LaneBoundaryLineCamera::LaneMarkType_LANE_MARK_TYPE_DASHED:
cpp_line.type = 2;
break;
case msg::perception::lane::LaneBoundaryLineCamera::LaneMarkType_LANE_MARK_TYPE_SOLID:
cpp_line.type = 3;
break;
case msg::perception::lane::LaneBoundaryLineCamera::LaneMarkType_LANE_MARK_TYPE_DOUBLE_LANE_MARK:
cpp_line.type = 4;
break;
case msg::perception::lane::LaneBoundaryLineCamera::LaneMarkType_LANE_MARK_TYPE_BOTTS_DOTS:
cpp_line.type = 5;
break;
case msg::perception::lane::LaneBoundaryLineCamera::LaneMarkType_LANE_MARK_TYPE_ROAD_EDGE:
cpp_line.type = 6;
break;
case msg::perception::lane::LaneBoundaryLineCamera::LaneMarkType_LANE_MARK_TYPE_DASHED_SOLID:
cpp_line.type = 7;
break;
case msg::perception::lane::LaneBoundaryLineCamera::LaneMarkType_LANE_MARK_TYPE_SOLID_DASHED:
cpp_line.type = 8;
break;
case msg::perception::lane::LaneBoundaryLineCamera::LaneMarkType_LANE_MARK_TYPE_DOUBLE_YELLOW:
cpp_line.type = 9;
break;
case msg::perception::lane::LaneBoundaryLineCamera::LaneMarkType_LANE_MARK_TYPE_FISHBONE:
cpp_line.type = 10;
break;
default:
// 处理未定义类型
cpp_line.type = 0; // 默认为INVALID
break;
}
}
// 解析曲线点
const int point_count = std::min(
proto_line.curve_size(),
ad_msg::LaneBoundaryLineCamera::MAX_CURVE_POINT_NUM);
cpp_line.curve_els_num = point_count;
for (int j = 0; j < point_count; ++j) {
const auto& proto_point = proto_line.curve(j);
auto& cpp_point = cpp_line.curve[j];
cpp_point.fake = proto_point.fake() ? 1 : 0;
if (proto_point.has_x()) cpp_point.x = proto_point.x();
if (proto_point.has_y()) cpp_point.y = proto_point.y();
}
}
// 4. 解析中心线 (center_lines)
const int center_count = std::min(
proto_in.center_lines_size(),
ad_msg::LaneInfoCameraList::MAX_LANE_CENTER_LINE_NUM);
data_out->center_lines_els_num = center_count;
for (int i = 0; i < center_count; ++i) {
const auto& proto_line = proto_in.center_lines(i);
auto& cpp_line = data_out->center_lines[i];
// 解析中心线基础字段
if (proto_line.has_quality()) cpp_line.quality = static_cast<Int8_t>(proto_line.quality());
if (proto_line.has_age()) cpp_line.age = proto_line.age();
if (proto_line.has_forward_len()) cpp_line.forward_len = proto_line.forward_len();
if (proto_line.has_id()) cpp_line.id = proto_line.id();
if (proto_line.has_left_boundary_index()) {
cpp_line.left_boundary_index = proto_line.left_boundary_index();
}
if (proto_line.has_right_boundary_index()) {
cpp_line.right_boundary_index = proto_line.right_boundary_index();
}
// 解析中心曲线点
const int point_count = std::min(
proto_line.curve_size(),
ad_msg::LaneCenterLineCamera::MAX_CURVE_POINT_NUM);
cpp_line.curve_els_num = point_count;
for (int j = 0; j < point_count; ++j) {
const auto& proto_point = proto_line.curve(j);
auto& cpp_point = cpp_line.curve[j];
if (proto_point.has_x()) cpp_point.x = proto_point.x();
if (proto_point.has_y()) cpp_point.y = proto_point.y();
if (proto_point.has_left_width()) cpp_point.left_width = proto_point.left_width();
if (proto_point.has_right_width()) cpp_point.right_width = proto_point.right_width();
}
}
return true;
} 以上代码出现以下错误,请修改/home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.cc: In member function ‘bool phoenix::msg::ParseProtoMsg::DecodeLaneInfoListMessage(phoenix::msg::perception::lane::LaneInfoCameraList&, phoenix::ad_msg::LaneInfoCameraList*)’:
/home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.cc:502:26: error: ‘struct phoenix::ad_msg::MsgHead’ has no member named ‘seq’
502 | data_out->msg_head.seq = proto_head.seq();
| ^~~
/home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.cc:526:61: error: no matching function for call to ‘min(int, phoenix::ad_msg::LaneInfoCameraList::<unnamed enum>)’
526 | ad_msg::LaneInfoCameraList::MAX_LANE_BOUNDARY_LINE_NUM);
| ^
In file included from /usr/include/c++/9/bits/char_traits.h:39,
from /usr/include/c++/9/string:40,
from /home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/gnss.pb.h:8,
from /home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.h:7,
from /home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.cc:2:
/usr/include/c++/9/bits/stl_algobase.h:198:5: note: candidate: ‘template<class _Tp> const _Tp& std::min(const _Tp&, const _Tp&)’
198 | min(const _Tp& __a, const _Tp& __b)
| ^~~
/usr/include/c++/9/bits/stl_algobase.h:198:5: note: template argument deduction/substitution failed:
/home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.cc:526:61: note: deduced conflicting types for parameter ‘const _Tp’ (‘int’ and ‘phoenix::ad_msg::LaneInfoCameraList::<unnamed enum>’)
526 | ad_msg::LaneInfoCameraList::MAX_LANE_BOUNDARY_LINE_NUM);
| ^
In file included from /usr/include/c++/9/bits/char_traits.h:39,
from /usr/include/c++/9/string:40,
from /home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/gnss.pb.h:8,
from /home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.h:7,
from /home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.cc:2:
/usr/include/c++/9/bits/stl_algobase.h:246:5: note: candidate: ‘template<class _Tp, class _Compare> const _Tp& std::min(const _Tp&, const _Tp&, _Compare)’
246 | min(const _Tp& __a, const _Tp& __b, _Compare __comp)
| ^~~
/usr/include/c++/9/bits/stl_algobase.h:246:5: note: template argument deduction/substitution failed:
/home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.cc:526:61: note: deduced conflicting types for parameter ‘const _Tp’ (‘int’ and ‘phoenix::ad_msg::LaneInfoCameraList::<unnamed enum>’)
526 | ad_msg::LaneInfoCameraList::MAX_LANE_BOUNDARY_LINE_NUM);
| ^
In file included from /usr/include/c++/9/algorithm:62,
from /usr/local/include/google/protobuf/stubs/common.h:38,
from /usr/local/include/google/protobuf/io/coded_stream.h:141,
from /home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/gnss.pb.h:23,
from /home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.h:7,
from /home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.cc:2:
/usr/include/c++/9/bits/stl_algo.h:3450:5: note: candidate: ‘template<class _Tp> _Tp std::min(std::initializer_list<_Tp>)’
3450 | min(initializer_list<_Tp> __l)
| ^~~
/usr/include/c++/9/bits/stl_algo.h:3450:5: note: template argument deduction/substitution failed:
/home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.cc:526:61: note: mismatched types ‘std::initializer_list<_Tp>’ and ‘int’
526 | ad_msg::LaneInfoCameraList::MAX_LANE_BOUNDARY_LINE_NUM);
| ^
In file included from /usr/include/c++/9/algorithm:62,
from /usr/local/include/google/protobuf/stubs/common.h:38,
from /usr/local/include/google/protobuf/io/coded_stream.h:141,
from /home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/gnss.pb.h:23,
from /home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.h:7,
from /home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.cc:2:
/usr/include/c++/9/bits/stl_algo.h:3456:5: note: candidate: ‘template<class _Tp, class _Compare> _Tp std::min(std::initializer_list<_Tp>, _Compare)’
3456 | min(initializer_list<_Tp> __l, _Compare __comp)
| ^~~
/usr/include/c++/9/bits/stl_algo.h:3456:5: note: template argument deduction/substitution failed:
/home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.cc:526:61: note: mismatched types ‘std::initializer_list<_Tp>’ and ‘int’
526 | ad_msg::LaneInfoCameraList::MAX_LANE_BOUNDARY_LINE_NUM);
| ^
/home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.cc:539:61: error: ‘LaneMarkType_LANE_MARK_TYPE_INVALID’ is not a member of ‘phoenix::msg::perception::lane::LaneBoundaryLineCamera’
539 | case msg::perception::lane::LaneBoundaryLineCamera::LaneMarkType_LANE_MARK_TYPE_INVALID:
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.cc:542:61: error: ‘LaneMarkType_LANE_MARK_TYPE_UNKNOWN’ is not a member of ‘phoenix::msg::perception::lane::LaneBoundaryLineCamera’
542 | case msg::perception::lane::LaneBoundaryLineCamera::LaneMarkType_LANE_MARK_TYPE_UNKNOWN:
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.cc:545:61: error: ‘LaneMarkType_LANE_MARK_TYPE_DASHED’ is not a member of ‘phoenix::msg::perception::lane::LaneBoundaryLineCamera’
545 | case msg::perception::lane::LaneBoundaryLineCamera::LaneMarkType_LANE_MARK_TYPE_DASHED:
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.cc:548:61: error: ‘LaneMarkType_LANE_MARK_TYPE_SOLID’ is not a member of ‘phoenix::msg::perception::lane::LaneBoundaryLineCamera’
548 | case msg::perception::lane::LaneBoundaryLineCamera::LaneMarkType_LANE_MARK_TYPE_SOLID:
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.cc:551:61: error: ‘LaneMarkType_LANE_MARK_TYPE_DOUBLE_LANE_MARK’ is not a member of ‘phoenix::msg::perception::lane::LaneBoundaryLineCamera’
551 | case msg::perception::lane::LaneBoundaryLineCamera::LaneMarkType_LANE_MARK_TYPE_DOUBLE_LANE_MARK:
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.cc:554:61: error: ‘LaneMarkType_LANE_MARK_TYPE_BOTTS_DOTS’ is not a member of ‘phoenix::msg::perception::lane::LaneBoundaryLineCamera’
554 | case msg::perception::lane::LaneBoundaryLineCamera::LaneMarkType_LANE_MARK_TYPE_BOTTS_DOTS:
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.cc:557:61: error: ‘LaneMarkType_LANE_MARK_TYPE_ROAD_EDGE’ is not a member of ‘phoenix::msg::perception::lane::LaneBoundaryLineCamera’
557 | case msg::perception::lane::LaneBoundaryLineCamera::LaneMarkType_LANE_MARK_TYPE_ROAD_EDGE:
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.cc:560:61: error: ‘LaneMarkType_LANE_MARK_TYPE_DASHED_SOLID’ is not a member of ‘phoenix::msg::perception::lane::LaneBoundaryLineCamera’
560 | case msg::perception::lane::LaneBoundaryLineCamera::LaneMarkType_LANE_MARK_TYPE_DASHED_SOLID:
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.cc:563:61: error: ‘LaneMarkType_LANE_MARK_TYPE_SOLID_DASHED’ is not a member of ‘phoenix::msg::perception::lane::LaneBoundaryLineCamera’
563 | case msg::perception::lane::LaneBoundaryLineCamera::LaneMarkType_LANE_MARK_TYPE_SOLID_DASHED:
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.cc:566:61: error: ‘LaneMarkType_LANE_MARK_TYPE_DOUBLE_YELLOW’ is not a member of ‘phoenix::msg::perception::lane::LaneBoundaryLineCamera’
566 | case msg::perception::lane::LaneBoundaryLineCamera::LaneMarkType_LANE_MARK_TYPE_DOUBLE_YELLOW:
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.cc:569:61: error: ‘LaneMarkType_LANE_MARK_TYPE_FISHBONE’ is not a member of ‘phoenix::msg::perception::lane::LaneBoundaryLineCamera’
569 | case msg::perception::lane::LaneBoundaryLineCamera::LaneMarkType_LANE_MARK_TYPE_FISHBONE:
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.cc:581:60: error: no matching function for call to ‘min(int, phoenix::ad_msg::LaneBoundaryLineCamera::<unnamed enum>)’
581 | ad_msg::LaneBoundaryLineCamera::MAX_CURVE_POINT_NUM);
| ^
In file included from /usr/include/c++/9/bits/char_traits.h:39,
from /usr/include/c++/9/string:40,
from /home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/gnss.pb.h:8,
from /home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.h:7,
from /home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.cc:2:
/usr/include/c++/9/bits/stl_algobase.h:198:5: note: candidate: ‘template<class _Tp> const _Tp& std::min(const _Tp&, const _Tp&)’
198 | min(const _Tp& __a, const _Tp& __b)
| ^~~
/usr/include/c++/9/bits/stl_algobase.h:198:5: note: template argument deduction/substitution failed:
/home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.cc:581:60: note: deduced conflicting types for parameter ‘const _Tp’ (‘int’ and ‘phoenix::ad_msg::LaneBoundaryLineCamera::<unnamed enum>’)
581 | ad_msg::LaneBoundaryLineCamera::MAX_CURVE_POINT_NUM);
| ^
In file included from /usr/include/c++/9/bits/char_traits.h:39,
from /usr/include/c++/9/string:40,
from /home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/gnss.pb.h:8,
from /home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.h:7,
from /home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.cc:2:
/usr/include/c++/9/bits/stl_algobase.h:246:5: note: candidate: ‘template<class _Tp, class _Compare> const _Tp& std::min(const _Tp&, const _Tp&, _Compare)’
246 | min(const _Tp& __a, const _Tp& __b, _Compare __comp)
| ^~~
/usr/include/c++/9/bits/stl_algobase.h:246:5: note: template argument deduction/substitution failed:
/home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.cc:581:60: note: deduced conflicting types for parameter ‘const _Tp’ (‘int’ and ‘phoenix::ad_msg::LaneBoundaryLineCamera::<unnamed enum>’)
581 | ad_msg::LaneBoundaryLineCamera::MAX_CURVE_POINT_NUM);
| ^
In file included from /usr/include/c++/9/algorithm:62,
from /usr/local/include/google/protobuf/stubs/common.h:38,
from /usr/local/include/google/protobuf/io/coded_stream.h:141,
from /home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/gnss.pb.h:23,
from /home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.h:7,
from /home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.cc:2:
/usr/include/c++/9/bits/stl_algo.h:3450:5: note: candidate: ‘template<class _Tp> _Tp std::min(std::initializer_list<_Tp>)’
3450 | min(initializer_list<_Tp> __l)
| ^~~
/usr/include/c++/9/bits/stl_algo.h:3450:5: note: template argument deduction/substitution failed:
/home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.cc:581:60: note: mismatched types ‘std::initializer_list<_Tp>’ and ‘int’
581 | ad_msg::LaneBoundaryLineCamera::MAX_CURVE_POINT_NUM);
| ^
In file included from /usr/include/c++/9/algorithm:62,
from /usr/local/include/google/protobuf/stubs/common.h:38,
from /usr/local/include/google/protobuf/io/coded_stream.h:141,
from /home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/gnss.pb.h:23,
from /home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.h:7,
from /home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.cc:2:
/usr/include/c++/9/bits/stl_algo.h:3456:5: note: candidate: ‘template<class _Tp, class _Compare> _Tp std::min(std::initializer_list<_Tp>, _Compare)’
3456 | min(initializer_list<_Tp> __l, _Compare __comp)
| ^~~
/usr/include/c++/9/bits/stl_algo.h:3456:5: note: template argument deduction/substitution failed:
/home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.cc:581:60: note: mismatched types ‘std::initializer_list<_Tp>’ and ‘int’
581 | ad_msg::LaneBoundaryLineCamera::MAX_CURVE_POINT_NUM);
| ^
/home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.cc:598:59: error: no matching function for call to ‘min(int, phoenix::ad_msg::LaneInfoCameraList::<unnamed enum>)’
598 | ad_msg::LaneInfoCameraList::MAX_LANE_CENTER_LINE_NUM);
| ^
In file included from /usr/include/c++/9/bits/char_traits.h:39,
from /usr/include/c++/9/string:40,
from /home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/gnss.pb.h:8,
from /home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.h:7,
from /home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.cc:2:
/usr/include/c++/9/bits/stl_algobase.h:198:5: note: candidate: ‘template<class _Tp> const _Tp& std::min(const _Tp&, const _Tp&)’
198 | min(const _Tp& __a, const _Tp& __b)
| ^~~
/usr/include/c++/9/bits/stl_algobase.h:198:5: note: template argument deduction/substitution failed:
/home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.cc:598:59: note: deduced conflicting types for parameter ‘const _Tp’ (‘int’ and ‘phoenix::ad_msg::LaneInfoCameraList::<unnamed enum>’)
598 | ad_msg::LaneInfoCameraList::MAX_LANE_CENTER_LINE_NUM);
| ^
In file included from /usr/include/c++/9/bits/char_traits.h:39,
from /usr/include/c++/9/string:40,
from /home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/gnss.pb.h:8,
from /home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.h:7,
from /home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.cc:2:
/usr/include/c++/9/bits/stl_algobase.h:246:5: note: candidate: ‘template<class _Tp, class _Compare> const _Tp& std::min(const _Tp&, const _Tp&, _Compare)’
246 | min(const _Tp& __a, const _Tp& __b, _Compare __comp)
| ^~~
/usr/include/c++/9/bits/stl_algobase.h:246:5: note: template argument deduction/substitution failed:
/home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.cc:598:59: note: deduced conflicting types for parameter ‘const _Tp’ (‘int’ and ‘phoenix::ad_msg::LaneInfoCameraList::<unnamed enum>’)
598 | ad_msg::LaneInfoCameraList::MAX_LANE_CENTER_LINE_NUM);
| ^
In file included from /usr/include/c++/9/algorithm:62,
from /usr/local/include/google/protobuf/stubs/common.h:38,
from /usr/local/include/google/protobuf/io/coded_stream.h:141,
from /home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/gnss.pb.h:23,
from /home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.h:7,
from /home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.cc:2:
/usr/include/c++/9/bits/stl_algo.h:3450:5: note: candidate: ‘template<class _Tp> _Tp std::min(std::initializer_list<_Tp>)’
3450 | min(initializer_list<_Tp> __l)
| ^~~
/usr/include/c++/9/bits/stl_algo.h:3450:5: note: template argument deduction/substitution failed:
/home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.cc:598:59: note: mismatched types ‘std::initializer_list<_Tp>’ and ‘int’
598 | ad_msg::LaneInfoCameraList::MAX_LANE_CENTER_LINE_NUM);
| ^
In file included from /usr/include/c++/9/algorithm:62,
from /usr/local/include/google/protobuf/stubs/common.h:38,
from /usr/local/include/google/protobuf/io/coded_stream.h:141,
from /home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/gnss.pb.h:23,
from /home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.h:7,
from /home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.cc:2:
/usr/include/c++/9/bits/stl_algo.h:3456:5: note: candidate: ‘template<class _Tp, class _Compare> _Tp std::min(std::initializer_list<_Tp>, _Compare)’
3456 | min(initializer_list<_Tp> __l, _Compare __comp)
| ^~~
/usr/include/c++/9/bits/stl_algo.h:3456:5: note: template argument deduction/substitution failed:
/home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.cc:598:59: note: mismatched types ‘std::initializer_list<_Tp>’ and ‘int’
598 | ad_msg::LaneInfoCameraList::MAX_LANE_CENTER_LINE_NUM);
| ^
/home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.cc:621:58: error: no matching function for call to ‘min(int, phoenix::ad_msg::LaneCenterLineCamera::<unnamed enum>)’
621 | ad_msg::LaneCenterLineCamera::MAX_CURVE_POINT_NUM);
| ^
In file included from /usr/include/c++/9/bits/char_traits.h:39,
from /usr/include/c++/9/string:40,
from /home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/gnss.pb.h:8,
from /home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.h:7,
from /home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.cc:2:
/usr/include/c++/9/bits/stl_algobase.h:198:5: note: candidate: ‘template<class _Tp> const _Tp& std::min(const _Tp&, const _Tp&)’
198 | min(const _Tp& __a, const _Tp& __b)
| ^~~
/usr/include/c++/9/bits/stl_algobase.h:198:5: note: template argument deduction/substitution failed:
/home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.cc:621:58: note: deduced conflicting types for parameter ‘const _Tp’ (‘int’ and ‘phoenix::ad_msg::LaneCenterLineCamera::<unnamed enum>’)
621 | ad_msg::LaneCenterLineCamera::MAX_CURVE_POINT_NUM);
| ^
In file included from /usr/include/c++/9/bits/char_traits.h:39,
from /usr/include/c++/9/string:40,
from /home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/gnss.pb.h:8,
from /home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.h:7,
from /home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.cc:2:
/usr/include/c++/9/bits/stl_algobase.h:246:5: note: candidate: ‘template<class _Tp, class _Compare> const _Tp& std::min(const _Tp&, const _Tp&, _Compare)’
246 | min(const _Tp& __a, const _Tp& __b, _Compare __comp)
| ^~~
/usr/include/c++/9/bits/stl_algobase.h:246:5: note: template argument deduction/substitution failed:
/home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.cc:621:58: note: deduced conflicting types for parameter ‘const _Tp’ (‘int’ and ‘phoenix::ad_msg::LaneCenterLineCamera::<unnamed enum>’)
621 | ad_msg::LaneCenterLineCamera::MAX_CURVE_POINT_NUM);
| ^
In file included from /usr/include/c++/9/algorithm:62,
from /usr/local/include/google/protobuf/stubs/common.h:38,
from /usr/local/include/google/protobuf/io/coded_stream.h:141,
from /home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/gnss.pb.h:23,
from /home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.h:7,
from /home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.cc:2:
/usr/include/c++/9/bits/stl_algo.h:3450:5: note: candidate: ‘template<class _Tp> _Tp std::min(std::initializer_list<_Tp>)’
3450 | min(initializer_list<_Tp> __l)
| ^~~
/usr/include/c++/9/bits/stl_algo.h:3450:5: note: template argument deduction/substitution failed:
/home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.cc:621:58: note: mismatched types ‘std::initializer_list<_Tp>’ and ‘int’
621 | ad_msg::LaneCenterLineCamera::MAX_CURVE_POINT_NUM);
| ^
In file included from /usr/include/c++/9/algorithm:62,
from /usr/local/include/google/protobuf/stubs/common.h:38,
from /usr/local/include/google/protobuf/io/coded_stream.h:141,
from /home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/gnss.pb.h:23,
from /home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.h:7,
from /home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.cc:2:
/usr/include/c++/9/bits/stl_algo.h:3456:5: note: candidate: ‘template<class _Tp, class _Compare> _Tp std::min(std::initializer_list<_Tp>, _Compare)’
3456 | min(initializer_list<_Tp> __l, _Compare __comp)
| ^~~
/usr/include/c++/9/bits/stl_algo.h:3456:5: note: template argument deduction/substitution failed:
/home/cobo/shared_dirs/shared/MPA_Planning/src/msg_series_c/parse_proto_msg.cc:621:58: note: mismatched types ‘std::initializer_list<_Tp>’ and ‘int’
621 | ad_msg::LaneCenterLineCamera::MAX_CURVE_POINT_NUM);
| ^
make[2]: *** [CMakeFiles/planning.dir/build.make:1597: CMakeFiles/planning.dir/src/msg_series_c/parse_proto_msg.cc.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[1]: *** [CMakeFiles/Makefile2:76: CMakeFiles/planning.dir/all] Error 2