TAO_StreamCtrl Class Reference

Implementation the A/V StreamCtrl class. this class is used to control the stream. It should be subclassed by applications that want to provide more control features. More...

#include <AVStreams_i.h>

Inheritance diagram for TAO_StreamCtrl:

Inheritance graph
[legend]
Collaboration diagram for TAO_StreamCtrl:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 TAO_StreamCtrl (void)
 Default Constructor.
virtual ~TAO_StreamCtrl (void)
 virtual destructor.
virtual void stop (const AVStreams::flowSpec &the_spec ACE_ENV_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException, AVStreams::noSuchFlow)
virtual void start (const AVStreams::flowSpec &the_spec ACE_ENV_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException, AVStreams::noSuchFlow)
virtual void destroy (const AVStreams::flowSpec &the_spec ACE_ENV_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException, AVStreams::noSuchFlow)
virtual CORBA::Boolean bind_devs (AVStreams::MMDevice_ptr a_party, AVStreams::MMDevice_ptr b_party, AVStreams::streamQoS &the_qos, const AVStreams::flowSpec &the_flows ACE_ENV_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException, AVStreams::streamOpFailed, AVStreams::noSuchFlow, AVStreams::QoSRequestFailed)
virtual CORBA::Boolean bind (AVStreams::StreamEndPoint_A_ptr a_party, AVStreams::StreamEndPoint_B_ptr b_party, AVStreams::streamQoS &the_qos, const AVStreams::flowSpec &the_flows ACE_ENV_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException, AVStreams::streamOpFailed, AVStreams::noSuchFlow, AVStreams::QoSRequestFailed)
virtual void unbind_dev (AVStreams::MMDevice_ptr dev, const AVStreams::flowSpec &the_spec ACE_ENV_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException, AVStreams::streamOpFailed, AVStreams::noSuchFlow)
virtual void unbind_party (AVStreams::StreamEndPoint_ptr the_ep, const AVStreams::flowSpec &the_spec ACE_ENV_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException, AVStreams::streamOpFailed, AVStreams::noSuchFlow)
 Unbind the_ep from the stream. Empty the_spec means apply to all flows.
virtual void unbind (ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException, AVStreams::streamOpFailed)
 unbind the stream. Same effect as Basic_StreamCtrl::destroy ()
virtual AVStreams::VDev_ptr get_related_vdev (AVStreams::MMDevice_ptr adev, AVStreams::StreamEndPoint_out sep ACE_ENV_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException, AVStreams::streamOpFailed)
virtual CORBA::Boolean modify_QoS (AVStreams::streamQoS &new_qos, const AVStreams::flowSpec &the_spec ACE_ENV_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException, AVStreams::noSuchFlow, AVStreams::QoSRequestFailed)

Protected Types

typedef ACE_Hash_Map_Manager<
MMDevice_Map_Hash_Key, MMDevice_Map_Entry,
ACE_Null_Mutex
MMDevice_Map
typedef ACE_Hash_Map_Iterator<
MMDevice_Map_Hash_Key, MMDevice_Map_Entry,
ACE_Null_Mutex
MMDevice_Map_Iterator

Protected Attributes

MMDevice_Map mmdevice_a_map_
MMDevice_Map mmdevice_b_map_
TAO_MCastConfigIfmcastconfigif_
AVStreams::MCastConfigIf_var mcastconfigif_ptr_
AVStreams::StreamCtrl_var streamctrl_
CORBA::ULong source_id_

Classes

struct  MMDevice_Map_Entry

Detailed Description

Implementation the A/V StreamCtrl class. this class is used to control the stream. It should be subclassed by applications that want to provide more control features.


Member Typedef Documentation

typedef ACE_Hash_Map_Manager<MMDevice_Map_Hash_Key,MMDevice_Map_Entry,ACE_Null_Mutex> TAO_StreamCtrl::MMDevice_Map [protected]
 

typedef ACE_Hash_Map_Iterator<MMDevice_Map_Hash_Key,MMDevice_Map_Entry,ACE_Null_Mutex> TAO_StreamCtrl::MMDevice_Map_Iterator [protected]
 


Constructor & Destructor Documentation

TAO_StreamCtrl::TAO_StreamCtrl void   ) 
 

Default Constructor.

TAO_StreamCtrl::~TAO_StreamCtrl void   )  [virtual]
 

virtual destructor.


Member Function Documentation

virtual CORBA::Boolean TAO_StreamCtrl::bind AVStreams::StreamEndPoint_A_ptr  a_party,
AVStreams::StreamEndPoint_B_ptr  b_party,
AVStreams::streamQoS the_qos,
const AVStreams::flowSpec &the_flows  ACE_ENV_ARG_DECL_WITH_DEFAULTS
throw (CORBA::SystemException, AVStreams::streamOpFailed, AVStreams::noSuchFlow, AVStreams::QoSRequestFailed) [virtual]
 

Establish a connection between two streamendpoints. This can be used if the streamendpoints have been created independent of a MMDevice

CORBA::Boolean TAO_StreamCtrl::bind_devs AVStreams::MMDevice_ptr  a_party,
AVStreams::MMDevice_ptr  b_party,
AVStreams::streamQoS the_qos,
const AVStreams::flowSpec &the_flows  ACE_ENV_ARG_DECL_WITH_DEFAULTS
throw (CORBA::SystemException, AVStreams::streamOpFailed, AVStreams::noSuchFlow, AVStreams::QoSRequestFailed) [virtual]
 

Establish a stream between a_party and b_party, with qos the_qos, and for the flows in the_flows if the_flows is empty, bind all the flows Causes a connection to be established between the StreamEndpoints. Returns success/failure

virtual void TAO_StreamCtrl::destroy const AVStreams::flowSpec &the_spec  ACE_ENV_ARG_DECL_WITH_DEFAULTS  )  throw (CORBA::SystemException, AVStreams::noSuchFlow) [virtual]
 

Tears down the stream. This will close the connection, and delete the streamendpoint and vdev associated with this stream Empty the_spec means apply operation to all flows

Reimplemented from TAO_Basic_StreamCtrl.

AVStreams::VDev_ptr TAO_StreamCtrl::get_related_vdev AVStreams::MMDevice_ptr  adev,
AVStreams::StreamEndPoint_out sep  ACE_ENV_ARG_DECL_WITH_DEFAULTS
throw (CORBA::SystemException, AVStreams::streamOpFailed) [virtual]
 

CORBA::Boolean TAO_StreamCtrl::modify_QoS AVStreams::streamQoS new_qos,
const AVStreams::flowSpec &the_spec  ACE_ENV_ARG_DECL_WITH_DEFAULTS
throw (CORBA::SystemException, AVStreams::noSuchFlow, AVStreams::QoSRequestFailed) [virtual]
 

Changes the QoS associated with the stream Empty the_spec means apply operation to all flows

Reimplemented from TAO_Basic_StreamCtrl.

virtual void TAO_StreamCtrl::start const AVStreams::flowSpec &the_spec  ACE_ENV_ARG_DECL_WITH_DEFAULTS  )  throw (CORBA::SystemException, AVStreams::noSuchFlow) [virtual]
 

Start the transfer of data in the stream. Empty the_spec means apply operation to all flows

Reimplemented from TAO_Basic_StreamCtrl.

virtual void TAO_StreamCtrl::stop const AVStreams::flowSpec &the_spec  ACE_ENV_ARG_DECL_WITH_DEFAULTS  )  throw (CORBA::SystemException, AVStreams::noSuchFlow) [virtual]
 

Stop the transfer of data of the stream Empty the_spec means apply operation to all flows

Reimplemented from TAO_Basic_StreamCtrl.

virtual void TAO_StreamCtrl::unbind ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS   )  throw (CORBA::SystemException, AVStreams::streamOpFailed) [virtual]
 

unbind the stream. Same effect as Basic_StreamCtrl::destroy ()

virtual void TAO_StreamCtrl::unbind_dev AVStreams::MMDevice_ptr  dev,
const AVStreams::flowSpec &the_spec  ACE_ENV_ARG_DECL_WITH_DEFAULTS
throw (CORBA::SystemException, AVStreams::streamOpFailed, AVStreams::noSuchFlow) [virtual]
 

virtual void TAO_StreamCtrl::unbind_party AVStreams::StreamEndPoint_ptr  the_ep,
const AVStreams::flowSpec &the_spec  ACE_ENV_ARG_DECL_WITH_DEFAULTS
throw (CORBA::SystemException, AVStreams::streamOpFailed, AVStreams::noSuchFlow) [virtual]
 

Unbind the_ep from the stream. Empty the_spec means apply to all flows.


Member Data Documentation

TAO_MCastConfigIf* TAO_StreamCtrl::mcastconfigif_ [protected]
 

AVStreams::MCastConfigIf_var TAO_StreamCtrl::mcastconfigif_ptr_ [protected]
 

MMDevice_Map TAO_StreamCtrl::mmdevice_a_map_ [protected]
 

MMDevice_Map TAO_StreamCtrl::mmdevice_b_map_ [protected]
 

CORBA::ULong TAO_StreamCtrl::source_id_ [protected]
 

AVStreams::StreamCtrl_var TAO_StreamCtrl::streamctrl_ [protected]
 


The documentation for this class was generated from the following files:
Generated on Wed Nov 23 16:28:54 2005 for TAO_AV by  doxygen 1.4.5