summaryrefslogtreecommitdiff
path: root/TAO/orbsvcs/orbsvcs/Event/EC_UDP_Admin.h
diff options
context:
space:
mode:
authorcoryan <coryan@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1998-09-04 22:00:26 +0000
committercoryan <coryan@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1998-09-04 22:00:26 +0000
commit8fd36918500991a638d81cdcead9c9c80fd119c1 (patch)
tree6e61bb9e28f54be0b4e6e1bdc8a1b5ff748e426e /TAO/orbsvcs/orbsvcs/Event/EC_UDP_Admin.h
parent0eb92a3dd5f7ee31b0ef3a5c4c1780a4977a89bb (diff)
downloadATCD-8fd36918500991a638d81cdcead9c9c80fd119c1.tar.gz
ChangeLogTag:Fri Sep 4 16:44:19 1998 Carlos O'Ryan <coryan@cs.wustl.edu>
Diffstat (limited to 'TAO/orbsvcs/orbsvcs/Event/EC_UDP_Admin.h')
-rw-r--r--TAO/orbsvcs/orbsvcs/Event/EC_UDP_Admin.h70
1 files changed, 70 insertions, 0 deletions
diff --git a/TAO/orbsvcs/orbsvcs/Event/EC_UDP_Admin.h b/TAO/orbsvcs/orbsvcs/Event/EC_UDP_Admin.h
new file mode 100644
index 00000000000..ef2220d1714
--- /dev/null
+++ b/TAO/orbsvcs/orbsvcs/Event/EC_UDP_Admin.h
@@ -0,0 +1,70 @@
+/* -*- C++ -*- */
+// $Id$
+//
+// ============================================================================
+//
+// = LIBRARY
+// TAO services
+//
+// = FILENAME
+// EC_UDP_Admin
+//
+// = AUTHOR
+// Carlos O'Ryan
+//
+// = DESCRIPTION
+// Simple implementations of the UDP Administration service.
+//
+// connects to a "remote" EC as a consumer, it also connects to the
+// <local> EC as a supplier of events, this later EC is usually
+// collocated.
+// The QoS parameters for both connections must be provided by the
+// user.
+// To avoid infinite loops of events the Gateway descreases the TTL
+// field of the events and will not deliver any events with TTL less
+// than or equal to 0.
+//
+// = TODO
+// The class makes an extra copy of the events, we need to
+// investigate if closer collaboration with its collocated EC could
+// be used to remove that copy.
+//
+// ============================================================================
+
+#ifndef TAO_EC_UDP_ADMIN_H
+#define TAO_EC_UDP_ADMIN_H
+
+#include "orbsvcs/RtecUDPAdminS.h"
+#include "orbsvcs/orbsvcs_export.h"
+
+class TAO_ORBSVCS_Export TAO_EC_Simple_AddrServer : public POA_RtecUDPAdmin::AddrServer
+{
+ // = TITLE
+ // TAO Real-time Event Service; a simple UDP address server.
+ //
+ // = DESCRIPTION
+ // The EC is able to use multiple multicast groups to transmit its
+ // data, the is given control over the mapping between the Event
+ // (type,source) pair and the (ipaddr,port) pair using a
+ // AddrServer.
+ // This class implements a very simple server that simply maps the
+ // <type> component to the <ipaddr> and uses a fixed <port>,
+ // provided at initialization time.
+ //
+public:
+ TAO_EC_Simple_AddrServer (CORBA::UShort port);
+ // Constructor
+
+ virtual ~TAO_EC_Simple_AddrServer (void);
+ // Destructor
+
+ // = The RtecUDPAdmin::AddrServer methods
+ virtual void get_addr (const RtecEventComm::EventHeader& header,
+ RtecUDPAdmin::UDP_Addr_out addr,
+ CORBA::Environment& env);
+
+private:
+ CORBA::UShort port_;
+};
+
+#endif /* TAO_EC_UDP_ADMIN_H */