ACE_DLL_Strategy< SVC_HANDLER > Class Template Reference

Defines the interface for specifying a creation strategy for a SVC_HANDLER based on dynamic linking of the SVC_HANDLER. More...

#include <Strategies_T.h>

Inheritance diagram for ACE_DLL_Strategy< SVC_HANDLER >:

Inheritance graph
[legend]
Collaboration diagram for ACE_DLL_Strategy< SVC_HANDLER >:

Collaboration graph
[legend]

List of all members.

Public Types

typedef ACE_Creation_Strategy
< SVC_HANDLER > 
base_type

Public Member Functions

 ACE_DLL_Strategy (void)
 "Do-nothing" constructor.
 ACE_DLL_Strategy (const ACE_TCHAR dll_name[], const ACE_TCHAR factory_function[], const ACE_TCHAR svc_name[], ACE_Service_Repository *, ACE_Thread_Manager *=0)
int open (const ACE_TCHAR dll_name[], const ACE_TCHAR factory_function[], const ACE_TCHAR svc_name[], ACE_Service_Repository *, ACE_Thread_Manager *=0)
virtual int make_svc_handler (SVC_HANDLER *&)
void dump (void) const
 Dump the state of an object.

Public Attributes

 ACE_ALLOC_HOOK_DECLARE
 Declare the dynamic allocation hooks.

Protected Types

typedef ACE_Creation_Strategy
< SVC_HANDLER > 
inherited

Protected Attributes

ACE_TCHAR dll_name_ [MAXPATHLEN+1]
 Name of the DLL to dynamically link.
ACE_TCHAR factory_function_ [MAXPATHLEN+1]
ACE_TCHAR svc_name_ [MAXNAMELEN+1]
 Name of the service.
ACE_Service_Repositorysvc_rep_
 Pointer to the <Service_Repository>.


Detailed Description

template<class SVC_HANDLER>
class ACE_DLL_Strategy< SVC_HANDLER >

Defines the interface for specifying a creation strategy for a SVC_HANDLER based on dynamic linking of the SVC_HANDLER.

Member Typedef Documentation

template<class SVC_HANDLER>
typedef ACE_Creation_Strategy<SVC_HANDLER> ACE_DLL_Strategy< SVC_HANDLER >::base_type

template<class SVC_HANDLER>
typedef ACE_Creation_Strategy<SVC_HANDLER> ACE_DLL_Strategy< SVC_HANDLER >::inherited [protected]


Constructor & Destructor Documentation

template<class SVC_HANDLER>
ACE_INLINE ACE_DLL_Strategy< SVC_HANDLER >::ACE_DLL_Strategy ( void   )  [inline]

"Do-nothing" constructor.

template<class SVC_HANDLER>
ACE_INLINE ACE_DLL_Strategy< SVC_HANDLER >::ACE_DLL_Strategy ( const ACE_TCHAR  dll_name[],
const ACE_TCHAR  factory_function[],
const ACE_TCHAR  svc_name[],
ACE_Service_Repository svc_rep,
ACE_Thread_Manager thr_mgr = 0 
) [inline]

Initialize the DLL strategy based upon the service's DLL information contained in the <svc_dll_info> string.


Member Function Documentation

template<class SVC_HANDLER>
int ACE_DLL_Strategy< SVC_HANDLER >::open ( const ACE_TCHAR  dll_name[],
const ACE_TCHAR  factory_function[],
const ACE_TCHAR  svc_name[],
ACE_Service_Repository svc_rep,
ACE_Thread_Manager thr_mgr = 0 
) [inline]

Initialize the DLL strategy based upon the service's DLL information contained in the <svc_dll_info> string.

template<class SVC_HANDLER>
int ACE_DLL_Strategy< SVC_HANDLER >::make_svc_handler ( SVC_HANDLER *&  sh  )  [inline, virtual]

Create a SVC_HANDLER by dynamically linking it from a DLL. Returns -1 on failure, else 0.

Reimplemented from ACE_Creation_Strategy< SVC_HANDLER >.

template<class SVC_HANDLER>
void ACE_DLL_Strategy< SVC_HANDLER >::dump ( void   )  const [inline]

Dump the state of an object.

Reimplemented from ACE_Creation_Strategy< SVC_HANDLER >.


Member Data Documentation

template<class SVC_HANDLER>
ACE_DLL_Strategy< SVC_HANDLER >::ACE_ALLOC_HOOK_DECLARE

Declare the dynamic allocation hooks.

Reimplemented from ACE_Creation_Strategy< SVC_HANDLER >.

template<class SVC_HANDLER>
ACE_TCHAR ACE_DLL_Strategy< SVC_HANDLER >::dll_name_[MAXPATHLEN+1] [protected]

Name of the DLL to dynamically link.

template<class SVC_HANDLER>
ACE_TCHAR ACE_DLL_Strategy< SVC_HANDLER >::factory_function_[MAXPATHLEN+1] [protected]

Name of the factory function in the shared library to use to obtain a pointer to the new SVC_HANDLER.

template<class SVC_HANDLER>
ACE_TCHAR ACE_DLL_Strategy< SVC_HANDLER >::svc_name_[MAXNAMELEN+1] [protected]

Name of the service.

template<class SVC_HANDLER>
ACE_Service_Repository* ACE_DLL_Strategy< SVC_HANDLER >::svc_rep_ [protected]

Pointer to the <Service_Repository>.


The documentation for this class was generated from the following files:

Generated on Wed Apr 23 02:38:52 2008 for ACE by  doxygen 1.5.5