EC_Trivial_Supplier_Filter.cpp

Go to the documentation of this file.
00001 // $Id: EC_Trivial_Supplier_Filter.cpp 76589 2007-01-25 18:04:11Z elliott_c $
00002 
00003 #include "orbsvcs/Event/EC_Trivial_Supplier_Filter.h"
00004 #include "orbsvcs/Event/EC_Event_Channel_Base.h"
00005 #include "orbsvcs/Event/EC_ConsumerAdmin.h"
00006 #include "orbsvcs/Event/EC_ProxySupplier.h"
00007 #include "orbsvcs/Event/EC_QOS_Info.h"
00008 #include "orbsvcs/Event/EC_Scheduling_Strategy.h"
00009 #include "orbsvcs/Event/EC_ProxyConsumer.h" // @@ MSVC 6 bug
00010 
00011 ACE_RCSID(Event, EC_Trivial_Supplier_Filter, "$Id: EC_Trivial_Supplier_Filter.cpp 76589 2007-01-25 18:04:11Z elliott_c $")
00012 
00013 // ****************************************************************
00014 
00015 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
00016 
00017 TAO_EC_Trivial_Supplier_Filter::
00018     TAO_EC_Trivial_Supplier_Filter (TAO_EC_Event_Channel_Base* ec)
00019   :  event_channel_ (ec)
00020 {
00021 }
00022 
00023 void
00024 TAO_EC_Trivial_Supplier_Filter::bind (TAO_EC_ProxyPushConsumer*)
00025 {
00026 }
00027 
00028 void
00029 TAO_EC_Trivial_Supplier_Filter::unbind (TAO_EC_ProxyPushConsumer*)
00030 {
00031 }
00032 
00033 void
00034 TAO_EC_Trivial_Supplier_Filter::connected (TAO_EC_ProxyPushSupplier*)
00035 {
00036 }
00037 
00038 void
00039 TAO_EC_Trivial_Supplier_Filter::reconnected (TAO_EC_ProxyPushSupplier*)
00040 {
00041 }
00042 
00043 void
00044 TAO_EC_Trivial_Supplier_Filter::disconnected (TAO_EC_ProxyPushSupplier*)
00045 {
00046 }
00047 
00048 void
00049 TAO_EC_Trivial_Supplier_Filter::shutdown (void)
00050 {
00051 }
00052 
00053 void
00054 TAO_EC_Trivial_Supplier_Filter::push (const RtecEventComm::EventSet& event,
00055                                       TAO_EC_ProxyPushConsumer *consumer)
00056 {
00057   TAO_EC_Scheduling_Strategy* scheduling_strategy =
00058     this->event_channel_->scheduling_strategy ();
00059   scheduling_strategy->schedule_event (event,
00060                                        consumer,
00061                                        this);
00062 }
00063 
00064 void
00065 TAO_EC_Trivial_Supplier_Filter::push_scheduled_event (RtecEventComm::EventSet &event,
00066                                                       const TAO_EC_QOS_Info &event_info)
00067 {
00068   TAO_EC_Filter_Worker worker (event, event_info);
00069   this->event_channel_->for_each_consumer (&worker);
00070 }
00071 
00072 CORBA::ULong
00073 TAO_EC_Trivial_Supplier_Filter::_incr_refcnt (void)
00074 {
00075   return 1;
00076 }
00077 
00078 CORBA::ULong
00079 TAO_EC_Trivial_Supplier_Filter::_decr_refcnt (void)
00080 {
00081   return 1;
00082 }
00083 
00084 // ****************************************************************
00085 
00086 TAO_EC_Trivial_Supplier_Filter_Builder::
00087   TAO_EC_Trivial_Supplier_Filter_Builder (TAO_EC_Event_Channel_Base *ec)
00088   :  filter_ (ec)
00089 {
00090 }
00091 
00092 TAO_EC_Supplier_Filter*
00093 TAO_EC_Trivial_Supplier_Filter_Builder::create (
00094     RtecEventChannelAdmin::SupplierQOS&)
00095 {
00096   return &this->filter_;
00097 }
00098 
00099 void
00100 TAO_EC_Trivial_Supplier_Filter_Builder::destroy (
00101     TAO_EC_Supplier_Filter*)
00102 {
00103 }
00104 
00105 TAO_END_VERSIONED_NAMESPACE_DECL

Generated on Tue Feb 2 17:44:06 2010 for TAO_RTEvent by  doxygen 1.4.7