parkspace_allocation_message.proto 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. syntax = "proto2";
  2. package message;
  3. import "message_base.proto";
  4. //车位分配模块请求消息
  5. message Parkspace_allocation_request_msg
  6. {
  7. required Base_info base_info=1; //消息类型
  8. required int32 command_id=2; //指令唯一标识符id
  9. required int32 car_length=3; //车长
  10. required int32 car_width=4; //车宽
  11. required int32 car_height=5; //车高
  12. }
  13. //车位分配模块反馈消息
  14. message Parkspace_allocation_response_msg
  15. {
  16. required Base_info base_info=1; //消息类型
  17. required int32 command_id=2; //指令唯一标识符id
  18. required Error_manager error_manager=3; //分配成功与否标志
  19. required int32 allocated_space_id=4; //分配车位id
  20. }
  21. //车位分配模块状态消息
  22. message Parkspace_allocation_status_msg
  23. {
  24. required Base_info base_info=1; //消息类型
  25. required Error_manager error_manager=2;
  26. repeated Parkspace_info parkspace_info=3; //车位状态
  27. }
  28. //车位状态枚举
  29. enum Parkspace_status
  30. {
  31. eParkspace_empty = 0; //空闲,可分配
  32. eParkspace_occupied = 1; //被占用,不可分配
  33. eParkspace_reserverd = 2; //被预约,预约车辆可分配
  34. eParkspace_error = 3; //车位机械结构或硬件故障
  35. }
  36. //单个车位基本信息与状态信息
  37. message Parkspace_info
  38. {
  39. required int32 parkspace_id=1; //车位编号
  40. required int32 x_coordinate=2; //x坐标
  41. required int32 y_coordinate=3; //y坐标
  42. required int32 z_coordinate=4; //z坐标
  43. required int32 length=5; //车位长
  44. required int32 width=6; //车位宽
  45. required int32 height=7; //车位高
  46. required Parkspace_status parkspace_status=8; //车位当前状态
  47. optional int32 license=9; //当前车位存入车辆的凭证号
  48. optional string entry_time=10; //入场时间
  49. optional string leave_time=11; //离场时间
  50. }