CEC_ProxyPushSupplier.i

Go to the documentation of this file.
00001 // -*- C++ -*-
00002 //
00003 // CEC_ProxyPushSupplier.i,v 1.4 2006/04/19 12:36:57 jwillemsen Exp
00004 
00005 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
00006 
00007 ACE_INLINE CORBA::Boolean
00008 TAO_CEC_ProxyPushSupplier::is_connected_i (void) const
00009 {
00010 #if defined (TAO_HAS_TYPED_EVENT_CHANNEL)
00011   if (this->is_typed_ec ())
00012   {
00013     return !CORBA::is_nil (this->typed_consumer_.in ());
00014   }
00015   else
00016   {
00017   return !CORBA::is_nil (this->consumer_.in ());
00018   }
00019 #else
00020   return !CORBA::is_nil (this->consumer_.in ());
00021 #endif /* TAO_HAS_TYPED_EVENT_CHANNEL */
00022 }
00023 
00024 ACE_INLINE CORBA::Boolean
00025 TAO_CEC_ProxyPushSupplier::is_connected (void) const
00026 {
00027   ACE_GUARD_RETURN (ACE_Lock, ace_mon, *this->lock_, 0);
00028 
00029   return this->is_connected_i ();
00030 }
00031 
00032 ACE_INLINE CosEventComm::PushConsumer_ptr
00033 TAO_CEC_ProxyPushSupplier::consumer (void) const
00034 {
00035   ACE_GUARD_RETURN (ACE_Lock, ace_mon, *this->lock_, 0);
00036 
00037 #if defined (TAO_HAS_TYPED_EVENT_CHANNEL)
00038   if (this->is_typed_ec ())
00039   {
00040     return this->typed_consumer_.in ();
00041   }
00042   else
00043   {
00044     return this->consumer_.in ();
00045   }
00046 #else
00047   return this->consumer_.in ();
00048 #endif /* TAO_HAS_TYPED_EVENT_CHANNEL */
00049 }
00050 
00051 ACE_INLINE void
00052 TAO_CEC_ProxyPushSupplier::consumer_i (CosEventComm::PushConsumer_ptr consumer)
00053 {
00054   this->consumer_ = consumer;
00055 }
00056 
00057 #if defined (TAO_HAS_TYPED_EVENT_CHANNEL)
00058 ACE_INLINE void
00059 TAO_CEC_ProxyPushSupplier::consumer_i (CosTypedEventComm::TypedPushConsumer_ptr typed_consumer)
00060 {
00061   this->typed_consumer_ = typed_consumer;
00062 }
00063 #endif /* TAO_HAS_TYPED_EVENT_CHANNEL */
00064 
00065 ACE_INLINE void
00066 TAO_CEC_ProxyPushSupplier::consumer (CosEventComm::PushConsumer_ptr consumer)
00067 {
00068   ACE_GUARD (ACE_Lock, ace_mon, *this->lock_);
00069 
00070   this->consumer_i (consumer);
00071 }
00072 
00073 #if defined (TAO_HAS_TYPED_EVENT_CHANNEL)
00074 ACE_INLINE void
00075 TAO_CEC_ProxyPushSupplier::consumer (CosTypedEventComm::TypedPushConsumer_ptr typed_consumer)
00076 {
00077   ACE_GUARD (ACE_Lock, ace_mon, *this->lock_);
00078 
00079   this->consumer_i (typed_consumer);
00080 }
00081 #endif /* TAO_HAS_TYPED_EVENT_CHANNEL */
00082 
00083 #if defined (TAO_HAS_TYPED_EVENT_CHANNEL)
00084 ACE_INLINE CORBA::Boolean
00085 TAO_CEC_ProxyPushSupplier::is_typed_ec (void) const
00086 {
00087   if (this->typed_event_channel_ != 0)
00088   {
00089     return true;
00090   }
00091   else
00092   {
00093     return false;
00094   }
00095 }
00096 #endif /* TAO_HAS_TYPED_EVENT_CHANNEL */
00097 
00098 TAO_END_VERSIONED_NAMESPACE_DECL

Generated on Thu Nov 9 13:18:17 2006 for TAO_CosEvent by doxygen 1.3.6