TAO 2.0.4
Public Member Functions | Private Attributes | Friends
TAO_Incoming_Message_Queue Class Reference

A queue of the messages in the incoming data path. More...

#include <Incoming_Message_Queue.h>

Collaboration diagram for TAO_Incoming_Message_Queue:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 TAO_Incoming_Message_Queue (TAO_ORB_Core *orb_core)
 Constructor.
 ~TAO_Incoming_Message_Queue (void)
 Destructor.
TAO_Queued_Datadequeue_head (void)
 Adding and deleting a node from the queue.
TAO_Queued_Datadequeue_tail (void)
int enqueue_tail (TAO_Queued_Data *nd)
CORBA::ULong queue_length (void) const
 Return the length of the queue..

Private Attributes

TAO_Queued_Datalast_added_
 A circular linked list of messages awaiting processing.
CORBA::ULong size_
 The size of the queue.
TAO_ORB_Coreorb_core_
 Copy of our ORB Core.

Friends

class TAO_Transport

Detailed Description

A queue of the messages in the incoming data path.

Please read the documentation in the TAO_Transport class to find out more about the design of the incoming data path.

Under certain conditions TAO may have to maintain a queue per-connection. This queue is drained by the pluggable protocols framework, normally under control of the ACE_Reactor, but other configurations are conceivable.

The memory that is allocated for holding the messages comes from the global pool for the following reasons


Constructor & Destructor Documentation

TAO_Incoming_Message_Queue::TAO_Incoming_Message_Queue ( TAO_ORB_Core orb_core)

Constructor.

TAO_Incoming_Message_Queue::~TAO_Incoming_Message_Queue ( void  )

Destructor.


Member Function Documentation

TAO_Queued_Data * TAO_Incoming_Message_Queue::dequeue_head ( void  )

Adding and deleting a node from the queue.

TAO_Queued_Data * TAO_Incoming_Message_Queue::dequeue_tail ( void  )
int TAO_Incoming_Message_Queue::enqueue_tail ( TAO_Queued_Data nd)
CORBA::ULong TAO_Incoming_Message_Queue::queue_length ( void  ) const

Return the length of the queue..


Friends And Related Function Documentation

friend class TAO_Transport [friend]

Member Data Documentation

A circular linked list of messages awaiting processing.

last_message_added_ points to the most recent message added to the list. The earliest addition can be easily accessed via last_message_added_->next_.

Copy of our ORB Core.

The size of the queue.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines