summaryrefslogtreecommitdiff
path: root/TAO/DevGuideExamples/EventServices/RTEC_Basic/EchoEventConsumer_i.h
blob: c59aa7944a8affd842487a46928bc24ca1ccff38 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
// EchoEventConsumer_i.h
// Implements a PushConsumer.

#ifndef _EchoEventConsumer_i_h_
#define _EchoEventConsumer_i_h_

#include <orbsvcs/RtecEventCommS.h>    // for POA_CosEventComm::PushConsumer
#include <orbsvcs/RtecEventChannelAdminC.h>

class EchoEventConsumer_i : public virtual POA_RtecEventComm::PushConsumer
{
  public:
    // Constructor
    EchoEventConsumer_i(CORBA::ORB_ptr orb,
                        RtecEventChannelAdmin::ProxyPushSupplier_ptr supplier,
                        int event_limit);

    // Override operations from PushConsumer interface.
    virtual void push(const RtecEventComm::EventSet& events)
     throw(CORBA::SystemException);

    virtual void disconnect_push_consumer()
     throw(CORBA::SystemException);

  private:
    CORBA::ORB_var orb_;
    RtecEventChannelAdmin::ProxyPushSupplier_var supplier_;
    int event_limit_;
};

#endif // _EchoEventConsumer_i_h_