IBR-DTNSuite
0.10
|
#include <DTNTPWorker.h>
Classes | |
class | TimeSyncMessage |
Public Member Functions | |
DTNTPWorker () | |
virtual | ~DTNTPWorker () |
void | callbackBundleReceived (const Bundle &b) |
void | raiseEvent (const dtn::core::Event *evt) throw () |
void | update (const ibrcommon::vinterface &iface, DiscoveryAnnouncement &announcement) throw (NoServiceHereException) |
Public Member Functions inherited from dtn::core::AbstractWorker | |
AbstractWorker () | |
virtual | ~AbstractWorker () |
virtual const EID | getWorkerURI () const |
Public Member Functions inherited from ibrcommon::Mutex | |
Mutex (MUTEX_TYPE type=MUTEX_NORMAL) | |
virtual | ~Mutex () |
virtual void | trylock () throw (MutexException) |
virtual void | enter () throw (MutexException) |
virtual void | leave () throw (MutexException) |
Public Member Functions inherited from ibrcommon::MutexInterface | |
virtual | ~MutexInterface ()=0 |
Public Member Functions inherited from dtn::core::EventReceiver | |
virtual | ~EventReceiver ()=0 |
Public Member Functions inherited from dtn::net::DiscoveryServiceProvider | |
virtual | ~DiscoveryServiceProvider () |
Additional Inherited Members | |
Public Types inherited from ibrcommon::Mutex | |
enum | MUTEX_TYPE { MUTEX_NORMAL = PTHREAD_MUTEX_NORMAL, MUTEX_RECURSIVE = PTHREAD_MUTEX_RECURSIVE, MUTEX_ERRORCHECK = PTHREAD_MUTEX_ERRORCHECK } |
Static Public Member Functions inherited from ibrcommon::Mutex | |
static MutexInterface & | dummy () |
Protected Member Functions inherited from dtn::core::AbstractWorker | |
void | initialize (const std::string &uri, const dtn::data::Number &cbhe, bool async) |
void | transmit (const Bundle &bundle) |
void | shutdown () |
void | subscribe (const dtn::data::EID &endpoint) |
void | unsubscribe (const dtn::data::EID &endpoint) |
Protected Attributes inherited from dtn::core::AbstractWorker | |
EID | _eid |
Definition at line 34 of file DTNTPWorker.h.
dtn::daemon::DTNTPWorker::DTNTPWorker | ( | ) |
Constructor
Definition at line 46 of file DTNTPWorker.cpp.
References dtn::core::EventDispatcher< E >::add(), dtn::daemon::Configuration::TimeSync::doSync(), dtn::daemon::Configuration::getInstance(), dtn::daemon::Configuration::TimeSync::getPsi(), dtn::daemon::Configuration::TimeSync::getSigma(), dtn::daemon::Configuration::TimeSync::getSyncLevel(), dtn::utils::Clock::getTime(), dtn::daemon::Configuration::getTimeSync(), dtn::daemon::Configuration::TimeSync::hasReference(), IBRCOMMON_LOGGER_ENDL, IBRCOMMON_LOGGER_TAG, ibrcommon::LogLevel::info, dtn::daemon::Configuration::TimeSync::sendDiscoveryAnnouncements(), dtn::utils::Clock::setRating(), and ibrcommon::LogLevel::warning.
|
virtual |
Destructor
Definition at line 91 of file DTNTPWorker.cpp.
References dtn::core::EventDispatcher< E >::remove().
|
virtual |
This method is called every time a bundles is received for this endpoint.
b |
Implements dtn::core::AbstractWorker.
Definition at line 440 of file DTNTPWorker.cpp.
References dtn::data::Bundle::begin(), dtn::data::AgeBlock::BLOCK_TYPE, ibrcommon::BLOB::iostream::clear(), dtn::data::PrimaryBlock::destination, dtn::data::PrimaryBlock::DESTINATION_IS_SINGLETON, dtn::data::Bundle::end(), dtn::data::Bundle::find(), dtn::data::SDNV< E >::get(), dtn::data::PayloadBlock::getBLOB(), dtn::data::AgeBlock::getMicroseconds(), dtn::data::EID::getNode(), dtn::utils::Clock::getRating(), dtn::data::AgeBlock::getSeconds(), dtn::data::EID::getString(), dtn::utils::Clock::gettimeofday(), IBRCOMMON_LOGGER_ENDL, IBRCOMMON_LOGGER_TAG, ibrcommon::LogLevel::info, ibrcommon::BLOB::iostream::iostream(), ibrcommon::BLOB::Reference::iostream(), dtn::data::PrimaryBlock::lifetime, dtn::core::BundleCore::local, dtn::data::PrimaryBlock::PRIORITY_BIT1, dtn::data::PrimaryBlock::PRIORITY_BIT2, dtn::data::Bundle::push_front(), dtn::data::PrimaryBlock::relabel(), dtn::data::PrimaryBlock::set(), dtn::data::ScopeControlHopLimitBlock::setLimit(), dtn::data::PrimaryBlock::source, dtn::daemon::DTNTPWorker::TimeSyncMessage::TIMESYNC_REQUEST, dtn::daemon::DTNTPWorker::TimeSyncMessage::TIMESYNC_RESPONSE, dtn::utils::Clock::toDouble(), dtn::core::AbstractWorker::transmit(), and ibrcommon::LogLevel::warning.
|
virtual |
This method is called by the EventSwitch.
evt |
evaluate the current local time
Implements dtn::core::EventReceiver.
Definition at line 165 of file DTNTPWorker.cpp.
References dtn::core::TimeEvent::getAction(), dtn::core::BundleCore::getConnectionManager(), dtn::core::BundleCore::getInstance(), dtn::net::ConnectionManager::getNeighbors(), dtn::utils::Clock::getRating(), dtn::utils::Clock::gettimeofday(), dtn::core::TimeEvent::getTimestamp(), dtn::core::TimeEvent::getUnixTimestamp(), IBRCOMMON_LOGGER_ENDL, IBRCOMMON_LOGGER_TAG, dtn::utils::Clock::setRating(), dtn::core::TIME_SECOND_TICK, dtn::utils::Clock::toDouble(), and ibrcommon::LogLevel::warning.
|
virtual |
This message is called by the discovery module.
iface | |
name | |
data |
Implements dtn::net::DiscoveryServiceProvider.
Definition at line 351 of file DTNTPWorker.cpp.
References dtn::utils::Clock::getRating(), dtn::utils::Clock::getTime(), and dtn::data::SDNV< E >::toString().