dtn::SerialConvergenceLayer::Connection Class Reference

Helper class (and thread) that manages an established connection with a peer daemon. More...

#include <SerialConvergenceLayer.h>

Inheritance diagram for dtn::SerialConvergenceLayer::Connection:
dtn::StreamConvergenceLayer::Connection dtn::CLConnection dtn::CLInfo

List of all members.

Public Member Functions

 Connection (SerialConvergenceLayer *cl, const LinkRef &link, SerialLinkParams *params)
 Constructor for a connection.
virtual ~Connection ()
 Destructor.
virtual void serialize (oasys::SerializeAction *a)
 Virtual from SerializableObject.

Protected Member Functions

void recv_data ()
 Hook for handle_poll_activity to receive data.
void send_sync ()
 Send a sync byte.
SerialLinkParamsserial_lparams ()
 Utility function to downcast the params_ pointer that's stored in the CLConnection parent class.

virtual void connect ()
 Virtual from CLConnection.
virtual void disconnect ()
 Virtual from CLConnection.
virtual void initialize_pollfds ()
 Virtual from CLConnection.
virtual void handle_poll_timeout ()
 Virtual from CLConnection.
virtual void handle_poll_activity ()
 Virtual from CLConnection.

void send_data ()
 virtual from StreamConvergenceLayer::Connection

Protected Attributes

oasys::TTY * tty_
 The tty.
struct pollfd * tty_pollfd_
 Poll structure for the tty.
bool synced_
 Whether the SYNC has completed.

Friends

class SerialConvergenceLayer

Detailed Description

Helper class (and thread) that manages an established connection with a peer daemon.

Although the same class is used in both cases, a particular Connection is either a receiver or a sender, as indicated by the direction variable. Note that to deal with NAT, the side which does the active connect is not necessarily the sender.

Definition at line 95 of file SerialConvergenceLayer.h.


Constructor & Destructor Documentation

dtn::SerialConvergenceLayer::Connection::Connection ( SerialConvergenceLayer cl,
const LinkRef link,
SerialLinkParams params 
)

Constructor for a connection.

Definition at line 138 of file SerialConvergenceLayer.cc.

References dtn::CLConnection::set_nexthop(), synced_, and tty_.

dtn::SerialConvergenceLayer::Connection::~Connection (  )  [virtual]

Destructor.

Definition at line 158 of file SerialConvergenceLayer.cc.

References tty_.


Member Function Documentation

void dtn::SerialConvergenceLayer::Connection::connect (  )  [protected, virtual]
void dtn::SerialConvergenceLayer::Connection::disconnect (  )  [protected, virtual]

Virtual from CLConnection.

Implements dtn::CLConnection.

Definition at line 247 of file SerialConvergenceLayer.cc.

References tty_.

void dtn::SerialConvergenceLayer::Connection::handle_poll_activity (  )  [protected, virtual]
void dtn::SerialConvergenceLayer::Connection::handle_poll_timeout (  )  [protected, virtual]
void dtn::SerialConvergenceLayer::Connection::initialize_pollfds (  )  [protected, virtual]
void dtn::SerialConvergenceLayer::Connection::recv_data (  )  [protected]
void dtn::SerialConvergenceLayer::Connection::send_data (  )  [protected, virtual]
void dtn::SerialConvergenceLayer::Connection::send_sync (  )  [protected]

Send a sync byte.

Definition at line 256 of file SerialConvergenceLayer.cc.

References ASSERT, send_data(), dtn::CLConnection::sendbuf_, and dtn::SerialConvergenceLayer::SYNC.

Referenced by connect(), and handle_poll_timeout().

SerialLinkParams* dtn::SerialConvergenceLayer::Connection::serial_lparams (  )  [inline, protected]

Utility function to downcast the params_ pointer that's stored in the CLConnection parent class.

Definition at line 139 of file SerialConvergenceLayer.h.

References ASSERT, and dtn::CLConnection::params_.

Referenced by connect(), handle_poll_timeout(), initialize_pollfds(), recv_data(), and send_data().

void dtn::SerialConvergenceLayer::Connection::serialize ( oasys::SerializeAction *  a  )  [virtual]

Virtual from SerializableObject.

Reimplemented from dtn::CLInfo.

Definition at line 165 of file SerialConvergenceLayer.cc.


Friends And Related Function Documentation

friend class SerialConvergenceLayer [friend]

Definition at line 115 of file SerialConvergenceLayer.h.


Member Data Documentation

Whether the SYNC has completed.

Definition at line 148 of file SerialConvergenceLayer.h.

Referenced by Connection(), handle_poll_timeout(), and recv_data().

Poll structure for the tty.

Definition at line 147 of file SerialConvergenceLayer.h.

Referenced by handle_poll_activity(), initialize_pollfds(), and send_data().


The documentation for this class was generated from the following files:
Generated on Sun Nov 21 11:41:05 2010 for DTN Reference Implementation by  doxygen 1.6.3