TAO_AV 4.0.1
Loading...
Searching...
No Matches
Classes | Public Member Functions | Protected Types | Protected Attributes | List of all 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:
Inheritance graph
[legend]
Collaboration diagram for TAO_StreamCtrl:
Collaboration graph
[legend]

Classes

struct  MMDevice_Map_Entry
 

Public Member Functions

 TAO_StreamCtrl ()
 Default Constructor.
 
virtual ~TAO_StreamCtrl ()
 virtual destructor.
 
virtual void stop (const AVStreams::flowSpec &the_spec)
 
virtual void start (const AVStreams::flowSpec &the_spec)
 
virtual void destroy (const AVStreams::flowSpec &the_spec)
 
virtual CORBA::Boolean bind_devs (AVStreams::MMDevice_ptr a_party, AVStreams::MMDevice_ptr b_party, AVStreams::streamQoS &the_qos, const AVStreams::flowSpec &the_flows)
 
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)
 
virtual void unbind_dev (AVStreams::MMDevice_ptr dev, const AVStreams::flowSpec &the_spec)
 
virtual void unbind_party (AVStreams::StreamEndPoint_ptr the_ep, const AVStreams::flowSpec &the_spec)
 Unbind the_ep from the stream. Empty the_spec means apply to all flows.
 
virtual void unbind ()
 unbind the stream. Same effect as Basic_StreamCtrl::destroy ()
 
virtual AVStreams::VDev_ptr get_related_vdev (AVStreams::MMDevice_ptr adev, AVStreams::StreamEndPoint_out sep)
 
virtual CORBA::Boolean modify_QoS (AVStreams::streamQoS &new_qos, const AVStreams::flowSpec &the_spec)
 
- Public Member Functions inherited from TAO_Basic_StreamCtrl
 TAO_Basic_StreamCtrl ()
 Default Constructor.
 
virtual void push_event (const struct CosPropertyService::Property &the_event)
 
virtual void set_FPStatus (const AVStreams::flowSpec &the_spec, const char *fp_name, const CORBA::Any &fp_settings)
 Used to control the flow protocol parameters.
 
virtual CORBA::Object_ptr get_flow_connection (const char *flow_name)
 
virtual void set_flow_connection (const char *flow_name, CORBA::Object_ptr flow_connection)
 

Protected Types

typedef ACE_Hash_Map_Manager< MMDevice_Map_Hash_Key, MMDevice_Map_Entry, ACE_Null_MutexMMDevice_Map
 
typedef ACE_Hash_Map_Iterator< MMDevice_Map_Hash_Key, MMDevice_Map_Entry, ACE_Null_MutexMMDevice_Map_Iterator
 
- Protected Types inherited from TAO_Basic_StreamCtrl
typedef ACE_Hash_Map_Manager< ACE_CString, AVStreams::FlowConnection_var, ACE_Null_MutexFlowConnection_Map
 Hash table for the flow names and its corresponding flowconnection object reference.
 
typedef ACE_Hash_Map_Iterator< ACE_CString, AVStreams::FlowConnection_var, ACE_Null_MutexFlowConnection_Map_Iterator
 
typedef ACE_Hash_Map_Entry< ACE_CString, AVStreams::FlowConnection_var > FlowConnection_Map_Entry
 

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_
 
- Protected Attributes inherited from TAO_Basic_StreamCtrl
AVStreams::VDev_var vdev_a_
 The Virtual Devices for this stream.
 
AVStreams::VDev_var vdev_b_
 
AVStreams::StreamEndPoint_A_var sep_a_
 The Endpoints for this stream.
 
AVStreams::StreamEndPoint_B_var sep_b_
 
FlowConnection_Map flow_connection_map_
 
AVStreams::FlowConnection_seq flowConnections_
 
u_int flow_count_
 sequence of flow names.
 
AVStreams::flowSpec flows_
 

Additional Inherited Members

- Protected Member Functions inherited from TAO_Basic_StreamCtrl
virtual ~TAO_Basic_StreamCtrl ()
 Destructor.
 

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

◆ MMDevice_Map

◆ MMDevice_Map_Iterator

Constructor & Destructor Documentation

◆ TAO_StreamCtrl()

TAO_StreamCtrl::TAO_StreamCtrl ( )

Default Constructor.

◆ ~TAO_StreamCtrl()

TAO_StreamCtrl::~TAO_StreamCtrl ( )
virtual

virtual destructor.

Member Function Documentation

◆ bind()

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 )
virtual

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

◆ bind_devs()

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

◆ destroy()

void TAO_StreamCtrl::destroy ( const AVStreams::flowSpec & the_spec)
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.

◆ get_related_vdev()

AVStreams::VDev_ptr TAO_StreamCtrl::get_related_vdev ( AVStreams::MMDevice_ptr adev,
AVStreams::StreamEndPoint_out sep )
virtual

◆ modify_QoS()

CORBA::Boolean TAO_StreamCtrl::modify_QoS ( AVStreams::streamQoS & new_qos,
const AVStreams::flowSpec & the_spec )
virtual

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

Reimplemented from TAO_Basic_StreamCtrl.

◆ start()

void TAO_StreamCtrl::start ( const AVStreams::flowSpec & the_spec)
virtual

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

Reimplemented from TAO_Basic_StreamCtrl.

◆ stop()

void TAO_StreamCtrl::stop ( const AVStreams::flowSpec & the_spec)
virtual

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

Reimplemented from TAO_Basic_StreamCtrl.

◆ unbind()

void TAO_StreamCtrl::unbind ( )
virtual

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

◆ unbind_dev()

void TAO_StreamCtrl::unbind_dev ( AVStreams::MMDevice_ptr dev,
const AVStreams::flowSpec & the_spec )
virtual

◆ unbind_party()

void TAO_StreamCtrl::unbind_party ( AVStreams::StreamEndPoint_ptr the_ep,
const AVStreams::flowSpec & the_spec )
virtual

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

Member Data Documentation

◆ mcastconfigif_

TAO_MCastConfigIf* TAO_StreamCtrl::mcastconfigif_
protected

◆ mcastconfigif_ptr_

AVStreams::MCastConfigIf_var TAO_StreamCtrl::mcastconfigif_ptr_
protected

◆ mmdevice_a_map_

MMDevice_Map TAO_StreamCtrl::mmdevice_a_map_
protected

◆ mmdevice_b_map_

MMDevice_Map TAO_StreamCtrl::mmdevice_b_map_
protected

◆ source_id_

CORBA::ULong TAO_StreamCtrl::source_id_
protected

◆ streamctrl_

AVStreams::StreamCtrl_var TAO_StreamCtrl::streamctrl_
protected

The documentation for this class was generated from the following files: