summaryrefslogtreecommitdiff
path: root/TAO/tao/Incoming_Message_Queue.h
diff options
context:
space:
mode:
authorbala <balanatarajan@users.noreply.github.com>2001-07-23 16:47:59 +0000
committerbala <balanatarajan@users.noreply.github.com>2001-07-23 16:47:59 +0000
commite95324ce8e15018601299fcf10185bcbb7a8d788 (patch)
treea676e62438b1f2d1d4dd00c7492d51e1fe7dce94 /TAO/tao/Incoming_Message_Queue.h
parent8c56bc73fd0436714b30aa99b0b7a296561edd12 (diff)
downloadATCD-e95324ce8e15018601299fcf10185bcbb7a8d788.tar.gz
ChangeLogTag: Mon Jul 23 11:44:30 2001 Balachandran Natarajan <bala@cs.wustl.edu>
Diffstat (limited to 'TAO/tao/Incoming_Message_Queue.h')
-rw-r--r--TAO/tao/Incoming_Message_Queue.h18
1 files changed, 17 insertions, 1 deletions
diff --git a/TAO/tao/Incoming_Message_Queue.h b/TAO/tao/Incoming_Message_Queue.h
index 20fbdc17d04..6037ca825af 100644
--- a/TAO/tao/Incoming_Message_Queue.h
+++ b/TAO/tao/Incoming_Message_Queue.h
@@ -78,6 +78,10 @@ public:
int is_tail_complete (void);
int is_head_complete (void);
+ /// This method checks whether the last message that was queued up
+ /// was fragmented...
+ int is_tail_fragmented (void);
+
/// Return the size of data that is missing in tail of the queue.
size_t missing_data_tail (void) const;
/// void missing_data (size_t data);
@@ -123,11 +127,18 @@ public:
/// Constructor.
TAO_Queued_Data (ACE_Message_Block *mb);
+ /// Copy constructor.
+ TAO_Queued_Data (const TAO_Queued_Data &qd);
+
/// Creation and deletion of a node in the queue.
static TAO_Queued_Data* get_queued_data (void);
static void release (TAO_Queued_Data *qd);
+ /// Duplicate ourselves. This creates a copy of ourselves on the
+ /// heap and returns a pointer to the duplicated node.
+ static TAO_Queued_Data* duplicate (TAO_Queued_Data &qd);
+
/// The message block that contains the message.
ACE_Message_Block *msg_block_;
@@ -142,9 +153,14 @@ public:
/// information that would be needed to read and decipher the
/// message.
CORBA::Octet major_version_;
-
CORBA::Octet minor_version_;
+ /// 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..
+ CORBA::Octet more_fragments_;
+
/// The message type of the message
TAO_Pluggable_Message_Type msg_type_;