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

ACE_QoS_Session Class Reference

A QoS Session object. More...

#include <QoS_Session.h>

Inheritance diagram for ACE_QoS_Session:

Inheritance graph
[legend]
Collaboration diagram for ACE_QoS_Session:

Collaboration graph
[legend]
List of all members.

Public Types

enum  RSVP_Event_Type {
  RSVP_PATH_EVENT, RSVP_RESV_EVENT, RSVP_RESV_CONFIRM, RSVP_RESV_ERROR,
  RSVP_PATH_ERROR
}
enum  ACE_End_Point_Type { ACE_QOS_SENDER, ACE_QOS_RECEIVER, ACE_QOS_BOTH }
 A flag to indicate if this endpoint is a sender or a receiver or both. More...


Public Methods

virtual ~ACE_QoS_Session (void)
 to shutup g++. More...

virtual int open (ACE_INET_Addr dest_addr, ACE_Protocol_ID protocol_id)=0
 Open a QoS session [dest IP, dest port, Protocol ID]. More...

virtual int close (void)=0
 Close the QoS Session. More...

virtual ACE_QoS qos (void) const=0
 Returns the QoS in the current session. More...

virtual int qos (ACE_SOCK *socket, ACE_QoS_Manager *qos_manager, const ACE_QoS &ace_qos)=0
 Set QoS for the current session. The qos manager is used to confirm if this QoS session was subscribed to by the socket. More...

virtual void qos (const ACE_QoS &ace_qos)=0
virtual int update_qos (void)=0
virtual ACE_End_Point_Type flags (void) const=0
 Get/Set methods for the flags_. More...

virtual void flags (const ACE_End_Point_Type flags)=0
virtual int session_id (void) const=0
 Get the session id. More...

virtual void session_id (const int session_id)=0
 Set the session id. More...

virtual ACE_HANDLE rsvp_events_handle (void)=0
 Get the file descriptor on which RSVP events will occur. More...

virtual void rsvp_event_type (RSVP_Event_Type event_type)=0
virtual RSVP_Event_Type rsvp_event_type (void)=0
 Set the RAPI event that last occured. More...

virtual ACE_INET_Addr dest_addr (void) const=0
 Get the RAPI event that last occured Get the destination address for this session. More...

virtual void dest_addr (const ACE_INET_Addr &dest_addr)=0
 Set the destination address for this session. More...

virtual u_short source_port (void) const=0
 Get the source port for this session. More...

virtual void source_port (const u_short &source_port)=0
 Set the source port for this session. More...

virtual int version (void)=0

Protected Attributes

u_short source_port_
 Source port if this is a Sender session. Used for rapi_sender (). More...

int session_id_
 session id for the session. More...

ACE_INET_Addr dest_addr_
 Destination address for this session. More...

ACE_Protocol_ID protocol_id_
 Is this a TCP or a UDP session. More...

ACE_QoS qos_
 QoS for this session. More...

ACE_End_Point_Type flags_
 Specifies if this is a sending/receiving/both session. More...

RSVP_Event_Type rsvp_event_type_

Detailed Description

A QoS Session object.

This class defines the interface for a QoS Session. It abstracts the notion of QoS on different platforms and presents a simple, easy-to-use API. Current [RAPI,GQoS] and future implementations will conform to this interface.

Definition at line 42 of file QoS_Session.h.


Member Enumeration Documentation

enum ACE_QoS_Session::ACE_End_Point_Type
 

A flag to indicate if this endpoint is a sender or a receiver or both.

Enumeration values:
ACE_QOS_SENDER 
ACE_QOS_RECEIVER 
ACE_QOS_BOTH 

Definition at line 58 of file QoS_Session.h.

00059   {
00060     ACE_QOS_SENDER,
00061     ACE_QOS_RECEIVER,
00062     ACE_QOS_BOTH
00063   };

enum ACE_QoS_Session::RSVP_Event_Type
 

Enumeration values:
RSVP_PATH_EVENT 
RSVP_RESV_EVENT 
RSVP_RESV_CONFIRM 
RSVP_RESV_ERROR 
RSVP_PATH_ERROR 

Definition at line 47 of file QoS_Session.h.

Referenced by ACE_GQoS_Session::rsvp_event_type.

00048   {
00049     RSVP_PATH_EVENT,
00050     RSVP_RESV_EVENT,
00051     RSVP_RESV_CONFIRM,
00052     RSVP_RESV_ERROR,
00053     RSVP_PATH_ERROR    
00054   };


Constructor & Destructor Documentation

virtual ACE_QoS_Session::~ACE_QoS_Session void    [inline, virtual]
 

to shutup g++.

Definition at line 67 of file QoS_Session.h.

00067 {};


Member Function Documentation

virtual int ACE_QoS_Session::close void    [pure virtual]
 

Close the QoS Session.

Implemented in ACE_GQoS_Session.

virtual void ACE_QoS_Session::dest_addr const ACE_INET_Addr   dest_addr [pure virtual]
 

Set the destination address for this session.

Implemented in ACE_GQoS_Session.

virtual ACE_INET_Addr ACE_QoS_Session::dest_addr void    const [pure virtual]
 

Get the RAPI event that last occured Get the destination address for this session.

Implemented in ACE_GQoS_Session.

Referenced by ACE_SOCK_Dgram_Mcast_QoS::subscribe.

virtual void ACE_QoS_Session::flags const ACE_End_Point_Type    flags [pure virtual]
 

Implemented in ACE_GQoS_Session.

virtual ACE_End_Point_Type ACE_QoS_Session::flags void    const [pure virtual]
 

Get/Set methods for the flags_.

Implemented in ACE_GQoS_Session.

virtual int ACE_QoS_Session::open ACE_INET_Addr    dest_addr,
ACE_Protocol_ID    protocol_id
[pure virtual]
 

Open a QoS session [dest IP, dest port, Protocol ID].

Implemented in ACE_GQoS_Session.

virtual void ACE_QoS_Session::qos const ACE_QoS   ace_qos [pure virtual]
 

Sets the QoS for this session object to ace_qos. Does not interfere with the QoS in the underlying socket. This call is useful to update the QoS object when the underlying socket QoS is being set through a mechanism other than the previous qos () method e.g. inside the dgram_mcast.subscribe () where the QoS for the socket is set through ACE_OS::join_leaf ().

Implemented in ACE_GQoS_Session.

virtual int ACE_QoS_Session::qos ACE_SOCK   socket,
ACE_QoS_Manager   qos_manager,
const ACE_QoS   ace_qos
[pure virtual]
 

Set QoS for the current session. The qos manager is used to confirm if this QoS session was subscribed to by the socket.

Implemented in ACE_GQoS_Session.

virtual ACE_QoS ACE_QoS_Session::qos void    const [pure virtual]
 

Returns the QoS in the current session.

Implemented in ACE_GQoS_Session.

Referenced by ACE_SOCK_Dgram_Mcast_QoS::subscribe.

virtual RSVP_Event_Type ACE_QoS_Session::rsvp_event_type void    [pure virtual]
 

Set the RAPI event that last occured.

Implemented in ACE_GQoS_Session.

virtual void ACE_QoS_Session::rsvp_event_type RSVP_Event_Type    event_type [pure virtual]
 

virtual ACE_HANDLE ACE_QoS_Session::rsvp_events_handle void    [pure virtual]
 

Get the file descriptor on which RSVP events will occur.

Implemented in ACE_GQoS_Session.

Referenced by ACE_QoS_Event_Handler::get_handle.

virtual void ACE_QoS_Session::session_id const int    session_id [pure virtual]
 

Set the session id.

Implemented in ACE_GQoS_Session.

virtual int ACE_QoS_Session::session_id void    const [pure virtual]
 

Get the session id.

Implemented in ACE_GQoS_Session.

virtual void ACE_QoS_Session::source_port const u_short &    source_port [pure virtual]
 

Set the source port for this session.

Implemented in ACE_GQoS_Session.

virtual u_short ACE_QoS_Session::source_port void    const [pure virtual]
 

Get the source port for this session.

Implemented in ACE_GQoS_Session.

virtual int ACE_QoS_Session::update_qos void    [pure virtual]
 

This is called from handle_qos () method of the the QoS Event Handler. Invoking this method is an indication of a QoS event occurring, that may have resulted in a change of QoS for the underlying session. This method updates the QoS object associated with this session.

Implemented in ACE_GQoS_Session.

virtual int ACE_QoS_Session::version void    [pure virtual]
 

Returns the version of the underlying RSVP implementation. Is meaningful only when the underlying implementation has versioning.

Implemented in ACE_GQoS_Session.


Member Data Documentation

ACE_INET_Addr ACE_QoS_Session::dest_addr_ [protected]
 

Destination address for this session.

Definition at line 152 of file QoS_Session.h.

Referenced by ACE_GQoS_Session::dest_addr, and ACE_GQoS_Session::open.

ACE_End_Point_Type ACE_QoS_Session::flags_ [protected]
 

Specifies if this is a sending/receiving/both session.

Definition at line 161 of file QoS_Session.h.

Referenced by ACE_GQoS_Session::flags.

ACE_Protocol_ID ACE_QoS_Session::protocol_id_ [protected]
 

Is this a TCP or a UDP session.

Definition at line 155 of file QoS_Session.h.

Referenced by ACE_GQoS_Session::open.

ACE_QoS ACE_QoS_Session::qos_ [protected]
 

QoS for this session.

Definition at line 158 of file QoS_Session.h.

Referenced by ACE_GQoS_Session::qos.

RSVP_Event_Type ACE_QoS_Session::rsvp_event_type_ [protected]
 

Definition at line 163 of file QoS_Session.h.

Referenced by ACE_GQoS_Session::rsvp_event_type.

int ACE_QoS_Session::session_id_ [protected]
 

session id for the session.

Definition at line 149 of file QoS_Session.h.

Referenced by ACE_GQoS_Session::open, and ACE_GQoS_Session::session_id.

u_short ACE_QoS_Session::source_port_ [protected]
 

Source port if this is a Sender session. Used for rapi_sender ().

Definition at line 146 of file QoS_Session.h.

Referenced by ACE_GQoS_Session::source_port.


The documentation for this class was generated from the following file:
Generated on Mon Jun 16 13:17:47 2003 for ACE_QoS by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002