#include <t38proto.h>
Inheritance diagram for OpalFaxConnection:
Public Member Functions | |
void | AdjustMediaFormats (OpalMediaFormatList &mediaFormats) const |
Overrides from OpalConnection | |
virtual BOOL | SetUpConnection () |
virtual BOOL | SetAlerting (const PString &calleeName, BOOL withMedia) |
virtual BOOL | SetConnected () |
virtual OpalMediaFormatList | GetMediaFormats () const |
OpalMediaStream * | CreateMediaStream (const OpalMediaFormat &mediaFormat, unsigned sessionID, BOOL isSource) |
virtual void | OnPatchMediaStream (BOOL isSource, OpalMediaPatch &patch) |
virtual BOOL | OpenSourceMediaStream (const OpalMediaFormatList &mediaFormats, unsigned sessionID) |
virtual OpalMediaStream * | OpenSinkMediaStream (OpalMediaStream &source) |
New operations | |
virtual void | AcceptIncoming () |
Protected Attributes | |
OpalFaxEndPoint & | endpoint |
PString | filename |
BOOL | receive |
BOOL | forceFaxAudio |
OpalFaxConnection::OpalFaxConnection | ( | OpalCall & | call, | |
OpalFaxEndPoint & | endpoint, | |||
const PString & | filename, | |||
BOOL | receive, | |||
const PString & | _token, | |||
OpalConnection::StringOptions * | stringOptions = NULL | |||
) |
Create a new endpoint.
call | Owner calll for connection |
endpoint | Owner endpoint for connection |
filename | filename to send/receive |
receive | TRUE if receiving a fax |
_token | token for connection |
OpalFaxConnection::~OpalFaxConnection | ( | ) |
Destroy endpoint.
OpalFaxConnection::OpalFaxConnection | ( | OpalCall & | call, | |
OpalFaxEndPoint & | endpoint, | |||
const PString & | filename, | |||
BOOL | receive, | |||
const PString & | _token, | |||
OpalConnection::StringOptions * | stringOptions = NULL | |||
) |
Create a new endpoint.
call | Owner calll for connection |
endpoint | Owner endpoint for connection |
filename | filename to send/receive |
receive | TRUE if receiving a fax |
_token | token for connection |
OpalFaxConnection::~OpalFaxConnection | ( | ) |
Destroy endpoint.
virtual BOOL OpalFaxConnection::SetUpConnection | ( | ) | [virtual] |
Start an outgoing connection. This function will initiate the connection to the remote entity, for example in H.323 it sends a SETUP, in SIP it sends an INVITE etc.
The default behaviour does.
Implements OpalConnection.
virtual BOOL OpalFaxConnection::SetAlerting | ( | const PString & | calleeName, | |
BOOL | withMedia | |||
) | [virtual] |
Indicate to remote endpoint an alert is in progress. If this is an incoming connection and the AnswerCallResponse is in a AnswerCallDeferred or AnswerCallPending state, then this function is used to indicate to that endpoint that an alert is in progress. This is usually due to another connection which is in the call (the B party) has received an OnAlerting() indicating that its remote endpoint is "ringing".
The default behaviour does nothing.
calleeName | Name of endpoint being alerted. |
withMedia | Open media with alerting |
Implements OpalConnection.
virtual BOOL OpalFaxConnection::SetConnected | ( | ) | [virtual] |
Indicate to remote endpoint we are connected.
The default behaviour does nothing.
Implements OpalConnection.
virtual OpalMediaFormatList OpalFaxConnection::GetMediaFormats | ( | ) | const [virtual] |
Get the data formats this connection is capable of operating. This provides a list of media data format names that an OpalMediaStream may be created in within this connection.
The default behaviour returns the formats the PSoundChannel can do, typically only PCM-16.
Implements OpalConnection.
Reimplemented in OpalT38Connection.
OpalMediaStream* OpalFaxConnection::CreateMediaStream | ( | const OpalMediaFormat & | mediaFormat, | |
unsigned | sessionID, | |||
BOOL | isSource | |||
) | [virtual] |
Create a new media stream. This will create a media stream of an appropriate subclass as required by the underlying connection protocol. For instance H.323 would create an OpalRTPStream.
The sessionID parameter may not be needed by a particular media stream and may be ignored. In the case of an OpalRTPStream it us used.
Note that media streams may be created internally to the underlying protocol. This function is not the only way a stream can come into existance.
The default behaviour is pure.
Reimplemented from OpalConnection.
Reimplemented in OpalT38Connection.
virtual void OpalFaxConnection::OnPatchMediaStream | ( | BOOL | isSource, | |
OpalMediaPatch & | patch | |||
) | [virtual] |
Call back when patching a media stream. This function is called when a connection has created a new media patch between two streams. Add the echo canceler patch and call the endpoint function of the same name. Add a PCM silence detector filter.
patch | New patch |
Reimplemented from OpalConnection.
virtual BOOL OpalFaxConnection::OpenSourceMediaStream | ( | const OpalMediaFormatList & | mediaFormats, | |
unsigned | sessionID | |||
) | [virtual] |
Open source transmitter media stream for session.
mediaFormats | Optional media format to open |
sessionID | Session to start stream on |
Reimplemented from OpalConnection.
virtual OpalMediaStream* OpalFaxConnection::OpenSinkMediaStream | ( | OpalMediaStream & | source | ) | [virtual] |
Open source transmitter media stream for session.
source | Source media sink format to open to |
Reimplemented from OpalConnection.
virtual void OpalFaxConnection::AcceptIncoming | ( | ) | [virtual] |
Accept the incoming connection.
void OpalFaxConnection::AdjustMediaFormats | ( | OpalMediaFormatList & | mediaFormats | ) | const [virtual] |
Adjust media formats available on a connection. This is called by a connection after it has called OpalCall::GetMediaFormats() to get all media formats that it can use so that an application may remove or reorder the media formats before they are used to open media streams.
The default behaviour calls the OpalEndPoint function of the same name.
Reimplemented from OpalConnection.
Reimplemented in OpalT38Connection.
OpalFaxEndPoint& OpalFaxConnection::endpoint [protected] |
Reimplemented from OpalConnection.
PString OpalFaxConnection::filename [protected] |
BOOL OpalFaxConnection::receive [protected] |
BOOL OpalFaxConnection::forceFaxAudio [protected] |