OpenDDS::DCPS::MulticastDataLink Class Reference

#include <MulticastDataLink.h>

Inheritance diagram for OpenDDS::DCPS::MulticastDataLink:

Inheritance graph
[legend]
Collaboration diagram for OpenDDS::DCPS::MulticastDataLink:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 MulticastDataLink (MulticastTransport *transport, MulticastSessionFactory *session_factory, MulticastPeer local_peer, bool is_active)
virtual ~MulticastDataLink ()
MulticastTransporttransport ()
MulticastPeer local_peer () const
void configure (MulticastInst *config, TransportReactorTask *reactor_task)
void send_strategy (MulticastSendStrategy *send_strategy)
MulticastSendStrategysend_strategy ()
void receive_strategy (MulticastReceiveStrategy *recv_strategy)
MulticastReceiveStrategyreceive_strategy ()
TransportSendBuffersend_buffer ()
MulticastInstconfig ()
TransportReactorTaskreactor_task ()
ACE_Reactor * get_reactor ()
ACE_SOCK_Dgram_Mcast & socket ()
bool join (const ACE_INET_Addr &group_address)
MulticastSessionfind_or_create_session (MulticastPeer remote_peer)
MulticastSessionfind_session (MulticastPeer remote_peer)
bool check_header (const TransportHeader &header)
bool check_header (const DataSampleHeader &header)
void sample_received (ReceivedDataSample &sample)
bool reassemble (ReceivedDataSample &data, const TransportHeader &header)

Private Types

typedef std::map< MulticastPeer,
MulticastSession_rch
MulticastSessionMap

Private Member Functions

virtual void stop_i ()

Private Attributes

MulticastTransporttransport_
MulticastSessionFactory_rch session_factory_
MulticastPeer local_peer_
MulticastInstconfig_
TransportReactorTaskreactor_task_
MulticastSendStrategy_rch send_strategy_
 The transport send strategy object for this DataLink.
MulticastReceiveStrategy_rch recv_strategy_
TransportSendBuffer_rch send_buffer_
ACE_SOCK_Dgram_Mcast socket_
ACE_SYNCH_RECURSIVE_MUTEX session_lock_
MulticastSessionMap sessions_

Member Typedef Documentation

typedef std::map<MulticastPeer, MulticastSession_rch> OpenDDS::DCPS::MulticastDataLink::MulticastSessionMap [private]


Constructor & Destructor Documentation

OpenDDS::DCPS::MulticastDataLink::MulticastDataLink ( MulticastTransport transport,
MulticastSessionFactory session_factory,
MulticastPeer  local_peer,
bool  is_active 
)

OpenDDS::DCPS::MulticastDataLink::~MulticastDataLink (  )  [virtual]


Member Function Documentation

bool OpenDDS::DCPS::MulticastDataLink::check_header ( const DataSampleHeader header  ) 

bool OpenDDS::DCPS::MulticastDataLink::check_header ( const TransportHeader header  ) 

ACE_INLINE MulticastInst * OpenDDS::DCPS::MulticastDataLink::config (  ) 

void OpenDDS::DCPS::MulticastDataLink::configure ( MulticastInst config,
TransportReactorTask reactor_task 
)

MulticastSession * OpenDDS::DCPS::MulticastDataLink::find_or_create_session ( MulticastPeer  remote_peer  ) 

MulticastSession * OpenDDS::DCPS::MulticastDataLink::find_session ( MulticastPeer  remote_peer  ) 

ACE_INLINE ACE_Reactor * OpenDDS::DCPS::MulticastDataLink::get_reactor (  ) 

bool OpenDDS::DCPS::MulticastDataLink::join ( const ACE_INET_Addr &  group_address  ) 

ACE_INLINE MulticastPeer OpenDDS::DCPS::MulticastDataLink::local_peer (  )  const

ACE_INLINE TransportReactorTask * OpenDDS::DCPS::MulticastDataLink::reactor_task (  ) 

bool OpenDDS::DCPS::MulticastDataLink::reassemble ( ReceivedDataSample data,
const TransportHeader header 
)

ACE_INLINE MulticastReceiveStrategy * OpenDDS::DCPS::MulticastDataLink::receive_strategy (  ) 

void OpenDDS::DCPS::MulticastDataLink::receive_strategy ( MulticastReceiveStrategy recv_strategy  ) 

void OpenDDS::DCPS::MulticastDataLink::sample_received ( ReceivedDataSample sample  ) 

ACE_INLINE TransportSendBuffer * OpenDDS::DCPS::MulticastDataLink::send_buffer (  ) 

ACE_INLINE MulticastSendStrategy * OpenDDS::DCPS::MulticastDataLink::send_strategy (  ) 

void OpenDDS::DCPS::MulticastDataLink::send_strategy ( MulticastSendStrategy send_strategy  ) 

ACE_INLINE ACE_SOCK_Dgram_Mcast & OpenDDS::DCPS::MulticastDataLink::socket (  ) 

void OpenDDS::DCPS::MulticastDataLink::stop_i (  )  [private, virtual]

This announces the "stop" event to our subclass. The "stop" event will occur when this DataLink is handling a release_reservations() call and determines that it has just released all of the remaining reservations on this DataLink. The "stop" event will also occur when the TransportImpl is being shutdown() - we call stop_i() from our transport_shutdown() method to handle this case.

Reimplemented from OpenDDS::DCPS::DataLink.

ACE_INLINE MulticastTransport * OpenDDS::DCPS::MulticastDataLink::transport (  ) 


Member Data Documentation

MulticastInst* OpenDDS::DCPS::MulticastDataLink::config_ [private]

MulticastPeer OpenDDS::DCPS::MulticastDataLink::local_peer_ [private]

TransportReactorTask* OpenDDS::DCPS::MulticastDataLink::reactor_task_ [private]

MulticastReceiveStrategy_rch OpenDDS::DCPS::MulticastDataLink::recv_strategy_ [private]

TransportSendBuffer_rch OpenDDS::DCPS::MulticastDataLink::send_buffer_ [private]

MulticastSendStrategy_rch OpenDDS::DCPS::MulticastDataLink::send_strategy_ [private]

The transport send strategy object for this DataLink.

Reimplemented from OpenDDS::DCPS::DataLink.

MulticastSessionFactory_rch OpenDDS::DCPS::MulticastDataLink::session_factory_ [private]

ACE_SYNCH_RECURSIVE_MUTEX OpenDDS::DCPS::MulticastDataLink::session_lock_ [private]

MulticastSessionMap OpenDDS::DCPS::MulticastDataLink::sessions_ [private]

ACE_SOCK_Dgram_Mcast OpenDDS::DCPS::MulticastDataLink::socket_ [private]

MulticastTransport* OpenDDS::DCPS::MulticastDataLink::transport_ [private]


The documentation for this class was generated from the following files:
Generated on Wed Nov 16 15:29:10 2011 for OpenDDS by  doxygen 1.4.7