Horizon Official Technical Documentation
Horizon::Zone::ZC_ACK_LEAVE_GUILD Class Reference

Main object for the aegis packet: ZC_ACK_LEAVE_GUILD. More...

#include <TransmittedPackets.hpp>

+ Inheritance diagram for Horizon::Zone::ZC_ACK_LEAVE_GUILD:
+ Collaboration diagram for Horizon::Zone::ZC_ACK_LEAVE_GUILD:

Public Member Functions

 ZC_ACK_LEAVE_GUILD (std::shared_ptr< ZoneSession > s)
 
virtual ~ZC_ACK_LEAVE_GUILD ()
 
void deliver (std::string name, std::string reason)
 ZC_ACK_LEAVE_GUILD. More...
 
ByteBufferserialize ()
 
- Public Member Functions inherited from Horizon::Base::NetworkPacket< ZoneSession >
 NetworkPacket (uint16_t packet_id, std::shared_ptr< ZoneSession > s)
 
virtual ~NetworkPacket ()
 
void set_packet_id (uint16_t id)
 
uint16_t get_packet_id ()
 
ByteBufferbuf ()
 
std::shared_ptr< ZoneSession > get_session ()
 Retrieves the session from this handler instance. More...
 
virtual void handle (ByteBuffer &&buf)
 
virtual void deserialize (ByteBuffer &buf)
 
void transmit ()
 Send an Asynchronous packet by queueing a buffer of a particular size to the connected session. More...
 
void transmit (std::size_t size)
 Send an Asynchronous packet by queueing a buffer of a particular size to the connected session. More...
 

Public Attributes

char _name [MAX_UNIT_NAME_LENGTH]
 
char _reason [MAX_GUILD_LEAVE_REASON_STR_LENGTH]
 

Additional Inherited Members

- Protected Attributes inherited from Horizon::Base::NetworkPacket< ZoneSession >
ByteBuffer _buffer
 Buffer storage facility for the packet stream. More...
 
uint16_t _packet_id
 ID of the network packet. More...
 

Detailed Description

Main object for the aegis packet: ZC_ACK_LEAVE_GUILD.

Constructor & Destructor Documentation

◆ ZC_ACK_LEAVE_GUILD()

Horizon::Zone::ZC_ACK_LEAVE_GUILD::ZC_ACK_LEAVE_GUILD ( std::shared_ptr< ZoneSession s)
inline
16597 : NetworkPacket<ZoneSession>(ID_ZC_ACK_LEAVE_GUILD, s)
16598 {}
@ ID_ZC_ACK_LEAVE_GUILD
Definition: TransmittedPackets.hpp:16570

◆ ~ZC_ACK_LEAVE_GUILD()

virtual Horizon::Zone::ZC_ACK_LEAVE_GUILD::~ZC_ACK_LEAVE_GUILD ( )
inlinevirtual
16599{}

Member Function Documentation

◆ deliver()

void ZC_ACK_LEAVE_GUILD::deliver ( std::string  name,
std::string  reason 
)

ZC_ACK_LEAVE_GUILD.

370{
371 std::strncpy(_name, name.c_str(), MAX_UNIT_NAME_LENGTH);
372 std::strncpy(_reason, reason.c_str(), MAX_GUILD_LEAVE_REASON_STR_LENGTH);
373
374 serialize();
375 transmit();
376}
#define MAX_GUILD_LEAVE_REASON_STR_LENGTH
Definition: ClientDefinitions.hpp:41
#define MAX_UNIT_NAME_LENGTH
Definition: Client.hpp:34
void transmit()
Send an Asynchronous packet by queueing a buffer of a particular size to the connected session.
Definition: NetworkPacket.hpp:94
ByteBuffer & serialize()
Definition: TransmittedPackets.cpp:378
char _reason[MAX_GUILD_LEAVE_REASON_STR_LENGTH]
Definition: TransmittedPackets.hpp:16606
char _name[MAX_UNIT_NAME_LENGTH]
Definition: TransmittedPackets.hpp:16605

References _name, _reason, MAX_GUILD_LEAVE_REASON_STR_LENGTH, MAX_UNIT_NAME_LENGTH, serialize(), and Horizon::Base::NetworkPacket< ZoneSession >::transmit().

+ Here is the call graph for this function:

◆ serialize()

ByteBuffer & ZC_ACK_LEAVE_GUILD::serialize ( )
379{
380 buf() << _packet_id;
383 return buf();
384}
void append(T value)
Definition: ByteBuffer.hpp:140
uint16_t _packet_id
ID of the network packet.
Definition: NetworkPacket.hpp:87
ByteBuffer & buf()
Definition: NetworkPacket.hpp:59

References _name, Horizon::Base::NetworkPacket< ZoneSession >::_packet_id, _reason, ByteBuffer::append(), Horizon::Base::NetworkPacket< ZoneSession >::buf(), MAX_GUILD_LEAVE_REASON_STR_LENGTH, and MAX_UNIT_NAME_LENGTH.

Referenced by deliver().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Member Data Documentation

◆ _name

char Horizon::Zone::ZC_ACK_LEAVE_GUILD::_name[MAX_UNIT_NAME_LENGTH]

Referenced by deliver(), and serialize().

◆ _reason

char Horizon::Zone::ZC_ACK_LEAVE_GUILD::_reason[MAX_GUILD_LEAVE_REASON_STR_LENGTH]

Referenced by deliver(), and serialize().


The documentation for this class was generated from the following files: