ACE_Notification_Queue_Node Class Reference

Helper class. More...

#include <Notification_Queue.h>

Inheritance diagram for ACE_Notification_Queue_Node:

Inheritance graph
[legend]
Collaboration diagram for ACE_Notification_Queue_Node:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 ACE_Notification_Queue_Node ()
 Constructor.

void set (ACE_Notification_Buffer const &rhs)
 Modifier change the contained buffer.

ACE_Notification_Buffer const & get () const
 Accessor, fetch the contained buffer.

bool matches_for_purging (ACE_Event_Handler *eh) const
 Checks if the event handler matches the purge condition.

bool mask_disables_all_notifications (ACE_Reactor_Mask mask)
 Return true if clearing the mask would leave no notifications to deliver.

void clear_mask (ACE_Reactor_Mask mask)
 Clear the notifications specified by mask.


Private Attributes

ACE_Notification_Buffer contents_

Detailed Description

Helper class.

Definition at line 26 of file Notification_Queue.h.


Constructor & Destructor Documentation

ACE_INLINE ACE_Notification_Queue_Node::ACE_Notification_Queue_Node  ) 
 

Constructor.

Definition at line 4 of file Notification_Queue.inl.

00005   : ACE_Intrusive_List_Node<ACE_Notification_Queue_Node>()
00006   , contents_(0, 0)
00007 {
00008 }


Member Function Documentation

ACE_INLINE void ACE_Notification_Queue_Node::clear_mask ACE_Reactor_Mask  mask  ) 
 

Clear the notifications specified by mask.

Definition at line 42 of file Notification_Queue.inl.

References ACE_CLR_BITS, ACE_Reactor_Mask, contents_, and ACE_Notification_Buffer::mask_.

Referenced by ACE_Notification_Queue::purge_pending_notifications().

00043 {
00044   ACE_CLR_BITS(contents_.mask_, mask);
00045 }

ACE_INLINE ACE_Notification_Buffer const & ACE_Notification_Queue_Node::get  )  const
 

Accessor, fetch the contained buffer.

Definition at line 19 of file Notification_Queue.inl.

References contents_.

Referenced by mask_disables_all_notifications(), matches_for_purging(), ACE_Notification_Queue::pop_next_notification(), ACE_Notification_Queue::purge_pending_notifications(), and ACE_Notification_Queue::reset().

00020 {
00021   return contents_;
00022 }

ACE_INLINE bool ACE_Notification_Queue_Node::mask_disables_all_notifications ACE_Reactor_Mask  mask  ) 
 

Return true if clearing the mask would leave no notifications to deliver.

Definition at line 33 of file Notification_Queue.inl.

References ACE_BIT_DISABLED, ACE_Reactor_Mask, and get().

Referenced by ACE_Notification_Queue::purge_pending_notifications().

00034 {
00035   // the existing notification mask is left with nothing when applying
00036   // the mask
00037   return ACE_BIT_DISABLED (get().mask_, ~mask);
00038 }

ACE_INLINE bool ACE_Notification_Queue_Node::matches_for_purging ACE_Event_Handler eh  )  const
 

Checks if the event handler matches the purge condition.

Definition at line 26 of file Notification_Queue.inl.

References ACE_Notification_Buffer::eh_, and get().

Referenced by ACE_Notification_Queue::purge_pending_notifications().

00027 {
00028   return (0 != get().eh_) && (0 == eh || eh == get().eh_);
00029 }

ACE_INLINE void ACE_Notification_Queue_Node::set ACE_Notification_Buffer const &  rhs  ) 
 

Modifier change the contained buffer.

Definition at line 12 of file Notification_Queue.inl.

References contents_.

Referenced by ACE_Notification_Queue::push_new_notification().

00013 {
00014   contents_ = rhs;
00015 }


Member Data Documentation

ACE_Notification_Buffer ACE_Notification_Queue_Node::contents_ [private]
 

Definition at line 62 of file Notification_Queue.h.

Referenced by clear_mask(), get(), and set().


The documentation for this class was generated from the following files:
Generated on Sun Jan 27 12:56:04 2008 for ACE by doxygen 1.3.6