#include <Service_Object.h>
Collaboration diagram for ACE_Service_Object_Ptr:
Public Member Functions | |
ACE_Service_Object_Ptr (ACE_Service_Object *so) | |
Acquire ownership of the so. | |
~ACE_Service_Object_Ptr (void) | |
Release the held ACE_Service_Object by calling its <fini> hook. | |
ACE_Service_Object * | operator-> () |
Smart pointer to access the underlying ACE_Service_Object. | |
Private Attributes | |
ACE_Service_Object * | service_object_ |
Holds the service object until we're done. |
This class is similar to the Standard C++ Library class <auto_ptr>. It is used in conjunction with statically linked <ACE_Service_Objects>, as shown in the ./netsvcs/server/main.cpp example.
Definition at line 168 of file Service_Object.h.
ACE_BEGIN_VERSIONED_NAMESPACE_DECL ACE_INLINE ACE_Service_Object_Ptr::ACE_Service_Object_Ptr | ( | ACE_Service_Object * | so | ) |
Acquire ownership of the so.
Definition at line 6 of file Service_Object.inl.
00007 : service_object_ (so) 00008 { 00009 }
ACE_INLINE ACE_Service_Object_Ptr::~ACE_Service_Object_Ptr | ( | void | ) |
Release the held ACE_Service_Object by calling its <fini> hook.
Definition at line 11 of file Service_Object.inl.
References ACE_Shared_Object::fini(), and service_object_.
00012 { 00013 this->service_object_->fini (); 00014 delete this->service_object_; 00015 }
ACE_INLINE ACE_Service_Object * ACE_Service_Object_Ptr::operator-> | ( | ) |
Smart pointer to access the underlying ACE_Service_Object.
Definition at line 18 of file Service_Object.inl.
References service_object_.
00019 { 00020 return this->service_object_; 00021 }
Holds the service object until we're done.
Definition at line 183 of file Service_Object.h.
Referenced by operator->(), and ~ACE_Service_Object_Ptr().