#pragma once //由于控制器指令共享同一个ID 0x20,建立此类维护控制指令的最新状态 #include #include #include #include namespace iv { namespace control { class ControlStatus : public boost::noncopyable { public: /***************** * ****测试标志位***** * ***************/ int normal_speed = 0;//常规速度 int swerve_speed = 0;//转弯速度 int high_speed = 0;//快速 int mid_speed = 0;//中速 int low_speed = 0;//慢速 int change_line = -1;//换道标志 int stop_obstacle = -1;//停障标志 int elude_obstacle = -1;//避障标志 int special_signle = -1;//特殊信号标志 int car_pullover = -1;//靠边停车标志位 float torque = 0.0; float brake = 0.0; float acc=0.0; Command10 command10 ; Command11 command11 ; Command12 command12; Command_Response command_reponse; int command_ID10 = 0x10; int command_ID11 = 0x11; int command_ID12 = 0x12; void set_wheel_angle(float angle); void set_wheel_speed(float speed); void set_wheel_enable(bool enable); void set_speed_limit(float speed); void set_torque(float percent); void set_aeb(float aeb); void set_brake(float brake); void set_gear(int gear); void set_handBrake(bool handBrake); void set_driveMode(char mode); void set_gear_enable(bool enable); void set_aeb_enable(bool enable); void set_acc_enable(bool enable); void set_win_lf(char para); void set_win_rf(char para); void set_win_lr(char para); void set_win_rr(char para); void set_air_on(char para); void set_air_cricle(char para); void set_air_auto(char para); void set_air_off(char para); void set_air_temup(char para); void set_air_temdown(char para); void set_air_powerup(char para); void set_air_powerdown(char para); void set_obligate(char para); void set_door(char enable); void set_turnsignals_control(bool left, bool right); void set_small_light(char para); void set_near_light(char para); void set_horn(char para); void set_far_light(char para); void set_frog_light(char para); void set_wiper(char para); void set_brake_light(char para); void set_defrog(char para); void set_reverse_light(char para); void set_air_temp(char para); void set_air_mode(char para); void set_air_enable(bool enable); void set_wind_level(char para); void set_roof_light(char para); void set_home_light(char para); void set_air_worktime(char para); void set_air_offtime(char para); void set_cmd_checksum(unsigned char cmd_id); }; typedef boost::serialization::singleton ControlStatusSingleton; } } #define ServiceControlStatus iv::control::ControlStatusSingleton::get_mutable_instance()