TAO 2.0.5
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

List of all members.

Public Member Functions

 TAO_Incoming_Message_Queue (TAO_ORB_Core *orb_core)
 ~TAO_Incoming_Message_Queue (void)
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

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


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)


TAO_Incoming_Message_Queue::~TAO_Incoming_Message_Queue ( void  )


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