PickupProcessTask.h 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. //
  2. // Created by zx on 2020/7/7.
  3. //
  4. #ifndef NNXX_TESTS_TAKEPROCESS_H
  5. #define NNXX_TESTS_TAKEPROCESS_H
  6. #include <parkspace_allocation_message.pb.h>
  7. #include "error_code.h"
  8. #include "TaskQueue/BaseTask.h"
  9. #include "dispatch_communicator.h"
  10. class PickupProcessTask :public tq::BaseTask{
  11. public:
  12. PickupProcessTask();
  13. virtual ~PickupProcessTask();
  14. Error_manager init_task(unsigned int command_id, unsigned int terminor_id,message::Car_info car_info);
  15. /*
  16. * 查询车位
  17. */
  18. Error_manager search_space();
  19. protected:
  20. virtual void Main();
  21. /*
  22. * 执行取车动作请求,并等待执行完成
  23. */
  24. Error_manager pickup_step();
  25. /*
  26. * 等待车辆离开
  27. */
  28. Error_manager wait_for_leave_step();
  29. /*
  30. * 清除车位表中对应的车位
  31. */
  32. Error_manager release_space_step();
  33. protected:
  34. unsigned int m_command_id;
  35. unsigned int m_terminor_id;
  36. message::Car_info m_car_info; //当前流程的车辆信息
  37. private:
  38. //查询到的车位信息
  39. message::Parkspace_search_response_msg m_parcspace_search_response_msg;
  40. //取车调度反馈信息
  41. message::Dispatch_response_msg m_dispatch_response_msg;
  42. };
  43. #endif //NNXX_TESTS_TAKEPROCESS_H