nfd::pit::FaceRecord Class Reference

Contains information about an Interest on an incoming or outgoing face. More...

#include <daemon/table/pit-face-record.hpp>

+ Inheritance diagram for nfd::pit::FaceRecord:
+ Collaboration diagram for nfd::pit::FaceRecord:

Public Member Functions

 FaceRecord (Face &face)
 
void clearStrategyInfo ()
 Clear all StrategyInfo items. More...
 
template<typename T >
size_t eraseStrategyInfo ()
 Erase a StrategyInfo item. More...
 
time::steady_clock::TimePoint getExpiry () const
 Returns the time point at which this record expires. More...
 
Face & getFace () const
 
uint32_t getLastNonce () const
 
time::steady_clock::TimePoint getLastRenewed () const
 
template<typename T >
T * getStrategyInfo () const
 Get a StrategyInfo item. More...
 
template<typename T , typename... A>
std::pair< T *, bool > insertStrategyInfo (A &&...args)
 Insert a StrategyInfo item. More...
 
void update (const Interest &interest)
 updates lastNonce, lastRenewed, expiry fields More...
 

Detailed Description

Contains information about an Interest on an incoming or outgoing face.

Note
This is an implementation detail to extract common functionality of InRecord and OutRecord

Definition at line 39 of file pit-face-record.hpp.

Constructor & Destructor Documentation

nfd::pit::FaceRecord::FaceRecord ( Face &  face)
inlineexplicit

Definition at line 43 of file pit-face-record.hpp.

Member Function Documentation

void nfd::StrategyInfoHost::clearStrategyInfo ( )
inlineinherited

Clear all StrategyInfo items.

Definition at line 93 of file strategy-info-host.hpp.

template<typename T >
size_t nfd::StrategyInfoHost::eraseStrategyInfo ( )
inlineinherited

Erase a StrategyInfo item.

Template Parameters
Ttype of StrategyInfo, must be a subclass of fw::StrategyInfo
Returns
number of items erased

Definition at line 82 of file strategy-info-host.hpp.

time::steady_clock::TimePoint nfd::pit::FaceRecord::getExpiry ( ) const
inline

Returns the time point at which this record expires.

Returns
getLastRenewed() + InterestLifetime

Definition at line 70 of file pit-face-record.hpp.

Face& nfd::pit::FaceRecord::getFace ( ) const
inline

Definition at line 49 of file pit-face-record.hpp.

uint32_t nfd::pit::FaceRecord::getLastNonce ( ) const
inline

Definition at line 55 of file pit-face-record.hpp.

time::steady_clock::TimePoint nfd::pit::FaceRecord::getLastRenewed ( ) const
inline

Definition at line 61 of file pit-face-record.hpp.

template<typename T >
T* nfd::StrategyInfoHost::getStrategyInfo ( ) const
inlineinherited

Get a StrategyInfo item.

Template Parameters
Ttype of StrategyInfo, must be a subclass of fw::StrategyInfo
Returns
an existing StrategyInfo item of type T, or nullptr if it does not exist

Definition at line 44 of file strategy-info-host.hpp.

template<typename T , typename... A>
std::pair<T*, bool> nfd::StrategyInfoHost::insertStrategyInfo ( A &&...  args)
inlineinherited

Insert a StrategyInfo item.

Template Parameters
Ttype of StrategyInfo, must be a subclass of fw::StrategyInfo
Returns
a new or existing StrategyInfo item of type T, and true for new item, false for existing item

Definition at line 63 of file strategy-info-host.hpp.

void nfd::pit::FaceRecord::update ( const Interest &  interest)

updates lastNonce, lastRenewed, expiry fields

Definition at line 32 of file pit-face-record.cpp.