12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182 |
- #ifndef __MESSAGE_HPP__
- #define __MESSAGE_HPP__
- #include <stdint.h>
- #include <time.h>
- struct zistream;
- #define CHAR_LOCATEDATA_TOF_EXTEND 0x843b // TOF实时定位数据,请求、应答
- #define CHAR_LOCATEDATAHIS_TOF_EXTEND 0x853b // TOF历史定位数据,请求、应答
- #define CHAR_LOCATEDATA_TDOA_EXTEND 0x863b // TDOA实时定位数据,请求、应答
- #define CHAR_LOCATEDATAHIS_TDOA_EXTEND 0x873b // TDOA历史定位数据,请求、应答
- #define CHAR_TDOA_READER_SYNC_TIME 0xa78d // TDOA分站时间同步
- #define CHAR_ADHOC 0x803b // 上传自组网数据
- #define CHAR_CTRL_READER_CMD 0x804c // 向分站发送控制指令,控制分站向上位机发送数据
- // 分站上传上来的分站数据
- struct message_siteinfo
- {
- uint32_t m_site_id; //分站ID
- uint16_t m_time_stamp; //时间戳(0-65535)
- uint8_t m_sec;
- uint8_t m_min;
- uint8_t m_hour;
- uint8_t m_day;
- uint8_t m_week;
- uint8_t m_mon;
- uint8_t m_year;
- uint8_t m_site_relation; //分站类型 -- 自组网数据=温度
- int m_site_state; //分站状态char
- int m_site_power; //分站电源类型
- void zero_this();
- void load(zistream&is,bool bAdhoc);
- };
- // 分站传上来的卡定位数据,包括tof,tdoa
- struct message_locinfo
- {
- uint64_t m_time_stamp;
- uint32_t m_site_id;
- time_t m_site_time;
- uint32_t m_card_type;
- uint32_t m_card_id;
- uint64_t m_tof;
- uint16_t m_card_ct;
- uint8_t m_batty_status;
- uint8_t m_callinfo;//0x80-呼救,0x01-一般呼叫,0x02-紧急呼叫
- uint8_t m_rav;
- uint8_t m_acc;
- uint8_t m_ant_id;
- uint16_t m_sync_ct;
- uint16_t m_rssi;
- void zero_this();
- void load(zistream&is,bool tdoa);
- int64_t long_id()const
- {
- return (((int64_t)m_card_type)<<32)|m_card_id;
- }
- };
- //tdoa分站同步数据
- struct message_tdoasync
- {
- uint32_t m_local_site_id;
- uint32_t m_parent_site_id;
- uint16_t m_local_ant_id;
- uint16_t m_parent_ant_id;
- uint16_t m_sync_ct;
- uint16_t m_local_level;
- uint64_t m_recv_time;
- uint64_t m_send_time;
- void zero_this();
- void load(zistream&is);
- };
- #endif
|