1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- #pragma once
- //由于控制器指令共享同一个ID 0x20,建立此类维护控制指令的最新状态
- #include <common/boost.h>
- #include <cstdint>
- #include <boost/serialization/singleton.hpp>
- #include <control/vv7.h>
- 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;//靠边停车标志位
- Command command;
- int command_ID = 0x12;
- void set_accelerate(float percent);
- void set_wheel_angle(float angle);
- void set_engine(char enable);
- void set_door(char enable);
- void set_speaker(bool enable);
- void set_flicker(bool enable);
- void set_light(bool enable);
- void set_turnsignals_control(bool left, bool right);
- };
- typedef boost::serialization::singleton<iv::control::ControlStatus> ControlStatusSingleton;
- }
- }
- #define ServiceControlStatus iv::control::ControlStatusSingleton::get_mutable_instance()
|