velodyne_manager_task.h 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. #ifndef VELODYNE_MANAGER_TASK_HH
  2. #define VELODYNE_MANAGER_TASK_HH
  3. #include <string.h>
  4. #include <mutex>
  5. #include <atomic>
  6. #include <chrono>
  7. #include "../task/task_command_manager.h"
  8. #include "../error_code/error_code.h"
  9. #include "../tool/common_data.h"
  10. //万集测量任务单
  11. class Velodyne_manager_task : public Task_Base
  12. {
  13. public:
  14. // 构造函数
  15. Velodyne_manager_task();
  16. // 析构
  17. ~Velodyne_manager_task();
  18. //初始化函数
  19. Error_manager task_init(int terminal_id, std::chrono::system_clock::time_point command_time );
  20. Error_manager task_init(Task_statu task_statu,
  21. std::string task_statu_information,
  22. void* p_tast_receiver,
  23. std::chrono::milliseconds task_over_time,
  24. int terminal_id,
  25. std::chrono::system_clock::time_point command_time
  26. );
  27. public://get or set member variable
  28. int get_terminal_id();
  29. std::chrono::system_clock::time_point get_command_time();
  30. Common_data::Car_wheel_information get_car_wheel_information();
  31. void set_car_wheel_information(Common_data::Car_wheel_information car_wheel_information);
  32. private:
  33. //终端id
  34. int m_terminal_id;
  35. //下发指令的时间点. 从command_time提前一个扫描周期, 然后取最新的点
  36. std::chrono::system_clock::time_point m_command_time;
  37. // 测量结果
  38. Common_data::Car_wheel_information m_car_wheel_information;
  39. };
  40. #endif // !VELODYNE_MANAGER_TASK_HH