Connection

from panda3d.net import Connection
class Connection

Bases: ReferenceCount

Represents a single TCP or UDP socket for input or output.

Inheritance diagram

Inheritance diagram of Connection

__init__(*args, **kwargs)
considerFlush()

C++ Interface: consider_flush(const Connection self)

/**
  • Sends the most recently queued TCP datagram(s) if enough time has elapsed.

  • This only has meaning if set_collect_tcp() has been set to true.

*/

consider_flush()

C++ Interface: consider_flush(const Connection self)

/**
  • Sends the most recently queued TCP datagram(s) if enough time has elapsed.

  • This only has meaning if set_collect_tcp() has been set to true.

*/

flush()

C++ Interface: flush(const Connection self)

/**
  • Sends the most recently queued TCP datagram(s) now. This only has meaning

  • if set_collect_tcp() has been set to true.

*/

getAddress()

C++ Interface: get_address(Connection self)

/**
  • Returns the address bound to this connection, if it is a TCP connection.

*/

getCollectTcp()

C++ Interface: get_collect_tcp(Connection self)

/**
  • Returns the current setting of “collect-tcp” mode. See set_collect_tcp().

*/

getCollectTcpInterval()

C++ Interface: get_collect_tcp_interval(Connection self)

/**
  • Returns the interval in time, in seconds, for which to hold TCP packets

  • before sending all of the recently received packets at once. This only has

  • meaning if “collect-tcp” mode is enabled; see set_collect_tcp().

*/

getManager()

C++ Interface: get_manager(Connection self)

/**
  • Returns a pointer to the ConnectionManager object that serves this

  • connection.

*/

getSocket()

C++ Interface: get_socket(Connection self)

/**
  • Returns the internal Socket_IP that defines the connection.

*/

get_address()

C++ Interface: get_address(Connection self)

/**
  • Returns the address bound to this connection, if it is a TCP connection.

*/

get_collect_tcp()

C++ Interface: get_collect_tcp(Connection self)

/**
  • Returns the current setting of “collect-tcp” mode. See set_collect_tcp().

*/

get_collect_tcp_interval()

C++ Interface: get_collect_tcp_interval(Connection self)

/**
  • Returns the interval in time, in seconds, for which to hold TCP packets

  • before sending all of the recently received packets at once. This only has

  • meaning if “collect-tcp” mode is enabled; see set_collect_tcp().

*/

get_manager()

C++ Interface: get_manager(Connection self)

/**
  • Returns a pointer to the ConnectionManager object that serves this

  • connection.

*/

get_socket()

C++ Interface: get_socket(Connection self)

/**
  • Returns the internal Socket_IP that defines the connection.

*/

setCollectTcp()

C++ Interface: set_collect_tcp(const Connection self, bool collect_tcp)

/**
  • Enables or disables “collect-tcp” mode. In this mode, individual TCP

  • packets are not sent immediately, but rather they are collected together

  • and accumulated to be sent periodically as one larger TCP packet. This

  • cuts down on overhead from the TCP/IP protocol, especially if many small

  • packets need to be sent on the same connection, but it introduces

  • additional latency (since packets must be held before they can be sent).

  • See set_collect_tcp_interval() to specify the interval of time for which to

  • hold packets before sending them.

  • If you enable this mode, you may also need to periodically call

  • consider_flush() to flush the queue if no packets have been sent recently.

*/

setCollectTcpInterval()

C++ Interface: set_collect_tcp_interval(const Connection self, double interval)

/**
  • Specifies the interval in time, in seconds, for which to hold TCP packets

  • before sending all of the recently received packets at once. This only has

  • meaning if “collect-tcp” mode is enabled; see set_collect_tcp().

*/

setIpTimeToLive()

C++ Interface: set_ip_time_to_live(const Connection self, int ttl)

/**
  • Sets IP time-to-live.

*/

setIpTypeOfService()

C++ Interface: set_ip_type_of_service(const Connection self, int tos)

/**
  • Sets IP type-of-service and precedence.

*/

setKeepAlive()

C++ Interface: set_keep_alive(const Connection self, bool flag)

/**
  • Sets whether the connection is periodically tested to see if it is still

  • alive.

*/

setLinger()

C++ Interface: set_linger(const Connection self, bool flag, double time)

// Socket options. void set_nonblock(bool flag);

/**
  • Sets the time to linger on close if data is present. If flag is false,

  • when you close a socket with data available the system attempts to deliver

  • the data to the peer (the default behavior). If flag is false but time is

  • zero, the system discards any undelivered data when you close the socket.

  • If flag is false but time is nonzero, the system waits up to time seconds

  • to deliver the data.

*/

setMaxSegment()

C++ Interface: set_max_segment(const Connection self, int size)

/**
  • Sets the maximum segment size.

*/

setNoDelay()

C++ Interface: set_no_delay(const Connection self, bool flag)

/**
  • If flag is true, this disables the Nagle algorithm, and prevents delaying

  • of send to coalesce packets.

*/

setRecvBufferSize()

C++ Interface: set_recv_buffer_size(const Connection self, int size)

/**
  • Sets the size of the receive buffer, in bytes.

*/

setReuseAddr()

C++ Interface: set_reuse_addr(const Connection self, bool flag)

/**
  • Sets whether local address reuse is allowed.

*/

setSendBufferSize()

C++ Interface: set_send_buffer_size(const Connection self, int size)

/**
  • Sets the size of the send buffer, in bytes.

*/

set_collect_tcp()

C++ Interface: set_collect_tcp(const Connection self, bool collect_tcp)

/**
  • Enables or disables “collect-tcp” mode. In this mode, individual TCP

  • packets are not sent immediately, but rather they are collected together

  • and accumulated to be sent periodically as one larger TCP packet. This

  • cuts down on overhead from the TCP/IP protocol, especially if many small

  • packets need to be sent on the same connection, but it introduces

  • additional latency (since packets must be held before they can be sent).

  • See set_collect_tcp_interval() to specify the interval of time for which to

  • hold packets before sending them.

  • If you enable this mode, you may also need to periodically call

  • consider_flush() to flush the queue if no packets have been sent recently.

*/

set_collect_tcp_interval()

C++ Interface: set_collect_tcp_interval(const Connection self, double interval)

/**
  • Specifies the interval in time, in seconds, for which to hold TCP packets

  • before sending all of the recently received packets at once. This only has

  • meaning if “collect-tcp” mode is enabled; see set_collect_tcp().

*/

set_ip_time_to_live()

C++ Interface: set_ip_time_to_live(const Connection self, int ttl)

/**
  • Sets IP time-to-live.

*/

set_ip_type_of_service()

C++ Interface: set_ip_type_of_service(const Connection self, int tos)

/**
  • Sets IP type-of-service and precedence.

*/

set_keep_alive()

C++ Interface: set_keep_alive(const Connection self, bool flag)

/**
  • Sets whether the connection is periodically tested to see if it is still

  • alive.

*/

set_linger()

C++ Interface: set_linger(const Connection self, bool flag, double time)

// Socket options. void set_nonblock(bool flag);

/**
  • Sets the time to linger on close if data is present. If flag is false,

  • when you close a socket with data available the system attempts to deliver

  • the data to the peer (the default behavior). If flag is false but time is

  • zero, the system discards any undelivered data when you close the socket.

  • If flag is false but time is nonzero, the system waits up to time seconds

  • to deliver the data.

*/

set_max_segment()

C++ Interface: set_max_segment(const Connection self, int size)

/**
  • Sets the maximum segment size.

*/

set_no_delay()

C++ Interface: set_no_delay(const Connection self, bool flag)

/**
  • If flag is true, this disables the Nagle algorithm, and prevents delaying

  • of send to coalesce packets.

*/

set_recv_buffer_size()

C++ Interface: set_recv_buffer_size(const Connection self, int size)

/**
  • Sets the size of the receive buffer, in bytes.

*/

set_reuse_addr()

C++ Interface: set_reuse_addr(const Connection self, bool flag)

/**
  • Sets whether local address reuse is allowed.

*/

set_send_buffer_size()

C++ Interface: set_send_buffer_size(const Connection self, int size)

/**
  • Sets the size of the send buffer, in bytes.

*/