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:

[legend]
Collaboration diagram for TAO_StreamEndPoint:

[legend]
List of all members.

## Public Methods
| TAO_StreamEndPoint (void)
| Constructor. More...
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. More...
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. More...
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. More...
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. More...
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)
| Called by the peer StreamEndPoint. The flow_spec indicates the flows (which contain transport addresses etc.). More...
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. More...
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. More...
virtual void | disconnect (const AVStreams::flowSpec &the_spec ACE_ENV_ARG_DECL_WITH_DEFAULTS) throw (CORBA::SystemException, AVStreams::noSuchFlow, AVStreams::streamOpFailed)
| disconnect the flows. More...
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. More...
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. More...
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. More...
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. More...
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. More...
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. More...
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. More...
virtual | ~TAO_StreamEndPoint (void)
| Destructor. More...
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(). More...
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. More...
## Protected Attributes
u_int | flow_count_
| Count of the number of flows in this streamendpoint, used to generate unique names for the flows. More...
u_int | flow_num_
| current flow number used for system generation of flow names. More...
FlowEndPoint_Map | fep_map_
| hash table for the flownames and its corresponding flowEndpoint reference. More...
AVStreams::flowSpec | flows_
| sequence of supported flow names. More...
CORBA::Long | source_id_
| source id used for multicast. More...
AVStreams::Negotiator_var | negotiator_
| our local negotiator for QoS. More...
AVStreams::protocolSpec | protocols_
| Our available list of protocols. More...
CORBA::String_var | protocol_
| Chosen protocol for this streamendpoint based on availableprotocols property. More...
AVStreams::key | key_
| Key used for encryption. More...
u_short | mcast_port_
| TAO_Forward_FlowSpec_Entry forward_entries_ [FLOWSPEC_MAX]; TAO_Reverse_FlowSpec_Entry reverse_entries_ [FLOWSPEC_MAX];. More...
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_NOT_USED
| ) | `[virtual]`

CORBA::Boolean TAO_StreamEndPoint::connect | ( | AVStreams::StreamEndPoint_ptr | responder,
|  | AVStreams::streamQoS & | qos,
|  | const AVStreams::flowSpec &the_spec | ACE_ENV_ARG_DECL
| ) | 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_NOT_USED | ) | 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_NOT_USED | ) | 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
| ) | 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_WITH_DEFAULTS
| ) |

| 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_NOT_USED
| ) | 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
| ) | throw (CORBA::SystemException)`[virtual]`

| Used for public key encryption.

void TAO_StreamEndPoint::set_negotiator | ( | AVStreams::Negotiator_ptr new_negotiator | ACE_ENV_ARG_DECL | ) | 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_NOT_USED | ) | 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:

- AVStreams_i.h
- AVStreams_i.cpp