summaryrefslogtreecommitdiff
path: root/protocols/ace/RMCast/RMCast_UDP_Proxy.h
diff options
context:
space:
mode:
authorcoryan <coryan@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2000-10-10 00:06:30 +0000
committercoryan <coryan@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2000-10-10 00:06:30 +0000
commit5b289d194bb93cda55f6ca875b28bd244c423ebf (patch)
treece5a6138f080446ab83584240453558fc8db4a08 /protocols/ace/RMCast/RMCast_UDP_Proxy.h
parentf9a37b4a5604160c9169c7a2b19033b010a19bd4 (diff)
downloadATCD-5b289d194bb93cda55f6ca875b28bd244c423ebf.tar.gz
ChangeLogTag:Mon Oct 09 16:45:00 2000 Carlos O'Ryan <coryan@uci.edu>
Diffstat (limited to 'protocols/ace/RMCast/RMCast_UDP_Proxy.h')
-rw-r--r--protocols/ace/RMCast/RMCast_UDP_Proxy.h38
1 files changed, 26 insertions, 12 deletions
diff --git a/protocols/ace/RMCast/RMCast_UDP_Proxy.h b/protocols/ace/RMCast/RMCast_UDP_Proxy.h
index 02d4e3409a9..f1a7f77a25a 100644
--- a/protocols/ace/RMCast/RMCast_UDP_Proxy.h
+++ b/protocols/ace/RMCast/RMCast_UDP_Proxy.h
@@ -28,28 +28,41 @@
class ACE_RMCast_IO_UDP;
+/// Define the proxy implementation for UDP based communication
+/**
+ * Proxy objects are transport specific, they are responsible for
+ * storing the remote peer addressing information.
+ * This class implements the UDP version of a proxy.
+ */
class ACE_RMCast_Export ACE_RMCast_UDP_Proxy : public ACE_RMCast_Proxy
{
- // = TITLE
- // Proxy for UDP-based RMCast
- //
- // = DESCRIPTION
- //
public:
+ /// Constructor
+ /**
+ * The \param io_udp argument is kept to send the replys through the
+ * right socket.
+ * The \param peer_addr is the address used byu the peer to receive
+ * responses.
+ */
ACE_RMCast_UDP_Proxy (ACE_RMCast_IO_UDP *io_udp,
const ACE_INET_Addr &peer_addr);
- // Constructor
+ /// Destructor
virtual ~ACE_RMCast_UDP_Proxy (void);
- // Destructor
+ /// Receive a message, parse and send it upstream in the right
+ /// format.
int receive_message (char *buffer, size_t size);
- // Receive the message
+ /// Make the peer address available
const ACE_INET_Addr &peer_addr (void) const;
- // The address of the peer
- // = The ACE_RMCast_Proxy methods
+ //@{
+ /**
+ * Implement the ACE_RMCast_Proxy methods, in this case we use the
+ * \param io_udp_ object to send the data, using the address of our
+ * remote peer.
+ */
virtual int reply_data (ACE_RMCast::Data &);
virtual int reply_poll (ACE_RMCast::Poll &);
virtual int reply_ack_join (ACE_RMCast::Ack_Join &);
@@ -57,13 +70,14 @@ public:
virtual int reply_ack (ACE_RMCast::Ack &);
virtual int reply_join (ACE_RMCast::Join &);
virtual int reply_leave (ACE_RMCast::Leave &);
+ //@}
private:
+ /// The IO facade
ACE_RMCast_IO_UDP *io_udp_;
- // The IO facade
+ /// The remote peer's address
ACE_INET_Addr peer_addr_;
- // The address of the peer
};
#if defined (__ACE_INLINE__)