Changes to attempt to silence bcc64x
[ACE_TAO.git] / TAO / orbsvcs / examples / CosEC / RtEC_Based / lib / ProxyPushSupplier_i.h
blob1f711ec2a26ac6b0e6aff1d043814e2d44eabfd0
1 /* -*- C++ -*- */
3 //=============================================================================
4 /**
5 * @file ProxyPushSupplier_i.h
7 * @author Pradeep Gore <pradeep@cs.wustl.edu>
9 * This has the implementation of the
10 * CosEventChannelAdmin::ProxyPushSupplier interface.
12 //=============================================================================
15 #ifndef _PROXYPUSHSUPPLIER_H
16 #define _PROXYPUSHSUPPLIER_H
17 #include /**/ "ace/pre.h"
19 #include "orbsvcs/RtecEventChannelAdminC.h"
20 #include "orbsvcs/CosEventChannelAdminC.h"
21 #include "rtec_cosec_export.h"
23 class TAO_CosEC_PushConsumerWrapper;
25 class TAO_RTEC_COSEC_Export TAO_CosEC_ProxyPushSupplier_i :
26 public POA_CosEventChannelAdmin::ProxyPushSupplier
28 // = TITLE
29 // class ProxyPushSupplier-i implements the ProxyPushConsumer interface.
31 // = DESCRIPTION
32 // This implementation of the ProxyPushSupplier uses the
33 // RtecEventChannelAdmin::ProxyPushSupplier.
34 public:
35 /// Constructor.
36 TAO_CosEC_ProxyPushSupplier_i (const RtecEventChannelAdmin::ConsumerQOS &qos,
37 RtecEventChannelAdmin::ProxyPushSupplier_ptr pps);
39 /// Destructor.
40 ~TAO_CosEC_ProxyPushSupplier_i () = default;
42 /// Ends the event communication and disposes this object.
43 virtual void disconnect_push_supplier ();
45 /// Connects the <push_consumer> to the Event Channel.
46 virtual void connect_push_consumer(CosEventComm::PushConsumer_ptr push_consumer);
48 private:
49 /// Returns 0 if a push_consumer is already connected to this
50 /// ProxyPushSupplier, otherwise it returns a 1.
51 int connected ();
53 /// The ConsumerQOS specified by the user of this class.
54 const RtecEventChannelAdmin::ConsumerQOS &qos_;
56 /// The Rtec ProxyPushSupplier specified by the user of this class.
57 RtecEventChannelAdmin::ProxyPushSupplier_var pps_;
59 /// The Rtec PushConsumer wrapper used by the Rtec ProxyPushSupplier.
60 TAO_CosEC_PushConsumerWrapper *wrapper_;
63 #include /**/ "ace/post.h"
64 #endif /* _PROXYPUSHSUPPLIER_H */