Main Page | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members | File Members | Related Pages

# TAO_Advanced_Resource_Factory Class Reference

TAO's default resource factory. More...

`#include <advanced_resource.h>`

Inheritance diagram for TAO_Advanced_Resource_Factory:

[legend]
Collaboration diagram for TAO_Advanced_Resource_Factory:

[legend]
List of all members.

## Public Types
enum | Allocator_Lock_Type { TAO_ALLOCATOR_NULL_LOCK, TAO_ALLOCATOR_THREAD_LOCK }
| Type of lock used for the allocators. More...
enum | { TAO_REACTOR_SELECT_MT = 1, TAO_REACTOR_SELECT_ST = 2, TAO_REACTOR_WFMO = 3, TAO_REACTOR_MSGWFMO = 4, TAO_REACTOR_TP = 5 }
| Type of Reactor. More...
enum | { TAO_THREAD_QUEUE_NOT_SET, TAO_THREAD_QUEUE_FIFO, TAO_THREAD_QUEUE_LIFO }
| Thread queueing Strategy. More...
## Public Member Functions
| TAO_Advanced_Resource_Factory (void)
| Constructor.
virtual | ~TAO_Advanced_Resource_Factory (void)
| Destructor.
virtual int | init (int argc, ACE_TCHAR *argv[])
| Dynamic linking hook.
virtual TAO_Connection_Purging_Strategy * | create_purging_strategy (void)
virtual TAO_LF_Strategy * | create_lf_strategy (void)
Resource Retrieval
virtual int | init_protocol_factories (void)
virtual ACE_Allocator * | input_cdr_dblock_allocator (void)
virtual ACE_Allocator * | input_cdr_buffer_allocator (void)
virtual ACE_Allocator * | input_cdr_msgblock_allocator (void)
virtual ACE_Allocator * | amh_response_handler_allocator (void)
virtual ACE_Allocator * | ami_response_handler_allocator (void)
virtual int | input_cdr_allocator_type_locked (void)
virtual TAO_ProtocolFactorySet * | get_protocol_factories (void)
## Protected Member Functions
virtual ACE_Reactor_Impl * | allocate_reactor_impl (void) const
| Obtain the reactor implementation.
void | report_option_value_error (const ACE_TCHAR *option_name, const ACE_TCHAR *option_value)
void | report_unsupported_error (const ACE_TCHAR *option_name)
virtual int | load_default_protocols (void)
## Protected Attributes
TAO_ProtocolFactorySet | protocol_factories_
| List of loaded protocol factories.
int | reactor_registry_type_
| The type of reactor registry.
int | reactor_type_
| Flag indicating which kind of reactor we should use.
int | threadqueue_type_
Allocator_Lock_Type | cdr_allocator_type_
| The type of CDR allocators.
Allocator_Lock_Type | amh_response_handler_allocator_lock_type_
| Type of lock used by AMH response handler allocator.
Allocator_Lock_Type | ami_response_handler_allocator_lock_type_
| Type of lock used by AMI response handler allocator.

## Detailed Description

TAO's default resource factory.

Using a <{resource source specifier}> as a discriminator, the factory can return resource instances which are, e.g., global, stored in thread-specific storage, stored in shared memory, etc.

## Member Enumeration Documentation

anonymous enum

  | Type of Reactor. Enumeration values:
  TAO_REACTOR_SELECT_MT | Use ACE_Token.
  TAO_REACTOR_SELECT_ST | Use ACE_Noop_Token.
  TAO_REACTOR_WFMO |
  TAO_REACTOR_MSGWFMO |
  TAO_REACTOR_TP |

anonymous enum

  | Thread queueing Strategy. Enumeration values:
  TAO_THREAD_QUEUE_NOT_SET | Not set, use LIFO.
  TAO_THREAD_QUEUE_FIFO | FIFO, first-in-first-out.
  TAO_THREAD_QUEUE_LIFO | LIFO, last-in-first-out (default).

enum TAO_Advanced_Resource_Factory::Allocator_Lock_Type

  | Type of lock used for the allocators. Enumeration values:
  TAO_ALLOCATOR_NULL_LOCK |
  TAO_ALLOCATOR_THREAD_LOCK |

## Constructor & Destructor Documentation

TAO_Advanced_Resource_Factory::TAO_Advanced_Resource_Factory | ( | void |  | ) |

| Constructor.

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

| Destructor.

## Member Function Documentation

ACE_Reactor_Impl * TAO_Advanced_Resource_Factory::allocate_reactor_impl | ( | void |  | ) | const`[protected, virtual]`

| Obtain the reactor implementation. Reimplemented from TAO_Default_Resource_Factory.

ACE_Allocator * TAO_Advanced_Resource_Factory::amh_response_handler_allocator | ( | void |  | ) | `[virtual]`

| Reimplemented from TAO_Default_Resource_Factory.

ACE_Allocator * TAO_Advanced_Resource_Factory::ami_response_handler_allocator | ( | void |  | ) | `[virtual]`

| Reimplemented from TAO_Default_Resource_Factory.

TAO_LF_Strategy * TAO_Advanced_Resource_Factory::create_lf_strategy | ( | void |  | ) | `[virtual]`

| Reimplemented from TAO_Default_Resource_Factory.

TAO_Connection_Purging_Strategy * TAO_Advanced_Resource_Factory::create_purging_strategy | ( | void |  | ) | `[virtual]`

| Reimplemented from TAO_Default_Resource_Factory.

TAO_ProtocolFactorySet * TAO_Advanced_Resource_Factory::get_protocol_factories | ( | void |  | ) | `[virtual]`

| Reimplemented from TAO_Default_Resource_Factory.

virtual int TAO_Advanced_Resource_Factory::init | ( | int | argc,
|  | ACE_TCHAR * | argv[]
| ) | `[virtual]`

| Dynamic linking hook. Reimplemented from TAO_Default_Resource_Factory.

int TAO_Advanced_Resource_Factory::init_protocol_factories | ( | void |  | ) | `[virtual]`

| Reimplemented from TAO_Default_Resource_Factory.

int TAO_Advanced_Resource_Factory::input_cdr_allocator_type_locked | ( | void |  | ) | `[virtual]`

| Reimplemented from TAO_Default_Resource_Factory.

ACE_Allocator * TAO_Advanced_Resource_Factory::input_cdr_buffer_allocator | ( | void |  | ) | `[virtual]`

| Reimplemented from TAO_Default_Resource_Factory.

ACE_Allocator * TAO_Advanced_Resource_Factory::input_cdr_dblock_allocator | ( | void |  | ) | `[virtual]`

| Reimplemented from TAO_Default_Resource_Factory.

ACE_Allocator * TAO_Advanced_Resource_Factory::input_cdr_msgblock_allocator | ( | void |  | ) | `[virtual]`

| Reimplemented from TAO_Default_Resource_Factory.

int TAO_Advanced_Resource_Factory::load_default_protocols | ( | void |  | ) | `[protected, virtual]`

| Reimplemented from TAO_Default_Resource_Factory.

void TAO_Advanced_Resource_Factory::report_option_value_error | ( | const ACE_TCHAR * | option_name,
|  | const ACE_TCHAR * | option_value
| ) | `[protected]`

| Reimplemented from TAO_Default_Resource_Factory.

void TAO_Advanced_Resource_Factory::report_unsupported_error | ( | const ACE_TCHAR * | option_name | ) | `[protected]`

## Member Data Documentation

Allocator_Lock_Type TAO_Advanced_Resource_Factory::amh_response_handler_allocator_lock_type_`[protected]`

| Type of lock used by AMH response handler allocator.

Allocator_Lock_Type TAO_Advanced_Resource_Factory::ami_response_handler_allocator_lock_type_`[protected]`

| Type of lock used by AMI response handler allocator.

Allocator_Lock_Type TAO_Advanced_Resource_Factory::cdr_allocator_type_`[protected]`

| The type of CDR allocators.

TAO_ProtocolFactorySet TAO_Advanced_Resource_Factory::protocol_factories_`[protected]`

| List of loaded protocol factories. Reimplemented from TAO_Default_Resource_Factory.

int TAO_Advanced_Resource_Factory::reactor_registry_type_`[protected]`

| The type of reactor registry.

int TAO_Advanced_Resource_Factory::reactor_type_`[protected]`

| Flag indicating which kind of reactor we should use.

int TAO_Advanced_Resource_Factory::threadqueue_type_`[protected]`

| The type of queueing strategy to use for multi-threaded select reactors, TAO_REACTOR_SELECT_MT and TAO_REACTOR_TP.

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

- advanced_resource.h
- advanced_resource.cpp