ACE  6.3.4
Public Types | Public Member Functions | Public Attributes | Private Attributes | List of all members
ACE_Service_Type Class Reference

Keeps track of information related to the various ACE_Service_Type_Impl subclasses. More...

#include <Service_Object.h>

Collaboration diagram for ACE_Service_Type:
Collaboration graph
[legend]

Public Types

enum  { DELETE_OBJ = 1, DELETE_THIS = 2 }
 
enum  { SERVICE_OBJECT = ACE_SVC_OBJ_T, MODULE = ACE_MODULE_T, STREAM = ACE_STREAM_T, INVALID_TYPE = -1 }
 

Public Member Functions

 ACE_Service_Type (const ACE_TCHAR *n, ACE_Service_Type_Impl *o, const ACE_DLL &dll, bool active)
 
 ACE_Service_Type (const ACE_TCHAR *n, ACE_Service_Type_Impl *o, ACE_SHLIB_HANDLE handle, bool active)
 
 ~ACE_Service_Type (void)
 
const ACE_TCHARname (void) const
 
void name (const ACE_TCHAR *)
 
const ACE_Service_Type_Impltype (void) const
 
void type (const ACE_Service_Type_Impl *, bool active=true)
 
bool is_forward_declaration (void) const
 Is this just a stub for the real thing? More...
 
int suspend (void) const
 
int resume (void) const
 
bool active (void) const
 
void active (bool turnon)
 
int fini (void)
 Calls fini on type_. More...
 
bool fini_called (void) const
 Check if the service has been fini'ed. More...
 
void dump (void) const
 Dump the state of an object. More...
 
const ACE_DLLdll (void) const
 Get to the DLL's implentation. More...
 
void dll (const ACE_DLL &)
 Sets the DLL. More...
 

Public Attributes

 ACE_ALLOC_HOOK_DECLARE
 Declare the dynamic allocation hooks. More...
 

Private Attributes

const ACE_TCHARname_
 Humanly readible name of svc. More...
 
const ACE_Service_Type_Impltype_
 Pointer to C++ object that implements the svc. More...
 
ACE_DLL dll_
 
bool active_
 true if svc is currently active, otherwise false. More...
 
bool fini_already_called_
 true if fini on type_ has already been called, otherwise false. More...
 

Detailed Description

Keeps track of information related to the various ACE_Service_Type_Impl subclasses.

This class acts as the interface of the "Bridge" pattern.

Member Enumeration Documentation

anonymous enum
Enumerator
DELETE_OBJ 

Delete the payload object.

DELETE_THIS 

Delete the enclosing object.

anonymous enum
Enumerator
SERVICE_OBJECT 
MODULE 
STREAM 
INVALID_TYPE 

Constructor & Destructor Documentation

ACE_Service_Type::ACE_Service_Type ( const ACE_TCHAR n,
ACE_Service_Type_Impl o,
const ACE_DLL dll,
bool  active 
)
ACE_Service_Type::ACE_Service_Type ( const ACE_TCHAR n,
ACE_Service_Type_Impl o,
ACE_SHLIB_HANDLE  handle,
bool  active 
)
ACE_Service_Type::~ACE_Service_Type ( void  )

Member Function Documentation

bool ACE_Service_Type::active ( void  ) const
inline
void ACE_Service_Type::active ( bool  turnon)
inline
const ACE_DLL & ACE_Service_Type::dll ( void  ) const
inline

Get to the DLL's implentation.

void ACE_Service_Type::dll ( const ACE_DLL adll)
inline

Sets the DLL.

void ACE_Service_Type::dump ( void  ) const

Dump the state of an object.

int ACE_Service_Type::fini ( void  )

Calls fini on type_.

bool ACE_Service_Type::fini_called ( void  ) const
inline

Check if the service has been fini'ed.

bool ACE_Service_Type::is_forward_declaration ( void  ) const

Is this just a stub for the real thing?

const ACE_TCHAR * ACE_Service_Type::name ( void  ) const
inline
void ACE_Service_Type::name ( const ACE_TCHAR n)
int ACE_Service_Type::resume ( void  ) const
int ACE_Service_Type::suspend ( void  ) const
const ACE_Service_Type_Impl * ACE_Service_Type::type ( void  ) const
inline
void ACE_Service_Type::type ( const ACE_Service_Type_Impl o,
bool  active = true 
)
inline

Member Data Documentation

ACE_Service_Type::ACE_ALLOC_HOOK_DECLARE

Declare the dynamic allocation hooks.

bool ACE_Service_Type::active_
private

true if svc is currently active, otherwise false.

ACE_DLL ACE_Service_Type::dll_
mutableprivate

ACE_DLL representing the shared object file (non-zero if dynamically linked).

bool ACE_Service_Type::fini_already_called_
private

true if fini on type_ has already been called, otherwise false.

const ACE_TCHAR* ACE_Service_Type::name_
private

Humanly readible name of svc.

const ACE_Service_Type_Impl* ACE_Service_Type::type_
private

Pointer to C++ object that implements the svc.


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