Public Types | |
typedef char | TimeToLive |
typedef unsigned long | DataLength |
typedef unsigned short | UserDataIndex |
Public Member Functions | |
virtual void | SendTo (const IAddress &address, const char *pData, DataLength dataLength)=0 |
virtual void | SendTo (const IAddress &address, const BYTE *pData, DataLength dataLength)=0 |
virtual void | SendTo (const IAddress &address, JetByteTools::IO::CSmartBuffer &buffer)=0 |
virtual bool | TrySendTo (const IAddress &address, const char *pData, DataLength dataLength)=0 |
virtual bool | TrySendTo (const IAddress &address, const BYTE *pData, DataLength dataLength)=0 |
virtual bool | TrySendTo (const IAddress &address, JetByteTools::IO::CSmartBuffer &buffer)=0 |
virtual CAddress | GetLocalAddress () const =0 |
virtual CAddress | GetRemoteAddress () const =0 |
virtual void | AddRef ()=0 |
virtual void | Release ()=0 |
virtual bool | WeOwnOnlyReference () const =0 |
virtual void | Shutdown ()=0 |
virtual void | Shutdown (ShutdownHow how)=0 |
virtual bool | AbortConnection ()=0 |
virtual bool | AbortConnection (ConnectionClosureReason reason)=0 |
virtual ConnectionDirection | GetConnectionDirection () const =0 |
virtual JetByteTools::Core::ILockableObject & | GetLock () const =0 |
Returns the critical section that is used for locking this socket's data for multi-threaded use. | |
virtual void | JoinMulticastGroup (const IAddress &groupAddress, const IAddress &interfaceAddress)=0 |
virtual void | BlockMulticastGroupSource (const IAddress &groupAddress, const IAddress &interfaceAddress, const IAddress &sourceAddress)=0 |
virtual void | UnblockMulticastGroupSource (const IAddress &groupAddress, const IAddress &interfaceAddress, const IAddress &sourceAddress)=0 |
virtual void | LeaveMulticastGroup (const IAddress &groupAddress, const IAddress &interfaceAddress)=0 |
virtual void | IncludeMulticastSource (const IAddress &groupAddress, const IAddress &interfaceAddress, const IAddress &sourceAddress)=0 |
virtual void | ExcludeMulticastSource (const IAddress &groupAddress, const IAddress &interfaceAddress, const IAddress &sourceAddress)=0 |
virtual void | SetMulticastSendInterface (const IAddress &interfaceAddress, TimeToLive multicastTTL=1, bool enableLoopback=false)=0 |
virtual void * | GetUserPointer (UserDataIndex index) const =0 |
Access the data stored at the specified index as a void pointer. | |
virtual void | SetUserPointer (UserDataIndex index, void *pData)=0 |
Update the data stored at the specified index as a void pointer. | |
virtual ULONG_PTR | GetUserData (UserDataIndex index) const =0 |
Access the data stored at the specified index as an unsigned long. | |
virtual void | SetUserData (UserDataIndex index, ULONG_PTR data)=0 |
Update the data stored at the specified index as an unsigned long. | |
Static Public Attributes | |
static JETBYTE_CONSTEXPR UserDataIndex | InvalidUserDataIndex = 0xFFFF |
Protected Member Functions | |
~IDatagramSendSocket () | |
We never delete instances of this interface; you must manage the lifetime of the class that implements it. |
typedef char TimeToLive [inherited] |
typedef unsigned long DataLength [inherited] |
typedef unsigned short UserDataIndex [inherited] |
~IDatagramSendSocket | ( | ) | [protected] |
We never delete instances of this interface; you must manage the lifetime of the class that implements it.
virtual void SendTo | ( | const IAddress & | address, | |
const char * | pData, | |||
DataLength | dataLength | |||
) | [pure virtual] |
Implemented in IDatagramSocket.
virtual void SendTo | ( | const IAddress & | address, | |
const BYTE * | pData, | |||
DataLength | dataLength | |||
) | [pure virtual] |
Implemented in IDatagramSocket.
virtual void SendTo | ( | const IAddress & | address, | |
JetByteTools::IO::CSmartBuffer & | buffer | |||
) | [pure virtual] |
Implemented in IDatagramSocket.
virtual bool TrySendTo | ( | const IAddress & | address, | |
const char * | pData, | |||
DataLength | dataLength | |||
) | [pure virtual] |
Implemented in IDatagramSocket.
virtual bool TrySendTo | ( | const IAddress & | address, | |
const BYTE * | pData, | |||
DataLength | dataLength | |||
) | [pure virtual] |
Implemented in IDatagramSocket.
virtual bool TrySendTo | ( | const IAddress & | address, | |
JetByteTools::IO::CSmartBuffer & | buffer | |||
) | [pure virtual] |
Implemented in IDatagramSocket.
virtual CAddress GetLocalAddress | ( | ) | const [pure virtual] |
Implemented in TAsyncSocket< JetByteTools::Socket::TMulticastDatagramHelper< JetByteTools::Socket::IPoolableDatagramSocket >, JetByteTools::Socket::IDatagramSocketConnectionManager, JetByteTools::Socket::IDatagramSocketCallback >, and TAsyncSocket< JetByteTools::Socket::IPoolableDatagramServerSocket, JetByteTools::Socket::IDatagramServerSocketConnectionManager, JetByteTools::Socket::IDatagramServerSocketCallback >.
virtual CAddress GetRemoteAddress | ( | ) | const [pure virtual] |
Implemented in TAsyncSocket< JetByteTools::Socket::TMulticastDatagramHelper< JetByteTools::Socket::IPoolableDatagramSocket >, JetByteTools::Socket::IDatagramSocketConnectionManager, JetByteTools::Socket::IDatagramSocketCallback >, and TAsyncSocket< JetByteTools::Socket::IPoolableDatagramServerSocket, JetByteTools::Socket::IDatagramServerSocketConnectionManager, JetByteTools::Socket::IDatagramServerSocketCallback >.
virtual void AddRef | ( | ) | [pure virtual] |
Implemented in TAsyncSocket< JetByteTools::Socket::TMulticastDatagramHelper< JetByteTools::Socket::IPoolableDatagramSocket >, JetByteTools::Socket::IDatagramSocketConnectionManager, JetByteTools::Socket::IDatagramSocketCallback >, and TAsyncSocket< JetByteTools::Socket::IPoolableDatagramServerSocket, JetByteTools::Socket::IDatagramServerSocketConnectionManager, JetByteTools::Socket::IDatagramServerSocketCallback >.
virtual void Release | ( | ) | [pure virtual] |
Implemented in TAsyncSocket< JetByteTools::Socket::TMulticastDatagramHelper< JetByteTools::Socket::IPoolableDatagramSocket >, JetByteTools::Socket::IDatagramSocketConnectionManager, JetByteTools::Socket::IDatagramSocketCallback >, and TAsyncSocket< JetByteTools::Socket::IPoolableDatagramServerSocket, JetByteTools::Socket::IDatagramServerSocketConnectionManager, JetByteTools::Socket::IDatagramServerSocketCallback >.
virtual bool WeOwnOnlyReference | ( | ) | const [pure virtual] |
Implemented in TAsyncSocket< JetByteTools::Socket::TMulticastDatagramHelper< JetByteTools::Socket::IPoolableDatagramSocket >, JetByteTools::Socket::IDatagramSocketConnectionManager, JetByteTools::Socket::IDatagramSocketCallback >, and TAsyncSocket< JetByteTools::Socket::IPoolableDatagramServerSocket, JetByteTools::Socket::IDatagramServerSocketConnectionManager, JetByteTools::Socket::IDatagramServerSocketCallback >.
virtual void Shutdown | ( | ) | [pure virtual] |
Implemented in TAsyncSocket< JetByteTools::Socket::TMulticastDatagramHelper< JetByteTools::Socket::IPoolableDatagramSocket >, JetByteTools::Socket::IDatagramSocketConnectionManager, JetByteTools::Socket::IDatagramSocketCallback >, and TAsyncSocket< JetByteTools::Socket::IPoolableDatagramServerSocket, JetByteTools::Socket::IDatagramServerSocketConnectionManager, JetByteTools::Socket::IDatagramServerSocketCallback >.
virtual void Shutdown | ( | ShutdownHow | how | ) | [pure virtual] |
Implemented in TAsyncSocket< JetByteTools::Socket::TMulticastDatagramHelper< JetByteTools::Socket::IPoolableDatagramSocket >, JetByteTools::Socket::IDatagramSocketConnectionManager, JetByteTools::Socket::IDatagramSocketCallback >, and TAsyncSocket< JetByteTools::Socket::IPoolableDatagramServerSocket, JetByteTools::Socket::IDatagramServerSocketConnectionManager, JetByteTools::Socket::IDatagramServerSocketCallback >.
virtual bool AbortConnection | ( | ) | [pure virtual] |
Implemented in TAsyncSocket< JetByteTools::Socket::TMulticastDatagramHelper< JetByteTools::Socket::IPoolableDatagramSocket >, JetByteTools::Socket::IDatagramSocketConnectionManager, JetByteTools::Socket::IDatagramSocketCallback >, and TAsyncSocket< JetByteTools::Socket::IPoolableDatagramServerSocket, JetByteTools::Socket::IDatagramServerSocketConnectionManager, JetByteTools::Socket::IDatagramServerSocketCallback >.
virtual bool AbortConnection | ( | ConnectionClosureReason | reason | ) | [pure virtual] |
virtual ConnectionDirection GetConnectionDirection | ( | ) | const [pure virtual] |
Implemented in TAsyncSocket< JetByteTools::Socket::TMulticastDatagramHelper< JetByteTools::Socket::IPoolableDatagramSocket >, JetByteTools::Socket::IDatagramSocketConnectionManager, JetByteTools::Socket::IDatagramSocketCallback >, and TAsyncSocket< JetByteTools::Socket::IPoolableDatagramServerSocket, JetByteTools::Socket::IDatagramServerSocketConnectionManager, JetByteTools::Socket::IDatagramServerSocketCallback >.
virtual JetByteTools::Core::ILockableObject& GetLock | ( | ) | const [pure virtual] |
Returns the critical section that is used for locking this socket's data for multi-threaded use.
Implemented in IDatagramSocket, TAsyncSocket< JetByteTools::Socket::TMulticastDatagramHelper< JetByteTools::Socket::IPoolableDatagramSocket >, JetByteTools::Socket::IDatagramSocketConnectionManager, JetByteTools::Socket::IDatagramSocketCallback >, and TAsyncSocket< JetByteTools::Socket::IPoolableDatagramServerSocket, JetByteTools::Socket::IDatagramServerSocketConnectionManager, JetByteTools::Socket::IDatagramServerSocketCallback >.
virtual void SetMulticastSendInterface | ( | const IAddress & | interfaceAddress, | |
TimeToLive | multicastTTL = 1 , |
|||
bool | enableLoopback = false | |||
) | [pure virtual, inherited] |
virtual void* GetUserPointer | ( | UserDataIndex | index | ) | const [pure virtual, inherited] |
Access the data stored at the specified index as a void pointer.
Implemented in TAsyncSocket< JetByteTools::Socket::IPoolableStreamSocket, JetByteTools::Socket::IStreamSocketConnectionManager, JetByteTools::Socket::IStreamSocketCallback >, TAsyncSocket< JetByteTools::Socket::TMulticastDatagramHelper< JetByteTools::Socket::IPoolableDatagramSocket >, JetByteTools::Socket::IDatagramSocketConnectionManager, JetByteTools::Socket::IDatagramSocketCallback >, and TAsyncSocket< JetByteTools::Socket::IPoolableDatagramServerSocket, JetByteTools::Socket::IDatagramServerSocketConnectionManager, JetByteTools::Socket::IDatagramServerSocketCallback >.
virtual void SetUserPointer | ( | UserDataIndex | index, | |
void * | pData | |||
) | [pure virtual, inherited] |
Update the data stored at the specified index as a void pointer.
Implemented in TAsyncSocket< JetByteTools::Socket::IPoolableStreamSocket, JetByteTools::Socket::IStreamSocketConnectionManager, JetByteTools::Socket::IStreamSocketCallback >, TAsyncSocket< JetByteTools::Socket::TMulticastDatagramHelper< JetByteTools::Socket::IPoolableDatagramSocket >, JetByteTools::Socket::IDatagramSocketConnectionManager, JetByteTools::Socket::IDatagramSocketCallback >, and TAsyncSocket< JetByteTools::Socket::IPoolableDatagramServerSocket, JetByteTools::Socket::IDatagramServerSocketConnectionManager, JetByteTools::Socket::IDatagramServerSocketCallback >.
virtual ULONG_PTR GetUserData | ( | UserDataIndex | index | ) | const [pure virtual, inherited] |
Access the data stored at the specified index as an unsigned long.
Implemented in TAsyncSocket< JetByteTools::Socket::IPoolableStreamSocket, JetByteTools::Socket::IStreamSocketConnectionManager, JetByteTools::Socket::IStreamSocketCallback >, TAsyncSocket< JetByteTools::Socket::TMulticastDatagramHelper< JetByteTools::Socket::IPoolableDatagramSocket >, JetByteTools::Socket::IDatagramSocketConnectionManager, JetByteTools::Socket::IDatagramSocketCallback >, and TAsyncSocket< JetByteTools::Socket::IPoolableDatagramServerSocket, JetByteTools::Socket::IDatagramServerSocketConnectionManager, JetByteTools::Socket::IDatagramServerSocketCallback >.
virtual void SetUserData | ( | UserDataIndex | index, | |
ULONG_PTR | data | |||
) | [pure virtual, inherited] |
Update the data stored at the specified index as an unsigned long.
Implemented in TAsyncSocket< JetByteTools::Socket::IPoolableStreamSocket, JetByteTools::Socket::IStreamSocketConnectionManager, JetByteTools::Socket::IStreamSocketCallback >, TAsyncSocket< JetByteTools::Socket::TMulticastDatagramHelper< JetByteTools::Socket::IPoolableDatagramSocket >, JetByteTools::Socket::IDatagramSocketConnectionManager, JetByteTools::Socket::IDatagramSocketCallback >, and TAsyncSocket< JetByteTools::Socket::IPoolableDatagramServerSocket, JetByteTools::Socket::IDatagramServerSocketConnectionManager, JetByteTools::Socket::IDatagramServerSocketCallback >.
JETBYTE_CONSTEXPR UserDataIndex InvalidUserDataIndex = 0xFFFF [static, inherited] |