# ACE_Accept_Strategy< SVC_HANDLER, > Class Template Reference

Defines the interface for specifying a passive connection acceptance strategy for a SVC_HANDLER. More...

`#include <Strategies_T.h>`

Collaboration diagram for ACE_Accept_Strategy< SVC_HANDLER, >:

[legend]
List of all members.

## Public Types

typedef ACE_PEER_ACCEPTOR_ADDR | addr_type
typedef ACE_PEER_ACCEPTOR | acceptor_type
typedef SVC_HANDLER | handler_type
typedef ACE_TYPENAME SVC_HANDLER::stream_type | stream_type

## Public Member Functions

| ACE_Accept_Strategy (ACE_Reactor *reactor=ACE_Reactor::instance())
| Default constructor.
| ACE_Accept_Strategy (const ACE_PEER_ACCEPTOR_ADDR &local_addr, int restart=0, ACE_Reactor *reactor=ACE_Reactor::instance())
| Initialize the <peer_acceptor_> with <local_addr>.
virtual int | open (const ACE_PEER_ACCEPTOR_ADDR &local_addr, int reuse_addr=0)
virtual ACE_HANDLE | get_handle (void) const
| Return the underlying ACE_HANDLE of the <peer_acceptor_>.
virtual ACE_PEER_ACCEPTOR & | acceptor (void) const
| Return a reference to the <peer_acceptor_>.
virtual | ~ACE_Accept_Strategy (void)
virtual int | accept_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 Attributes

ACE_PEER_ACCEPTOR | peer_acceptor_
| Factory that establishes connections passively.
ACE_Reactor * | reactor_
| Pointer to the reactor used by the Acceptor.
int | reuse_addr_
| Needed to reopen the socket if <accept> fails.
ACE_PEER_ACCEPTOR_ADDR | peer_acceptor_addr_
| Needed to reopen the socket if <accept> fails.

## Detailed Description

### template<class SVC_HANDLER, ACE_PEER_ACCEPTOR_1>
class ACE_Accept_Strategy< SVC_HANDLER, >

Defines the interface for specifying a passive connection acceptance strategy for a SVC_HANDLER.

This class provides a strategy that manages passive connection acceptance of a client.

## Member Typedef Documentation

template<class SVC_HANDLER, ACE_PEER_ACCEPTOR_1 >
typedef ACE_PEER_ACCEPTOR ACE_Accept_Strategy< SVC_HANDLER, >::acceptor_type

template<class SVC_HANDLER, ACE_PEER_ACCEPTOR_1 >
typedef ACE_PEER_ACCEPTOR_ADDR ACE_Accept_Strategy< SVC_HANDLER, >::addr_type

template<class SVC_HANDLER, ACE_PEER_ACCEPTOR_1 >
typedef SVC_HANDLER ACE_Accept_Strategy< SVC_HANDLER, >::handler_type

template<class SVC_HANDLER, ACE_PEER_ACCEPTOR_1 >
typedef ACE_TYPENAME SVC_HANDLER::stream_type ACE_Accept_Strategy< SVC_HANDLER, >::stream_type

## Constructor & Destructor Documentation

template<class SVC_HANDLER, ACE_PEER_ACCEPTOR_1 >
ACE_Accept_Strategy< SVC_HANDLER, >::ACE_Accept_Strategy | ( | ACE_Reactor * | reactor = `ACE_Reactor::instance()` | ) |

| Default constructor.

template<class SVC_HANDLER, ACE_PEER_ACCEPTOR_1 >
ACE_Accept_Strategy< SVC_HANDLER, >::ACE_Accept_Strategy | ( | const ACE_PEER_ACCEPTOR_ADDR & | local_addr,
|  | int | restart = `0`,
|  | ACE_Reactor * | reactor = `ACE_Reactor::instance()`
| ) |

| Initialize the <peer_acceptor_> with <local_addr>.

template<class SVC_HANDLER, ACE_PEER_ACCEPTOR_1 >
virtual ACE_Accept_Strategy< SVC_HANDLER, >::~ACE_Accept_Strategy | ( | void |  | ) | `[virtual]`

## Member Function Documentation

template<class SVC_HANDLER, ACE_PEER_ACCEPTOR_1 >
virtual int ACE_Accept_Strategy< SVC_HANDLER, >::accept_svc_handler | ( | SVC_HANDLER * |  | ) | `[virtual]`

| The default behavior delegates to the <accept> method of the PEER_ACCEPTOR.

template<class SVC_HANDLER, ACE_PEER_ACCEPTOR_1 >
virtual ACE_PEER_ACCEPTOR& ACE_Accept_Strategy< SVC_HANDLER, >::acceptor | ( | void |  | ) | const`[virtual]`

| Return a reference to the <peer_acceptor_>.

template<class SVC_HANDLER, ACE_PEER_ACCEPTOR_1 >
void ACE_Accept_Strategy< SVC_HANDLER, >::dump | ( | void |  | ) | const

| Dump the state of an object.

template<class SVC_HANDLER, ACE_PEER_ACCEPTOR_1 >
virtual ACE_HANDLE ACE_Accept_Strategy< SVC_HANDLER, >::get_handle | ( | void |  | ) | const`[virtual]`

| Return the underlying ACE_HANDLE of the <peer_acceptor_>.

template<class SVC_HANDLER, ACE_PEER_ACCEPTOR_1 >
virtual int ACE_Accept_Strategy< SVC_HANDLER, >::open | ( | const ACE_PEER_ACCEPTOR_ADDR & | local_addr,
|  | int | reuse_addr = `0`
| ) | `[virtual]`

| Initialize the <peer_acceptor_> with <local_addr>, indicating whether to <reuse_addr> if it's already in use.

## Member Data Documentation

template<class SVC_HANDLER, ACE_PEER_ACCEPTOR_1 >
ACE_Accept_Strategy< SVC_HANDLER, >::ACE_ALLOC_HOOK_DECLARE

| Declare the dynamic allocation hooks.

template<class SVC_HANDLER, ACE_PEER_ACCEPTOR_1 >
ACE_PEER_ACCEPTOR ACE_Accept_Strategy< SVC_HANDLER, >::peer_acceptor_`[protected]`

| Factory that establishes connections passively.

template<class SVC_HANDLER, ACE_PEER_ACCEPTOR_1 >
ACE_PEER_ACCEPTOR_ADDR ACE_Accept_Strategy< SVC_HANDLER, >::peer_acceptor_addr_`[protected]`

| Needed to reopen the socket if <accept> fails.

template<class SVC_HANDLER, ACE_PEER_ACCEPTOR_1 >
ACE_Reactor* ACE_Accept_Strategy< SVC_HANDLER, >::reactor_`[protected]`

| Pointer to the reactor used by the Acceptor.

template<class SVC_HANDLER, ACE_PEER_ACCEPTOR_1 >
int ACE_Accept_Strategy< SVC_HANDLER, >::reuse_addr_`[protected]`

| Needed to reopen the socket if <accept> fails.

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

- Strategies_T.h