#include <internal.h>
Public Member Functions | |
| UDPPeer (session_t id, const Address &address, Connection *connection) | |
| virtual | ~UDPPeer ()=default |
| void | PutReliableSendCommand (ConnectionCommandPtr &c, unsigned int max_packet_size) override |
| virtual const Address & | getAddress () const override |
| u16 | getNextSplitSequenceNumber (u8 channel) override |
| void | setNextSplitSequenceNumber (u8 channel, u16 seqnum) override |
| SharedBuffer< u8 > | addSplitPacket (u8 channel, BufferedPacketPtr &toadd, bool reliable) override |
| bool | isTimedOut (float timeout, std::string &reason) override |
| Public Member Functions inherited from con::Peer | |
| virtual | ~Peer () |
| void | Drop () |
| bool | isPendingDeletion () const |
| void | ResetTimeout () |
| bool | isHalfOpen () const |
| void | SetFullyOpen () |
| virtual float | getStat (rtt_stat_type type) const |
Protected Member Functions | |
| void | reportRTT (float rtt) override |
| void | RunCommandQueues (unsigned int max_packet_size, unsigned int maxtransfer) |
| float | getResendTimeout () |
| void | setResendTimeout (float timeout) |
| bool | Ping (float dtime, SharedBuffer< u8 > &data) override |
| Protected Member Functions inherited from con::Peer | |
| Peer (session_t id, const Address &address, Connection *connection) | |
| void | RTTStatistics (float rtt, const std::string &profiler_id="", unsigned int num_samples=1000) |
| bool | IncUseCount () |
| void | DecUseCount () |
| Protected Member Functions inherited from con::IPeer | |
| IPeer (session_t id) | |
| ~IPeer () | |
Protected Attributes | |
| Channel | channels [CHANNEL_COUNT] |
| bool | m_pending_disconnect = false |
| Protected Attributes inherited from con::Peer | |
| std::mutex | m_exclusive_access_mutex |
| bool | m_pending_deletion = false |
| Connection * | m_connection |
| Address | address |
| float | m_ping_timer = 0.0f |
Private Member Functions | |
| bool | processReliableSendCommand (ConnectionCommandPtr &c_ptr, unsigned int max_packet_size) |
Private Attributes | |
| float | resend_timeout = 0.5 |
Friends | |
| class | PeerHelper |
| class | ConnectionReceiveThread |
| class | ConnectionSendThread |
| class | Connection |
Additional Inherited Members | |
| Public Attributes inherited from con::Peer | |
| unsigned int | m_increment_packets_remaining = 0 |
| Public Attributes inherited from con::IPeer | |
| const session_t | id |
| con::UDPPeer::UDPPeer | ( | session_t | id, |
| const Address & | address, | ||
| Connection * | connection ) |
References con::Peer::Peer(), con::Peer::address, channels, Connection, con::IPeer::id, and START_RELIABLE_WINDOW_SIZE.
|
virtualdefault |
|
overridevirtual |
Reimplemented from con::Peer.
References CHANNEL_COUNT, and channels.
|
inlineoverridevirtual |
Implements con::IPeer.
References con::Peer::address.
|
overridevirtual |
Reimplemented from con::Peer.
References CHANNEL_COUNT, and channels.
|
inlineprotected |
References con::Peer::m_exclusive_access_mutex, and resend_timeout.
Referenced by reportRTT(), and con::ConnectionSendThread::runTimeouts().
|
overridevirtual |
Reimplemented from con::Peer.
References CHANNEL_COUNT, channels, con::ReliablePacketBuffer::getTimedOuts(), con::Peer::isTimedOut(), itos(), con::Peer::m_exclusive_access_mutex, and con::Channel::outgoing_reliables_sent.
|
overrideprotectedvirtual |
Reimplemented from con::Peer.
References con::CONTROLTYPE_PING, con::Peer::isHalfOpen(), con::Peer::m_ping_timer, con::PACKET_TYPE_CONTROL, PING_TIMEOUT, and writeU8().
Referenced by con::ConnectionSendThread::runTimeouts().
|
private |
References con::Peer::address, BASE_HEADER_SIZE, channels, dout_con, FATAL_ERROR_IF, con::Channel::getOutgoingSequenceNumber(), LOG, con::Peer::m_connection, m_pending_disconnect, con::makeAutoSplitPacket(), con::makePacket(), con::makeReliablePacket(), MAX_RELIABLE_WINDOW_SIZE, con::Channel::outgoing_reliables_sent, p(), con::Channel::putBackSequenceNumber(), con::Channel::queued_reliables, con::Channel::readNextSplitSeqNum(), RELIABLE_HEADER_SIZE, sanity_check, SEQNUM_MAX, con::Channel::setNextSplitSeqNum(), and con::ReliablePacketBuffer::size().
Referenced by PutReliableSendCommand(), and RunCommandQueues().
|
overridevirtual |
Reimplemented from con::Peer.
References channels, derr_con, dout_con, con::Channel::getWindowSize(), LOG, con::Peer::m_connection, m_pending_disconnect, processReliableSendCommand(), con::Channel::queued_commands, and con::Channel::queued_reliables.
|
overrideprotectedvirtual |
Reimplemented from con::Peer.
References con::AVG_RTT, dout_con, getResendTimeout(), con::Peer::getStat(), con::Peer::m_connection, MAX_RELIABLE_WINDOW_SIZE, RESEND_TIMEOUT_FACTOR, RESEND_TIMEOUT_MAX, RESEND_TIMEOUT_MIN, con::Peer::RTTStatistics(), and setResendTimeout().
|
protected |
References channels, dout_con, LOG, con::Peer::m_connection, and processReliableSendCommand().
Referenced by con::ConnectionSendThread::runTimeouts().
|
overridevirtual |
Reimplemented from con::Peer.
References CHANNEL_COUNT, and channels.
|
inlineprotected |
References con::Peer::m_exclusive_access_mutex, and resend_timeout.
Referenced by reportRTT().
|
friend |
References con::Peer::address, and Connection.
Referenced by UDPPeer(), and Connection.
|
friend |
References ConnectionReceiveThread.
Referenced by ConnectionReceiveThread.
|
friend |
References ConnectionSendThread.
Referenced by ConnectionSendThread.
|
friend |
References PeerHelper.
Referenced by PeerHelper.
|
protected |
|
protected |
Referenced by processReliableSendCommand(), PutReliableSendCommand(), and con::ConnectionSendThread::sendPackets().
|
private |
Referenced by getResendTimeout(), and setResendTimeout().