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

# ACE_Service_Type_Impl Class Reference

The abstract base class of the hierarchy that defines the contents of the <ACE_Service_Repository>. The subclasses of this class allow the configuration of <ACE_Service_Objects>, <ACE_Modules>, and <ACE_Streams>. More...

`#include <Service_Types.h>`

Inheritance diagram for ACE_Service_Type_Impl:

[legend]
List of all members.

## Public Methods
| ACE_Service_Type_Impl (void *object, const ACE_TCHAR *s_name, u_int flags=0, ACE_Service_Object_Exterminator gobbler=0)
virtual | ~ACE_Service_Type_Impl (void)
virtual int | suspend (void) const=0
virtual int | resume (void) const=0
virtual int | init (int argc, ACE_TCHAR *argv[]) const=0
virtual int | fini (void) const
virtual int | info (ACE_TCHAR **str, size_t len) const=0
void * | object (void) const
| The pointer to the service. More...
const ACE_TCHAR * | name (void) const
| Get the name of the service. More...
void | name (const ACE_TCHAR *)
| Set the name of the service. 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
const ACE_TCHAR * | name_
| Name of the service. More...
void * | obj_
| Pointer to object that implements the service. This actually points to an <ACE_Service_Object>, <ACE_Module>, or <ACE_Stream>. More...
ACE_Service_Object_Exterminator | gobbler_
| Destroy function to deallocate obj_. More...
u_int | flags_
| Flags that control serivce behavior (particularly deletion). More...

## Detailed Description

The abstract base class of the hierarchy that defines the contents of the <ACE_Service_Repository>. The subclasses of this class allow the configuration of <ACE_Service_Objects>, <ACE_Modules>, and <ACE_Streams>.

This class provides the root of the implementation hierarchy of the "Bridge" pattern. It maintains a pointer to the appropriate type of service implementation, i.e., <ACE_Service_Object>, <ACE_Module>, or <ACE_Stream>.

## Constructor & Destructor Documentation

ACE_Service_Type_Impl::ACE_Service_Type_Impl | ( | void * | so,
|  | const ACE_TCHAR * | s_name,
|  | u_int | f = 0,
|  | ACE_Service_Object_Exterminator | gobbler = 0
| ) |

ACE_Service_Type_Impl::~ACE_Service_Type_Impl | ( | void |  | ) | `[virtual]`

## Member Function Documentation

void ACE_Service_Type_Impl::dump | ( | void |  | ) | const

| Dump the state of an object. Reimplemented in ACE_Module_Type, and ACE_Stream_Type.

int ACE_Service_Type_Impl::fini | ( | void |  | ) | const`[virtual]`

| Reimplemented in ACE_Service_Object_Type, ACE_Module_Type, and ACE_Stream_Type.

virtual int ACE_Service_Type_Impl::info | ( | ACE_TCHAR ** | str,
|  | size_t | len
| ) | const`[pure virtual]`

| Reimplemented in ACE_Service_Object_Type, ACE_Module_Type, and ACE_Stream_Type.

virtual int ACE_Service_Type_Impl::init | ( | int | argc,
|  | ACE_TCHAR * | argv[]
| ) | const`[pure virtual]`

| Reimplemented in ACE_Service_Object_Type, ACE_Module_Type, and ACE_Stream_Type.

ACE_INLINE void ACE_Service_Type_Impl::name | ( | const ACE_TCHAR * | n | ) |

| Set the name of the service.

ACE_INLINE const ACE_TCHAR * ACE_Service_Type_Impl::name | ( | void |  | ) | const

| Get the name of the service.

ACE_INLINE void * ACE_Service_Type_Impl::object | ( | void |  | ) | const

| The pointer to the service.

virtual int ACE_Service_Type_Impl::resume | ( | void |  | ) | const`[pure virtual]`

| Reimplemented in ACE_Service_Object_Type, ACE_Module_Type, and ACE_Stream_Type.

virtual int ACE_Service_Type_Impl::suspend | ( | void |  | ) | const`[pure virtual]`

| Reimplemented in ACE_Service_Object_Type, ACE_Module_Type, and ACE_Stream_Type.

## Member Data Documentation

ACE_Service_Type_Impl::ACE_ALLOC_HOOK_DECLARE

| Declare the dynamic allocation hooks. Reimplemented in ACE_Module_Type, and ACE_Stream_Type.

u_int ACE_Service_Type_Impl::flags_`[protected]`

| Flags that control serivce behavior (particularly deletion).

ACE_Service_Object_Exterminator ACE_Service_Type_Impl::gobbler_`[protected]`

| Destroy function to deallocate obj_.

const ACE_TCHAR* ACE_Service_Type_Impl::name_`[protected]`

| Name of the service.

void* ACE_Service_Type_Impl::obj_`[protected]`

| Pointer to object that implements the service. This actually points to an <ACE_Service_Object>, <ACE_Module>, or <ACE_Stream>.

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

- Service_Types.h
- Service_Types.cpp
- Service_Types.i