test_parkspace_sample.cpp 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. /*
  2. * @Description: 测试车位分配模块通信情况
  3. * @Author: yct
  4. * @Date: 2020-07-08 15:51:46
  5. * @LastEditTime: 2020-07-08 17:38:21
  6. * @LastEditors: yct
  7. */
  8. #include "../parkspace_allocation/parkspace_allocation_communicator.h"
  9. int main()
  10. {
  11. Parkspace_allocation_communicator *p_parkspace_allocator = Parkspace_allocation_communicator::get_instance_pointer();
  12. p_parkspace_allocator->communication_bind("tcp://127.0.0.1:7001");
  13. p_parkspace_allocator->communication_connect("tcp://127.0.0.1:7000");
  14. p_parkspace_allocator->communication_run();
  15. message::Parkspace_allocation_status_msg parkspace_status;
  16. for (size_t i = 1; i < 4; i++)
  17. {
  18. message::Parkspace_info* space = parkspace_status.add_parkspace_info();
  19. space->set_parkspace_id(i);
  20. space->set_x_coordinate(i*100);
  21. space->set_y_coordinate(i*200);
  22. space->set_z_coordinate(i*300);
  23. space->set_length(5500);
  24. space->set_width(2200);
  25. space->set_height(1750);
  26. space->set_parkspace_status(message::Parkspace_status::eParkspace_empty);
  27. }
  28. message::Base_info base_msg;
  29. message::Error_manager error;
  30. base_msg.set_msg_type(message::Message_type::eParkspace_allocation_response_msg);
  31. base_msg.set_timeout_ms(1000);
  32. base_msg.set_sender(message::Communicator::eParkspace_allocator);
  33. base_msg.set_receiver(message::Communicator::eMain);
  34. error.set_error_code(0);
  35. parkspace_status.mutable_base_info()->CopyFrom(base_msg);
  36. parkspace_status.mutable_error_manager()->CopyFrom(error);
  37. p_parkspace_allocator->update_parkspace_status(parkspace_status);
  38. int k=1;
  39. while(1) {
  40. message::Parkspace_info space;
  41. space.set_parkspace_id(3);
  42. space.set_x_coordinate(k*100);
  43. space.set_y_coordinate(k*200);
  44. space.set_z_coordinate(k*300);
  45. space.set_length(5500);
  46. space.set_width(2200);
  47. space.set_height(k*400);
  48. space.set_parkspace_status(message::Parkspace_status::eParkspace_occupied);
  49. p_parkspace_allocator->update_parkspace_status(3, space);
  50. usleep(1000*1000);
  51. k++;
  52. }
  53. return 0;
  54. }