Main Page Class Hierarchy Alphabetical List Compound List File List Compound Members File Members Related Pages

# ACE_Creation_Strategy Class Template Reference

Defines the interface for specifying a creation strategy for a SVC_HANDLER. More...

`#include <Strategies_T.h>`

Inheritance diagram for ACE_Creation_Strategy

[legend]
Collaboration diagram for ACE_Creation_Strategy:

[legend]
List of all members.

## Public Methods
| ACE_Creation_Strategy (ACE_Thread_Manager * = 0)
| Default constructor.
int | open (ACE_Thread_Manager * = 0)
| A <Thread_Manager> is useful when creating active objects.
virtual | ~ACE_Creation_Strategy (void)
virtual int | make_svc_handler (SVC_HANDLER *&sh)
void | dump (void) const
| Dump the state of an object.
## Public Attributes
| ACE_ALLOC_HOOK_DECLARE
| Declare the dynamic allocation hooks.
## Protected Attributes
ACE_Thread_Manager* | thr_mgr_
| Pointer to a thread manager.

## Detailed Description

### template<class SVC_HANDLER> template class ACE_Creation_Strategy

Defines the interface for specifying a creation strategy for a SVC_HANDLER.

The default behavior is to make a new SVC_HANDLER. However, subclasses can override this strategy to perform SVC_HANDLER creation in any way that they like (such as creating subclass instances of SVC_HANDLER, using a singleton, dynamically linking the handler, etc.).

## Constructor & Destructor Documentation

template<classSVC_HANDLER>
ASYS_INLINE ACE_Creation_Strategy< SVC_HANDLER >::ACE_Creation_Strategy<SVC_HANDLER> ( | ACE_Thread_Manager * thr_mgr = 0 )

| Default constructor.

template<classSVC_HANDLER>
ASYS_INLINE ACE_Creation_Strategy< SVC_HANDLER >::~ACE_Creation_Strategy<SVC_HANDLER> ( | void )`[virtual]`

## Member Function Documentation

template<classSVC_HANDLER>
void ACE_Creation_Strategy<SVC_HANDLER>::dump ( | void ) const

| Dump the state of an object. Reimplemented in ACE_Singleton_Strategy, and ACE_DLL_Strategy.

template<classSVC_HANDLER>
ASYS_INLINE int ACE_Creation_Strategy< SVC_HANDLER >::make_svc_handler ( | SVC_HANDLER *& sh )`[virtual]`

| Create a SVC_HANDLER with the appropriate creation strategy. The default behavior of this method is to make a new <SVC_HANDLER> if <sh> == 0 (passing in the <Thread_Manager>), else <sh> is unchanged. Returns -1 on failure, else 0. Reimplemented in ACE_Singleton_Strategy, ACE_DLL_Strategy, and ACE_NOOP_Creation_Strategy.

template<classSVC_HANDLER>
ASYS_INLINE int ACE_Creation_Strategy< SVC_HANDLER >::open ( | ACE_Thread_Manager * thr_mgr = 0 )

| A <Thread_Manager> is useful when creating active objects.

## Member Data Documentation

template<classSVC_HANDLER>
ACE_Creation_Strategy<SVC_HANDLER>::ACE_ALLOC_HOOK_DECLARE

| Declare the dynamic allocation hooks. Reimplemented in ACE_Singleton_Strategy, and ACE_DLL_Strategy.

template<classSVC_HANDLER>
ACE_Thread_Manager * ACE_Creation_Strategy<SVC_HANDLER>::thr_mgr_`[protected]`

| Pointer to a thread manager.

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

- Strategies_T.h
- Strategies_T.cpp
- Strategies_T.i