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

# ACE_Singleton_Strategy Class Template Reference

Defines the interface for specifying a creation strategy for a <SVC_HANDLER> that always returns the same <SVC_HANDLER> (i.e., it's a Singleton). More...

`#include <Strategies_T.h>`

Inheritance diagram for ACE_Singleton_Strategy:

[legend]
Collaboration diagram for ACE_Singleton_Strategy:

[legend]
List of all members.

## Public Types
typedef ACE_Creation_Strategy< SVC_HANDLER > | base_type
## Public Methods
| ACE_Singleton_Strategy (SVC_HANDLER *=0, ACE_Thread_Manager *=0)
int | open (SVC_HANDLER *, ACE_Thread_Manager *=0)
virtual | ~ACE_Singleton_Strategy (void)
virtual int | make_svc_handler (SVC_HANDLER *&)
| Create a Singleton SVC_HANDLER by always returning the same SVC_HANDLER. Returns -1 on failure, else 0. More...
void | dump (void) const
| Dump the state of an object. More...
## Public Attributes
| ACE_ALLOC_HOOK_DECLARE
| Declare the dynamic allocation hooks. More...
## Protected Attributes
SVC_HANDLER * | svc_handler_
| Pointer to the Singleton svc_handler. More...
int | delete_svc_handler_
| Keep track of whether we need to delete the <SVC_HANDLER>. More...

## Detailed Description

### template<class SVC_HANDLER>
class ACE_Singleton_Strategy< SVC_HANDLER >

Defines the interface for specifying a creation strategy for a <SVC_HANDLER> that always returns the same <SVC_HANDLER> (i.e., it's a Singleton).

Note that this class takes over the ownership of the SVC_HANDLER passed into it as a parameter and it becomes responsible for deleting this object.

## Member Typedef Documentation

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

## Constructor & Destructor Documentation

template<class SVC_HANDLER>
ASYS_INLINE ACE_Singleton_Strategy< SVC_HANDLER >::ACE_Singleton_Strategy | ( | SVC_HANDLER * | sh = 0,
|  | ACE_Thread_Manager * | tm = 0
| ) |

template<class SVC_HANDLER>
ASYS_INLINE ACE_Singleton_Strategy< SVC_HANDLER >::~ACE_Singleton_Strategy | ( | void |  | ) | `[virtual]`

## Member Function Documentation

template<class SVC_HANDLER>
ACE_INLINE void ACE_Singleton_Strategy< SVC_HANDLER >::dump | ( | void |  | ) | const

| Dump the state of an object. Reimplemented from ACE_Creation_Strategy.

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

| Create a Singleton SVC_HANDLER by always returning the same SVC_HANDLER. Returns -1 on failure, else 0. Reimplemented from ACE_Creation_Strategy.

template<class SVC_HANDLER>
int ACE_Singleton_Strategy< SVC_HANDLER >::open | ( | SVC_HANDLER * | sh,
|  | ACE_Thread_Manager * | = 0
| ) |

## Member Data Documentation

template<class SVC_HANDLER>
ACE_Singleton_Strategy::ACE_ALLOC_HOOK_DECLARE

| Declare the dynamic allocation hooks. Reimplemented from ACE_Creation_Strategy.

template<class SVC_HANDLER>
int ACE_Singleton_Strategy::delete_svc_handler_`[protected]`

| Keep track of whether we need to delete the <SVC_HANDLER>.

template<class SVC_HANDLER>
SVC_HANDLER* ACE_Singleton_Strategy::svc_handler_`[protected]`

| Pointer to the Singleton svc_handler.

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

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