ACE_QoS 7.1.4
Loading...
Searching...
No Matches
Public Member Functions | Static Public Attributes | Private Member Functions | Friends | List of all members
ACE_GQoS_Session Class Reference

A GQoS session object. More...

#include <QoS_Session_Impl.h>

Inheritance diagram for ACE_GQoS_Session:
Inheritance graph
[legend]
Collaboration diagram for ACE_GQoS_Session:
Collaboration graph
[legend]

Public Member Functions

 ~ACE_GQoS_Session ()
 Default destructor.
 
virtual int open (ACE_INET_Addr dest_addr, ACE_Protocol_ID protocol_id)
 Open a GQoS session [dest IP, dest port, Protocol ID].
 
virtual int close ()
 Close the GQoS Session.
 
virtual ACE_QoS qos () const
 Returns the QoS for this GQoS session.
 
virtual int qos (ACE_SOCK *socket, ACE_QoS_Manager *qos_manager, const ACE_QoS &ace_qos)
 
virtual void qos (const ACE_QoS &ace_qos)
 
virtual int update_qos ()
 
virtual ACE_End_Point_Type flags () const
 Get/Set methods for the flags_.
 
virtual void flags (const ACE_End_Point_Type flags)
 
virtual ACE_INET_Addr dest_addr () const
 Get the destination address for this GQoS session.
 
virtual void dest_addr (const ACE_INET_Addr &dest_addr)
 Set the destination address for this GQoS session.
 
virtual u_short source_port () const
 Get the source port for this session.
 
virtual void source_port (const u_short &source_port)
 Set the source port for this session.
 
virtual ACE_INET_Addrsource_addr () const
 
virtual void source_addr (ACE_INET_Addr *source_addr)
 Set the source port for this session.
 
virtual int session_id () const
 Get the GQoS session id.
 
virtual void session_id (const int session_id)
 Set the GQoS session id.
 
virtual ACE_HANDLE rsvp_events_handle ()
 Get the file descriptor of the underlying socket.
 
virtual void rsvp_event_type (RSVP_Event_Type event_type)
 
virtual RSVP_Event_Type rsvp_event_type ()
 Set the RAPI event that last occurred.
 
virtual int version ()
 Get the RAPI event that last occurred.
 
- Public Member Functions inherited from ACE_QoS_Session
virtual ~ACE_QoS_Session ()
 to shutup g++.
 

Static Public Attributes

static int GQoS_session_id = 0
 

Private Member Functions

 ACE_GQoS_Session ()
 

Friends

class ACE_QoS_Session_Factory
 

Additional Inherited Members

- Public Types inherited from ACE_QoS_Session
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 }
 
- Protected Attributes inherited from ACE_QoS_Session
u_short source_port_
 Source port if this is a Sender session. Used for rapi_sender ().
 
int session_id_
 session id for the session.
 
ACE_INET_Addr dest_addr_
 Destination address for this session.
 
ACE_INET_Addrsrc_addr_
 Source address for this session.
 
ACE_Protocol_ID protocol_id_
 Is this a TCP or a UDP session.
 
ACE_QoS qos_
 QoS for this session.
 
ACE_End_Point_Type flags_
 Specifies if this is a sending/receiving/both session.
 
RSVP_Event_Type rsvp_event_type_
 

Detailed Description

A GQoS session object.

This class is a GQoS (Generic QoS, an implementation of RSVP on Win2K) implementation of the ACE_QoS_Session interface.

Constructor & Destructor Documentation

◆ ~ACE_GQoS_Session()

ACE_GQoS_Session::~ACE_GQoS_Session ( )
inline

Default destructor.

◆ ACE_GQoS_Session()

ACE_GQoS_Session::ACE_GQoS_Session ( )
private

Default constructor. Constructor is defined private so that only the friend factory can instantiate this class.

Member Function Documentation

◆ close()

int ACE_GQoS_Session::close ( )
virtual

Close the GQoS Session.

Implements ACE_QoS_Session.

◆ dest_addr() [1/2]

ACE_INET_Addr ACE_GQoS_Session::dest_addr ( ) const
inlinevirtual

Get the destination address for this GQoS session.

Implements ACE_QoS_Session.

◆ dest_addr() [2/2]

void ACE_GQoS_Session::dest_addr ( const ACE_INET_Addr & dest_addr)
inlinevirtual

Set the destination address for this GQoS session.

Implements ACE_QoS_Session.

◆ flags() [1/2]

ACE_QoS_Session::ACE_End_Point_Type ACE_GQoS_Session::flags ( ) const
inlinevirtual

Get/Set methods for the flags_.

Implements ACE_QoS_Session.

◆ flags() [2/2]

void ACE_GQoS_Session::flags ( const ACE_End_Point_Type flags)
inlinevirtual

Implements ACE_QoS_Session.

◆ open()

int ACE_GQoS_Session::open ( ACE_INET_Addr dest_addr,
ACE_Protocol_ID protocol_id )
virtual

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

Implements ACE_QoS_Session.

◆ qos() [1/3]

ACE_QoS ACE_GQoS_Session::qos ( ) const
inlinevirtual

Returns the QoS for this GQoS session.

Implements ACE_QoS_Session.

◆ qos() [2/3]

int ACE_GQoS_Session::qos ( ACE_SOCK * socket,
ACE_QoS_Manager * qos_manager,
const ACE_QoS & ace_qos )
virtual

Set QoS for this GQoS session. The socket parameter is used to confirm if this QoS session was subscribed to by the socket.

Implements ACE_QoS_Session.

◆ qos() [3/3]

void ACE_GQoS_Session::qos ( const ACE_QoS & ace_qos)
inlinevirtual

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

Implements ACE_QoS_Session.

◆ rsvp_event_type() [1/2]

ACE_QoS_Session::RSVP_Event_Type ACE_GQoS_Session::rsvp_event_type ( )
virtual

Set the RAPI event that last occurred.

Implements ACE_QoS_Session.

◆ rsvp_event_type() [2/2]

void ACE_GQoS_Session::rsvp_event_type ( ACE_QoS_Session::RSVP_Event_Type event_type)
virtual

Implements ACE_QoS_Session.

◆ rsvp_events_handle()

ACE_HANDLE ACE_GQoS_Session::rsvp_events_handle ( )
inlinevirtual

Get the file descriptor of the underlying socket.

Implements ACE_QoS_Session.

◆ session_id() [1/2]

int ACE_GQoS_Session::session_id ( ) const
inlinevirtual

Get the GQoS session id.

Implements ACE_QoS_Session.

◆ session_id() [2/2]

void ACE_GQoS_Session::session_id ( const int session_id)
inlinevirtual

Set the GQoS session id.

Implements ACE_QoS_Session.

◆ source_addr() [1/2]

ACE_INET_Addr * ACE_GQoS_Session::source_addr ( ) const
inlinevirtual

Implements ACE_QoS_Session.

◆ source_addr() [2/2]

void ACE_GQoS_Session::source_addr ( ACE_INET_Addr * source_addr)
inlinevirtual

Set the source port for this session.

Implements ACE_QoS_Session.

◆ source_port() [1/2]

u_short ACE_GQoS_Session::source_port ( ) const
inlinevirtual

Get the source port for this session.

Implements ACE_QoS_Session.

◆ source_port() [2/2]

void ACE_GQoS_Session::source_port ( const u_short & source_port)
inlinevirtual

Set the source port for this session.

Implements ACE_QoS_Session.

◆ update_qos()

int ACE_GQoS_Session::update_qos ( )
virtual

Calls the ioctl (ACE_SIO_GET_QOS). It is a mechanism of updating the QoS for this session asynchronously, as RSVP events occur.

Implements ACE_QoS_Session.

◆ version()

int ACE_GQoS_Session::version ( )
inlinevirtual

Get the RAPI event that last occurred.

GQoS version.

Implements ACE_QoS_Session.

Friends And Related Symbol Documentation

◆ ACE_QoS_Session_Factory

friend class ACE_QoS_Session_Factory
friend

The factory is a friend so it can create this object through the only private constructor.

Member Data Documentation

◆ GQoS_session_id

int ACE_GQoS_Session::GQoS_session_id = 0
static

This is a session ID generator. It does a lot more than expected from an int!.


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