24 #ifndef OMNIEVENTS__PROXYPULLSUPPLIER_H
25 #define OMNIEVENTS__PROXYPULLSUPPLIER_H
34 # include <iostream.h>
40 #include "CosEventChannelAdmin.hh"
42 #ifdef HAVE_STD_IOSTREAM
52 public PortableServer::RefCountServantBase
55 PortableServer::Servant incarnate(
56 const PortableServer::ObjectId& oid,
57 PortableServer::POA_ptr poa
62 PortableServer::POA_ptr parentPoa,
67 CosEventChannelAdmin::ProxyPullSupplier_ptr createObject();
85 :
public virtual POA_CosEventChannelAdmin::ProxyPullSupplier,
90 void connect_pull_consumer(CosEventComm::PullConsumer_ptr pullConsumer);
91 void disconnect_pull_supplier();
93 CORBA::Any* try_pull(CORBA::Boolean& has_event);
97 void reincarnate(
const string& oid,
const PersistNode& node);
98 void output(ostream& os);
99 inline unsigned long timestamp()
const {
return _timestamp;}
#define OMNIEVENTS__DEBUG_REF_COUNTS__DECL
Declares debug versions of _add/remove_ref().
Servant for CosEventChannelAdmin::EventChannel objects, also inherits from omni_thread.
The EventQueue is a circular buffer, that contains _size-1 events.
Base class for ServantActivator classes that manage Proxy servants.
Base class for three of the four Proxy servants.
EventQueue & _queue
Reference to queue shared with ProxyPushSuppliers.
int _maxNumProxies
Upper limit on number of proxies.
const EventChannel_i & _channel
Servant for ProxyPullSupplier interface.
unsigned long timestamp() const
CosEventComm::PullConsumer_var _target
unsigned long _timestamp
Keep track of when this proxy was last contacted.
bool _connected
Can't use _target to keep track of whether this object is connected, because it is legal to connect w...