dtn::CustodyTimer Class Reference

A custody transfer timer. More...

#include <CustodyTimer.h>

List of all members.

Public Member Functions

 CustodyTimer (const oasys::Time &xmit_time, const CustodyTimerSpec &spec, Bundle *bundle, const LinkRef &link)
 Constructor.
void timeout (const struct timeval &now)
 Virtual timeout function.

Public Attributes

BundleRef bundle_
 The link that it was transmitted on.
LinkRef link_


Detailed Description

A custody transfer timer.

Each bundle stores a vector of these timers, as the bundle may be in flight on multiple links concurrently, each having distinct retransmission timer parameters. When a given timer fires, a retransmission is expected to be initiated on only one link.

When a successful custody signal is received, the daemon will cancel all timers and release custody, informing the routers as such. If a failed custody signal is received or a timer fires, it is up to the router to initiate a retransmission on one or more links.

Definition at line 105 of file CustodyTimer.h.


Constructor & Destructor Documentation

dtn::CustodyTimer::CustodyTimer ( const oasys::Time &  xmit_time,
const CustodyTimerSpec spec,
Bundle bundle,
const LinkRef link 
)

Constructor.

Definition at line 79 of file CustodyTimer.cc.

References dtn::CustodyTimerSpec::calculate_timeout().


Member Function Documentation

void dtn::CustodyTimer::timeout ( const struct timeval &  now  ) 

Virtual timeout function.

The bundle for whom the the timer refers

Definition at line 103 of file CustodyTimer.cc.

References bundle_, link_, and dtn::BundleDaemon::post().


Member Data Documentation

The link that it was transmitted on.

Definition at line 118 of file CustodyTimer.h.

Referenced by timeout().

Definition at line 119 of file CustodyTimer.h.

Referenced by dtn::BundleDaemon::handle_custody_timeout(), and timeout().


The documentation for this class was generated from the following files:

Generated on Fri Jan 30 09:27:03 2009 for DTN Reference Implementation by  doxygen 1.5.8