base_planner.h 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. #ifndef _IV_DECITION__BASE_PLANNER_
  2. #define _IV_DECITION__BASE_PLANNER_
  3. #include <gps_type.h>
  4. #include <decition_type.h>
  5. #include <obstacle_type.h>
  6. #include<vector>
  7. #include <gnss_coordinate_convert.h>
  8. //#include "perception/perceptionoutput.h"
  9. namespace iv {
  10. namespace decition {
  11. //根据传感器传输来的信息作出决策
  12. class BasePlanner {
  13. public:
  14. int planner_id;
  15. std::string planner_name;
  16. BasePlanner();
  17. virtual ~BasePlanner();
  18. /**
  19. * @brief iv::decition::BasePlanner::getPath
  20. * 基类BasePlanner的抽象方法,用于计算车辆行驶的路径。路径都已转换成车辆坐标系下的路径。
  21. *
  22. * @param now_gps_ins 实时gps信息
  23. * @param gpsMapLine 地图数据点
  24. * @param PathPoint 地图路线中距离车辆位置最近的一个点的序号
  25. * @param offset 在车辆避障中,地图源路线所在车道 与 即将去往的车道 之间的距离差值。可以为负值。
  26. * @param lidarGridPtr 激光雷达信息网格
  27. * @return 返回一条车辆坐标系下的路径
  28. */
  29. virtual std::vector<iv::Point2D> getPath (GPS_INS now_gps_ins, const std::vector<GPSData>& gpsMapLine, int PathPoint, double offset, iv::LidarGridPtr lidarGridPtr);
  30. // virtual std::vector<iv::Point2D> getPath (GPS_INS now_gps_ins, std::vector<GPSData> gpsMapLine, LidarGridPtr lidarGridPtr, std::vector<iv::Perception::PerceptionOutput> lidar_per);
  31. private:
  32. };
  33. }
  34. }
  35. #endif // ADC_PLANNER_H