PIT entry implementation with additional pointers to the underlying container. More...
#include <ndn-pit-entry-impl.h>
Public Types | |
typedef Entry | base_type |
typedef Entry | super |
Public Types inherited from ns3::ndn::pit::Entry | |
typedef std::set< IncomingFace > | in_container |
incoming faces container type | |
typedef in_container::iterator | in_iterator |
iterator to incoming faces | |
typedef std::set< OutgoingFace > | out_container |
outgoing faces container type | |
typedef out_container::iterator | out_iterator |
iterator to outgoing faces | |
typedef std::set< uint32_t > | nonce_container |
nonce container type | |
Public Member Functions | |
EntryImpl (Pit &pit, Ptr< const Interest > header, Ptr< fib::Entry > fibEntry) | |
virtual void | UpdateLifetime (const Time &offsetTime) |
Update lifetime of PIT entry. More... | |
virtual void | OffsetLifetime (const Time &offsetTime) |
Offset the currently set PIT lifetime (allowed both negative and positive offsets) More... | |
void | SetTrie (typename Pit::super::iterator item) |
Pit::super::iterator | to_iterator () |
Pit::super::const_iterator | to_iterator () const |
Public Member Functions inherited from ns3::ndn::pit::Entry | |
Entry (Pit &container, Ptr< const Interest > header, Ptr< fib::Entry > fibEntry) | |
PIT entry constructor. More... | |
virtual | ~Entry () |
Virtual destructor. | |
const Name & | GetPrefix () const |
Get prefix of the PIT entry. | |
const Time & | GetExpireTime () const |
Get current expiration time of the record. More... | |
bool | IsNonceSeen (uint32_t nonce) const |
Check if nonce nonce for the same prefix has already been seen. More... | |
virtual void | AddSeenNonce (uint32_t nonce) |
Add nonce to the list of seen nonces. More... | |
virtual in_iterator | AddIncoming (Ptr< Face > face) |
Add face to the list of incoming faces. More... | |
virtual void | RemoveIncoming (Ptr< Face > face) |
Remove incoming entry for face face | |
virtual void | ClearIncoming () |
Clear all incoming faces either after all of them were satisfied or NACKed. | |
virtual out_iterator | AddOutgoing (Ptr< Face > face) |
Add face to the list of outgoing faces. More... | |
virtual void | ClearOutgoing () |
Clear all incoming faces either after all of them were satisfied or NACKed. | |
virtual void | RemoveAllReferencesToFace (Ptr< Face > face) |
Remove all references to face. More... | |
virtual void | SetWaitingInVain (Ptr< Face > face) |
Flag outgoing face as hopeless. | |
bool | AreAllOutgoingInVain () const |
Check if all outgoing faces are NACKed. | |
bool | AreTherePromisingOutgoingFacesExcept (Ptr< Face > face) const |
Similar to AreAllOutgoingInVain, but ignores face More... | |
virtual void | IncreaseAllowedRetxCount () |
Increase maximum limit of allowed retransmission per outgoing face. | |
uint32_t | GetMaxRetxCount () const |
Get maximum allowed number of retransmissions via outgoing faces. | |
Ptr< fib::Entry > | GetFibEntry () |
Get associated FIB entry. | |
const in_container & | GetIncoming () const |
Get associated list (const reference) of incoming faces. | |
const out_container & | GetOutgoing () const |
Get associated list (const reference) of outgoing faces. | |
uint32_t | GetOutgoingCount () const |
Get number of outgoing faces (needed for python bindings) | |
void | AddFwTag (boost::shared_ptr< fw::Tag > tag) |
Add new forwarding strategy tag. | |
template<class T > | |
boost::shared_ptr< T > | GetFwTag () |
Get forwarding strategy tag (tag is not removed) More... | |
template<class T > | |
void | RemoveFwTag () |
Remove the forwarding strategy tag. More... | |
Ptr< const Interest > | GetInterest () const |
Get Interest (if several interests are received, then nonce is from the first Interest) | |
Public Attributes | |
boost::intrusive::set_member_hook | time_hook_ |
Additional Inherited Members | |
Protected Attributes inherited from ns3::ndn::pit::Entry | |
Pit & | m_container |
Reference to the container (to rearrange indexes, if necessary) | |
Ptr< const Interest > | m_interest |
Interest of the PIT entry (if several interests are received, then nonce is from the first Interest) | |
Ptr< fib::Entry > | m_fibEntry |
FIB entry related to this prefix. | |
nonce_container | m_seenNonces |
map of nonces that were seen for this prefix | |
in_container | m_incoming |
container for incoming interests | |
out_container | m_outgoing |
container for outgoing interests | |
Time | m_expireTime |
Time when PIT entry will be removed. | |
Time | m_lastRetransmission |
Last time when number of retransmissions were increased. | |
uint32_t | m_maxRetxCount |
Maximum allowed number of retransmissions via outgoing faces. | |
std::list< boost::shared_ptr < fw::Tag > > | m_fwTags |
Forwarding strategy tags. | |
PIT entry implementation with additional pointers to the underlying container.
Definition at line 36 of file ndn-pit-entry-impl.h.
|
inlinevirtual |
Offset the currently set PIT lifetime (allowed both negative and positive offsets)
offsetTime | positive or negative offset for the PIT lifetime. |
If PIT expire time becomes less than Simulator::Now, then it is adjusted to Simulator::Now.
Reimplemented from ns3::ndn::pit::Entry.
Definition at line 73 of file ndn-pit-entry-impl.h.
References ns3::ndn::pit::Entry::OffsetLifetime().
|
inlinevirtual |
Update lifetime of PIT entry.
lifetime | desired lifetime of the pit entry (relative to the Simulator::Now ()) |
This function will update PIT entry lifetime to the maximum of the current lifetime and the lifetime Simulator::Now () + lifetime
Reimplemented from ns3::ndn::pit::Entry.
Definition at line 63 of file ndn-pit-entry-impl.h.
References ns3::ndn::pit::Entry::UpdateLifetime().