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:

Inheritance graph
[legend]
Collaboration diagram for TAO_CEC_Default_Factory:

Collaboration graph
[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, ACE_TCHAR *argv[])
virtual int fini (void)
virtual TAO_CEC_Dispatchingcreate_dispatching (TAO_CEC_EventChannel *)
 Create and destroy the dispatching module. More...

virtual void destroy_dispatching (TAO_CEC_Dispatching *)
virtual TAO_CEC_Pulling_Strategycreate_pulling_strategy (TAO_CEC_EventChannel *)
 Create and destroy the pulling strategy. More...

virtual void destroy_pulling_strategy (TAO_CEC_Pulling_Strategy *)
virtual TAO_CEC_ConsumerAdmincreate_consumer_admin (TAO_CEC_EventChannel *)
 Create and destroy the consumer admin implementation. More...

virtual void destroy_consumer_admin (TAO_CEC_ConsumerAdmin *)
virtual TAO_CEC_SupplierAdmincreate_supplier_admin (TAO_CEC_EventChannel *)
 Create and destroy the supplier admin implementation. More...

virtual void destroy_supplier_admin (TAO_CEC_SupplierAdmin *)
virtual TAO_CEC_ProxyPushSuppliercreate_proxy_push_supplier (TAO_CEC_EventChannel *)
 Create and destroy a ProxyPushSupplier. More...

virtual void destroy_proxy_push_supplier (TAO_CEC_ProxyPushSupplier *)
virtual TAO_CEC_ProxyPullSuppliercreate_proxy_pull_supplier (TAO_CEC_EventChannel *)
 Create and destroy a ProxyPullSupplier. More...

virtual void destroy_proxy_pull_supplier (TAO_CEC_ProxyPullSupplier *)
virtual TAO_CEC_ProxyPushConsumercreate_proxy_push_consumer (TAO_CEC_EventChannel *)
 Create and destroy a ProxyPushConsumer. More...

virtual void destroy_proxy_push_consumer (TAO_CEC_ProxyPushConsumer *)
virtual TAO_CEC_ProxyPullConsumercreate_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_Collectioncreate_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_Collectioncreate_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_Collectioncreate_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_Collectioncreate_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_Lockcreate_consumer_lock (void)
 Create and destroy the locking strategies for both ProxyPushConsumers and ProxyPushSuppliers. More...

virtual void destroy_consumer_lock (ACE_Lock *)
virtual ACE_Lockcreate_supplier_lock (void)
virtual void destroy_supplier_lock (ACE_Lock *)
virtual TAO_CEC_ConsumerControlcreate_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_SupplierControlcreate_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 (ACE_TCHAR *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...

char * orbid_
 Use this ORB to locate global resources. More...

int orbid_dupped_
 Indicate ORB ID has been duplicated (memory allocated). 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,
ACE_TCHAR   argv[]
[virtual]
 

Reimplemented from ACE_Shared_Object.

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 ACE_TCHAR   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]
 

char* TAO_CEC_Default_Factory::orbid_ [private]
 

Use this ORB to locate global resources.

int TAO_CEC_Default_Factory::orbid_dupped_ [private]
 

Indicate ORB ID has been duplicated (memory allocated).

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:
Generated on Thu Oct 10 21:20:54 2002 for TAO_CosEvent by doxygen1.2.13.1 written by Dimitri van Heesch, © 1997-2001