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

DataEndpoint Class Reference

A data transfer endpoint capable of sending and/or receiving data. More...

#include <yatephone.h>

Inheritance diagram for DataEndpoint:

RefObject GenObject List of all members.

Public Member Functions

 DataEndpoint (CallEndpoint *call=0, const char *name="audio")
 ~DataEndpoint ()
virtual void * getObject (const String &name) const
virtual const String & toString () const
Mutex * mutex () const
bool connect (DataEndpoint *peer)
bool disconnect ()
void setSource (DataSource *source=0)
DataSource * getSource () const
void setConsumer (DataConsumer *consumer=0)
DataConsumer * getConsumer () const
void setPeerRecord (DataConsumer *consumer=0)
DataConsumer * getPeerRecord () const
void setCallRecord (DataConsumer *consumer=0)
DataConsumer * getCallRecord () const
DataEndpoint * getPeer () const
CallEndpoint * getCall () const
const String & name () const

Static Public Member Functions

static Mutex & commonMutex ()

Protected Member Functions

virtual bool nativeConnect (DataEndpoint *peer)

Detailed Description

A data transfer endpoint capable of sending and/or receiving data.

The DataEndpoint holds an endpoint capable of performing unidirectional or bidirectional data transfers


Constructor & Destructor Documentation

DataEndpoint (  CallEndpoint *  call = 0,
const char *  name = "audio"
) 
 

Creates an empty data endpoint

~DataEndpoint (   ) 
 

Destroys the endpoint, source and consumer


Member Function Documentation

static Mutex& commonMutex (   )  [static]
 

Get the big mutex that serializes access to all data endpoints

Returns:
A reference to the mutex

bool connect (  DataEndpoint *  peer  ) 
 

Connect the source and consumer of the endpoint to a peer

Parameters:
peer Pointer to the peer data endpoint
Returns:
True if connected, false if incompatible source/consumer

bool disconnect (   ) 
 

Disconnect from the connected endpoint

Returns:
True if the object was deleted, false if it still exists

CallEndpoint* getCall (   )  const [inline]
 

Get a pointer to the owner call

Returns:
A pointer to the owner call or NULL

DataConsumer* getCallRecord (   )  const [inline]
 

Get the data consumer used for recording local call generated data.

Returns:
A pointer to the DataConsumer object or NULL

DataConsumer* getConsumer (   )  const [inline]
 

Get the data consumer of this object

Returns:
A pointer to the DataConsumer object or NULL

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.

DataEndpoint* getPeer (   )  const [inline]
 

Get a pointer to the peer endpoint

Returns:
A pointer to the peer endpoint or NULL

DataConsumer* getPeerRecord (   )  const [inline]
 

Get the data consumer used for recording peer generated data.

Returns:
A pointer to the DataConsumer object or NULL

DataSource* getSource (   )  const [inline]
 

Get the data source of this object

Returns:
A pointer to the DataSource object or NULL

Mutex* mutex (   )  const
 

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

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

const String& name (   )  const [inline]
 

Get the name set in constructor

Returns:
A reference to the name as hashed string

virtual bool nativeConnect (  DataEndpoint *  peer  )  [inline, protected, virtual]
 

Attempt to connect the endpoint to a peer of the same type

Parameters:
peer Pointer to the endpoint data driver
Returns:
True if connected, false if failed native connection

void setCallRecord (  DataConsumer *  consumer = 0  ) 
 

Set the data consumer for recording local call generated data This will be connected to the local data source.

Parameters:
consumer A pointer to the new consumer or NULL

void setConsumer (  DataConsumer *  consumer = 0  ) 
 

Set the data consumer of this object

Parameters:
consumer A pointer to the new consumer or NULL

void setPeerRecord (  DataConsumer *  consumer = 0  ) 
 

Set the data consumer for recording peer generated data. This will be connected to the peer data source.

Parameters:
consumer A pointer to the new consumer or NULL

void setSource (  DataSource *  source = 0  ) 
 

Set the data source of this object

Parameters:
source A pointer to the new source or NULL

virtual const String& toString (   )  const [virtual]
 

Get a string identification of the endpoint

Returns:
A reference to this endpoint's name

Reimplemented from GenObject.


The documentation for this class was generated from the following file:
Generated on Fri Jul 7 03:11:38 2006 for Yate by  doxygen 1.4.4