Panda3D
Classes | Public Member Functions | Static Public Member Functions | Friends | List of all members
Buffered_DatagramConnection Class Reference
Inheritance diagram for Buffered_DatagramConnection:
Socket_TCP Socket_IP TypedObject MemoryBase

Public Member Functions

 Buffered_DatagramConnection (int rbufsize, int wbufsize, int write_flush_point)
 
virtual ~Buffered_DatagramConnection (void)
 This is the function that does the connection for us. More...
 
void AddAddress (Socket_Address &inadr)
 must be called to set value to the server More...
 
size_t AddressQueueSize ()
 
void ClearAddresses (void)
 
bool DoConnect (void)
 
bool Flush (void)
 Flush all writes. More...
 
virtual TypeHandle force_init_type ()
 
virtual TypeHandle get_type () const
 
bool GetMessage (Datagram &val)
 Reads a message. More...
 
bool IsConnected (void)
 
void Reset (void)
 Reset. More...
 
bool SendMessage (const Datagram &msg)
 send the message More...
 
void WaitForNetworkReadEvent (PN_stdfloat MaxTime)
 
- Public Member Functions inherited from Socket_TCP
 Socket_TCP (SOCKET)
 
bool ActiveOpen (const Socket_Address &theaddress, bool setdelay)
 This function will try and set the socket up for active open to a specified address and port provided by the input parameter. More...
 
bool ActiveOpenNonBlocking (const Socket_Address &theaddress)
 This function will try and set the socket up for active open to a specified address and port provided by the input parameter (non-blocking version) More...
 
int DontLinger ()
 Turn off the linger flag. More...
 
bool ErrorIs_WouldBlocking (int err)
 
std::string RecvData (int max_len)
 Read the data from the connection - if error 0 if socket closed for read or length is 0 + bytes read (May be smaller than requested) More...
 
int RecvData (char *data, int size)
 Read the data from the connection - if error 0 if socket closed for read or length is 0 + bytes read ( May be smaller than requested) More...
 
int SendData (const std::string &str)
 
int SendData (const char *data, int size)
 Ok Lets Send the Data - if error 0 if socket closed for write or lengh is 0 + bytes writen ( May be smaller than requested) More...
 
int SetLinger (int interval_seconds=0)
 will control the behavior of SO_LINGER for a TCP socket More...
 
int SetNoDelay (bool flag=true)
 Disable Nagle algorithm. More...
 
int SetSendBufferSize (int insize)
 Just like it sounds. More...
 
bool ShutdownSend ()
 
- Public Member Functions inherited from Socket_IP
 Socket_IP ()
 Def Constructor. More...
 
 Socket_IP (SOCKET in)
 Assigns an existing socket to this class. More...
 
virtual ~Socket_IP ()
 Destructor. More...
 
bool Active ()
 Ask if the socket is open (allocated) More...
 
void Close ()
 Closes a socket if it is open (allocated). More...
 
Socket_Address GetPeerName (void) const
 Wrapper on berkly getpeername... More...
 
SOCKET GetSocket ()
 Gets the base socket type. More...
 
SOCKET GetSocket () const
 Get The RAW file id of the socket. More...
 
int SetBlocking ()
 Set the socket to block on subsequent calls to socket functions that address this socket. More...
 
int SetNonBlocking ()
 this function will throw a socket into non-blocking mode More...
 
int SetRecvBufferSize (int size)
 Ok it sets the recv buffer size for both tcp and UDP. More...
 
bool SetReuseAddress (bool flag=true)
 Informs a socket to reuse IP address as needed. More...
 
void SetSocket (SOCKET ins)
 Assigns an existing socket to this class. More...
 
bool SetV6Only (bool flag)
 Sets a flag indicating whether this IPv6 socket should operate in dual-stack mode or not. More...
 
- Public Member Functions inherited from TypedObject
 TypedObject (const TypedObject &copy)=default
 
TypedObjectas_typed_object ()
 Returns the object, upcast (if necessary) to a TypedObject pointer. More...
 
const TypedObjectas_typed_object () const
 Returns the object, upcast (if necessary) to a TypedObject pointer. More...
 
int get_best_parent_from_Set (const std::set< int > &) const
 
int get_type_index () const
 Returns the internal index number associated with this object's TypeHandle, a unique number for each different type. More...
 
bool is_exact_type (TypeHandle handle) const
 Returns true if the current object is the indicated type exactly. More...
 
bool is_of_type (TypeHandle handle) const
 Returns true if the current object is or derives from the indicated type. More...
 
TypedObjectoperator= (const TypedObject &copy)=default
 

Static Public Member Functions

static TypeHandle get_class_type ()
 
static void init_type ()
 
- Static Public Member Functions inherited from Socket_TCP
static TypeHandle get_class_type ()
 
static void init_type ()
 
- Static Public Member Functions inherited from Socket_IP
static TypeHandle get_class_type ()
 
static int GetLastError ()
 Gets the last errcode from a socket operation. More...
 
static void init_type ()
 
static int InitNetworkDriver ()
 
- Static Public Member Functions inherited from TypedObject
static TypeHandle get_class_type ()
 
static void init_type ()
 This function is declared non-inline to work around a compiler bug in g++ 2.96. More...
 

Friends

class Buffered_DatagramReader
 
class Buffered_DatagramWriter
 

Additional Inherited Members

- Public Attributes inherited from TypedObject
 get_type
 

Detailed Description

Definition at line 35 of file buffered_datagramconnection.h.

Constructor & Destructor Documentation

◆ ~Buffered_DatagramConnection()

Buffered_DatagramConnection::~Buffered_DatagramConnection ( void  )
inlinevirtual

This is the function that does the connection for us.

Definition at line 208 of file buffered_datagramconnection.h.

References Socket_IP::Close().

Member Function Documentation

◆ AddAddress()

void Buffered_DatagramConnection::AddAddress ( Socket_Address inadr)
inline

must be called to set value to the server

Definition at line 236 of file buffered_datagramconnection.h.

◆ Flush()

bool Buffered_DatagramConnection::Flush ( void  )
inline

Flush all writes.

Definition at line 270 of file buffered_datagramconnection.h.

References RingBuffer::AmountBuffered(), and Socket_IP::GetLastError().

◆ GetMessage()

bool Buffered_DatagramConnection::GetMessage ( Datagram val)
inline

Reads a message.

Returns false on failure.

Definition at line 248 of file buffered_datagramconnection.h.

References RingBuffer::AmountBuffered().

◆ Reset()

void Buffered_DatagramConnection::Reset ( void  )
inline

Reset.

Definition at line 291 of file buffered_datagramconnection.h.

◆ SendMessage()

bool Buffered_DatagramConnection::SendMessage ( const Datagram msg)

send the message

Definition at line 22 of file buffered_datagramconnection.cxx.

References RingBuffer::AmountBuffered(), Datagram::get_data(), and Datagram::get_length().


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