Main Page | Namespace List | Class Hierarchy | Class List | Directories | File List | Namespace Members | Class Members

CallEndpoint Class Reference

An abstract call endpoint. More...

#include <yatephone.h>

Inheritance diagram for CallEndpoint:

RefObject GenObject Channel ClientChannel List of all members.

Public Member Functions

virtual ~CallEndpoint ()
virtual void * getObject (const String &name) const
virtual const StringtoString () const
const Stringid () const
CallEndpointgetPeer () const
const StringgetPeerId () const
Mutexmutex () const
bool connect (CallEndpoint *peer, const char *reason=0, bool notify=true)
bool disconnect (const char *reason=0, bool notify=true)
DataEndpointgetEndpoint (const char *type="audio") const
DataEndpointsetEndpoint (const char *type="audio")
void clearEndpoint (const char *type=0)
void setSource (DataSource *source=0, const char *type="audio")
DataSourcegetSource (const char *type="audio") const
void setConsumer (DataConsumer *consumer=0, const char *type="audio")
DataConsumergetConsumer (const char *type="audio") const

Static Public Member Functions

static MutexcommonMutex ()

Protected Member Functions

 CallEndpoint (const char *id=0)
virtual void connected (const char *reason)
virtual void disconnected (bool final, const char *reason)
void setPeer (CallEndpoint *peer, const char *reason=0, bool notify=true)
virtual void setId (const char *newId)

Protected Attributes

ObjList m_data
Mutexm_mutex

Friends

class DataEndpoint

Detailed Description

An abstract call endpoint.

A class that holds common call control and data related features


Constructor & Destructor Documentation

virtual ~CallEndpoint  )  [virtual]
 

Destructor

CallEndpoint const char *  id = 0  )  [protected]
 

Constructor


Member Function Documentation

void clearEndpoint const char *  type = 0  ) 
 

Clear one or all data endpoints of this object

Parameters:
type Type of data endpoint: "audio", "video", "text", NULL to clear all

static Mutex& commonMutex  )  [static]
 

Get the big mutex that serializes access to all call endpoints

Returns:
A reference to the mutex

bool connect CallEndpoint peer,
const char *  reason = 0,
bool  notify = true
 

Connect the call endpoint to a peer.

Parameters:
peer Pointer to the peer call endpoint.
reason Text that describes connect reason.
notify Call disconnected() notification method on old peer
Returns:
True if connected, false if an error occured.

virtual void connected const char *  reason  )  [inline, protected, virtual]
 

Connect notification method.

Parameters:
reason Text that describes connect reason.

Reimplemented in Channel.

bool disconnect const char *  reason = 0,
bool  notify = true
[inline]
 

Disconnect from the connected peer call endpoint.

Parameters:
reason Text that describes disconnect reason.
notify Call disconnected() notification method on old peer
Returns:
True if the object was deleted, false if it still exists

virtual void disconnected bool  final,
const char *  reason
[inline, protected, virtual]
 

Disconnect notification method.

Parameters:
final True if this disconnect was called from the destructor.
reason Text that describes disconnect reason.

Reimplemented in Channel.

DataConsumer* getConsumer const char *  type = "audio"  )  const
 

Get the data consumer of this object

Parameters:
type Type of data node: "audio", "video", "text"
Returns:
A pointer to the DataConsumer object or NULL

DataEndpoint* getEndpoint const char *  type = "audio"  )  const
 

Get a data endpoint of this object

Parameters:
type Type of data endpoint: "audio", "video", "text"
Returns:
A pointer to the DataEndpoint object or NULL if not found

virtual void* getObject const String name  )  const [virtual]
 

Get a pointer to a derived class given that class name

Parameters:
name Name of the class we are asking for
Returns:
Pointer to the requested class or NULL if this object doesn't implement it

Reimplemented from GenObject.

Reimplemented in Channel.

CallEndpoint* getPeer  )  const [inline]
 

Get the connected peer call

Returns:
Pointer to connected peer call or NULL

const String& getPeerId  )  const [inline]
 

Get the connected peer call id

Returns:
Connected peer call id or empty string

DataSource* getSource const char *  type = "audio"  )  const
 

Get a data source of this object

Parameters:
type Type of data node: "audio", "video", "text"
Returns:
A pointer to the DataSource object or NULL

const String& id  )  const [inline]
 

Get the unique channel identifier

Returns:
A String holding the unique channel id

Mutex* mutex  )  const [inline]
 

Get the mutex that serializes access to this call endpoint, if any

Returns:
Pointer to the call's mutex object or NULL

void setConsumer DataConsumer consumer = 0,
const char *  type = "audio"
 

Set the data consumer of this object

Parameters:
consumer A pointer to the new consumer or NULL
type Type of data node: "audio", "video", "text"

DataEndpoint* setEndpoint const char *  type = "audio"  ) 
 

Get a data endpoint of this object, create if required

Parameters:
type Type of data endpoint: "audio", "video", "text"
Returns:
A pointer to the DataEndpoint object or NULL if an error occured

virtual void setId const char *  newId  )  [protected, virtual]
 

Set a new ID for this call endpoint

Parameters:
newId New ID to set to this call

Reimplemented in Channel.

void setPeer CallEndpoint peer,
const char *  reason = 0,
bool  notify = true
[protected]
 

Set the peer call endpoint pointer.

Parameters:
peer A pointer to the new peer or NULL.
reason Text describing the reason in case of disconnect.
notify Call notification methods - connected() or disconnected()

void setSource DataSource source = 0,
const char *  type = "audio"
 

Set a data source of this object

Parameters:
source A pointer to the new source or NULL
type Type of data node: "audio", "video", "text"

virtual const String& toString  )  const [inline, virtual]
 

Get a string representation of this channel

Returns:
A reference to the name of this object

Reimplemented from GenObject.


The documentation for this class was generated from the following file:
Generated on Mon Sep 18 20:56:12 2006 for Yate by  doxygen 1.4.4