00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014 #ifndef TAO_EC_DEFAULT_PROXYCONSUMER_H
00015 #define TAO_EC_DEFAULT_PROXYCONSUMER_H
00016
00017 #include "ace/pre.h"
00018
00019 #include "orbsvcs/RtecEventChannelAdminS.h"
00020
00021 #if !defined (ACE_LACKS_PRAGMA_ONCE)
00022 # pragma once
00023 #endif
00024
00025 #include "orbsvcs/Event/EC_ProxyConsumer.h"
00026
00027 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
00028
00029 class TAO_EC_Event_Channel_Base;
00030 class TAO_EC_ProxyPushSupplier;
00031 class TAO_EC_Supplier_Filter;
00032
00033
00034
00035
00036
00037
00038
00039 class TAO_RTEvent_Serv_Export TAO_EC_Default_ProxyPushConsumer :
00040 public POA_RtecEventChannelAdmin::ProxyPushConsumer,
00041 public TAO_EC_ProxyPushConsumer
00042 {
00043 public:
00044
00045
00046 TAO_EC_Default_ProxyPushConsumer (TAO_EC_Event_Channel_Base* event_channel);
00047
00048
00049 virtual ~TAO_EC_Default_ProxyPushConsumer (void);
00050
00051 virtual void activate (
00052 RtecEventChannelAdmin::ProxyPushConsumer_ptr &proxy);
00053
00054
00055 virtual void connect_push_supplier (
00056 RtecEventComm::PushSupplier_ptr push_supplier,
00057 const RtecEventChannelAdmin::SupplierQOS& qos);
00058 virtual void push (const RtecEventComm::EventSet& event);
00059 virtual void disconnect_push_consumer (void);
00060
00061
00062 virtual PortableServer::POA_ptr _default_POA (void);
00063 virtual void _add_ref (void);
00064 virtual void _remove_ref (void);
00065
00066 private:
00067
00068 virtual PortableServer::ObjectId
00069 object_id (void);
00070 };
00071
00072 TAO_END_VERSIONED_NAMESPACE_DECL
00073
00074 #include "ace/post.h"
00075
00076 #endif