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

# TAO_EC_Default_Factory Class Reference

A generic factory for EC experimentation. More...

`#include <EC_Default_Factory.h>`

Inheritance diagram for TAO_EC_Default_Factory:

[legend]
Collaboration diagram for TAO_EC_Default_Factory:

[legend]
List of all members.

## Public Methods

| TAO_EC_Default_Factory (void)
| Constructor.
virtual | ~TAO_EC_Default_Factory (void)
| destructor...
virtual int | init (int argc, ACE_TCHAR *argv[])
virtual int | fini (void)
virtual TAO_EC_Dispatching * | create_dispatching (TAO_EC_Event_Channel_Base *)
| Create and destroy the dispatching module.
virtual void | destroy_dispatching (TAO_EC_Dispatching *)
virtual TAO_EC_Filter_Builder * | create_filter_builder (TAO_EC_Event_Channel_Base *)
| Create and destroy the filter builder.
virtual void | destroy_filter_builder (TAO_EC_Filter_Builder *)
virtual TAO_EC_Supplier_Filter_Builder * | create_supplier_filter_builder (TAO_EC_Event_Channel_Base *)
| Create and destroy the filter builder.
virtual void | destroy_supplier_filter_builder (TAO_EC_Supplier_Filter_Builder *)
virtual TAO_EC_ConsumerAdmin * | create_consumer_admin (TAO_EC_Event_Channel_Base *)
| Create and destroy the consumer admin implementation.
virtual void | destroy_consumer_admin (TAO_EC_ConsumerAdmin *)
virtual TAO_EC_SupplierAdmin * | create_supplier_admin (TAO_EC_Event_Channel_Base *)
| Create and destroy the supplier admin implementation.
virtual void | destroy_supplier_admin (TAO_EC_SupplierAdmin *)
virtual TAO_EC_ProxyPushSupplier * | create_proxy_push_supplier (TAO_EC_Event_Channel_Base *)
| Create and destroy a ProxyPushSupplier.
virtual void | destroy_proxy_push_supplier (TAO_EC_ProxyPushSupplier *)
virtual TAO_EC_ProxyPushConsumer * | create_proxy_push_consumer (TAO_EC_Event_Channel_Base *)
| Create and destroy a ProxyPushConsumer.
virtual void | destroy_proxy_push_consumer (TAO_EC_ProxyPushConsumer *)
virtual TAO_EC_Timeout_Generator * | create_timeout_generator (TAO_EC_Event_Channel_Base *)
| Create and destroy the timer module.
virtual void | destroy_timeout_generator (TAO_EC_Timeout_Generator *)
virtual TAO_EC_ObserverStrategy * | create_observer_strategy (TAO_EC_Event_Channel_Base *)
| Create and destroy the observer strategy.
virtual void | destroy_observer_strategy (TAO_EC_ObserverStrategy *)
virtual TAO_EC_Scheduling_Strategy * | create_scheduling_strategy (TAO_EC_Event_Channel_Base *)
| Create and destroy the observer strategy.
virtual void | destroy_scheduling_strategy (TAO_EC_Scheduling_Strategy *)
virtual TAO_EC_ProxyPushConsumer_Collection * | create_proxy_push_consumer_collection (TAO_EC_Event_Channel_Base *)
| Create and destroy a collection of TAO_EC_ProxyPushConsumers.
virtual void | destroy_proxy_push_consumer_collection (TAO_EC_ProxyPushConsumer_Collection *)
virtual TAO_EC_ProxyPushSupplier_Collection * | create_proxy_push_supplier_collection (TAO_EC_Event_Channel_Base *)
| Create and destroy a collection of TAO_EC_ProxyPushSuppliers.
virtual void | destroy_proxy_push_supplier_collection (TAO_EC_ProxyPushSupplier_Collection *)
virtual ACE_Lock * | create_consumer_lock (void)
virtual void | destroy_consumer_lock (ACE_Lock *)
virtual ACE_Lock * | create_supplier_lock (void)
virtual void | destroy_supplier_lock (ACE_Lock *)
virtual TAO_EC_ConsumerControl * | create_consumer_control (TAO_EC_Event_Channel_Base *)
virtual void | destroy_consumer_control (TAO_EC_ConsumerControl *)
virtual TAO_EC_SupplierControl * | create_supplier_control (TAO_EC_Event_Channel_Base *)
virtual void | destroy_supplier_control (TAO_EC_SupplierControl *)
int | consumer_collection (void) const
| Accessors to consumer collection flags.
int | supplier_collection (void) const
| Accessors to supplier collection flags.
int | supplier_filtering (void) const
| Accessors to supplier filtering flags.
const ACE_CString & | orb_id (void) const
| Accessor to ORBid.

## Static Public Methods

int | init_svcs (void)

## Protected Methods

void | unsupported_option_value (const char *option_name, const char *option_value)

## Protected Attributes

int | dispatching_
| Several flags to control the kind of object created.
int | filtering_
int | supplier_filtering_
int | timeout_
int | observer_
int | scheduling_
int | consumer_collection_
int | supplier_collection_
int | consumer_lock_
int | supplier_lock_
int | dispatching_threads_
int | dispatching_threads_flags_
int | dispatching_threads_priority_
int | dispatching_threads_force_active_
ACE_CString | orbid_
| Use this ORB to locate global resources.
int | consumer_control_
| The consumer and supplier control policies.
int | supplier_control_
int | consumer_control_period_
| The consumer and supplier control periods in usecs.
int | supplier_control_period_
ACE_Time_Value | consumer_control_timeout_
| The consumer control timeout in usecs.
ACE_Time_Value | supplier_control_timeout_
| The supplier control timeout in usecs.
int | consumer_validate_connection_
| Validate the connection to consumer on connect.

## Detailed Description

A generic factory for EC experimentation.

This class allows the user to experiment with different EC configurations. Using a command-line like interface the user can specify which strategies will this factory generate. Since the class can be dynamically loaded the strategies can be set in the service configurator file.

## Constructor & Destructor Documentation

ACE_INLINE TAO_EC_Default_Factory::TAO_EC_Default_Factory | ( | void |  | ) |

| Constructor.

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

| destructor...

## Member Function Documentation

ACE_INLINE int TAO_EC_Default_Factory::consumer_collection | ( | void |  | ) | const

| Accessors to consumer collection flags.

TAO_EC_ConsumerAdmin * TAO_EC_Default_Factory::create_consumer_admin | ( | TAO_EC_Event_Channel_Base * |  | ) | `[virtual]`

| Create and destroy the consumer admin implementation. Implements TAO_EC_Factory.

TAO_EC_ConsumerControl * TAO_EC_Default_Factory::create_consumer_control | ( | TAO_EC_Event_Channel_Base * |  | ) | `[virtual]`

| The ConsumerControl and SupplierControl strategies are used to discard non-existent consumers and suppliers Implements TAO_EC_Factory.

ACE_Lock * TAO_EC_Default_Factory::create_consumer_lock | ( | void |  | ) | `[virtual]`

| Create and destroy the locking strategies for both ProxyPushConsumers and ProxyPushSuppliers Implements TAO_EC_Factory.

TAO_EC_Dispatching * TAO_EC_Default_Factory::create_dispatching | ( | TAO_EC_Event_Channel_Base * |  | ) | `[virtual]`

| Create and destroy the dispatching module. Implements TAO_EC_Factory. Reimplemented in TAO_EC_Kokyu_Factory, and TAO_EC_Sched_Factory.

TAO_EC_Filter_Builder * TAO_EC_Default_Factory::create_filter_builder | ( | TAO_EC_Event_Channel_Base * |  | ) | `[virtual]`

| Create and destroy the filter builder. Implements TAO_EC_Factory. Reimplemented in TAO_EC_Kokyu_Factory, and TAO_EC_Sched_Factory.

TAO_EC_ObserverStrategy * TAO_EC_Default_Factory::create_observer_strategy | ( | TAO_EC_Event_Channel_Base * |  | ) | `[virtual]`

| Create and destroy the observer strategy. Implements TAO_EC_Factory.

TAO_EC_ProxyPushConsumer * TAO_EC_Default_Factory::create_proxy_push_consumer | ( | TAO_EC_Event_Channel_Base * |  | ) | `[virtual]`

| Create and destroy a ProxyPushConsumer. Implements TAO_EC_Factory.

TAO_EC_ProxyPushConsumer_Collection * TAO_EC_Default_Factory::create_proxy_push_consumer_collection | ( | TAO_EC_Event_Channel_Base * |  | ) | `[virtual]`

| Create and destroy a collection of TAO_EC_ProxyPushConsumers. Implements TAO_EC_Factory.

TAO_EC_ProxyPushSupplier * TAO_EC_Default_Factory::create_proxy_push_supplier | ( | TAO_EC_Event_Channel_Base * |  | ) | `[virtual]`

| Create and destroy a ProxyPushSupplier. Implements TAO_EC_Factory.

TAO_EC_ProxyPushSupplier_Collection * TAO_EC_Default_Factory::create_proxy_push_supplier_collection | ( | TAO_EC_Event_Channel_Base * |  | ) | `[virtual]`

| Create and destroy a collection of TAO_EC_ProxyPushSuppliers. Implements TAO_EC_Factory.

TAO_EC_Scheduling_Strategy * TAO_EC_Default_Factory::create_scheduling_strategy | ( | TAO_EC_Event_Channel_Base * |  | ) | `[virtual]`

| Create and destroy the observer strategy. Implements TAO_EC_Factory. Reimplemented in TAO_EC_Kokyu_Factory, and TAO_EC_Sched_Factory.

TAO_EC_SupplierAdmin * TAO_EC_Default_Factory::create_supplier_admin | ( | TAO_EC_Event_Channel_Base * |  | ) | `[virtual]`

| Create and destroy the supplier admin implementation. Implements TAO_EC_Factory.

TAO_EC_SupplierControl * TAO_EC_Default_Factory::create_supplier_control | ( | TAO_EC_Event_Channel_Base * |  | ) | `[virtual]`

| Implements TAO_EC_Factory.

TAO_EC_Supplier_Filter_Builder * TAO_EC_Default_Factory::create_supplier_filter_builder | ( | TAO_EC_Event_Channel_Base * |  | ) | `[virtual]`

| Create and destroy the filter builder. Implements TAO_EC_Factory.

ACE_Lock * TAO_EC_Default_Factory::create_supplier_lock | ( | void |  | ) | `[virtual]`

| Implements TAO_EC_Factory.

TAO_EC_Timeout_Generator * TAO_EC_Default_Factory::create_timeout_generator | ( | TAO_EC_Event_Channel_Base * |  | ) | `[virtual]`

| Create and destroy the timer module. Implements TAO_EC_Factory. Reimplemented in TAO_EC_Kokyu_Factory, and TAO_EC_Sched_Factory.

void TAO_EC_Default_Factory::destroy_consumer_admin | ( | TAO_EC_ConsumerAdmin * |  | ) | `[virtual]`

| Implements TAO_EC_Factory.

void TAO_EC_Default_Factory::destroy_consumer_control | ( | TAO_EC_ConsumerControl * |  | ) | `[virtual]`

| Implements TAO_EC_Factory.

void TAO_EC_Default_Factory::destroy_consumer_lock | ( | ACE_Lock * |  | ) | `[virtual]`

| Implements TAO_EC_Factory.

void TAO_EC_Default_Factory::destroy_dispatching | ( | TAO_EC_Dispatching * |  | ) | `[virtual]`

| Implements TAO_EC_Factory.

void TAO_EC_Default_Factory::destroy_filter_builder | ( | TAO_EC_Filter_Builder * |  | ) | `[virtual]`

| Implements TAO_EC_Factory.

void TAO_EC_Default_Factory::destroy_observer_strategy | ( | TAO_EC_ObserverStrategy * |  | ) | `[virtual]`

| Implements TAO_EC_Factory.

void TAO_EC_Default_Factory::destroy_proxy_push_consumer | ( | TAO_EC_ProxyPushConsumer * |  | ) | `[virtual]`

| Implements TAO_EC_Factory.

void TAO_EC_Default_Factory::destroy_proxy_push_consumer_collection | ( | TAO_EC_ProxyPushConsumer_Collection * |  | ) | `[virtual]`

| Implements TAO_EC_Factory.

void TAO_EC_Default_Factory::destroy_proxy_push_supplier | ( | TAO_EC_ProxyPushSupplier * |  | ) | `[virtual]`

| Implements TAO_EC_Factory.

void TAO_EC_Default_Factory::destroy_proxy_push_supplier_collection | ( | TAO_EC_ProxyPushSupplier_Collection * |  | ) | `[virtual]`

| Implements TAO_EC_Factory.

void TAO_EC_Default_Factory::destroy_scheduling_strategy | ( | TAO_EC_Scheduling_Strategy * |  | ) | `[virtual]`

| Implements TAO_EC_Factory.

void TAO_EC_Default_Factory::destroy_supplier_admin | ( | TAO_EC_SupplierAdmin * |  | ) | `[virtual]`

| Implements TAO_EC_Factory.

void TAO_EC_Default_Factory::destroy_supplier_control | ( | TAO_EC_SupplierControl * |  | ) | `[virtual]`

| Implements TAO_EC_Factory.

void TAO_EC_Default_Factory::destroy_supplier_filter_builder | ( | TAO_EC_Supplier_Filter_Builder * |  | ) | `[virtual]`

| Implements TAO_EC_Factory.

void TAO_EC_Default_Factory::destroy_supplier_lock | ( | ACE_Lock * |  | ) | `[virtual]`

| Implements TAO_EC_Factory.

void TAO_EC_Default_Factory::destroy_timeout_generator | ( | TAO_EC_Timeout_Generator * |  | ) | `[virtual]`

| Implements TAO_EC_Factory.

int TAO_EC_Default_Factory::fini | ( | void |  | ) | `[virtual]`

| Reimplemented from ACE_Shared_Object. Reimplemented in TAO_EC_Kokyu_Factory, and TAO_EC_Sched_Factory.

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

| Reimplemented from ACE_Shared_Object. Reimplemented in TAO_EC_Kokyu_Factory, and TAO_EC_Sched_Factory.

int TAO_EC_Default_Factory::init_svcs | ( | void |  | ) | `[static]`

| Helper function to register the default factory into the service configurator. Reimplemented in TAO_EC_Kokyu_Factory.

ACE_INLINE const ACE_CString & TAO_EC_Default_Factory::orb_id | ( | void |  | ) | const

| Accessor to ORBid.

ACE_INLINE int TAO_EC_Default_Factory::supplier_collection | ( | void |  | ) | const

| Accessors to supplier collection flags.

ACE_INLINE int TAO_EC_Default_Factory::supplier_filtering | ( | void |  | ) | const

| Accessors to supplier filtering flags.

void TAO_EC_Default_Factory::unsupported_option_value | ( | const char * | option_name,
|  | const char * | option_value
| ) | `[protected]`

| Helper for agrument parsing. Prints out an error message about unsupported option value.

## Member Data Documentation

int TAO_EC_Default_Factory::consumer_collection_`[protected]`

int TAO_EC_Default_Factory::consumer_control_`[protected]`

| The consumer and supplier control policies.

int TAO_EC_Default_Factory::consumer_control_period_`[protected]`

| The consumer and supplier control periods in usecs.

ACE_Time_Value TAO_EC_Default_Factory::consumer_control_timeout_`[protected]`

| The consumer control timeout in usecs.

int TAO_EC_Default_Factory::consumer_lock_`[protected]`

int TAO_EC_Default_Factory::consumer_validate_connection_`[protected]`

| Validate the connection to consumer on connect.

int TAO_EC_Default_Factory::dispatching_`[protected]`

| Several flags to control the kind of object created.

int TAO_EC_Default_Factory::dispatching_threads_`[protected]`

| The MT dispatching priority has several arguments that could be controlled here...

int TAO_EC_Default_Factory::dispatching_threads_flags_`[protected]`

int TAO_EC_Default_Factory::dispatching_threads_force_active_`[protected]`

int TAO_EC_Default_Factory::dispatching_threads_priority_`[protected]`

int TAO_EC_Default_Factory::filtering_`[protected]`

int TAO_EC_Default_Factory::observer_`[protected]`

ACE_CString TAO_EC_Default_Factory::orbid_`[protected]`

| Use this ORB to locate global resources.

int TAO_EC_Default_Factory::scheduling_`[protected]`

int TAO_EC_Default_Factory::supplier_collection_`[protected]`

int TAO_EC_Default_Factory::supplier_control_`[protected]`

int TAO_EC_Default_Factory::supplier_control_period_`[protected]`

ACE_Time_Value TAO_EC_Default_Factory::supplier_control_timeout_`[protected]`

| The supplier control timeout in usecs.

int TAO_EC_Default_Factory::supplier_filtering_`[protected]`

int TAO_EC_Default_Factory::supplier_lock_`[protected]`

int TAO_EC_Default_Factory::timeout_`[protected]`

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

- EC_Default_Factory.h
- EC_Default_Factory.cpp
- EC_Default_Factory.i