Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

TAO_Queued_Data Class Reference

Represents a node in the queue of incoming messages. More...

#include <Incoming_Message_Queue.h>

Collaboration diagram for TAO_Queued_Data:

Collaboration graph
[legend]
List of all members.

Public Methods

 TAO_Queued_Data (ACE_Allocator *alloc=0)
 Default Constructor.

 TAO_Queued_Data (ACE_Message_Block *mb, ACE_Allocator *alloc=0)
 Constructor.

 TAO_Queued_Data (const TAO_Queued_Data &qd)
 Copy constructor.


Static Public Methods

TAO_Queued_Data * get_queued_data (ACE_Allocator *alloc=0)
 Creation and deletion of a node in the queue.

void release (TAO_Queued_Data *qd)
TAO_Queued_Data * duplicate (TAO_Queued_Data &qd)

Public Attributes

ACE_Message_Blockmsg_block_
 The message block that contains the message.

CORBA::Long missing_data_
CORBA::Octet byte_order_
 The byte order of the message that is stored in the node..

CORBA::Octet major_version_
CORBA::Octet minor_version_
CORBA::Octet more_fragments_
TAO_Pluggable_Message_Type msg_type_
 The message type of the message.

TAO_Queued_Data * next_
 Pounter to the next element in the queue.


Static Private Methods

void replace_data_block (ACE_Message_Block &mb)

Private Attributes

ACE_Allocatorallocator_
 The allocator used to allocate this class.


Detailed Description

Represents a node in the queue of incoming messages.

This class contains necessary information about a message that is stored in the queue. Such a node can be used by the incoming thread from the reactor to dequeue and process the message by sending it to the higher layers of the ORB.


Constructor & Destructor Documentation

TAO_Queued_Data::TAO_Queued_Data ACE_Allocator   alloc = 0
 

Default Constructor.

TAO_Queued_Data::TAO_Queued_Data ACE_Message_Block   mb,
ACE_Allocator   alloc = 0
 

Constructor.

TAO_Queued_Data::TAO_Queued_Data const TAO_Queued_Data &    qd
 

Copy constructor.


Member Function Documentation

TAO_Queued_Data * TAO_Queued_Data::duplicate TAO_Queued_Data &    qd [static]
 

Duplicate ourselves. This creates a copy of ourselves on the heap and returns a pointer to the duplicated node.

TAO_Queued_Data * TAO_Queued_Data::get_queued_data ACE_Allocator   alloc = 0 [static]
 

Creation and deletion of a node in the queue.

void TAO_Queued_Data::release TAO_Queued_Data *    qd [static]
 

ACE_INLINE void TAO_Queued_Data::replace_data_block ACE_Message_Block   mb [static, private]
 

Replace the datablock with a one allocated on the heap or allocator


Member Data Documentation

ACE_Allocator* TAO_Queued_Data::allocator_ [private]
 

The allocator used to allocate this class.

CORBA::Octet TAO_Queued_Data::byte_order_
 

The byte order of the message that is stored in the node..

CORBA::Octet TAO_Queued_Data::major_version_
 

Many protocols like GIOP have a major and minor version information that would be needed to read and decipher the message.

CORBA::Octet TAO_Queued_Data::minor_version_
 

CORBA::Long TAO_Queued_Data::missing_data_
 

Data missing in the above message that hasn't been read or processed yet.

CORBA::Octet TAO_Queued_Data::more_fragments_
 

Some messages can be fragmented by the protocol (this is an ORB level fragmentation on top of the TCP/IP fragmentation. This member indicates whether the message that we have recd. and queue already has more fragments that is missing..

ACE_Message_Block* TAO_Queued_Data::msg_block_
 

The message block that contains the message.

TAO_Pluggable_Message_Type TAO_Queued_Data::msg_type_
 

The message type of the message.

TAO_Queued_Data* TAO_Queued_Data::next_
 

Pounter to the next element in the queue.


The documentation for this class was generated from the following files:
Generated on Fri Apr 2 17:36:27 2004 for TAO by doxygen1.2.18