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

TAO_StreamEndPoint Class Reference

The Stream EndPoint. Used to implement one endpoint of a stream that implements the transport layer. More...

#include <AVStreams_i.h>

Inheritance diagram for TAO_StreamEndPoint:

Inheritance graph
[legend]
Collaboration diagram for TAO_StreamEndPoint:

Collaboration graph
[legend]
List of all members.

Public Methods

 TAO_StreamEndPoint (void)
 Constructor.

virtual void stop (const AVStreams::flowSpec &the_spec ACE_ENV_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException, AVStreams::noSuchFlow)
 Stop the stream. Empty the_spec means, for all the flows.

virtual void start (const AVStreams::flowSpec &the_spec ACE_ENV_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException, AVStreams::noSuchFlow)
 Start the stream, Empty the_spec means, for all the flows.

virtual void destroy (const AVStreams::flowSpec &the_spec ACE_ENV_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException, AVStreams::noSuchFlow)
 Destroy the stream, Empty the_spec means, for all the flows.

virtual CORBA::Boolean connect (AVStreams::StreamEndPoint_ptr responder, AVStreams::streamQoS &qos_spec, const AVStreams::flowSpec &the_spec ACE_ENV_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException, AVStreams::noSuchFlow, AVStreams::QoSRequestFailed, AVStreams::streamOpFailed)
 Called by StreamCtrl. responder is the peer to connect to.

virtual CORBA::Boolean request_connection (AVStreams::StreamEndPoint_ptr initiator, CORBA::Boolean is_mcast, AVStreams::streamQoS &qos, AVStreams::flowSpec &the_spec ACE_ENV_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException, AVStreams::streamOpDenied, AVStreams::noSuchFlow, AVStreams::QoSRequestFailed, AVStreams::FPError)
virtual CORBA::Boolean modify_QoS (AVStreams::streamQoS &new_qos, const AVStreams::flowSpec &the_flows ACE_ENV_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException, AVStreams::noSuchFlow, AVStreams::QoSRequestFailed)
 Change the transport qos on a stream.

virtual int change_qos (AVStreams::streamQoS &new_qos, const AVStreams::flowSpec &the_flows ACE_ENV_ARG_DECL_WITH_DEFAULTS)
virtual CORBA::Boolean set_protocol_restriction (const AVStreams::protocolSpec &the_pspec ACE_ENV_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException)
 Used to restrict the set of protocols.

virtual void disconnect (const AVStreams::flowSpec &the_spec ACE_ENV_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException, AVStreams::noSuchFlow, AVStreams::streamOpFailed)
 disconnect the flows

virtual void set_FPStatus (const AVStreams::flowSpec &the_spec, const char *fp_name, const CORBA::Any &fp_settings ACE_ENV_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException, AVStreams::noSuchFlow, AVStreams::FPError)
 Used to control the flow.

virtual CORBA::Object_ptr get_fep (const char *flow_name ACE_ENV_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException, AVStreams::notSupported, AVStreams::noSuchFlow)
 Not implemented in the light profile, throws notsupported.

virtual char * add_fep (CORBA::Object_ptr the_fep ACE_ENV_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException, AVStreams::notSupported, AVStreams::streamOpFailed)
 Not implemented in the light profile, throws notsupported.

virtual void remove_fep (const char *fep_name ACE_ENV_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException, AVStreams::notSupported, AVStreams::streamOpFailed)
 Not implemented in the light profile, throws notsupported.

virtual void set_negotiator (AVStreams::Negotiator_ptr new_negotiator ACE_ENV_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException)
 Used to "attach" a negotiator to the endpoint.

virtual void set_key (const char *flow_name, const AVStreams::key &the_key ACE_ENV_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException)
 Used for public key encryption.

virtual void set_source_id (CORBA::Long source_id ACE_ENV_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException)
 Used to set a unique id for packets sent by this streamendpoint.

virtual ~TAO_StreamEndPoint (void)
 Destructor.

CORBA::Boolean multiconnect (AVStreams::streamQoS &the_qos, AVStreams::flowSpec &the_spec ACE_ENV_ARG_DECL)

Protected Methods

char * add_fep_i (AVStreams::FlowEndPoint_ptr fep ACE_ENV_ARG_DECL) throw (CORBA::SystemException, AVStreams::notSupported, AVStreams::streamOpFailed)
 Helper methods to implement add_fep().

char * add_fep_i_add_property (AVStreams::FlowEndPoint_ptr fep ACE_ENV_ARG_DECL) throw (CORBA::SystemException, AVStreams::notSupported, AVStreams::streamOpFailed)
int translate_qos (const AVStreams::streamQoS &application_qos, AVStreams::streamQoS &network_qos)
 translate from application level to network level qos.


Protected Attributes

u_int flow_count_
u_int flow_num_
 current flow number used for system generation of flow names.

FlowEndPoint_Map fep_map_
 hash table for the flownames and its corresponding flowEndpoint reference.

AVStreams::flowSpec flows_
 sequence of supported flow names.

CORBA::Long source_id_
 source id used for multicast.

AVStreams::Negotiator_var negotiator_
 our local negotiator for QoS.

AVStreams::protocolSpec protocols_
 Our available list of protocols.

CORBA::String_var protocol_
 Chosen protocol for this streamendpoint based on availableprotocols property.

AVStreams::key key_
 Key used for encryption.

u_short mcast_port_
ACE_CString mcast_addr_
ACE_Hash_Map_Manager< ACE_CString,
TAO_FlowSpec_Entry *, ACE_Null_Mutex > 
mcast_entry_map_
TAO_AV_FlowSpecSet forward_flow_spec_set
TAO_AV_FlowSpecSet reverse_flow_spec_set
AVStreams::StreamEndPoint_var peer_sep_
AVStreams::SFPStatus * sfp_status_
AVStreams::StreamCtrl_var streamctrl_

Detailed Description

The Stream EndPoint. Used to implement one endpoint of a stream that implements the transport layer.


Constructor & Destructor Documentation

TAO_StreamEndPoint::TAO_StreamEndPoint (  void    ) 
 

Constructor.

TAO_StreamEndPoint::~TAO_StreamEndPoint (  void    )  [virtual]
 

Destructor.


Member Function Documentation

virtual char* TAO_StreamEndPoint::add_fep (  CORBA::Object_ptr the_fep    ACE_ENV_ARG_DECL_WITH_DEFAULTS )  throw (CORBA::SystemException, AVStreams::notSupported, AVStreams::streamOpFailed) [virtual]
 

Not implemented in the light profile, throws notsupported.

char * TAO_StreamEndPoint::add_fep_i (  AVStreams::FlowEndPoint_ptr fep    ACE_ENV_ARG_DECL )  throw (CORBA::SystemException, AVStreams::notSupported, AVStreams::streamOpFailed) [protected]
 

Helper methods to implement add_fep().

char * TAO_StreamEndPoint::add_fep_i_add_property (  AVStreams::FlowEndPoint_ptr fep    ACE_ENV_ARG_DECL )  throw (CORBA::SystemException, AVStreams::notSupported, AVStreams::streamOpFailed) [protected]
 

int TAO_StreamEndPoint::change_qos (  AVStreams::streamQoS &    new_qos,
const AVStreams::flowSpec &the_flows    ACE_ENV_ARG_DECL_WITH_DEFAULTS
)  [virtual]
 

CORBA::Boolean TAO_StreamEndPoint::connect (  AVStreams::StreamEndPoint_ptr    responder,
AVStreams::streamQoS &    qos_spec,
const AVStreams::flowSpec &the_spec    ACE_ENV_ARG_DECL_WITH_DEFAULTS
)  throw (CORBA::SystemException, AVStreams::noSuchFlow, AVStreams::QoSRequestFailed, AVStreams::streamOpFailed) [virtual]
 

Called by StreamCtrl. responder is the peer to connect to.

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

Destroy the stream, Empty the_spec means, for all the flows.

void TAO_StreamEndPoint::disconnect (  const AVStreams::flowSpec &the_spec    ACE_ENV_ARG_DECL_WITH_DEFAULTS )  throw (CORBA::SystemException, AVStreams::noSuchFlow, AVStreams::streamOpFailed) [virtual]
 

disconnect the flows

CORBA::Object_ptr TAO_StreamEndPoint::get_fep (  const char *flow_name    ACE_ENV_ARG_DECL_WITH_DEFAULTS )  throw (CORBA::SystemException, AVStreams::notSupported, AVStreams::noSuchFlow) [virtual]
 

Not implemented in the light profile, throws notsupported.

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

Change the transport qos on a stream.

CORBA::Boolean TAO_StreamEndPoint::multiconnect (  AVStreams::streamQoS &    the_qos,
AVStreams::flowSpec &the_spec    ACE_ENV_ARG_DECL
) 
 

Reimplemented in TAO_StreamEndPoint_A, and TAO_StreamEndPoint_B.

virtual void TAO_StreamEndPoint::remove_fep (  const char *fep_name    ACE_ENV_ARG_DECL_WITH_DEFAULTS )  throw (CORBA::SystemException, AVStreams::notSupported, AVStreams::streamOpFailed) [virtual]
 

Not implemented in the light profile, throws notsupported.

virtual CORBA::Boolean TAO_StreamEndPoint::request_connection (  AVStreams::StreamEndPoint_ptr    initiator,
CORBA::Boolean    is_mcast,
AVStreams::streamQoS &    qos,
AVStreams::flowSpec &the_spec    ACE_ENV_ARG_DECL_WITH_DEFAULTS
)  throw (CORBA::SystemException, AVStreams::streamOpDenied, AVStreams::noSuchFlow, AVStreams::QoSRequestFailed, AVStreams::FPError) [virtual]
 

Called by the peer StreamEndPoint. The flow_spec indicates the flows (which contain transport addresses etc.)

void TAO_StreamEndPoint::set_FPStatus (  const AVStreams::flowSpec &    the_spec,
const char *    fp_name,
const CORBA::Any &fp_settings    ACE_ENV_ARG_DECL_WITH_DEFAULTS
)  throw (CORBA::SystemException, AVStreams::noSuchFlow, AVStreams::FPError) [virtual]
 

Used to control the flow.

void TAO_StreamEndPoint::set_key (  const char *    flow_name,
const AVStreams::key &the_key    ACE_ENV_ARG_DECL_WITH_DEFAULTS
)  throw (CORBA::SystemException) [virtual]
 

Used for public key encryption.

void TAO_StreamEndPoint::set_negotiator (  AVStreams::Negotiator_ptr new_negotiator    ACE_ENV_ARG_DECL_WITH_DEFAULTS )  throw (CORBA::SystemException) [virtual]
 

Used to "attach" a negotiator to the endpoint.

virtual CORBA::Boolean TAO_StreamEndPoint::set_protocol_restriction (  const AVStreams::protocolSpec &the_pspec    ACE_ENV_ARG_DECL_WITH_DEFAULTS )  throw (CORBA::SystemException) [virtual]
 

Used to restrict the set of protocols.

void TAO_StreamEndPoint::set_source_id (  CORBA::Long source_id    ACE_ENV_ARG_DECL_WITH_DEFAULTS )  throw (CORBA::SystemException) [virtual]
 

Used to set a unique id for packets sent by this streamendpoint.

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

Start the stream, Empty the_spec means, for all the flows.

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

Stop the stream. Empty the_spec means, for all the flows.

int TAO_StreamEndPoint::translate_qos (  const AVStreams::streamQoS &    application_qos,
AVStreams::streamQoS &    network_qos
)  [protected]
 

translate from application level to network level qos.


Member Data Documentation

FlowEndPoint_Map TAO_StreamEndPoint::fep_map_ [protected]
 

hash table for the flownames and its corresponding flowEndpoint reference.

u_int TAO_StreamEndPoint::flow_count_ [protected]
 

Count of the number of flows in this streamendpoint, used to generate unique names for the flows.

u_int TAO_StreamEndPoint::flow_num_ [protected]
 

current flow number used for system generation of flow names.

AVStreams::flowSpec TAO_StreamEndPoint::flows_ [protected]
 

sequence of supported flow names.

TAO_AV_FlowSpecSet TAO_StreamEndPoint::forward_flow_spec_set [protected]
 

AVStreams::key TAO_StreamEndPoint::key_ [protected]
 

Key used for encryption.

ACE_CString TAO_StreamEndPoint::mcast_addr_ [protected]
 

ACE_Hash_Map_Manager<ACE_CString, TAO_FlowSpec_Entry*,ACE_Null_Mutex> TAO_StreamEndPoint::mcast_entry_map_ [protected]
 

u_short TAO_StreamEndPoint::mcast_port_ [protected]
 

TAO_Forward_FlowSpec_Entry forward_entries_ [FLOWSPEC_MAX]; TAO_Reverse_FlowSpec_Entry reverse_entries_ [FLOWSPEC_MAX];

AVStreams::Negotiator_var TAO_StreamEndPoint::negotiator_ [protected]
 

our local negotiator for QoS.

AVStreams::StreamEndPoint_var TAO_StreamEndPoint::peer_sep_ [protected]
 

CORBA::String_var TAO_StreamEndPoint::protocol_ [protected]
 

Chosen protocol for this streamendpoint based on availableprotocols property.

AVStreams::protocolSpec TAO_StreamEndPoint::protocols_ [protected]
 

Our available list of protocols.

TAO_AV_FlowSpecSet TAO_StreamEndPoint::reverse_flow_spec_set [protected]
 

AVStreams::SFPStatus* TAO_StreamEndPoint::sfp_status_ [protected]
 

CORBA::Long TAO_StreamEndPoint::source_id_ [protected]
 

source id used for multicast.

AVStreams::StreamCtrl_var TAO_StreamEndPoint::streamctrl_ [protected]
 


The documentation for this class was generated from the following files:
Generated on Thu Jan 15 00:56:38 2004 for TAO_AV by doxygen1.2.18