Main Page Class Hierarchy Alphabetical List Compound List File List Compound 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 | { TAO_ALLOCATOR_NULL_LOCK, TAO_ALLOCATOR_THREAD_LOCK }
enum | { TAO_REACTOR_SELECT_MT, TAO_REACTOR_SELECT_ST, TAO_REACTOR_FL, TAO_REACTOR_TK, TAO_REACTOR_WFMO, TAO_REACTOR_MSGWFMO, TAO_REACTOR_TP }
| Type of Reactor. More...
enum | { TAO_THREAD_QUEUE_NOT_SET, TAO_THREAD_QUEUE_FIFO, TAO_THREAD_QUEUE_LIFO }
| Thread queueing Strategy. More...
## Public Methods
| TAO_Advanced_Resource_Factory (void)
| Constructor. More...
virtual | ~TAO_Advanced_Resource_Factory (void)
| Destructor. More...
virtual int | init (int argc, ACE_TCHAR *argv[])
| Dynamic linking hook. More...
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 int | input_cdr_allocator_type_locked (void)
virtual TAO_ProtocolFactorySet * | get_protocol_factories (void)
## Protected Methods
virtual ACE_Reactor_Impl * | allocate_reactor_impl (void) const
| Obtain the reactor implementation. More...
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. More...
int | reactor_registry_type_
| The type of reactor registry. More...
int | reactor_type_
| Flag indicating which kind of reactor we should use. More...
int | threadqueue_type_
| The type of queueing strategy to use for multi-threaded select reactors, TAO_REACTOR_SELECT_MT and TAO_REACTOR_TP. More...
int | cdr_allocator_type_
| The type of CDR allocators. More...

## 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

  | Enumeration values:
  TAO_ALLOCATOR_NULL_LOCK |
  TAO_ALLOCATOR_THREAD_LOCK |

anonymous enum

  | Type of Reactor. Enumeration values:
  TAO_REACTOR_SELECT_MT | Use ACE_Token.
  TAO_REACTOR_SELECT_ST | Use ACE_Noop_Token.
  TAO_REACTOR_FL |
  TAO_REACTOR_TK |
  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).

## 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.

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

int 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