Main Page Namespace List Class Hierarchy Alphabetical List Compound List File List Namespace Members Compound Members File Members

# 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:

[legend]
Collaboration diagram for TAO_StreamCtrl:

[legend]
List of all members.

## Public Methods
| TAO_StreamCtrl (void)
| Default Constructor. More...
| TAO_StreamCtrl (TAO_StreamCtrl const &)
| Copy Constructor to fool g++. More...
virtual | ~TAO_StreamCtrl (void)
| virtual destructor. More...
void | operator= (TAO_StreamCtrl const &)
| Fooling g++. More...
virtual void | stop (const AVStreams::flowSpec &the_spec ACE_ENV_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException, AVStreams::noSuchFlow)
| Stop the transfer of data of the stream Empty the_spec means apply operation to all flows. More...
virtual void | start (const AVStreams::flowSpec &the_spec ACE_ENV_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException, AVStreams::noSuchFlow)
| Start the transfer of data in the stream. Empty the_spec means apply operation to all flows. More...
virtual void | destroy (const AVStreams::flowSpec &the_spec ACE_ENV_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException, AVStreams::noSuchFlow)
| Tears down the stream. More...
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)
| 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. More...
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)
| Establish a connection between two streamendpoints. More...
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. More...
virtual void | unbind (ACE_ENV_SINGLE_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException, AVStreams::streamOpFailed)
| unbind the stream. Same effect as Basic_StreamCtrl::destroy (). More...
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)
| Changes the QoS associated with the stream Empty the_spec means apply operation to all flows. More...
## 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_MCastConfigIf * | mcastconfigif_
AVStreams::MCastConfigIf_var | mcastconfigif_ptr_
AVStreams::StreamCtrl_var | streamctrl_
CORBA::ULong | source_id_

## 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 | ( | TAO_StreamCtrl const & |  | ) |

| Copy Constructor to fool g++.

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
| ) | 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_NOT_USED
| ) | 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
| ) | 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.

void TAO_StreamCtrl::operator= | ( | TAO_StreamCtrl const & |  | ) |

| Fooling g++.

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.

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:

- AVStreams_i.h
- AVStreams_i.cpp