C4PacketControlPkt Class Reference

#include <C4GameControlNetwork.h>

Inheritance diagram for C4PacketControlPkt:
Collaboration diagram for C4PacketControlPkt:

Public Member Functions

 C4PacketControlPkt ()=default
 C4PacketControlPkt (enum C4ControlDeliveryType eDelivery, const C4IDPacket &Ctrl)
C4ControlDeliveryType getDelivery () const
const C4IDPacketgetCtrl () const
void CompileFunc (StdCompiler *pComp) override
C4NetIOPacket pack (const C4NetIO::addr_t &addr=C4NetIO::addr_t()) const
C4NetIOPacket pack (uint8_t cStatus, const C4NetIO::addr_t &addr=C4NetIO::addr_t()) const
void unpack (const C4NetIOPacket &Pkt, char *pStatus=nullptr)

Protected Attributes

C4IDPacket Ctrl

Detailed Description

Definition at line 253 of file C4GameControlNetwork.h.

Constructor & Destructor Documentation

◆ C4PacketControlPkt() [1/2]

C4PacketControlPkt::C4PacketControlPkt ( )

◆ C4PacketControlPkt() [2/2]

C4PacketControlPkt::C4PacketControlPkt ( enum C4ControlDeliveryType  eDelivery,
const C4IDPacket Ctrl 

Definition at line 257 of file C4GameControlNetwork.h.

References CDT_Queue.

258  : eDelivery(eDelivery), Ctrl(Ctrl)
259  { }

Member Function Documentation

◆ CompileFunc()

void C4PacketControlPkt::CompileFunc ( StdCompiler pComp)

Implements C4PacketBase.

Definition at line 588 of file C4Packet2.cpp.

References CDT_Queue, mkNamingAdapt(), and StdCompiler::Value().

589 {
590  pComp->Value(mkNamingAdapt(mkIntAdaptT<uint8_t>(eDelivery), "Delivery", CDT_Queue));
591  pComp->Value(Ctrl);
592 }
StdNamingAdapt< T > mkNamingAdapt(T &&rValue, const char *szName)
Definition: StdAdaptors.h:92
void Value(const T &rStruct)
Definition: StdCompiler.h:161
Here is the call graph for this function:

◆ getCtrl()

const C4IDPacket& C4PacketControlPkt::getCtrl ( ) const

Definition at line 267 of file C4GameControlNetwork.h.

References CompileFunc().

267 { return Ctrl; }
Here is the call graph for this function:

◆ getDelivery()

C4ControlDeliveryType C4PacketControlPkt::getDelivery ( ) const

Definition at line 266 of file C4GameControlNetwork.h.

266 { return eDelivery; }

◆ pack() [1/2]

C4NetIOPacket C4PacketBase::pack ( const C4NetIO::addr_t addr = C4NetIO::addr_t()) const

Definition at line 150 of file C4Packet2.cpp.

Referenced by MkC4NetIOPacket().

151 {
152  return C4NetIOPacket(DecompileToBuf<StdCompilerBinWrite>(*this), addr);
153 }
Here is the caller graph for this function:

◆ pack() [2/2]

C4NetIOPacket C4PacketBase::pack ( uint8_t  cStatus,
const C4NetIO::addr_t addr = C4NetIO::addr_t() 
) const

Definition at line 155 of file C4Packet2.cpp.

References mkDecompileAdapt(), and mkInsertAdapt().

156 {
157  return C4NetIOPacket(DecompileToBuf<StdCompilerBinWrite>(mkInsertAdapt(mkDecompileAdapt(*this), cStatus)), addr);
158 }
StdDecompileAdapt< T > mkDecompileAdapt(const T &rValue)
Definition: StdAdaptors.h:153
StdInsertAdapt< T, I > mkInsertAdapt(T &&rObj, I &&rIns, bool fBefore=true)
Definition: StdAdaptors.h:455
Here is the call graph for this function:

◆ unpack()

void C4PacketBase::unpack ( const C4NetIOPacket Pkt,
char *  pStatus = nullptr 

Definition at line 160 of file C4Packet2.cpp.

References C4PktBuf::C4PktBuf(), C4NetIOPacket::getPBuf(), C4NetIOPacket::getRef(), and C4NetIOPacket::getStatus().

Referenced by C4IDPacket::C4IDPacket(), and C4Network2IO::HandlePacket().

161 {
162  if (pStatus) *pStatus = Pkt.getStatus();
163  CompileFromBuf<StdCompilerBinRead>(*this, pStatus ? Pkt.getPBuf() : Pkt.getRef());
164 }
uint8_t getStatus() const
Definition: C4NetIO.h:318
StdBuf getPBuf() const
Definition: C4NetIO.h:321
C4NetIOPacket getRef() const
Definition: C4NetIO.h:324
Here is the call graph for this function:
Here is the caller graph for this function:

Member Data Documentation

◆ Ctrl

C4IDPacket C4PacketControlPkt::Ctrl

Definition at line 263 of file C4GameControlNetwork.h.

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