message.h 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. #ifndef __MESSAGE_HPP__
  2. #define __MESSAGE_HPP__
  3. #include <stdint.h>
  4. #include <time.h>
  5. struct zistream;
  6. #define CHAR_LOCATEDATA_TOF_EXTEND 0x843b // TOF实时定位数据,请求、应答
  7. #define CHAR_LOCATEDATAHIS_TOF_EXTEND 0x853b // TOF历史定位数据,请求、应答
  8. #define CHAR_LOCATEDATA_TDOA_EXTEND 0x863b // TDOA实时定位数据,请求、应答
  9. #define CHAR_LOCATEDATAHIS_TDOA_EXTEND 0x873b // TDOA历史定位数据,请求、应答
  10. #define CHAR_TDOA_READER_SYNC_TIME 0xa78d // TDOA分站时间同步
  11. #define CHAR_ADHOC 0x803b // 上传自组网数据
  12. #define CHAR_CTRL_READER_CMD 0x804c // 向分站发送控制指令,控制分站向上位机发送数据
  13. // 分站传上来的卡定位数据,包括tof,tdoa
  14. struct message_locinfo
  15. {
  16. uint64_t m_time_stamp;
  17. uint32_t m_site_id;
  18. time_t m_site_time;
  19. uint32_t m_card_type;
  20. uint32_t m_card_id;
  21. uint64_t m_tof;
  22. uint16_t m_card_ct;
  23. uint8_t m_batty_status;
  24. uint8_t m_callinfo;//0x80-呼救,0x01-一般呼叫,0x02-紧急呼叫
  25. uint8_t m_rav;
  26. uint8_t m_acc;
  27. uint8_t m_ant_id;
  28. uint16_t m_sync_ct;
  29. uint16_t m_rssi;
  30. void zero_this();
  31. void load(zistream&is,bool tdoa);
  32. int64_t long_id()const
  33. {
  34. return (((int64_t)m_card_type)<<32)|m_card_id;
  35. }
  36. };
  37. //tdoa分站同步数据
  38. struct message_tdoasync
  39. {
  40. uint32_t m_local_site_id;
  41. uint32_t m_parent_site_id;
  42. uint16_t m_local_ant_id;
  43. uint16_t m_parent_ant_id;
  44. uint16_t m_sync_ct;
  45. uint16_t m_local_level;
  46. uint64_t m_recv_time;
  47. uint64_t m_send_time;
  48. void zero_this();
  49. void load(zistream&is);
  50. };
  51. #endif