FastEngine 0.9.3
A multiplayer oriented 2D engine made with Vulkan.
Loading...
Searching...
No Matches
fge::net::ClientSideNetUdp Class Reference

A client side network manager. More...

#include <C_server.hpp>

Inheritance diagram for fge::net::ClientSideNetUdp:
fge::net::NetFluxUdp

Public Member Functions

 ClientSideNetUdp (IpAddress::Types addressType=IpAddress::Types::Ipv4)
 
 ClientSideNetUdp (ClientSideNetUdp const &r)=delete
 
 ClientSideNetUdp (ClientSideNetUdp &&r) noexcept=delete
 
ClientSideNetUdpoperator= (ClientSideNetUdp const &r)=delete
 
ClientSideNetUdpoperator= (ClientSideNetUdp &&r) noexcept=delete
 
template<class TPacket = Packet>
bool start (Port bindPort, IpAddress const &bindIp, Port connectRemotePort, IpAddress const &connectRemoteAddress, IpAddress::Types addressType=IpAddress::Types::None)
 
void stop ()
 
void notifyTransmission ()
 
bool isRunning () const
 
IpAddress::Types getAddressType () const
 
std::size_t waitForPackets (std::chrono::milliseconds time_ms)
 
Identity const & getClientIdentity () const
 
FluxProcessResults process (FluxPacketPtr &refFluxPacket)
 
void clearPackets ()
 
FluxPacketPtr popNextPacket ()
 
std::size_t getPacketsSize () const
 
bool isEmpty () const
 
void setMaxPackets (std::size_t n)
 
std::size_t getMaxPackets () const
 

Public Attributes

Client _client
 

Protected Member Functions

bool pushPacket (FluxPacketPtr &&fluxPck)
 
void forcePushPacket (FluxPacketPtr fluxPck)
 
void forcePushPacketFront (FluxPacketPtr fluxPck)
 
FluxProcessResults processReorder (Client &client, FluxPacketPtr &refFluxPacket, ProtocolPacket::CountId currentCountId, bool ignoreRealm)
 

Protected Attributes

std::mutex _g_mutexFlux
 
std::deque< FluxPacketPtr > _g_packets
 
std::size_t _g_remainingPackets {0}
 

Detailed Description

A client side network manager.

See also
ServerSideNetUdp

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