summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Cleeland <chris.cleeland@gmail.com>2003-12-15 22:31:47 +0000
committerChris Cleeland <chris.cleeland@gmail.com>2003-12-15 22:31:47 +0000
commit4d3fc0636ce0d4931d786c307b66fd82811564aa (patch)
tree970a7e0324159a06542208d5df72bc03430683ff
parentbfaba70db6a992daae0aeef971c179622e3cb125 (diff)
downloadATCD-unlabeled-1.24.2.tar.gz
Tag: pmb_integrationunlabeled-1.24.2
Started work on performance enhancements for PMB.
-rw-r--r--TAO/tao/Pluggable_Messaging.h44
-rw-r--r--TAO/tao/Strategies/SHMIOP_Transport.h4
2 files changed, 23 insertions, 25 deletions
diff --git a/TAO/tao/Pluggable_Messaging.h b/TAO/tao/Pluggable_Messaging.h
index 8ac38de01e0..3e84635d767 100644
--- a/TAO/tao/Pluggable_Messaging.h
+++ b/TAO/tao/Pluggable_Messaging.h
@@ -121,36 +121,30 @@ public:
virtual void init (CORBA::Octet major,
CORBA::Octet minor) = 0;
- /// Parse the incoming messages..
- virtual int parse_incoming_messages (ACE_Message_Block &message_block) = 0;
-
- /// Calculate the amount of data that is missing in the <incoming>
- /// message block.
- virtual ssize_t missing_data (ACE_Message_Block &incoming) = 0;
-
- /// Get the details of the message parsed through the <qd>.
- virtual void get_message_data (TAO_Queued_Data *qd) = 0;
-
- /* Extract the details of the next message from the <incoming>
- * through <qd>. Returns 1 if there are more messages and returns a
- * 0 if there are no more messages in <incoming>.
- */
- virtual int extract_next_message (ACE_Message_Block &incoming,
- TAO_Queued_Data *&qd) = 0;
-
- /// Check whether the node <qd> needs consolidation from <incoming>
- virtual int consolidate_node (TAO_Queued_Data *qd,
- ACE_Message_Block &incoming) = 0;
-
- /// @@Bala:Docu??
- virtual int consolidate_fragments (TAO_Queued_Data *dqd,
- const TAO_Queued_Data *sqd) = 0;
-
/// Parse the request message, make an upcall and send the reply back
/// to the "request initiator"
virtual int process_request_message (TAO_Transport *transport,
TAO_Queued_Data *qd) = 0;
+ /*!
+ \brief Inspects the bytes in \param mb to see if they "look like" the beginning of a message.
+
+ Inspects the bytes in \param mb, beginning at \code mb.rd_ptr, to
+ see if they look like the beginning of a message. Does
+ */
+ virtual int check_for_valid_header (const ACE_Message_Block &mb) const = 0;
+
+ /*!
+ \brief Set fields in \param qd based on values derived from \param mb.
+
+ This function sets fields in \param qd based on values derived
+ from \param mb. It assumes that if the length of \param mb is
+ enough to hold a header, then the data in there can be trusted to
+ make sense.
+ */
+ virtual void set_queued_data_from_message_header (
+ TAO_Queued_Data *,
+ const ACE_Message_Block &mb) const = 0;
/// Parse the reply message that we received and return the reply
/// information though <reply_info>
diff --git a/TAO/tao/Strategies/SHMIOP_Transport.h b/TAO/tao/Strategies/SHMIOP_Transport.h
index 02c67c63116..8b54426aaa7 100644
--- a/TAO/tao/Strategies/SHMIOP_Transport.h
+++ b/TAO/tao/Strategies/SHMIOP_Transport.h
@@ -82,10 +82,14 @@ protected:
size_t len,
const ACE_Time_Value *s = 0);
+#if 0
+ // This no longer exists with the PMB-change flow. Not sure how to deal with that,
+ // so for now we ditch the method and see if things work.
virtual int consolidate_message (ACE_Message_Block &incoming,
ssize_t missing_data,
TAO_Resume_Handle &rh,
ACE_Time_Value *max_wait_time);
+#endif
//@}