| | |
| | | } separate_t; |
| | | |
| | | typedef struct { |
| | | int active; |
| | | string tts; |
| | | bool stopFlag; |
| | | Line line; |
| | | bool centrePointValid; |
| | | PointF centrePoint; |
| | | } stop_line_t; |
| | | |
| | | typedef struct { |
| | | int id; |
| | | Line startLine; |
| | | // Line stopLine; |
| | | // int active; // 到达路口尾部的行进方向 |
| | | bool activeBreak; // 路口刹车减速 |
| | |
| | | } special_area_t; |
| | | |
| | | typedef struct { |
| | | int id; |
| | | int road; |
| | | int active; |
| | | int time; // 项目最大完成时间 |
| | | int distance; // 项目最大完成距离 |
| | | string tts; |
| | | bool cmp; |
| | | std::vector<PointF> points; |
| | | std::vector<PointF> leftPoints; // 对应到道路左侧的点 |
| | | } trigger_line_t; |
| | | |
| | | typedef struct { |
| | |
| | | std::vector<PointF> points; |
| | | } forbid_line_t; |
| | | |
| | | typedef struct { |
| | | int road_id; |
| | | int index; |
| | | int active; |
| | | } crossing_active_t; |
| | | |
| | | typedef struct { |
| | | std::string name; |
| | | std::vector<crossing_active_t> crossingActive; |
| | | std::vector<trigger_line_t> triggerLines; |
| | | } scheme_t; |
| | | |
| | | struct road_exam_map { |
| | | int calibrate; |
| | | std::vector<road_t> roads; |
| | | std::vector<special_area_t> specialAreas; |
| | | std::vector<trigger_line_t> triggerLines; |
| | | // std::vector<trigger_line_t> triggerLines; |
| | | std::vector<forbid_line_t> forbidLines; |
| | | std::vector<scheme_t> examScheme; |
| | | }; |
| | | |
| | | struct area_exam_map { |
| | |
| | | |
| | | |
| | | void CleanRoadMap(void); |
| | | void SetRoadMap(road_exam_map &map); |
| | | void SetRoadMap(road_exam_map &map, vector<scheme_t> &scheme); |
| | | |
| | | void SetCarMeasurePoint(double *basePoint, int *axial, int *left_front_tire, |
| | | int *right_front_tire, int *left_rear_tire, int *right_rear_tire, |
| | |
| | | |
| | | void UpdateRTKInfo(const rtk_info *s); |
| | | void AddExamFault(int wrong, const struct RtkTime *rtkTime); |
| | | void RoadChange(int road, int status); |
| | | void CrossingChange(int road, int crossing, int status); |
| | | |
| | | void SystemShutdown(int event, int timeout); |
| | | |