dtn::BundleEvent Class Reference

#include <BundleEvent.h>

Inheritance diagram for dtn::BundleEvent:

oasys::SerializableObject dtn::BundleAcceptRequest dtn::BundleCancelRequest dtn::BundleDeliveredEvent dtn::BundleDeliveryEvent dtn::BundleExpiredEvent dtn::BundleFreeEvent dtn::BundleInjectRequest dtn::BundleQueryRequest dtn::BundleReceivedEvent dtn::BundleReportEvent dtn::BundleSendRequest dtn::BundleTransmitFailedEvent dtn::BundleTransmittedEvent dtn::ContactEvent dtn::ContactQueryRequest dtn::ContactReportEvent dtn::CustodySignalEvent dtn::CustodyTimeoutEvent dtn::LinkCreateRequest dtn::LinkQueryRequest dtn::LinkReportEvent dtn::ReassemblyCompletedEvent dtn::RegistrationAddedEvent dtn::RegistrationExpiredEvent dtn::RegistrationRemovedEvent dtn::RouteAddEvent dtn::RouteDelEvent dtn::RouteQueryRequest dtn::RouteReportEvent dtn::ShutdownRequest dtn::StatusRequest

List of all members.


Detailed Description

Event base class.

Definition at line 188 of file BundleEvent.h.


Public Member Functions

const char * type_str ()
 Used for printing.
virtual ~BundleEvent ()
 Need a virtual destructor to make sure all the right bits are cleaned up.
virtual void serialize (oasys::SerializeAction *)
 This should call v->process() on each of the types that are to be serialized in the object.

Public Attributes

const event_type_t type_
 The event type code.
bool daemon_only_
 Bit indicating whether this event is for the daemon only or if it should be propagated to other components (i.e.
oasys::Notifierprocessed_notifier_
 Slot for a notifier to indicate that the event was processed.

Protected Member Functions

 BundleEvent (event_type_t type)
 Constructor (protected since one of the subclasses should always be that which is actually initialized.

Constructor & Destructor Documentation

virtual dtn::BundleEvent::~BundleEvent (  )  [inline, virtual]

Need a virtual destructor to make sure all the right bits are cleaned up.

Definition at line 218 of file BundleEvent.h.

dtn::BundleEvent::BundleEvent ( event_type_t  type  )  [inline, protected]

Constructor (protected since one of the subclasses should always be that which is actually initialized.

Definition at line 228 of file BundleEvent.h.


Member Function Documentation

const char* dtn::BundleEvent::type_str (  )  [inline]

Used for printing.

Definition at line 210 of file BundleEvent.h.

References dtn::event_to_str(), and type_.

Referenced by dtn::BundleEventHandler::dispatch_event(), dtnsim::Node::post_event(), dtn::BundleDaemon::post_event(), dtnsim::Node::process_bundle_events(), and dtn::BundleDaemon::run().

virtual void dtn::BundleEvent::serialize ( oasys::SerializeAction a  )  [inline, virtual]

This should call v->process() on each of the types that are to be serialized in the object.

Implements oasys::SerializableObject.

Reimplemented in dtn::BundleReceivedEvent, dtn::BundleTransmittedEvent, dtn::BundleTransmitFailedEvent, dtn::BundleDeliveredEvent, dtn::BundleDeliveryEvent, dtn::BundleExpiredEvent, dtn::BundleFreeEvent, dtn::ContactEvent, dtn::ContactUpEvent, dtn::ContactDownEvent, dtn::ContactQueryRequest, dtn::ContactReportEvent, dtn::LinkCreatedEvent, dtn::LinkDeletedEvent, dtn::LinkAvailableEvent, dtn::LinkUnavailableEvent, dtn::LinkStateChangeRequest, dtn::RegistrationAddedEvent, dtn::RegistrationRemovedEvent, dtn::RegistrationExpiredEvent, dtn::RouteAddEvent, dtn::RouteDelEvent, dtn::RouteQueryRequest, dtn::RouteReportEvent, dtn::ReassemblyCompletedEvent, dtn::CustodySignalEvent, dtn::CustodyTimeoutEvent, dtn::ShutdownRequest, dtn::StatusRequest, dtn::BundleSendRequest, dtn::BundleCancelRequest, dtn::BundleInjectRequest, dtn::BundleAcceptRequest, dtn::BundleQueryRequest, dtn::BundleReportEvent, dtn::LinkCreateRequest, dtn::LinkQueryRequest, and dtn::LinkReportEvent.

Definition at line 221 of file BundleEvent.h.


Member Data Documentation

const event_type_t dtn::BundleEvent::type_

The event type code.

Definition at line 193 of file BundleEvent.h.

Referenced by dtn::BundleEventHandler::dispatch_event(), and type_str().

bool dtn::BundleEvent::daemon_only_

Bit indicating whether this event is for the daemon only or if it should be propagated to other components (i.e.

the various routers).

Definition at line 200 of file BundleEvent.h.

Referenced by dtn::BundleCancelRequest::BundleCancelRequest(), dtn::BundleFreeEvent::BundleFreeEvent(), dtn::BundleInjectRequest::BundleInjectRequest(), dtn::BundleQueryRequest::BundleQueryRequest(), dtn::BundleSendRequest::BundleSendRequest(), dtn::ContactQueryRequest::ContactQueryRequest(), dtn::BundleDaemon::handle_event(), dtn::LinkCreateRequest::LinkCreateRequest(), dtn::LinkQueryRequest::LinkQueryRequest(), dtn::LinkStateChangeRequest::LinkStateChangeRequest(), dtn::RouteQueryRequest::RouteQueryRequest(), dtn::ShutdownRequest::ShutdownRequest(), and dtn::StatusRequest::StatusRequest().

oasys::Notifier* dtn::BundleEvent::processed_notifier_

Slot for a notifier to indicate that the event was processed.

Definition at line 205 of file BundleEvent.h.

Referenced by dtn::BundleDaemon::handle_event(), and dtn::BundleDaemon::post_and_wait().


The documentation for this class was generated from the following file:
Generated on Sat Sep 8 08:43:43 2007 for DTN Reference Implementation by  doxygen 1.5.3