ACE_Event_Handler_var Class Reference

Auto pointer like class for Event Handlers. More...

#include <Event_Handler.h>

Collaboration diagram for ACE_Event_Handler_var:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 ACE_Event_Handler_var (void)
 Default constructor.
 ACE_Event_Handler_var (ACE_Event_Handler *p)
 Construct with a handler.
 ACE_Event_Handler_var (const ACE_Event_Handler_var &b)
 Copy constructor.
 ~ACE_Event_Handler_var (void)
 Destructor.
ACE_Event_Handler_varoperator= (ACE_Event_Handler *p)
 Assignment to a handler.
ACE_Event_Handler_varoperator= (const ACE_Event_Handler_var &b)
 Assignment to a ACE_Event_Handler_var.
ACE_Event_Handleroperator-> () const
 Overloaded "->".
ACE_Event_Handlerhandler (void) const
 Access the handler.
ACE_Event_Handlerrelease (void)
 Release the handler.
void reset (ACE_Event_Handler *p=0)
 Reset the handler.

Private Attributes

ACE_Event_Handlerptr_
 Handler.

Detailed Description

Auto pointer like class for Event Handlers.

Used to manage lifecycle of handlers. This class calls ACE_Event_Handler::remove_reference() in its destructor.

Definition at line 315 of file Event_Handler.h.


Constructor & Destructor Documentation

ACE_Event_Handler_var::ACE_Event_Handler_var ( void   ) 

Default constructor.

Definition at line 306 of file Event_Handler.cpp.

00307   : ptr_ (0)
00308 {
00309 }

ACE_Event_Handler_var::ACE_Event_Handler_var ( ACE_Event_Handler p  ) 

Construct with a handler.

Definition at line 311 of file Event_Handler.cpp.

00312   : ptr_ (p)
00313 {
00314 }

ACE_Event_Handler_var::ACE_Event_Handler_var ( const ACE_Event_Handler_var b  ) 

Copy constructor.

Definition at line 316 of file Event_Handler.cpp.

References ACE_Event_Handler::add_reference(), and ptr_.

00317   : ptr_ (b.ptr_)
00318 {
00319   if (this->ptr_ != 0)
00320     {
00321       this->ptr_->add_reference ();
00322     }
00323 }

ACE_Event_Handler_var::~ACE_Event_Handler_var ( void   ) 

Destructor.

Definition at line 325 of file Event_Handler.cpp.

References ptr_, and ACE_Event_Handler::remove_reference().

00326 {
00327   if (this->ptr_ != 0)
00328     {
00329       ACE_Errno_Guard eguard (errno);
00330       this->ptr_->remove_reference ();
00331     }
00332 }


Member Function Documentation

ACE_Event_Handler * ACE_Event_Handler_var::handler ( void   )  const

Access the handler.

Definition at line 362 of file Event_Handler.cpp.

References ptr_.

00363 {
00364   return this->ptr_;
00365 }

ACE_Event_Handler * ACE_Event_Handler_var::operator-> (  )  const

Overloaded "->".

Definition at line 356 of file Event_Handler.cpp.

References ptr_.

00357 {
00358   return this->ptr_;
00359 }

ACE_Event_Handler_var & ACE_Event_Handler_var::operator= ( const ACE_Event_Handler_var b  ) 

Assignment to a ACE_Event_Handler_var.

Definition at line 347 of file Event_Handler.cpp.

References ptr_.

00348 {
00349   ACE_Event_Handler_var tmp (b);
00350   std::swap (this->ptr_, tmp.ptr_);
00351 
00352   return *this;
00353 }

ACE_Event_Handler_var & ACE_Event_Handler_var::operator= ( ACE_Event_Handler p  ) 

Assignment to a handler.

Definition at line 335 of file Event_Handler.cpp.

References ptr_.

00336 {
00337   if (this->ptr_ != p)
00338     {
00339       ACE_Event_Handler_var tmp (p);
00340       std::swap (this->ptr_, tmp.ptr_);
00341     }
00342 
00343   return *this;
00344 }

ACE_Event_Handler * ACE_Event_Handler_var::release ( void   ) 

Release the handler.

Definition at line 368 of file Event_Handler.cpp.

References ptr_.

Referenced by ACE_Select_Reactor_Notify::notify().

00369 {
00370   ACE_Event_Handler * const old = this->ptr_;
00371   this->ptr_ = 0;
00372   return old;
00373 }

void ACE_Event_Handler_var::reset ( ACE_Event_Handler p = 0  ) 

Reset the handler.

Definition at line 376 of file Event_Handler.cpp.

00377 {
00378   *this = p;
00379 }


Member Data Documentation

ACE_Event_Handler* ACE_Event_Handler_var::ptr_ [private]

Handler.

Definition at line 353 of file Event_Handler.h.

Referenced by ACE_Event_Handler_var(), handler(), operator->(), operator=(), release(), and ~ACE_Event_Handler_var().


The documentation for this class was generated from the following files:
Generated on Tue Feb 2 17:35:06 2010 for ACE by  doxygen 1.4.7