123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 |
- #ifndef IVIF_PARK_H
- #define IVIF_PARK_H
- #include <vector>
- #include "comonstruct.h"
- namespace iv
- {
- struct simpleparkspace
- {
- public:
- double mfLon;
- double mfLat;
- double mfHeading;
- int mnParkType; //1 side park 0 chuizhi park
- };
- }
- class ivif_park
- {
- public:
- ivif_park();
- virtual ~ivif_park();
- public:
- /**
- * @brief IsBocheEnable
- * @param fLon 经度
- * @param fLat 纬度
- * @param fHeading 航向
- * @return 是否能泊车
- */
- virtual bool IsBocheEnable(double fLon, double fLat, double fHeading);
- /**
- * @brief GetBocheDecision
- * @param fLon 经度
- * @param fLat 纬度
- * @param fHeading 航向
- * @param fSpeed 车速 km/h
- * @param fAcc 决策加速度
- * @param fWheel 决策方向盘角度
- * @param nshift 2 倒车 3 前进
- * @param fdSpeed 期望速度 km/h
- * @param fdSecSpeed 期望速度 m/s
- * @param xvehstate
- * @param bbocheMode 是否激活泊车
- * @return 0 不在泊车状态,无决策 1 在泊车状态,有决策
- */
- virtual int GetBocheDecision(double fLon,double fLat,double fHeading,double fSpeed,double & fAcc,double & fWheel,int & nshift,double & fdSpeed,double & fdSecSpeed,VehState & xvehstate,bool bbocheMode);
- private:
- std::vector<iv::simpleparkspace> mvectorsimpleparkspace;
- public:
- void SetParkSpace(std::vector<iv::simpleparkspace> & xvectorsimpleparkspace);
- std::vector<iv::simpleparkspace> GetParkSpace();
- };
- #endif // IVIF_PARK_H
|