test_parkspace_sample.cpp 2.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. /*
  2. * @Description: 测试车位分配模块通信情况
  3. * @Author: yct
  4. * @Date: 2020-07-08 15:51:46
  5. * @LastEditTime: 2020-07-10 17:14:16
  6. * @LastEditors: yct
  7. */
  8. #include "../parkspace_allocation/parkspace_allocation_communicator.h"
  9. #include "../parkspace_allocation/parkspace_allocator.h"
  10. int main()
  11. {
  12. google::InitGoogleLogging("parkspace_allocator");
  13. google::SetStderrLogging(google::INFO);
  14. google::InstallFailureSignalHandler();
  15. FLAGS_colorlogtostderr = true;
  16. Parkspace_allocation_communicator *p_parkspace_allocation_communicater = Parkspace_allocation_communicator::get_instance_pointer();
  17. Parkspace_allocator *p_parkspace_allocator = Parkspace_allocator::get_instance_pointer();
  18. p_parkspace_allocator->parkspace_allocator_init(4);
  19. p_parkspace_allocation_communicater->communication_bind("tcp://192.168.2.139:7001");
  20. // p_parkspace_allocation_communicater->communication_connect("tcp://127.0.0.1:7000");
  21. p_parkspace_allocation_communicater->communication_run();
  22. // 初始化车位,创建三个车位
  23. message::Parkspace_allocation_status_msg parkspace_status;
  24. for (size_t i = 1; i < 1000; i++)
  25. {
  26. message::Parkspace_info* space = parkspace_status.add_parkspace_info();
  27. space->set_parkspace_id(i);
  28. space->set_index(i);
  29. space->set_direction(message::Direction::eForward);
  30. space->set_floor(2+i);
  31. space->set_length(5.5);
  32. space->set_width(2.2);
  33. space->set_height(1.75);
  34. space->set_parkspace_status(message::Parkspace_status::eParkspace_empty);
  35. }
  36. message::Base_info base_msg;
  37. message::Error_manager error;
  38. base_msg.set_msg_type(message::Message_type::eParkspace_allocation_response_msg);
  39. base_msg.set_timeout_ms(1000);
  40. base_msg.set_sender(message::Communicator::eParkspace_allocator);
  41. base_msg.set_receiver(message::Communicator::eMain);
  42. error.set_error_code(0);
  43. parkspace_status.mutable_base_info()->CopyFrom(base_msg);
  44. parkspace_status.mutable_error_manager()->CopyFrom(error);
  45. p_parkspace_allocation_communicater->update_parkspace_status(parkspace_status);
  46. int k=1;
  47. while(1) {
  48. // message::Parkspace_info space;
  49. // space.set_parkspace_id(3);
  50. // space.set_index(k);
  51. // space.set_direction(message::Direction::eForward);
  52. // space.set_floor(k*3);
  53. // space.set_length(5500);
  54. // space.set_width(2200);
  55. // space.set_height(k*400);
  56. // space.set_parkspace_status(message::Parkspace_status::eParkspace_occupied);
  57. // p_parkspace_allocator->update_parkspace_status(3, space);
  58. usleep(1000*1000);
  59. k++;
  60. }
  61. p_parkspace_allocator->parkspace_allocator_uninit();
  62. return 0;
  63. }