summaryrefslogtreecommitdiff
path: root/ace/Message_Queue.i
diff options
context:
space:
mode:
authorcdgill <cdgill@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1998-06-24 16:33:06 +0000
committercdgill <cdgill@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1998-06-24 16:33:06 +0000
commit7c1c009a9f05509740534c4aa9d86b3f98c08f48 (patch)
tree2f8d3ef6af798cd9475ee7d0fc6da37251e537ec /ace/Message_Queue.i
parent532f007a3ba02d737b31ec46d23c891b90f2800f (diff)
downloadATCD-7c1c009a9f05509740534c4aa9d86b3f98c08f48.tar.gz
added dynamic message queues
Diffstat (limited to 'ace/Message_Queue.i')
-rw-r--r--ace/Message_Queue.i78
1 files changed, 78 insertions, 0 deletions
diff --git a/ace/Message_Queue.i b/ace/Message_Queue.i
index 6697eb242a4..804e8ea6e21 100644
--- a/ace/Message_Queue.i
+++ b/ace/Message_Queue.i
@@ -145,4 +145,82 @@ ACE_Message_Queue<ACE_SYNCH_USE>::deactivated (void)
ACE_ALLOC_HOOK_DEFINE(ACE_Message_Queue_Reverse_Iterator)
+ACE_INLINE int
+ACE_Dynamic_Message_Strategy::is_pending (const ACE_Message_Block & mb,
+ const ACE_Time_Value & tv)
+{
+ return ((mb.msg_priority () < pending_threshold_) ||
+ this->is_beyond_late (mb, tv))
+ ? 0 : 1;
+}
+ // returns true if the message has a pending (not late) priority value
+
+ACE_INLINE u_long
+ACE_Dynamic_Message_Strategy::static_bit_field_mask (void)
+{
+ return static_bit_field_mask_;
+}
+ // get static bit field mask
+
+ACE_INLINE void
+ACE_Dynamic_Message_Strategy::static_bit_field_mask (u_long ul)
+{
+ static_bit_field_mask_ = ul;
+}
+ // set static bit field mask
+ACE_INLINE u_long
+ACE_Dynamic_Message_Strategy::static_bit_field_shift (void)
+{
+ return static_bit_field_shift_;
+}
+ // get left shift value to make room for static bit field
+
+ACE_INLINE void
+ACE_Dynamic_Message_Strategy::static_bit_field_shift (u_long ul)
+{
+ static_bit_field_shift_ = ul;
+}
+ // set left shift value to make room for static bit field
+
+ACE_INLINE u_long
+ACE_Dynamic_Message_Strategy::pending_threshold (void)
+{
+ return pending_threshold_;
+}
+ // get pending threshold priority value
+
+ACE_INLINE void
+ACE_Dynamic_Message_Strategy::pending_threshold (u_long ul)
+{
+ pending_threshold_ = ul;
+}
+ // set pending threshold priority value
+
+ACE_INLINE u_long
+ACE_Dynamic_Message_Strategy::dynamic_priority_max (void)
+{
+ return dynamic_priority_max_;
+}
+ // get maximum supported priority value
+
+ACE_INLINE void
+ACE_Dynamic_Message_Strategy::dynamic_priority_max (u_long ul)
+{
+ dynamic_priority_max_ = ul;
+}
+ // set maximum supported priority value
+
+ACE_INLINE u_long
+ACE_Dynamic_Message_Strategy::dynamic_priority_offset (void)
+{
+ return dynamic_priority_offset_;
+}
+ // get axis shift to map signed range into unsigned range
+
+ACE_INLINE void
+ACE_Dynamic_Message_Strategy::dynamic_priority_offset (u_long ul)
+{
+ dynamic_priority_offset_ = ul;
+}
+ // set axis shift to map signed range into unsigned range