Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members   Related Pages  

ACE_Notification_Strategy Class Reference

Abstract class used for notifying an interested party. More...

#include <Notification_Strategy.h>

Inheritance diagram for ACE_Notification_Strategy:

Inheritance graph
[legend]
Collaboration diagram for ACE_Notification_Strategy:

Collaboration graph
[legend]
List of all members.

Public Methods

 ACE_Notification_Strategy (ACE_Event_Handler *eh, ACE_Reactor_Mask mask)
 Constructor. More...

virtual ~ACE_Notification_Strategy (void)
 Destructor. More...

virtual int notify (void)=0
virtual int notify (ACE_Event_Handler *, ACE_Reactor_Mask mask)=0
ACE_Event_Handlerevent_handler (void)
 Get the event handler. More...

void event_handler (ACE_Event_Handler *eh)
 Set the event handler. More...

ACE_Reactor_Mask mask (void) const
 Get the reactor mask. More...

void mask (ACE_Reactor_Mask m)
 Set the reactor mask. More...


Protected Attributes

ACE_Event_Handlereh_
 The event handler. More...

ACE_Reactor_Mask mask_
 The reactor mask. More...


Detailed Description

Abstract class used for notifying an interested party.

A vehicle for extending the behavior of ACE_Message_Queue wrt notification *without subclassing*. Thus, it's an example of the Bridge/Strategy patterns.

Definition at line 33 of file Notification_Strategy.h.


Constructor & Destructor Documentation

ACE_Notification_Strategy::ACE_Notification_Strategy ACE_Event_Handler   eh,
ACE_Reactor_Mask    mask
 

Constructor.

Definition at line 10 of file Notification_Strategy.cpp.

References ACE_Reactor_Mask.

00012   : eh_ (eh),
00013     mask_ (mask)
00014 {
00015 }

ACE_Notification_Strategy::~ACE_Notification_Strategy void    [virtual]
 

Destructor.

Definition at line 17 of file Notification_Strategy.cpp.

00018 {
00019 }


Member Function Documentation

ACE_INLINE void ACE_Notification_Strategy::event_handler ACE_Event_Handler   eh
 

Set the event handler.

Definition at line 11 of file Notification_Strategy.inl.

References eh_.

00012 {
00013   this->eh_ = eh;
00014 }

ACE_INLINE ACE_Event_Handler * ACE_Notification_Strategy::event_handler void   
 

Get the event handler.

Definition at line 5 of file Notification_Strategy.inl.

References eh_.

00006 {
00007   return eh_;
00008 }

ACE_INLINE void ACE_Notification_Strategy::mask ACE_Reactor_Mask    m
 

Set the reactor mask.

Definition at line 23 of file Notification_Strategy.inl.

References ACE_Reactor_Mask, and mask_.

00024 {
00025   this->mask_ = m;
00026 }

ACE_INLINE ACE_Reactor_Mask ACE_Notification_Strategy::mask void    const
 

Get the reactor mask.

Definition at line 17 of file Notification_Strategy.inl.

References mask_.

Referenced by ACE_Reactor_Notification_Strategy::notify.

00018 {
00019   return mask_;
00020 }

virtual int ACE_Notification_Strategy::notify ACE_Event_Handler  ,
ACE_Reactor_Mask    mask
[pure virtual]
 

Implemented in ACE_Reactor_Notification_Strategy.

virtual int ACE_Notification_Strategy::notify void    [pure virtual]
 

Implemented in ACE_Reactor_Notification_Strategy.

Referenced by ACE_Message_Queue< ACE_SYNCH_USE >::notify.


Member Data Documentation

ACE_Event_Handler* ACE_Notification_Strategy::eh_ [protected]
 

The event handler.

Definition at line 61 of file Notification_Strategy.h.

Referenced by event_handler.

ACE_Reactor_Mask ACE_Notification_Strategy::mask_ [protected]
 

The reactor mask.

Definition at line 64 of file Notification_Strategy.h.

Referenced by mask.


The documentation for this class was generated from the following files:
Generated on Mon Jun 16 12:51:05 2003 for ACE by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002