represents a PIT entry More...
#include <pit-entry.hpp>
Public Member Functions | |
Entry (const Interest &interest) | |
const Interest & | getInterest () const |
const Name & | getName () const |
bool | canForwardTo (const Face &face) const |
decides whether Interest can be forwarded to face More... | |
bool | violatesScope (const Face &face) const |
decides whether forwarding Interest to face would violate scope More... | |
int | findNonce (uint32_t nonce, const Face &face) const |
finds where a duplicate Nonce appears More... | |
const InRecordCollection & | getInRecords () const |
bool | hasLocalInRecord () const |
determines whether any InRecord is a local Face More... | |
InRecordCollection::iterator | insertOrUpdateInRecord (shared_ptr< Face > face, const Interest &interest) |
inserts a InRecord for face, and updates it with interest More... | |
InRecordCollection::const_iterator | getInRecord (const Face &face) const |
get the InRecord for face More... | |
void | deleteInRecord (const Face &face) |
deletes one InRecord for face if exists More... | |
void | deleteInRecords () |
deletes all InRecords More... | |
const OutRecordCollection & | getOutRecords () const |
OutRecordCollection::iterator | insertOrUpdateOutRecord (shared_ptr< Face > face, const Interest &interest) |
inserts a OutRecord for face, and updates it with interest More... | |
OutRecordCollection::iterator | getOutRecord (const Face &face) |
get the OutRecord for face More... | |
void | deleteOutRecord (const Face &face) |
deletes one OutRecord for face if exists More... | |
bool | hasUnexpiredOutRecords () const |
Public Member Functions inherited from nfd::StrategyInfoHost | |
template<typename T > | |
shared_ptr< T > | getStrategyInfo () const |
get a StrategyInfo item More... | |
template<typename T > | |
void | setStrategyInfo (shared_ptr< T > strategyInfo) |
set a StrategyInfo item More... | |
template<typename T , typename ... A> | |
shared_ptr< T > | getOrCreateStrategyInfo (A &&... args) |
get or create a StrategyInfo item More... | |
void | clearStrategyInfo () |
clear all StrategyInfo items More... | |
Public Attributes | |
scheduler::EventId | m_unsatisfyTimer |
scheduler::EventId | m_stragglerTimer |
Friends | |
class | nfd::NameTree |
class | nfd::name_tree::Entry |
class | nfd::Pit |
represents a PIT entry
Definition at line 69 of file pit-entry.hpp.
|
explicit |
Definition at line 35 of file pit-entry.cpp.
|
inline |
Definition at line 192 of file pit-entry.hpp.
Referenced by nfd::insertNonceToDnl().
const Name & nfd::pit::Entry::getName | ( | ) | const |
Definition at line 41 of file pit-entry.cpp.
Referenced by nfd::NameTree::findLongestPrefixMatch(), nfd::NameTree::get(), nfd::insertNonceToDnl(), and violatesScope().
bool nfd::pit::Entry::canForwardTo | ( | const Face & | face | ) | const |
decides whether Interest can be forwarded to face
Definition at line 54 of file pit-entry.cpp.
References ndn::time::steady_clock::now(), and violatesScope().
bool nfd::pit::Entry::violatesScope | ( | const Face & | face | ) | const |
decides whether forwarding Interest to face would violate scope
Definition at line 78 of file pit-entry.cpp.
References ndn::nfd::FACE_SCOPE_NON_LOCAL, getName(), hasLocalInRecord(), and ndn::Name::isPrefixOf().
Referenced by canForwardTo().
int nfd::pit::Entry::findNonce | ( | uint32_t | nonce, |
const Face & | face | ||
) | const |
finds where a duplicate Nonce appears
Definition at line 99 of file pit-entry.cpp.
References nfd::pit::DUPLICATE_NONCE_IN_OTHER, nfd::pit::DUPLICATE_NONCE_IN_SAME, nfd::pit::DUPLICATE_NONCE_NONE, nfd::pit::DUPLICATE_NONCE_OUT_OTHER, and nfd::pit::DUPLICATE_NONCE_OUT_SAME.
|
inline |
Definition at line 198 of file pit-entry.hpp.
Referenced by ns3::ndn::L3RateTracer::SatisfiedInterests(), and ns3::ndn::L3RateTracer::TimedOutInterests().
bool nfd::pit::Entry::hasLocalInRecord | ( | ) | const |
determines whether any InRecord is a local Face
Definition at line 47 of file pit-entry.cpp.
References ndn::nfd::FACE_SCOPE_LOCAL.
Referenced by violatesScope().
InRecordCollection::iterator nfd::pit::Entry::insertOrUpdateInRecord | ( | shared_ptr< Face > | face, |
const Interest & | interest | ||
) |
inserts a InRecord for face, and updates it with interest
If InRecord for face exists, the existing one is updated. This method does not add the Nonce as a seen Nonce.
Definition at line 131 of file pit-entry.cpp.
InRecordCollection::const_iterator nfd::pit::Entry::getInRecord | ( | const Face & | face | ) | const |
get the InRecord for face
Definition at line 145 of file pit-entry.cpp.
void nfd::pit::Entry::deleteInRecord | ( | const Face & | face | ) |
deletes one InRecord for face if exists
Definition at line 152 of file pit-entry.cpp.
void nfd::pit::Entry::deleteInRecords | ( | ) |
deletes all InRecords
Definition at line 162 of file pit-entry.cpp.
|
inline |
Definition at line 204 of file pit-entry.hpp.
Referenced by nfd::fw::RetxSuppression::getLastOutgoing(), nfd::insertNonceToDnl(), ns3::ndn::L3RateTracer::SatisfiedInterests(), and ns3::ndn::L3RateTracer::TimedOutInterests().
OutRecordCollection::iterator nfd::pit::Entry::insertOrUpdateOutRecord | ( | shared_ptr< Face > | face, |
const Interest & | interest | ||
) |
inserts a OutRecord for face, and updates it with interest
If OutRecord for face exists, the existing one is updated.
Definition at line 168 of file pit-entry.cpp.
OutRecordCollection::iterator nfd::pit::Entry::getOutRecord | ( | const Face & | face | ) |
get the OutRecord for face
Definition at line 182 of file pit-entry.cpp.
Referenced by nfd::insertNonceToDnl().
void nfd::pit::Entry::deleteOutRecord | ( | const Face & | face | ) |
deletes one OutRecord for face if exists
Definition at line 189 of file pit-entry.cpp.
bool nfd::pit::Entry::hasUnexpiredOutRecords | ( | ) | const |
Definition at line 199 of file pit-entry.cpp.
References ndn::time::steady_clock::now().
Referenced by nfd::fw::RetxSuppressionFixed::decide(), and nfd::fw::RetxSuppressionExponential::decide().
|
friend |
Definition at line 186 of file pit-entry.hpp.
|
friend |
Definition at line 187 of file pit-entry.hpp.
|
friend |
Definition at line 188 of file pit-entry.hpp.
scheduler::EventId nfd::pit::Entry::m_unsatisfyTimer |
Definition at line 173 of file pit-entry.hpp.
scheduler::EventId nfd::pit::Entry::m_stragglerTimer |
Definition at line 174 of file pit-entry.hpp.