Network/NetPacket: Inline some methods

Former-commit-id: d54e7b9ff1baf93f6da35e29123d598b84742eac
This commit is contained in:
Lynix 2016-02-04 12:24:44 +01:00
parent 4312de828e
commit 00ed0e2ae3
3 changed files with 49 additions and 49 deletions

View File

@ -13,7 +13,6 @@
#include <Nazara/Core/Mutex.hpp>
#include <Nazara/Core/Stream.hpp>
#include <Nazara/Network/Config.hpp>
#include <iostream>
namespace Nz
{
@ -22,21 +21,21 @@ namespace Nz
friend class Network;
public:
NetPacket();
NetPacket(UInt16 netCode, std::size_t sizeHint = 0);
NetPacket(UInt16 netCode, const void* ptr, std::size_t size);
inline NetPacket();
inline NetPacket(UInt16 netCode, std::size_t sizeHint = 0);
inline NetPacket(UInt16 netCode, const void* ptr, std::size_t size);
NetPacket(const NetPacket&) = delete;
NetPacket(NetPacket&&) = default;
~NetPacket();
inline ~NetPacket();
inline UInt16 GetNetCode() const;
virtual void OnReceive(UInt16 netCode, const void* data, std::size_t size);
virtual const void* OnSend(std::size_t* newSize) const;
void Reset();
void Reset(UInt16 netCode, std::size_t sizeHint = 0);
void Reset(UInt16 netCode, const void* ptr, std::size_t size);
inline void Reset();
inline void Reset(UInt16 netCode, std::size_t sizeHint = 0);
inline void Reset(UInt16 netCode, const void* ptr, std::size_t size);
inline void SetNetCode(UInt16 netCode);

View File

@ -3,14 +3,56 @@
// For conditions of distribution and use, see copyright notice in Config.hpp
#include <Nazara/Core/Debug.hpp>
#include <Nazara/Network/Enums.hpp>
#include <cstring>
namespace Nz
{
inline NetPacket::NetPacket() :
m_netCode(NetCode_Invalid)
{
}
inline NetPacket::NetPacket(UInt16 netCode, std::size_t sizeHint)
{
Reset(netCode, sizeHint);
}
inline NetPacket::NetPacket(UInt16 netCode, const void* ptr, std::size_t size)
{
Reset(netCode, ptr, size);
}
inline NetPacket::~NetPacket()
{
FreeStream();
}
inline UInt16 NetPacket::GetNetCode() const
{
return m_netCode;
}
inline void NetPacket::Reset()
{
FreeStream();
}
inline void NetPacket::Reset(UInt16 netCode, std::size_t sizeHint)
{
InitStream(HeaderSize + sizeHint, HeaderSize, OpenMode_WriteOnly);
m_netCode = netCode;
}
inline void NetPacket::Reset(UInt16 netCode, const void* ptr, std::size_t size)
{
InitStream(HeaderSize + size, HeaderSize, OpenMode_ReadOnly);
m_buffer->Resize(HeaderSize + size);
std::memcpy(m_buffer->GetBuffer() + HeaderSize, ptr, size);
m_netCode = netCode;
}
inline void NetPacket::SetNetCode(UInt16 netCode)
{
m_netCode = netCode;

View File

@ -5,31 +5,10 @@
#include <Nazara/Network/NetPacket.hpp>
#include <Nazara/Core/LockGuard.hpp>
#include <Nazara/Core/MemoryView.hpp>
#include <Nazara/Network/Enums.hpp>
#include <Nazara/Network/Debug.hpp>
namespace Nz
{
NetPacket::NetPacket() :
m_netCode(NetCode_Invalid)
{
}
NetPacket::NetPacket(UInt16 netCode, std::size_t sizeHint)
{
Reset(netCode, sizeHint);
}
NetPacket::NetPacket(UInt16 netCode, const void* ptr, std::size_t size)
{
Reset(netCode, ptr, size);
}
NetPacket::~NetPacket()
{
FreeStream();
}
void NetPacket::OnReceive(UInt16 netCode, const void* data, std::size_t size)
{
Reset(netCode, data, size);
@ -51,26 +30,6 @@ namespace Nz
return m_buffer->GetBuffer();
}
void NetPacket::Reset()
{
FreeStream();
}
void NetPacket::Reset(UInt16 netCode, std::size_t sizeHint)
{
InitStream(HeaderSize + sizeHint, HeaderSize, OpenMode_WriteOnly);
m_netCode = netCode;
}
void NetPacket::Reset(UInt16 netCode, const void* ptr, std::size_t size)
{
InitStream(HeaderSize + size, HeaderSize, OpenMode_ReadOnly);
m_buffer->Resize(HeaderSize + size);
std::memcpy(m_buffer->GetBuffer() + HeaderSize, ptr, size);
m_netCode = netCode;
}
bool NetPacket::DecodeHeader(const void* data, UInt16* packetSize, UInt16* netCode)
{
MemoryView stream(data, HeaderSize);