23 #include "UniSetTypes.h" 52 const uint32_t UNETUDP_MAGICNUM = 0x133EF54;
66 friend std::ostream& operator<<( std::ostream& os,
UDPHeader& p );
67 friend std::ostream& operator<<( std::ostream& os,
UDPHeader* p );
68 } __attribute__((packed));
70 const size_t MaxPacketNum = std::numeric_limits<size_t>::max();
75 UDPAData(
long id,
long val) noexcept: id(
id), val(val) {}
80 friend std::ostream& operator<<( std::ostream& os,
UDPAData& p );
81 } __attribute__((packed));
91 static const size_t MaxACount = 2000;
92 static const size_t MaxDCount = 5000;
93 static const size_t MaxDDataCount = 1 + MaxDCount / 8 *
sizeof(
unsigned char);
100 uint8_t data[
sizeof(
UDPHeader) + MaxDCount *
sizeof(
long) + MaxDDataCount + MaxACount *
sizeof(
UDPAData) ];
101 } __attribute__((packed));
103 static const size_t MaxDataLen =
sizeof(
UDPPacket);
117 size_t transport_msg(
UDPPacket& p )
const noexcept;
122 size_t addDData(
long id,
bool val ) noexcept;
125 bool setDData(
size_t index,
bool val ) noexcept;
128 long dID(
size_t index )
const noexcept;
131 bool dValue(
size_t index )
const noexcept;
135 size_t addAData(
const UDPAData& dat ) noexcept;
136 size_t addAData(
long id,
long val ) noexcept;
139 bool setAData(
size_t index,
long val ) noexcept;
141 long getDataID( )
const noexcept;
143 inline bool isAFull()
const noexcept
145 return (
acount >= MaxACount);
147 inline bool isDFull()
const noexcept
149 return (
dcount >= MaxDCount);
152 inline bool isFull()
const noexcept
157 inline size_t dsize()
const noexcept
162 inline size_t asize()
const noexcept
168 size_t sizeOf()
const noexcept;
170 uint16_t getDataCRC()
const noexcept;
173 size_t d_byte()
const noexcept
179 long d_id[MaxDCount];
180 uint8_t d_dat[MaxDDataCount];
182 friend std::ostream& operator<<( std::ostream& os,
UDPMessage& p );
185 uint16_t makeCRC(
unsigned char* buf,
size_t len ) noexcept;
190 #endif // UDPPacket_H_ Definition: CommonEventLoop.h:14
Definition: UDPPacket.h:72
const ObjectId DefaultObjectId
Definition: UniSetTypes.h:69
Definition: UDPPacket.h:105
Definition: UDPPacket.h:95