ACE_Dynamic_Service< TYPE > Class Template Reference

Provides a general interface to retrieve arbitrary objects from the ACE service repository. More...

#include <Dynamic_Service.h>

Inheritance diagram for ACE_Dynamic_Service< TYPE >:

Inheritance graph
[legend]
Collaboration diagram for ACE_Dynamic_Service< TYPE >:

Collaboration graph
[legend]
List of all members.

Static Public Member Functions

static TYPE * instance (const ACE_TCHAR *name)
 Return instance using name to search the Service_Repository.
static TYPE * instance (const ACE_TCHAR *name, bool no_global)
static TYPE * instance (const ACE_Service_Gestalt *repo, const ACE_TCHAR *name)
static TYPE * instance (const ACE_Service_Gestalt *repo, const ACE_TCHAR *name, bool no_global)

Private Member Functions

 ACE_Dynamic_Service ()
 ACE_Dynamic_Service (const ACE_Dynamic_Service &)
ACE_Dynamic_Serviceoperator= (const ACE_Dynamic_Service &)

Detailed Description

template<class TYPE>
class ACE_Dynamic_Service< TYPE >

Provides a general interface to retrieve arbitrary objects from the ACE service repository.

Uses "name" for lookup in the ACE service repository. Obtains the object and returns it as the appropriate type.

Definition at line 42 of file Dynamic_Service.h.


Constructor & Destructor Documentation

template<class TYPE>
ACE_Dynamic_Service< TYPE >::ACE_Dynamic_Service (  )  [private]

template<class TYPE>
ACE_Dynamic_Service< TYPE >::ACE_Dynamic_Service ( const ACE_Dynamic_Service< TYPE > &   )  [private]


Member Function Documentation

template<class TYPE>
TYPE * ACE_Dynamic_Service< TYPE >::instance ( const ACE_Service_Gestalt repo,
const ACE_TCHAR name,
bool  no_global 
) [static]

Reimplemented from ACE_Dynamic_Service_Base.

Definition at line 51 of file Dynamic_Service.cpp.

References ACE_Dynamic_Service_Base::instance().

00054 {
00055   ACE_Service_Object * svc_obj =
00056     static_cast<ACE_Service_Object *>
00057     (ACE_Dynamic_Service_Base::instance (conf, name, no_global));
00058   return dynamic_cast<TYPE *> (svc_obj);
00059 }

template<class TYPE>
TYPE * ACE_Dynamic_Service< TYPE >::instance ( const ACE_Service_Gestalt repo,
const ACE_TCHAR name 
) [static]

Definition at line 41 of file Dynamic_Service.cpp.

References ACE_Dynamic_Service_Base::instance().

00043 {
00044   ACE_Service_Object * svc_obj =
00045     static_cast<ACE_Service_Object *>
00046     (ACE_Dynamic_Service_Base::instance (conf, name, false));
00047   return dynamic_cast<TYPE *> (svc_obj);
00048 }

template<class TYPE>
TYPE * ACE_Dynamic_Service< TYPE >::instance ( const ACE_TCHAR name,
bool  no_global 
) [static]

Perform the default repo search, but optionally skip searching the global repo.

Reimplemented from ACE_Dynamic_Service_Base.

Definition at line 31 of file Dynamic_Service.cpp.

References ACE_Dynamic_Service_Base::instance().

00033 {
00034   ACE_Service_Object * svc_obj =
00035     static_cast<ACE_Service_Object *>
00036     (ACE_Dynamic_Service_Base::instance (name, no_global));
00037   return dynamic_cast<TYPE *> (svc_obj);
00038 }

template<class TYPE>
ACE_BEGIN_VERSIONED_NAMESPACE_DECL TYPE * ACE_Dynamic_Service< TYPE >::instance ( const ACE_TCHAR name  )  [static]

Return instance using name to search the Service_Repository.

Definition at line 22 of file Dynamic_Service.cpp.

References ACE_Dynamic_Service_Base::instance().

Referenced by ACE::Monitor_Control::Monitor_Base::add_to_registry().

00023 {
00024   ACE_Service_Object * svc_obj =
00025     static_cast<ACE_Service_Object *>
00026     (ACE_Dynamic_Service_Base::instance (name,false));
00027   return dynamic_cast<TYPE *> (svc_obj);
00028 }

template<class TYPE>
ACE_Dynamic_Service& ACE_Dynamic_Service< TYPE >::operator= ( const ACE_Dynamic_Service< TYPE > &   )  [private]


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