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

TAO_FDev< T_Producer, T_Consumer > Class Template Reference

Implementation of the AV/Streams Flow Device. A FlowConnection is used to bind FDevs for flows, much like how a StreamCtrl is used to bind MMDevices for streams. More...

#include <Flows_T.h>

Inheritance diagram for TAO_FDev< T_Producer, T_Consumer >:

Inheritance graph
[legend]
Collaboration diagram for TAO_FDev< T_Producer, T_Consumer >:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 TAO_FDev (void)
 default constructor
 TAO_FDev (const char *flowname)
 constructor taking a flowname.
 ~TAO_FDev (void)
 Destructor..
const char * flowname (void)
void flowname (const char *flowname)
AVStreams::FlowProducer_ptr create_producer (AVStreams::FlowConnection_ptr the_requester, AVStreams::QoS &the_qos, CORBA::Boolean_out met_qos, char *&named_fdev ACE_ENV_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException, AVStreams::streamOpFailed, AVStreams::streamOpDenied, AVStreams::notSupported, AVStreams::QoSRequestFailed)
virtual AVStreams::FlowProducer_ptr make_producer (AVStreams::FlowConnection_ptr the_requester, AVStreams::QoS &the_qos, CORBA::Boolean_out met_qos, char *&named_fdev ACE_ENV_ARG_DECL_WITH_DEFAULTS)
virtual AVStreams::FlowConsumer_ptr create_consumer (AVStreams::FlowConnection_ptr the_requester, AVStreams::QoS &the_qos, CORBA::Boolean_out met_qos, char *&named_fdev ACE_ENV_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException, AVStreams::streamOpFailed, AVStreams::streamOpDenied, AVStreams::notSupported, AVStreams::QoSRequestFailed)
 create a flow consumer object.
virtual AVStreams::FlowConsumer_ptr make_consumer (AVStreams::FlowConnection_ptr the_requester, AVStreams::QoS &the_qos, CORBA::Boolean_out met_qos, char *&named_fdev ACE_ENV_ARG_DECL_WITH_DEFAULTS)
virtual AVStreams::FlowConnection_ptr bind (AVStreams::FDev_ptr peer_device, AVStreams::QoS &the_qos, CORBA::Boolean_out is_met ACE_ENV_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException, AVStreams::streamOpFailed, AVStreams::QoSRequestFailed)
 bind this FDev with another FDev.
virtual AVStreams::FlowConnection_ptr bind_mcast (AVStreams::FDev_ptr first_peer, AVStreams::QoS &the_qos, CORBA::Boolean_out is_met ACE_ENV_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException, AVStreams::streamOpFailed, AVStreams::QoSRequestFailed)
 multicast bind is not implemented yet.
virtual void destroy (AVStreams::FlowEndPoint_ptr the_ep, const char *fdev_name ACE_ENV_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException, AVStreams::notSupported)
 destroys this FDev.

Protected Types

typedef ACE_DLList_Iterator<
TAO_FlowProducer
PRODUCER_LIST_ITERATOR
typedef ACE_DLList_Iterator<
TAO_FlowConsumer
CONSUMER_LIST_ITERATOR

Protected Attributes

ACE_DLList< TAO_FlowProducerproducer_list_
ACE_DLList< TAO_FlowConsumerconsumer_list_
CORBA::String_var flowname_

Detailed Description

template<class T_Producer, class T_Consumer>
class TAO_FDev< T_Producer, T_Consumer >

Implementation of the AV/Streams Flow Device. A FlowConnection is used to bind FDevs for flows, much like how a StreamCtrl is used to bind MMDevices for streams.


Member Typedef Documentation

template<class T_Producer, class T_Consumer>
typedef ACE_DLList_Iterator<TAO_FlowConsumer> TAO_FDev< T_Producer, T_Consumer >::CONSUMER_LIST_ITERATOR [protected]
 

template<class T_Producer, class T_Consumer>
typedef ACE_DLList_Iterator<TAO_FlowProducer> TAO_FDev< T_Producer, T_Consumer >::PRODUCER_LIST_ITERATOR [protected]
 


Constructor & Destructor Documentation

template<class T_Producer, class T_Consumer>
TAO_FDev< T_Producer, T_Consumer >::TAO_FDev void   ) 
 

default constructor

template<class T_Producer, class T_Consumer>
TAO_FDev< T_Producer, T_Consumer >::TAO_FDev const char *  flowname  ) 
 

constructor taking a flowname.

template<class T_Producer, class T_Consumer>
TAO_FDev< T_Producer, T_Consumer >::~TAO_FDev void   ) 
 

Destructor..


Member Function Documentation

template<class T_Producer, class T_Consumer>
AVStreams::FlowConnection_ptr TAO_FDev< T_Producer, T_Consumer >::bind AVStreams::FDev_ptr  peer_device,
AVStreams::QoS the_qos,
CORBA::Boolean_out is_met  ACE_ENV_ARG_DECL_WITH_DEFAULTS
throw (CORBA::SystemException, AVStreams::streamOpFailed, AVStreams::QoSRequestFailed) [virtual]
 

bind this FDev with another FDev.

template<class T_Producer, class T_Consumer>
AVStreams::FlowConnection_ptr TAO_FDev< T_Producer, T_Consumer >::bind_mcast AVStreams::FDev_ptr  first_peer,
AVStreams::QoS the_qos,
CORBA::Boolean_out is_met  ACE_ENV_ARG_DECL_WITH_DEFAULTS
throw (CORBA::SystemException, AVStreams::streamOpFailed, AVStreams::QoSRequestFailed) [virtual]
 

multicast bind is not implemented yet.

template<class T_Producer, class T_Consumer>
AVStreams::FlowConsumer_ptr TAO_FDev< T_Producer, T_Consumer >::create_consumer AVStreams::FlowConnection_ptr  the_requester,
AVStreams::QoS the_qos,
CORBA::Boolean_out  met_qos,
char *&named_fdev  ACE_ENV_ARG_DECL_WITH_DEFAULTS
throw (CORBA::SystemException, AVStreams::streamOpFailed, AVStreams::streamOpDenied, AVStreams::notSupported, AVStreams::QoSRequestFailed) [virtual]
 

create a flow consumer object.

template<class T_Producer, class T_Consumer>
AVStreams::FlowProducer_ptr TAO_FDev< T_Producer, T_Consumer >::create_producer AVStreams::FlowConnection_ptr  the_requester,
AVStreams::QoS the_qos,
CORBA::Boolean_out  met_qos,
char *&named_fdev  ACE_ENV_ARG_DECL_WITH_DEFAULTS
throw (CORBA::SystemException, AVStreams::streamOpFailed, AVStreams::streamOpDenied, AVStreams::notSupported, AVStreams::QoSRequestFailed)
 

template<class T_Producer, class T_Consumer>
virtual void TAO_FDev< T_Producer, T_Consumer >::destroy AVStreams::FlowEndPoint_ptr  the_ep,
const char *fdev_name  ACE_ENV_ARG_DECL_WITH_DEFAULTS
throw (CORBA::SystemException, AVStreams::notSupported) [virtual]
 

destroys this FDev.

template<class T_Producer, class T_Consumer>
void TAO_FDev< T_Producer, T_Consumer >::flowname const char *  flowname  ) 
 

template<class T_Producer, class T_Consumer>
const char * TAO_FDev< T_Producer, T_Consumer >::flowname void   ) 
 

set/get the flowname. create a flow producer object.

template<class T_Producer, class T_Consumer>
virtual AVStreams::FlowConsumer_ptr TAO_FDev< T_Producer, T_Consumer >::make_consumer AVStreams::FlowConnection_ptr  the_requester,
AVStreams::QoS the_qos,
CORBA::Boolean_out  met_qos,
char *&named_fdev  ACE_ENV_ARG_DECL_WITH_DEFAULTS
[virtual]
 

bridge method for the application to override the consumer object creation. Default implementation creates a TAO_FlowConsumer.

template<class T_Producer, class T_Consumer>
virtual AVStreams::FlowProducer_ptr TAO_FDev< T_Producer, T_Consumer >::make_producer AVStreams::FlowConnection_ptr  the_requester,
AVStreams::QoS the_qos,
CORBA::Boolean_out  met_qos,
char *&named_fdev  ACE_ENV_ARG_DECL_WITH_DEFAULTS
[virtual]
 

bridge method for the application to override the producer object creation. Default implementation creates a TAO_FlowProducer.


Member Data Documentation

template<class T_Producer, class T_Consumer>
ACE_DLList<TAO_FlowConsumer> TAO_FDev< T_Producer, T_Consumer >::consumer_list_ [protected]
 

template<class T_Producer, class T_Consumer>
CORBA::String_var TAO_FDev< T_Producer, T_Consumer >::flowname_ [protected]
 

template<class T_Producer, class T_Consumer>
ACE_DLList<TAO_FlowProducer> TAO_FDev< T_Producer, T_Consumer >::producer_list_ [protected]
 


The documentation for this class was generated from the following files:
Generated on Sun May 15 13:33:23 2005 for TAO_AV by  doxygen 1.3.9.1