LeviLamina
Loading...
Searching...
No Matches
BatchedNetworkPeer Class Reference
+ Inheritance diagram for BatchedNetworkPeer:

Classes

struct  DataCallback
 

Public Types

enum class  Reliability : int { Reliable = 0 , ReliableOrdered = 1 , Unreliable = 2 , UnreliableSequenced = 3 }
 
enum class  DataStatus : int { HasData = 0 , NoData = 1 , BrokenData = 2 }
 
enum class  NetworkLoad : int { Unrestricted = 0 , Low = 1 , Medium = 2 , High = 3 }
 
using PacketRecvTimepoint = ::std::chrono::steady_clock::time_point
 
using PacketRecvTimepointPtr = ::std::shared_ptr<::std::chrono::steady_clock::time_point>
 

Public Member Functions

virtual void flush (::std::function< void()> &&callback)
 
virtual void sendPacket (::std::string const &data, ::NetworkPeer::Reliability reliability, ::Compressibility compressible)
 
virtual::NetworkPeer::DataStatus receivePacket (::std::string &outData, ::std::shared_ptr<::std::chrono::steady_clock::time_point > const &timepointPtr)
 
virtual::NetworkPeer::NetworkStatus getNetworkStatus () const
 
virtual void update ()
 
MCAPI BatchedNetworkPeer (::std::shared_ptr<::NetworkPeer > peer, ::Scheduler &scheduler)
 
MCAPI void _startSendTask ()
 
MCAPI void * $ctor (::std::shared_ptr<::NetworkPeer > peer, ::Scheduler &scheduler)
 
MCAPI void $dtor ()
 
MCAPI void $flush (::std::function< void()> &&callback)
 
MCAPI void $sendPacket (::std::string const &data, ::NetworkPeer::Reliability reliability, ::Compressibility compressible)
 
MCAPI::NetworkPeer::DataStatus $receivePacket (::std::string &outData, ::std::shared_ptr<::std::chrono::steady_clock::time_point > const &timepointPtr)
 
MCFOLD::NetworkPeer::NetworkStatus $getNetworkStatus () const
 
MCAPI void $update ()
 
virtual bool isLocal () const
 
virtual bool isEncrypted () const
 
MCAPI bool $isLocal () const
 
MCAPI bool $isEncrypted () const
 

Static Public Member Functions

static MCAPI void ** $vftable ()
 

Public Attributes

::ll::TypedStorage< 8, 80, ::BinaryStreammOutgoingData
 
::ll::TypedStorage< 8, 8, uint64 > mCompressibleBytes
 
::ll::TypedStorage< 8, 32, ::std::string > mIncomingDataBuffer
 
::ll::TypedStorage< 8, 80, ::std::optional<::ReadOnlyBinaryStream > > mIncomingData
 
::ll::TypedStorage< 8, 8, ::std::unique_ptr<::TaskGroup > > mTaskGroup
 
::ll::TypedStorage< 8, 80, ::SPSCQueue<::BatchedNetworkPeer::DataCallback, 512 > > mSendQueue
 
::ll::TypedStorage< 1, 1, ::std::atomic< bool > > mTaskRunning
 
::ll::TypedStorage< 8, 8, ::std::atomic< uint64 > > mQueuedPackets
 
::ll::TypedStorage< 8, 8, uint64 > mSentPackets
 
::ll::TypedStorage< 1, 1, bool > mAsyncEnabled
 
::ll::TypedStorage< 8, 16, ::std::shared_ptr<::NetworkPeer > > mPeer
 

Member Function Documentation

◆ flush()

virtual void BatchedNetworkPeer::flush ( ::std::function< void()> && callback)
virtual

Reimplemented from NetworkPeer.

◆ sendPacket()

virtual void BatchedNetworkPeer::sendPacket ( ::std::string const & data,
::NetworkPeer::Reliability reliability,
::Compressibility compressible )
virtual

Implements NetworkPeer.

◆ receivePacket()

virtual::NetworkPeer::DataStatus BatchedNetworkPeer::receivePacket ( ::std::string & outData,
::std::shared_ptr<::std::chrono::steady_clock::time_point > const & timepointPtr )
virtual

Implements NetworkPeer.

◆ getNetworkStatus()

virtual::NetworkPeer::NetworkStatus BatchedNetworkPeer::getNetworkStatus ( ) const
virtual

Implements NetworkPeer.

◆ update()

virtual void BatchedNetworkPeer::update ( )
virtual

Reimplemented from NetworkPeer.


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