diff options
Diffstat (limited to '')
-rw-r--r-- | src/network/networkpacket.h | 153 |
1 files changed, 78 insertions, 75 deletions
diff --git a/src/network/networkpacket.h b/src/network/networkpacket.h index a4899d656..e3c52aab9 100644 --- a/src/network/networkpacket.h +++ b/src/network/networkpacket.h @@ -28,109 +28,112 @@ class NetworkPacket { public: - NetworkPacket(u16 command, u32 datasize, u16 peer_id); - NetworkPacket(u16 command, u32 datasize); - NetworkPacket() = default; + NetworkPacket(u16 command, u32 datasize, u16 peer_id); + NetworkPacket(u16 command, u32 datasize); + NetworkPacket() = default; - ~NetworkPacket(); + ~NetworkPacket(); - void putRawPacket(u8 *data, u32 datasize, u16 peer_id); + void putRawPacket(u8 *data, u32 datasize, u16 peer_id); - // Getters - u32 getSize() { return m_datasize; } - u16 getPeerId() { return m_peer_id; } - u16 getCommand() { return m_command; } - const u32 getRemainingBytes() const { return m_datasize - m_read_offset; } - const char* getRemainingString() { return getString(m_read_offset); } + // Getters + u32 getSize() { return m_datasize; } + u16 getPeerId() { return m_peer_id; } + u16 getCommand() { return m_command; } + const u32 getRemainingBytes() const { return m_datasize - m_read_offset; } + const char *getRemainingString() { return getString(m_read_offset); } - // Returns a c-string without copying. - // A better name for this would be getRawString() - const char* getString(u32 from_offset); - // major difference to putCString(): doesn't write len into the buffer - void putRawString(const char* src, u32 len); - void putRawString(const std::string &src) - { putRawString(src.c_str(), src.size()); } + // Returns a c-string without copying. + // A better name for this would be getRawString() + const char *getString(u32 from_offset); + // major difference to putCString(): doesn't write len into the buffer + void putRawString(const char *src, u32 len); + void putRawString(const std::string &src) + { + putRawString(src.c_str(), src.size()); + } - NetworkPacket& operator>>(std::string& dst); - NetworkPacket& operator<<(const std::string &src); + NetworkPacket &operator>>(std::string &dst); + NetworkPacket &operator<<(const std::string &src); - void putLongString(const std::string &src); + void putLongString(const std::string &src); - NetworkPacket& operator>>(std::wstring& dst); - NetworkPacket& operator<<(const std::wstring &src); + NetworkPacket &operator>>(std::wstring &dst); + NetworkPacket &operator<<(const std::wstring &src); - std::string readLongString(); + std::string readLongString(); - char getChar(u32 offset); - NetworkPacket& operator>>(char& dst); - NetworkPacket& operator<<(char src); + char getChar(u32 offset); + NetworkPacket &operator>>(char &dst); + NetworkPacket &operator<<(char src); - NetworkPacket& operator>>(bool& dst); - NetworkPacket& operator<<(bool src); + NetworkPacket &operator>>(bool &dst); + NetworkPacket &operator<<(bool src); - u8 getU8(u32 offset); + u8 getU8(u32 offset); - NetworkPacket& operator>>(u8& dst); - NetworkPacket& operator<<(u8 src); + NetworkPacket &operator>>(u8 &dst); + NetworkPacket &operator<<(u8 src); - u8* getU8Ptr(u32 offset); + u8 *getU8Ptr(u32 offset); - u16 getU16(u32 from_offset); - NetworkPacket& operator>>(u16& dst); - NetworkPacket& operator<<(u16 src); + u16 getU16(u32 from_offset); + NetworkPacket &operator>>(u16 &dst); + NetworkPacket &operator<<(u16 src); - NetworkPacket& operator>>(u32& dst); - NetworkPacket& operator<<(u32 src); + NetworkPacket &operator>>(u32 &dst); + NetworkPacket &operator<<(u32 src); - NetworkPacket& operator>>(u64& dst); - NetworkPacket& operator<<(u64 src); + NetworkPacket &operator>>(u64 &dst); + NetworkPacket &operator<<(u64 src); - NetworkPacket& operator>>(std::time_t& dst); - NetworkPacket& operator<<(std::time_t src); + NetworkPacket &operator>>(std::time_t &dst); + NetworkPacket &operator<<(std::time_t src); - NetworkPacket& operator>>(float& dst); - NetworkPacket& operator<<(float src); + NetworkPacket &operator>>(float &dst); + NetworkPacket &operator<<(float src); - NetworkPacket& operator>>(v2f& dst); - NetworkPacket& operator<<(v2f src); + NetworkPacket &operator>>(v2f &dst); + NetworkPacket &operator<<(v2f src); - NetworkPacket& operator>>(v3f& dst); - NetworkPacket& operator<<(v3f src); + NetworkPacket &operator>>(v3f &dst); + NetworkPacket &operator<<(v3f src); - NetworkPacket& operator>>(s16& dst); - NetworkPacket& operator<<(s16 src); + NetworkPacket &operator>>(s16 &dst); + NetworkPacket &operator<<(s16 src); - NetworkPacket& operator>>(s32& dst); - NetworkPacket& operator<<(s32 src); + NetworkPacket &operator>>(s32 &dst); + NetworkPacket &operator<<(s32 src); - NetworkPacket& operator>>(v2s32& dst); - NetworkPacket& operator<<(v2s32 src); + NetworkPacket &operator>>(v2s32 &dst); + NetworkPacket &operator<<(v2s32 src); - NetworkPacket& operator>>(v3s16& dst); - NetworkPacket& operator<<(v3s16 src); + NetworkPacket &operator>>(v3s16 &dst); + NetworkPacket &operator<<(v3s16 src); - NetworkPacket& operator>>(v3s32& dst); - NetworkPacket& operator<<(v3s32 src); + NetworkPacket &operator>>(v3s32 &dst); + NetworkPacket &operator<<(v3s32 src); - NetworkPacket& operator>>(video::SColor& dst); - NetworkPacket& operator<<(video::SColor src); + NetworkPacket &operator>>(video::SColor &dst); + NetworkPacket &operator<<(video::SColor src); + + // Temp, we remove SharedBuffer when migration finished + Buffer<u8> oldForgePacket(); - // Temp, we remove SharedBuffer when migration finished - Buffer<u8> oldForgePacket(); private: - void checkReadOffset(u32 from_offset, u32 field_size); - - inline void checkDataSize(u32 field_size) - { - if (m_read_offset + field_size > m_datasize) { - m_datasize = m_read_offset + field_size; - m_data.resize(m_datasize); - } + void checkReadOffset(u32 from_offset, u32 field_size); + + inline void checkDataSize(u32 field_size) + { + if (m_read_offset + field_size > m_datasize) { + m_datasize = m_read_offset + field_size; + m_data.resize(m_datasize); } + } - std::vector<u8> m_data; - u32 m_datasize = 0; - u32 m_read_offset = 0; - u16 m_command = 0; - u16 m_peer_id = 0; + std::vector<u8> m_data; + u32 m_datasize = 0; + u32 m_read_offset = 0; + u16 m_command = 0; + u16 m_peer_id = 0; }; |