Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

ACE_RMCast_Proxy Class Reference

Local representation for remote peers. More...

#include <RMCast_Proxy.h>

Inheritance diagram for ACE_RMCast_Proxy

Inheritance graph
[legend]
Collaboration diagram for ACE_RMCast_Proxy:

Collaboration graph
[legend]
List of all members.

Public Methods

 ACE_RMCast_Proxy (void)
 Constructor.

virtual ~ACE_RMCast_Proxy (void)
 Destructor.

virtual ACE_UINT32 next_expected (void) const
 Return the next sequence number expected by the peer. Only applies to remote receiver proxies. More...

virtual ACE_UINT32 highest_received (void) const
 Return the highest sequence number successfully received. Only applies to remote receiver proxies. More...

virtual int ack (ACE_RMCast::Ack &)
virtual int reply_data (ACE_RMCast::Data &) = 0
 Send messages directly to the peer. More...

virtual int reply_poll (ACE_RMCast::Poll &) = 0
virtual int reply_ack_join (ACE_RMCast::Ack_Join &)
virtual int reply_ack_leave (ACE_RMCast::Ack_Leave &) = 0
virtual int reply_ack (ACE_RMCast::Ack &) = 0
virtual int reply_join (ACE_RMCast::Join &) = 0
virtual int reply_leave (ACE_RMCast::Leave &) = 0

Private Attributes

ACE_UINT32 next_expected_
 Cache the sequence numbers reported from the remote peer using Ack messages.

ACE_UINT32 highest_received_

Detailed Description

Local representation for remote peers.

Both senders and receivers in the multicast group need to maintain explicit representations of their "peers". For example, a sender needs to know the list of all the receivers and what messages they have reported as successfully received. Likewise, the receiver needs to maintain separate state for each remote sender, and must be able to disconnect from all of them gracefully when needed. The RMCast_Proxy class is an opaque representation of such a peer, and hides all the networking details from the rest of the system.


Constructor & Destructor Documentation

ACE_INLINE ACE_RMCast_Proxy::ACE_RMCast_Proxy ( void )
 

Constructor.

ACE_RMCast_Proxy::~ACE_RMCast_Proxy ( void ) [virtual]
 

Destructor.


Member Function Documentation

int ACE_RMCast_Proxy::ack ( ACE_RMCast::Ack & ack ) [virtual]
 

Proxies process the ACK sequence numbers to cache the ack information from the peer.

Reimplemented from ACE_RMCast_Module.

ACE_UINT32 ACE_RMCast_Proxy::highest_received ( void ) const [virtual]
 

Return the highest sequence number successfully received. Only applies to remote receiver proxies.

Please read the documentation in ACE_RMCast::Ack

ACE_UINT32 ACE_RMCast_Proxy::next_expected ( void ) const [virtual]
 

Return the next sequence number expected by the peer. Only applies to remote receiver proxies.

Please read the documentation in ACE_RMCast::Ack

int ACE_RMCast_Proxy::reply_ack ( ACE_RMCast::Ack & ack ) [pure virtual]
 

Reimplemented in ACE_RMCast_UDP_Proxy.

int ACE_RMCast_Proxy::reply_ack_join ( ACE_RMCast::Ack_Join & ack_join ) [virtual]
 

Reimplemented in ACE_RMCast_UDP_Proxy.

int ACE_RMCast_Proxy::reply_ack_leave ( ACE_RMCast::Ack_Leave & ack_leave ) [pure virtual]
 

Reimplemented in ACE_RMCast_UDP_Proxy.

int ACE_RMCast_Proxy::reply_data ( ACE_RMCast::Data & data ) [pure virtual]
 

Send messages directly to the peer.

Send a message directly to the peer, i.e. the message is not sent through the multicast group and it may not be processed by all the layers in the stack.

Reimplemented in ACE_RMCast_UDP_Proxy.

int ACE_RMCast_Proxy::reply_join ( ACE_RMCast::Join & join ) [pure virtual]
 

Reimplemented in ACE_RMCast_UDP_Proxy.

int ACE_RMCast_Proxy::reply_leave ( ACE_RMCast::Leave & leave ) [pure virtual]
 

Reimplemented in ACE_RMCast_UDP_Proxy.

int ACE_RMCast_Proxy::reply_poll ( ACE_RMCast::Poll & poll ) [pure virtual]
 

Reimplemented in ACE_RMCast_UDP_Proxy.


Member Data Documentation

ACE_UINT32 ACE_RMCast_Proxy::highest_received_ [private]
 

ACE_UINT32 ACE_RMCast_Proxy::next_expected_ [private]
 

Cache the sequence numbers reported from the remote peer using Ack messages.


The documentation for this class was generated from the following files:
Generated at Sat Dec 1 11:18:00 2001 for ACE_RMCast by doxygen1.2.3 written by Dimitri van Heesch, © 1997-2000