OPAL  Version 3.14.3
OpalTransportIP Class Referenceabstract

#include <transports.h>

Inheritance diagram for OpalTransportIP:
Collaboration diagram for OpalTransportIP:

Public Member Functions

Operations
virtual PString GetInterface () const
 
virtual OpalTransportAddress GetLocalAddress () const
 
virtual OpalTransportAddress GetRemoteAddress () const
 
virtual PBoolean SetRemoteAddress (const OpalTransportAddress &address)
 
- Public Member Functions inherited from OpalTransport
OpalEndPointGetEndPoint () const
 
bool IsOpen () const
 
bool IsGood () const
 
PChannel::Errors GetErrorCode (PChannel::ErrorGroup group=PChannel::NumErrorGroups) const
 
PString GetErrorText (PChannel::ErrorGroup group=PChannel::NumErrorGroups) const
 
int GetErrorNumber (PChannel::ErrorGroup group=PChannel::NumErrorGroups) const
 
void SetReadTimeout (const PTimeInterval &t)
 
PChannel * GetChannel () const
 
bool IsIdle () const
 
void Reference ()
 
void Dereference ()
 
void PrintOn (ostream &strm) const
 
virtual PBoolean Write (const void *buf, PINDEX len)
 
 ~OpalTransport ()
 
virtual PBoolean IsReliable () const =0
 
virtual bool IsAuthenticated (const PString &) const
 
virtual bool SetInterface (const PString &iface)
 
virtual PBoolean Connect ()=0
 
PBoolean ConnectTo (const OpalTransportAddress &address)
 
virtual PBoolean Close ()
 
void CloseWait ()
 
void CleanUpOnTermination ()
 
virtual PBoolean IsCompatibleTransport (const OpalTransportAddress &address) const =0
 Promiscious modes for transport. More...
 
virtual void SetPromiscuous (PromisciousModes promiscuous)
 
virtual OpalTransportAddress GetLastReceivedAddress () const
 
virtual PString GetLastReceivedInterface () const
 
virtual PBoolean ReadPDU (PBYTEArray &packet)=0
 
virtual PBoolean WritePDU (const PBYTEArray &pdu)=0
 
virtual bool WriteConnect (const WriteConnectCallback &function)
 
void SetKeepAlive (const PTimeInterval &timeout, const PBYTEArray &data)
 
virtual void AttachThread (PThread *thread)
 
virtual PBoolean IsRunning () const
 

Protected Member Functions

virtual const PCaselessString & GetProtoPrefix () const =0
 
Construction
 OpalTransportIP (OpalEndPoint &endpoint, PChannel *channel, PIPSocket::Address binding, WORD port)
 
- Protected Member Functions inherited from OpalTransport
 PDECLARE_NOTIFIER (PTimer, OpalTransport, KeepAlive)
 
 OpalTransport (OpalEndPoint &endpoint, PChannel *channel)
 

Protected Attributes

PIPSocketAddressAndPort m_localAP
 
PIPSocketAddressAndPort m_remoteAP
 
- Protected Attributes inherited from OpalTransport
OpalEndPointm_endpoint
 
PChannel * m_channel
 
PThread * m_thread
 Thread handling the transport. More...
 
PTimer m_keepAliveTimer
 
PBYTEArray m_keepAliveData
 
PSimpleTimer m_idleTimer
 
PAtomicInteger m_referenceCount
 

Additional Inherited Members

- Public Types inherited from OpalTransport
enum  PromisciousModes { AcceptFromRemoteOnly, AcceptFromAnyAutoSet, AcceptFromAny, NumPromisciousModes }
 
typedef PNotifierTemplate< bool & > WriteConnectCallback
 

Constructor & Destructor Documentation

OpalTransportIP::OpalTransportIP ( OpalEndPoint endpoint,
PChannel *  channel,
PIPSocket::Address  binding,
WORD  port 
)
protected

Create a new transport channel.

Parameters
endpointEndpoint object
channelSocket
bindingLocal interface to use
portLocal port to bind to

Member Function Documentation

virtual PString OpalTransportIP::GetInterface ( ) const
virtual

Get the interface this transport is bound to.

Implements OpalTransport.

Reimplemented in OpalTransportUDP.

virtual OpalTransportAddress OpalTransportIP::GetLocalAddress ( ) const
virtual

Get the transport dependent name of the local endpoint.

Implements OpalTransport.

Reimplemented in OpalTransportUDP.

virtual const PCaselessString& OpalTransportIP::GetProtoPrefix ( ) const
protectedpure virtual

Get the prefix for this transports protocol type.

Implements OpalTransport.

Implemented in OpalTransportUDP, and OpalTransportTCP.

virtual OpalTransportAddress OpalTransportIP::GetRemoteAddress ( ) const
virtual

Get the transport dependent name of the remote endpoint.

Implements OpalTransport.

virtual PBoolean OpalTransportIP::SetRemoteAddress ( const OpalTransportAddress address)
virtual

Set remote address to connect to. Note that this does not necessarily initiate a transport level connection, but only indicates where to connect to. The actual connection is made by the Connect() function.

Implements OpalTransport.

Reimplemented in OpalTransportUDP.

Field Documentation

PIPSocketAddressAndPort OpalTransportIP::m_localAP
protected
PIPSocketAddressAndPort OpalTransportIP::m_remoteAP
protected

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