TAO_RTEvent  2.1.6
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions
TAO_EC_Gateway_Sched Class Reference

Extend the EC_Gateway_IIOP interface to support scheduling. More...

#include <EC_Gateway_Sched.h>

Inheritance diagram for TAO_EC_Gateway_Sched:
Inheritance graph
Collaboration diagram for TAO_EC_Gateway_Sched:
Collaboration graph

List of all members.

Public Member Functions

 TAO_EC_Gateway_Sched (void)
 ~TAO_EC_Gateway_Sched (void)
void init (RtecEventChannelAdmin::EventChannel_ptr supplier_ec, RtecEventChannelAdmin::EventChannel_ptr consumer_ec, RtecScheduler::Scheduler_ptr supplier_sched, RtecScheduler::Scheduler_ptr consumer_sched, const char *consumer_name, const char *supplier_name)
- Public Member Functions inherited from TAO_EC_Gateway_IIOP
 TAO_EC_Gateway_IIOP (void)
virtual ~TAO_EC_Gateway_IIOP (void)
int init (RtecEventChannelAdmin::EventChannel_ptr supplier_ec, RtecEventChannelAdmin::EventChannel_ptr consumer_ec)
void disconnect_push_supplier (void)
 The channel is disconnecting.
void disconnect_push_consumer (void)
 The channel is disconnecting.
void push (const RtecEventComm::EventSet &events)
int shutdown (void)
 Disconnect and shutdown the gateway.
virtual void close (void)
virtual void update_consumer (const RtecEventChannelAdmin::ConsumerQOS &sub)
virtual void update_supplier (const RtecEventChannelAdmin::SupplierQOS &pub)
void reconnect_consumer_ec (void)
CORBA::Boolean consumer_ec_non_existent (CORBA::Boolean_out disconnected)
 Check whether the consumer event channel is non existent or not.
void cleanup_consumer_proxies (void)
int cleanup_consumer_ec (void)
int cleanup_supplier_ec (void)
void suspend_supplier_ec (void)
 Suspend the connection to the supplier ec.
void resume_supplier_ec (void)
 Resume the connection to the supplier ec.
- Public Member Functions inherited from TAO_EC_Gateway
 TAO_EC_Gateway (void)
 Default constructor.
virtual ~TAO_EC_Gateway (void)
 Destructor.
void observer_handle (RtecEventChannelAdmin::Observer_Handle h)
 Obtain and modify the observer handle.
RtecEventChannelAdmin::Observer_Handle observer_handle (void) const

Additional Inherited Members

- Protected Types inherited from TAO_EC_Gateway_IIOP
typedef ACE_Map_Manager
< RtecEventComm::EventSourceID,
RtecEventChannelAdmin::ProxyPushConsumer_ptr,
ACE_Null_Mutex
Consumer_Map
typedef ACE_Map_Iterator
< RtecEventComm::EventSourceID,
RtecEventChannelAdmin::ProxyPushConsumer_ptr,
ACE_Null_Mutex
Consumer_Map_Iterator
- Protected Member Functions inherited from TAO_EC_Gateway_IIOP
int init_i (RtecEventChannelAdmin::EventChannel_ptr supplier_ec, RtecEventChannelAdmin::EventChannel_ptr consumer_ec)
 Do the real work in init()
- Protected Attributes inherited from TAO_EC_Gateway_IIOP
TAO_SYNCH_MUTEX lock_
 Lock to synchronize internal changes.
CORBA::ULong busy_count_
int update_posted_
RtecEventChannelAdmin::ConsumerQOS c_qos_
int cleanup_posted_
int supplier_ec_suspended_
RtecEventChannelAdmin::EventChannel_var supplier_ec_
RtecEventChannelAdmin::EventChannel_var consumer_ec_
 The event channel acting as consumer of this gateway.
RtecBase::handle_t supplier_info_
 Our RT_Infos for the event channel that is the supplier.
RtecBase::handle_t consumer_info_
 Our RT_Infos for the event channel that is the consumer.
ACE_PushConsumer_Adapter
< TAO_EC_Gateway_IIOP
consumer_
 Our consumer personality....
bool consumer_is_active_
 If it is true then we must deactivate the consumer.
ACE_PushSupplier_Adapter
< TAO_EC_Gateway_IIOP
supplier_
 Our supplier personality....
bool supplier_is_active_
 If it is true then we must deactivate the supplier.
Consumer_Map consumer_proxy_map_
RtecEventChannelAdmin::ProxyPushConsumer_var default_consumer_proxy_
RtecEventChannelAdmin::ProxyPushSupplier_var supplier_proxy_
TAO_ECG_ConsumerEC_Controlec_control_
TAO_EC_Gateway_IIOP_Factoryfactory_
 The Gateway IIOP Factory for all the settings.
int use_ttl_
 If 1, we use the TTL flags, if 0, we just ignore TTL.
int use_consumer_proxy_map_

Detailed Description

Extend the EC_Gateway_IIOP interface to support scheduling.


Constructor & Destructor Documentation

TAO_EC_Gateway_Sched::TAO_EC_Gateway_Sched ( void  )
TAO_EC_Gateway_Sched::~TAO_EC_Gateway_Sched ( void  )

Member Function Documentation

void TAO_EC_Gateway_Sched::init ( RtecEventChannelAdmin::EventChannel_ptr  supplier_ec,
RtecEventChannelAdmin::EventChannel_ptr  consumer_ec,
RtecScheduler::Scheduler_ptr  supplier_sched,
RtecScheduler::Scheduler_ptr  consumer_sched,
const char *  consumer_name,
const char *  supplier_name 
)

To do its job this class requires to know the local and remote ECs it will connect to; furthermore it also requires to build RT_Infos for the local and remote schedulers.

Todo:
part of the RT_Info is hardcoded, we need to make it parametric.

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