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

# TAO_CEC_Default_Factory Class Reference

A generic factory for EC experimentation. More...

`#include <CEC_Default_Factory.h>`

Inheritance diagram for TAO_CEC_Default_Factory

[legend]
Collaboration diagram for TAO_CEC_Default_Factory:

[legend]
List of all members.

## Public Methods
| TAO_CEC_Default_Factory (void)
| Constructor.
virtual | ~TAO_CEC_Default_Factory (void)
| destructor...
virtual int | init (int argc, char* argv[])
virtual int | fini (void)
virtual TAO_CEC_Dispatching* | create_dispatching (TAO_CEC_EventChannel*)
| Create and destroy the dispatching module.
virtual void | destroy_dispatching (TAO_CEC_Dispatching*)
virtual TAO_CEC_Pulling_Strategy* | create_pulling_strategy (TAO_CEC_EventChannel*)
| Create and destroy the pulling strategy.
virtual void | destroy_pulling_strategy (TAO_CEC_Pulling_Strategy*)
virtual TAO_CEC_ConsumerAdmin* | create_consumer_admin (TAO_CEC_EventChannel*)
| Create and destroy the consumer admin implementation.
virtual void | destroy_consumer_admin (TAO_CEC_ConsumerAdmin*)
virtual TAO_CEC_SupplierAdmin* | create_supplier_admin (TAO_CEC_EventChannel*)
| Create and destroy the supplier admin implementation.
virtual void | destroy_supplier_admin (TAO_CEC_SupplierAdmin*)
virtual TAO_CEC_ProxyPushSupplier* | create_proxy_push_supplier (TAO_CEC_EventChannel*)
| Create and destroy a ProxyPushSupplier.
virtual void | destroy_proxy_push_supplier (TAO_CEC_ProxyPushSupplier*)
virtual TAO_CEC_ProxyPullSupplier* | create_proxy_pull_supplier (TAO_CEC_EventChannel*)
| Create and destroy a ProxyPullSupplier.
virtual void | destroy_proxy_pull_supplier (TAO_CEC_ProxyPullSupplier*)
virtual TAO_CEC_ProxyPushConsumer* | create_proxy_push_consumer (TAO_CEC_EventChannel*)
| Create and destroy a ProxyPushConsumer.
virtual void | destroy_proxy_push_consumer (TAO_CEC_ProxyPushConsumer*)
virtual TAO_CEC_ProxyPullConsumer* | create_proxy_pull_consumer (TAO_CEC_EventChannel*)
| Create and destroy a ProxyPullConsumer.
virtual void | destroy_proxy_pull_consumer (TAO_CEC_ProxyPullConsumer*)
virtual TAO_CEC_ProxyPushConsumer_Collection* | create_proxy_push_consumer_collection (TAO_CEC_EventChannel*)
| Create and destroy a collection of TAO_CEC_ProxyPushConsumers.
virtual void | destroy_proxy_push_consumer_collection (TAO_CEC_ProxyPushConsumer_Collection*)
virtual TAO_CEC_ProxyPullConsumer_Collection* | create_proxy_pull_consumer_collection (TAO_CEC_EventChannel*)
| Create and destroy a collection of TAO_CEC_ProxyPullConsumers.
virtual void | destroy_proxy_pull_consumer_collection (TAO_CEC_ProxyPullConsumer_Collection*)
virtual TAO_CEC_ProxyPushSupplier_Collection* | create_proxy_push_supplier_collection (TAO_CEC_EventChannel*)
| Create and destroy a collection of TAO_CEC_ProxyPushSuppliers.
virtual void | destroy_proxy_push_supplier_collection (TAO_CEC_ProxyPushSupplier_Collection*)
virtual TAO_CEC_ProxyPullSupplier_Collection* | create_proxy_pull_supplier_collection (TAO_CEC_EventChannel*)
| Create and destroy a collection of TAO_CEC_ProxyPullSuppliers.
virtual void | destroy_proxy_pull_supplier_collection (TAO_CEC_ProxyPullSupplier_Collection*)
virtual ACE_Lock* | create_consumer_lock (void)
| Create and destroy the locking strategies for both ProxyPushConsumers and ProxyPushSuppliers.
virtual void | destroy_consumer_lock (ACE_Lock*)
virtual ACE_Lock* | create_supplier_lock (void)
virtual void | destroy_supplier_lock (ACE_Lock*)
virtual TAO_CEC_ConsumerControl* | create_consumer_control (TAO_CEC_EventChannel*)
| The ConsumerControl and SupplierControl strategies are used to discard non-existent consumers and suppliers.
virtual void | destroy_consumer_control (TAO_CEC_ConsumerControl*)
virtual TAO_CEC_SupplierControl* | create_supplier_control (TAO_CEC_EventChannel*)
virtual void | destroy_supplier_control (TAO_CEC_SupplierControl*)
## Static Public Methods
int | init_svcs (void)
| Helper function to register the default factory into the service configurator.
## Private Methods
int | parse_collection_arg (char *opt)
| Parse an argument to set the type of collections used.
## Private Attributes
int | dispatching_
| Several flags to control the kind of object created.
int | pulling_strategy_
int | consumer_collection_
int | supplier_collection_
int | consumer_lock_
int | supplier_lock_
int | dispatching_threads_
| The MT dispatching priority has several arguments that could be controlled here...
int | dispatching_threads_flags_
int | dispatching_threads_priority_
int | dispatching_threads_force_active_
int | reactive_pulling_period_
| How often (in microseconds) are the pull suppliers polled by the reactive pulling strategy.
const char* | 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_

## 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. = MEMORY MANAGMENT

## Constructor & Destructor Documentation

ACE_INLINE TAO_CEC_Default_Factory::TAO_CEC_Default_Factory ( | void )

| Constructor.

TAO_CEC_Default_Factory::~TAO_CEC_Default_Factory ( | void )`[inline, virtual]`

| destructor...

## Member Function Documentation

TAO_CEC_ConsumerAdmin * TAO_CEC_Default_Factory::create_consumer_admin ( | TAO_CEC_EventChannel * ec )`[virtual]`

| Create and destroy the consumer admin implementation. Reimplemented from TAO_CEC_Factory.

TAO_CEC_ConsumerControl * TAO_CEC_Default_Factory::create_consumer_control ( | TAO_CEC_EventChannel * ec )`[virtual]`

| The ConsumerControl and SupplierControl strategies are used to discard non-existent consumers and suppliers. Reimplemented from TAO_CEC_Factory.

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

| Create and destroy the locking strategies for both ProxyPushConsumers and ProxyPushSuppliers. Reimplemented from TAO_CEC_Factory.

TAO_CEC_Dispatching * TAO_CEC_Default_Factory::create_dispatching ( | TAO_CEC_EventChannel * )`[virtual]`

| Create and destroy the dispatching module. Reimplemented from TAO_CEC_Factory.

TAO_CEC_ProxyPullConsumer * TAO_CEC_Default_Factory::create_proxy_pull_consumer ( | TAO_CEC_EventChannel * ec )`[virtual]`

| Create and destroy a ProxyPullConsumer. Reimplemented from TAO_CEC_Factory.

TAO_CEC_ProxyPullConsumer_Collection * TAO_CEC_Default_Factory::create_proxy_pull_consumer_collection ( | TAO_CEC_EventChannel * )`[virtual]`

| Create and destroy a collection of TAO_CEC_ProxyPullConsumers. Reimplemented from TAO_CEC_Factory.

TAO_CEC_ProxyPullSupplier * TAO_CEC_Default_Factory::create_proxy_pull_supplier ( | TAO_CEC_EventChannel * ec )`[virtual]`

| Create and destroy a ProxyPullSupplier. Reimplemented from TAO_CEC_Factory.

TAO_CEC_ProxyPullSupplier_Collection * TAO_CEC_Default_Factory::create_proxy_pull_supplier_collection ( | TAO_CEC_EventChannel * )`[virtual]`

| Create and destroy a collection of TAO_CEC_ProxyPullSuppliers. Reimplemented from TAO_CEC_Factory.

TAO_CEC_ProxyPushConsumer * TAO_CEC_Default_Factory::create_proxy_push_consumer ( | TAO_CEC_EventChannel * ec )`[virtual]`

| Create and destroy a ProxyPushConsumer. Reimplemented from TAO_CEC_Factory.

TAO_CEC_ProxyPushConsumer_Collection * TAO_CEC_Default_Factory::create_proxy_push_consumer_collection ( | TAO_CEC_EventChannel * )`[virtual]`

| Create and destroy a collection of TAO_CEC_ProxyPushConsumers. Reimplemented from TAO_CEC_Factory.

TAO_CEC_ProxyPushSupplier * TAO_CEC_Default_Factory::create_proxy_push_supplier ( | TAO_CEC_EventChannel * ec )`[virtual]`

| Create and destroy a ProxyPushSupplier. Reimplemented from TAO_CEC_Factory.

TAO_CEC_ProxyPushSupplier_Collection * TAO_CEC_Default_Factory::create_proxy_push_supplier_collection ( | TAO_CEC_EventChannel * )`[virtual]`

| Create and destroy a collection of TAO_CEC_ProxyPushSuppliers. Reimplemented from TAO_CEC_Factory.

TAO_CEC_Pulling_Strategy * TAO_CEC_Default_Factory::create_pulling_strategy ( | TAO_CEC_EventChannel * ec )`[virtual]`

| Create and destroy the pulling strategy. Reimplemented from TAO_CEC_Factory.

TAO_CEC_SupplierAdmin * TAO_CEC_Default_Factory::create_supplier_admin ( | TAO_CEC_EventChannel * ec )`[virtual]`

| Create and destroy the supplier admin implementation. Reimplemented from TAO_CEC_Factory.

TAO_CEC_SupplierControl * TAO_CEC_Default_Factory::create_supplier_control ( | TAO_CEC_EventChannel * ec )`[virtual]`

| Reimplemented from TAO_CEC_Factory.

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

| Reimplemented from TAO_CEC_Factory.

void TAO_CEC_Default_Factory::destroy_consumer_admin ( | TAO_CEC_ConsumerAdmin * x )`[virtual]`

| Reimplemented from TAO_CEC_Factory.

void TAO_CEC_Default_Factory::destroy_consumer_control ( | TAO_CEC_ConsumerControl * x )`[virtual]`

| Reimplemented from TAO_CEC_Factory.

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

| Reimplemented from TAO_CEC_Factory.

void TAO_CEC_Default_Factory::destroy_dispatching ( | TAO_CEC_Dispatching * x )`[virtual]`

| Reimplemented from TAO_CEC_Factory.

void TAO_CEC_Default_Factory::destroy_proxy_pull_consumer ( | TAO_CEC_ProxyPullConsumer * x )`[virtual]`

| Reimplemented from TAO_CEC_Factory.

void TAO_CEC_Default_Factory::destroy_proxy_pull_consumer_collection ( | TAO_CEC_ProxyPullConsumer_Collection * x )`[virtual]`

| Reimplemented from TAO_CEC_Factory.

void TAO_CEC_Default_Factory::destroy_proxy_pull_supplier ( | TAO_CEC_ProxyPullSupplier * x )`[virtual]`

| Reimplemented from TAO_CEC_Factory.

void TAO_CEC_Default_Factory::destroy_proxy_pull_supplier_collection ( | TAO_CEC_ProxyPullSupplier_Collection * x )`[virtual]`

| Reimplemented from TAO_CEC_Factory.

void TAO_CEC_Default_Factory::destroy_proxy_push_consumer ( | TAO_CEC_ProxyPushConsumer * x )`[virtual]`

| Reimplemented from TAO_CEC_Factory.

void TAO_CEC_Default_Factory::destroy_proxy_push_consumer_collection ( | TAO_CEC_ProxyPushConsumer_Collection * x )`[virtual]`

| Reimplemented from TAO_CEC_Factory.

void TAO_CEC_Default_Factory::destroy_proxy_push_supplier ( | TAO_CEC_ProxyPushSupplier * x )`[virtual]`

| Reimplemented from TAO_CEC_Factory.

void TAO_CEC_Default_Factory::destroy_proxy_push_supplier_collection ( | TAO_CEC_ProxyPushSupplier_Collection * x )`[virtual]`

| Reimplemented from TAO_CEC_Factory.

void TAO_CEC_Default_Factory::destroy_pulling_strategy ( | TAO_CEC_Pulling_Strategy * x )`[virtual]`

| Reimplemented from TAO_CEC_Factory.

void TAO_CEC_Default_Factory::destroy_supplier_admin ( | TAO_CEC_SupplierAdmin * x )`[virtual]`

| Reimplemented from TAO_CEC_Factory.

void TAO_CEC_Default_Factory::destroy_supplier_control ( | TAO_CEC_SupplierControl * x )`[virtual]`

| Reimplemented from TAO_CEC_Factory.

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

| Reimplemented from TAO_CEC_Factory.

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

| Reimplemented from ACE_Shared_Object.

int TAO_CEC_Default_Factory::init ( | int argc,
| char * argv[] )`[virtual]`

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

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

int TAO_CEC_Default_Factory::parse_collection_arg ( | char * opt )`[private]`

| Parse an argument to set the type of collections used.

## Member Data Documentation

int TAO_CEC_Default_Factory::consumer_collection_`[private]`

int TAO_CEC_Default_Factory::consumer_control_`[private]`

| The consumer and supplier control policies.

int TAO_CEC_Default_Factory::consumer_control_period_`[private]`

| The consumer and supplier control periods in usecs.

int TAO_CEC_Default_Factory::consumer_lock_`[private]`

int TAO_CEC_Default_Factory::dispatching_`[private]`

| Several flags to control the kind of object created.

int TAO_CEC_Default_Factory::dispatching_threads_`[private]`

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

int TAO_CEC_Default_Factory::dispatching_threads_flags_`[private]`

int TAO_CEC_Default_Factory::dispatching_threads_force_active_`[private]`

int TAO_CEC_Default_Factory::dispatching_threads_priority_`[private]`

const char * TAO_CEC_Default_Factory::orbid_`[private]`

| Use this ORB to locate global resources.

int TAO_CEC_Default_Factory::pulling_strategy_`[private]`

int TAO_CEC_Default_Factory::reactive_pulling_period_`[private]`

| How often (in microseconds) are the pull suppliers polled by the reactive pulling strategy.

int TAO_CEC_Default_Factory::supplier_collection_`[private]`

int TAO_CEC_Default_Factory::supplier_control_`[private]`

int TAO_CEC_Default_Factory::supplier_control_period_`[private]`

int TAO_CEC_Default_Factory::supplier_lock_`[private]`

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

- CEC_Default_Factory.h
- CEC_Default_Factory.cpp
- CEC_Default_Factory.i