1
Fork 0
mirror of https://github.com/SapphireServer/Sapphire.git synced 2025-04-24 13:47:46 +00:00
sapphire/src/common/Network/PacketContainer.h

41 lines
700 B
C
Raw Normal View History

2017-08-08 13:53:47 +02:00
#ifndef _PacketContainer_H_
#define _PacketContainer_H_
#include <vector>
2018-03-06 22:22:19 +01:00
#include "Common.h"
2017-08-08 13:53:47 +02:00
#include "CommonNetwork.h"
2018-06-28 00:07:07 +02:00
#include "GamePacketNew.h"
#include "Forwards.h"
2017-08-08 13:53:47 +02:00
namespace Sapphire::Network::Packets
2018-10-28 21:53:21 +01:00
{
2017-08-08 13:53:47 +02:00
2018-10-28 21:53:21 +01:00
using FFXIVPacketBasePtr = std::shared_ptr< FFXIVPacketBase >;
2017-08-08 13:53:47 +02:00
2018-10-28 21:53:21 +01:00
class PacketContainer
{
public:
PacketContainer( uint32_t segmentTargetOverride = 0 );
2017-08-08 13:53:47 +02:00
2018-10-28 21:53:21 +01:00
~PacketContainer();
2017-08-08 13:53:47 +02:00
2018-10-28 21:53:21 +01:00
void addPacket( FFXIVPacketBasePtr entry );
2017-08-08 13:53:47 +02:00
2018-10-28 21:53:21 +01:00
FFXIVARR_PACKET_HEADER m_ipcHdr;
2017-08-08 13:53:47 +02:00
2018-10-28 21:53:21 +01:00
std::vector< FFXIVPacketBasePtr > m_entryList;
2017-08-08 13:53:47 +02:00
2018-10-28 21:53:21 +01:00
std::string toString();
2018-10-28 21:53:21 +01:00
void fillSendBuffer( std::vector< uint8_t >& sendBuffer );
2017-08-08 13:53:47 +02:00
2018-10-28 21:53:21 +01:00
private:
uint32_t m_segmentTargetOverride;
2018-10-28 21:53:21 +01:00
};
2017-08-08 13:53:47 +02:00
}
#endif