A client side network manager.
More...
#include <C_server.hpp>
|
| enum | ProcessOptions : uint32_t { OPTION_NONE = 0
, OPTION_NO_TIMEOUT = 1 << 0
, OPTION_ONE_SHOT = 1 << 1
} |
|
|
| ClientSideNetUdp (IpAddress::Types addressType=IpAddress::Types::Ipv4) |
|
| ClientSideNetUdp (ClientSideNetUdp const &r)=delete |
|
| ClientSideNetUdp (ClientSideNetUdp &&r) noexcept=delete |
|
ClientSideNetUdp & | operator= (ClientSideNetUdp const &r)=delete |
|
ClientSideNetUdp & | operator= (ClientSideNetUdp &&r) noexcept=delete |
|
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 |
|
std::future< uint16_t > | retrieveMTU () |
|
std::future< bool > | connect (std::string_view versioningString=std::string_view{}) |
|
std::future< void > | disconnect () |
|
IpAddress::Types | getAddressType () const |
|
std::size_t | waitForPackets (std::chrono::milliseconds time_ms) |
|
Identity const & | getClientIdentity () const |
| template<class TPacket = Packet> |
| void | sendTo (TransmitPacketPtr &pck, Identity const &id) |
|
FluxProcessResults | process (ReceivedPacketPtr &packet, EnumFlags< ProcessOptions > options=OPTION_NONE) |
|
void | resetReturnPacket () |
|
TransmitPacketPtr & | startComplexReturnEvent (uint16_t id) |
|
TransmitPacketPtr & | startObjectReturnEvent (uint16_t commandIndex, ObjectSid parentSid, ObjectSid targetSid) |
|
void | endReturnEvent () |
|
void | simpleReturnEvent (uint16_t id) |
|
bool | askFullUpdateReturnEvent () |
|
void | enableReturnPacket (bool enable) |
|
bool | isReturnPacketEnabled () const |
|
TransmitPacketPtr | prepareAndRetrieveReturnPacket () |
|
std::optional< Error > | loopbackReturnPacket (ReturnPacketHandler const &handler) |
|
void | clearPackets () |
|
ReceivedPacketPtr | popNextPacket () |
|
std::size_t | getPacketsSize () const |
|
bool | isEmpty () const |
|
void | setMaxPackets (std::size_t n) |
|
std::size_t | getMaxPackets () const |
|
bool | isDefaultFlux () const |
|
|
bool | pushPacket (ReceivedPacketPtr &&fluxPck) |
|
void | forcePushPacket (ReceivedPacketPtr fluxPck) |
|
void | forcePushPacketFront (ReceivedPacketPtr fluxPck) |
|
|
std::mutex | _g_mutexFlux |
|
std::deque< ReceivedPacketPtr > | _g_packets |
|
std::size_t | _g_remainingPackets {0} |
A client side network manager.
- See also
- ServerSideNetUdp
◆ sendTo()
template<class TPacket>
| void fge::net::ClientSideNetUdp::sendTo |
( |
TransmitPacketPtr & | pck, |
|
|
Identity const & | id ) |
TODO: have a transmission queue ?
The documentation for this class was generated from the following files: