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. More...
virtual | ~TAO_CEC_Default_Factory (void)
| destructor... More...
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. More...
virtual void | destroy_dispatching (TAO_CEC_Dispatching *)
virtual TAO_CEC_Pulling_Strategy * | create_pulling_strategy (TAO_CEC_EventChannel *)
| Create and destroy the pulling strategy. More...
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. More...
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. More...
virtual void | destroy_supplier_admin (TAO_CEC_SupplierAdmin *)
virtual TAO_CEC_ProxyPushSupplier * | create_proxy_push_supplier (TAO_CEC_EventChannel *)
| Create and destroy a ProxyPushSupplier. More...
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. More...
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. More...
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. More...
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. More...
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. More...
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. More...
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. More...
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. More...
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. More...
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. More...
## Private Methods
int | parse_collection_arg (char *opt)
| Parse an argument to set the type of collections used. More...
## Private Attributes
int | dispatching_
| Several flags to control the kind of object created. More...
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... More...
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. More...
const char * | orbid_
| Use this ORB to locate global resources. More...
int | consumer_control_
| The consumer and supplier control policies. More...
int | supplier_control_
int | consumer_control_period_
| The consumer and supplier control periods in usecs. More...
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 |  | ) | `[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