OpenClonk
C4PacketAddr Class Reference

#include <C4Network2Client.h>

Inheritance diagram for C4PacketAddr:
[legend]
Collaboration diagram for C4PacketAddr:
[legend]

Public Member Functions

 C4PacketAddr ()=default
 
 C4PacketAddr (int32_t iClientID, const C4Network2Address &addr)
 
int32_t getClientID () const
 
const C4Network2AddressgetAddr () 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

int32_t iClientID
 
C4Network2Address addr
 

Detailed Description

Definition at line 197 of file C4Network2Client.h.

Constructor & Destructor Documentation

◆ C4PacketAddr() [1/2]

C4PacketAddr::C4PacketAddr ( )
default

◆ C4PacketAddr() [2/2]

C4PacketAddr::C4PacketAddr ( int32_t  iClientID,
const C4Network2Address addr 
)
inline

Definition at line 201 of file C4Network2Client.h.

203  { }
C4Network2Address addr

Member Function Documentation

◆ CompileFunc()

void C4PacketAddr::CompileFunc ( StdCompiler pComp)
overridevirtual

Implements C4PacketBase.

Definition at line 638 of file C4Network2Client.cpp.

639 {
641  pComp->Value(mkNamingAdapt(addr, "Addr"));
642 }
const int32_t C4ClientIDUnknown
Definition: C4Client.h:24
StdIntPackAdapt< T > mkIntPackAdapt(T &rVal)
Definition: StdAdaptors.h:791
StdNamingAdapt< T > mkNamingAdapt(T &&rValue, const char *szName)
Definition: StdAdaptors.h:92
void Value(const T &rStruct)
Definition: StdCompiler.h:161

References addr, C4ClientIDUnknown, iClientID, mkIntPackAdapt(), mkNamingAdapt(), and StdCompiler::Value().

Here is the call graph for this function:

◆ getAddr()

const C4Network2Address& C4PacketAddr::getAddr ( ) const
inline

Definition at line 211 of file C4Network2Client.h.

211 { return addr; }

References addr.

◆ getClientID()

int32_t C4PacketAddr::getClientID ( ) const
inline

Definition at line 210 of file C4Network2Client.h.

210 { return iClientID; }

References iClientID.

◆ pack() [1/2]

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

Definition at line 150 of file C4Packet2.cpp.

151 {
152  return C4NetIOPacket(DecompileToBuf<StdCompilerBinWrite>(*this), addr);
153 }

Referenced by MkC4NetIOPacket().

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
inherited

Definition at line 155 of file C4Packet2.cpp.

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

References mkDecompileAdapt(), and mkInsertAdapt().

Here is the call graph for this function:

◆ unpack()

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

Definition at line 160 of file C4Packet2.cpp.

161 {
162  if (pStatus) *pStatus = Pkt.getStatus();
163  CompileFromBuf<StdCompilerBinRead>(*this, pStatus ? Pkt.getPBuf() : Pkt.getRef());
164 }
uint8_t getStatus() const
Definition: C4NetIO.h:319
StdBuf getPBuf() const
Definition: C4NetIO.h:322
C4NetIOPacket getRef() const
Definition: C4NetIO.h:325

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

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

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

Member Data Documentation

◆ addr

C4Network2Address C4PacketAddr::addr
protected

Definition at line 207 of file C4Network2Client.h.

Referenced by CompileFunc(), and getAddr().

◆ iClientID

int32_t C4PacketAddr::iClientID
protected

Definition at line 206 of file C4Network2Client.h.

Referenced by CompileFunc(), and getClientID().


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