00001 // $Id: Notification_Queue.inl 77330 2007-02-22 13:45:54Z coryan $ 00002 00003 ACE_INLINE ACE_Notification_Queue_Node:: 00004 ACE_Notification_Queue_Node() 00005 : ACE_Intrusive_List_Node<ACE_Notification_Queue_Node>() 00006 , contents_(0, 0) 00007 { 00008 } 00009 00010 ACE_INLINE void 00011 ACE_Notification_Queue_Node:: 00012 set(ACE_Notification_Buffer const & rhs) 00013 { 00014 contents_ = rhs; 00015 } 00016 00017 ACE_INLINE ACE_Notification_Buffer const & 00018 ACE_Notification_Queue_Node:: 00019 get() const 00020 { 00021 return contents_; 00022 } 00023 00024 ACE_INLINE bool 00025 ACE_Notification_Queue_Node:: 00026 matches_for_purging(ACE_Event_Handler * eh) const 00027 { 00028 return (0 != get().eh_) && (0 == eh || eh == get().eh_); 00029 } 00030 00031 ACE_INLINE bool 00032 ACE_Notification_Queue_Node:: 00033 mask_disables_all_notifications(ACE_Reactor_Mask mask) 00034 { 00035 // the existing notification mask is left with nothing when applying 00036 // the mask 00037 return ACE_BIT_DISABLED (get().mask_, ~mask); 00038 } 00039 00040 ACE_INLINE void 00041 ACE_Notification_Queue_Node:: 00042 clear_mask(ACE_Reactor_Mask mask) 00043 { 00044 ACE_CLR_BITS(contents_.mask_, mask); 00045 } 00046 00047