#include <ORB_Core_Auto_Ptr.h>
Collaboration diagram for TAO_ORB_Core_Auto_Ptr:
Public Member Functions | |
Initialization and termination methods | |
TAO_ORB_Core_Auto_Ptr (TAO_ORB_Core *p=0) | |
TAO_ORB_Core_Auto_Ptr (TAO_ORB_Core_Auto_Ptr &ap) | |
TAO_ORB_Core_Auto_Ptr & | operator= (TAO_ORB_Core_Auto_Ptr &rhs) |
~TAO_ORB_Core_Auto_Ptr (void) | |
Accessor methods. | |
TAO_ORB_Core & | operator * () const |
TAO_ORB_Core * | get (void) const |
TAO_ORB_Core * | release (void) |
void | reset (TAO_ORB_Core *p=0) |
TAO_ORB_Core * | operator-> () const |
Protected Attributes | |
TAO_ORB_Core * | p_ |
This class is used as an aid to make ORB initialization exception safe. It ensures that the ORB core is deallocated through its reference counting mechanism if an exception is thrown.
Definition at line 40 of file ORB_Core_Auto_Ptr.h.
|
Definition at line 9 of file ORB_Core_Auto_Ptr.inl.
00010 : p_ (p) 00011 { 00012 } |
|
Definition at line 35 of file ORB_Core_Auto_Ptr.inl.
|
|
Definition at line 14 of file ORB_Core_Auto_Ptr.cpp. References TAO_ORB_Core::_decr_refcnt(), and get().
00015 { 00016 if (this->get () != 0) 00017 { 00018 this->get ()->_decr_refcnt (); 00019 } 00020 } |
|
Definition at line 15 of file ORB_Core_Auto_Ptr.inl. Referenced by TAO_ORB_Core::create_object(), TAO_ORB_Core::initialize_object_i(), operator *(), operator->(), TAO_Stub::orb_core(), CORBA::ORB_init(), reset(), TAO_Stub::TAO_Stub(), and ~TAO_ORB_Core_Auto_Ptr().
00016 { 00017 return this->p_; 00018 } |
|
Definition at line 53 of file ORB_Core_Auto_Ptr.inl. References get().
00054 { 00055 // @@ Potential problem if this->p_ is zero! 00056 return *this->get (); 00057 } |
|
Definition at line 29 of file ORB_Core_Auto_Ptr.inl. References get().
00030 { 00031 return this->get (); 00032 } |
|
Definition at line 41 of file ORB_Core_Auto_Ptr.inl. References release(), and reset().
|
|
Definition at line 21 of file ORB_Core_Auto_Ptr.inl. Referenced by operator=().
00022 { 00023 TAO_ORB_Core *old = this->p_; 00024 this->p_ = 0; 00025 return old; 00026 } |
|
Definition at line 23 of file ORB_Core_Auto_Ptr.cpp. References TAO_ORB_Core::_decr_refcnt(), and get(). Referenced by operator=(), CORBA::ORB_init(), and TAO_Stub::TAO_Stub().
00024 { 00025 if (this->get () != p && this->get () != 0) 00026 { 00027 this->get ()->_decr_refcnt (); 00028 } 00029 00030 this->p_ = p; 00031 } |
|
Definition at line 67 of file ORB_Core_Auto_Ptr.h. |