velodyne_manager_task.h 1.5 KB

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