represents a face More...
#include <local-face.hpp>
Public Member Functions | |
LocalFace (const FaceUri &remoteUri, const FaceUri &localUri) | |
bool | isLocalControlHeaderEnabled () const |
get whether any LocalControlHeader feature is enabled More... | |
bool | isLocalControlHeaderEnabled (LocalControlFeature feature) const |
get whether a specific LocalControlHeader feature is enabled More... | |
void | setLocalControlHeaderFeature (LocalControlFeature feature, bool enabled=true) |
enable or disable a LocalControlHeader feature More... | |
Public Member Functions inherited from nfd::Face | |
Face (const FaceUri &remoteUri, const FaceUri &localUri, bool isLocal=false, bool isMultiAccess=false) | |
virtual | ~Face () |
virtual void | sendInterest (const Interest &interest)=0 |
send an Interest More... | |
virtual void | sendData (const Data &data)=0 |
send a Data More... | |
virtual void | close ()=0 |
Close the face. More... | |
FaceId | getId () const |
const std::string & | getDescription () const |
Get the description. More... | |
void | setDescription (const std::string &description) |
Set the face description. More... | |
void | setMetric (uint64_t metric) |
uint64_t | getMetric () const |
bool | isLocal () const |
Get whether face is connected to a local app. More... | |
ndn::nfd::FacePersistency | getPersistency () const |
Get the persistency setting. More... | |
bool | isMultiAccess () const |
Get whether packets sent by this face may reach multiple peers. More... | |
virtual bool | isUp () const |
Get whether underlying communication is up. More... | |
const FaceCounters & | getCounters () const |
const FaceUri & | getRemoteUri () const |
const FaceUri & | getLocalUri () const |
template<typename FaceTraits > | |
void | copyStatusTo (FaceTraits &traits) const |
virtual ndn::nfd::FaceStatus | getFaceStatus () const |
Static Public Attributes | |
static const size_t | LOCAL_CONTROL_FEATURE_MAX = 3 |
static const size_t | LOCAL_CONTROL_FEATURE_ANY = 0 |
upper bound of LocalControlFeature enum More... | |
Protected Member Functions | |
bool | decodeAndDispatchInput (const Block &element) |
any feature More... | |
bool | isEmptyFilteredLocalControlHeader (const ndn::nfd::LocalControlHeader &header) const |
Check if LocalControlHeader needs to be included, taking into account both set parameters in supplied LocalControlHeader and features enabled on the local face. More... | |
template<class Packet > | |
Block | filterAndEncodeLocalControlHeader (const Packet &packet) |
Create LocalControlHeader, considering enabled features. More... | |
Protected Member Functions inherited from nfd::Face | |
void | setPersistency (ndn::nfd::FacePersistency persistency) |
bool | decodeAndDispatchInput (const Block &element) |
void | fail (const std::string &reason) |
fail the face and raise onFail event if it's UP; otherwise do nothing More... | |
FaceCounters & | getMutableCounters () |
Additional Inherited Members | |
Public Attributes inherited from nfd::Face | |
signal::Signal< Face, Interest > | onReceiveInterest |
fires when an Interest is received More... | |
signal::Signal< Face, Data > | onReceiveData |
fires when a Data is received More... | |
signal::Signal< Face, Interest > | onSendInterest |
fires when an Interest is sent out More... | |
signal::Signal< Face, Data > | onSendData |
fires when a Data is sent out More... | |
signal::Signal< Face, std::string > | onFail |
fires when face disconnects or fails to perform properly More... | |
represents a face
Definition at line 40 of file local-face.hpp.
Definition at line 104 of file local-face.hpp.
|
inline |
get whether any LocalControlHeader feature is enabled
Definition at line 111 of file local-face.hpp.
References LOCAL_CONTROL_FEATURE_ANY.
Referenced by decodeAndDispatchInput(), filterAndEncodeLocalControlHeader(), and isEmptyFilteredLocalControlHeader().
|
inline |
get whether a specific LocalControlHeader feature is enabled
feature | The feature. |
Definition at line 117 of file local-face.hpp.
|
inline |
enable or disable a LocalControlHeader feature
feature | The feature. Cannot be LOCAL_CONTROL_FEATURE_ANY or LOCAL_CONTROL_FEATURE_MAX |
Definition at line 125 of file local-face.hpp.
References LOCAL_CONTROL_FEATURE_ANY.
|
inlineprotected |
any feature
Decode block into Interest/Data, considering potential LocalControlHeader
If LocalControlHeader is present, the encoded data is filtered out, based on enabled features on the face.
Definition at line 140 of file local-face.hpp.
References ndn::tlv::Data, emitSignal, ndn::nfd::LocalControlHeader::ENCODE_NEXT_HOP, ndn::nfd::LocalControlHeader::getPayload(), ndn::tlv::Interest, isLocalControlHeaderEnabled(), ndn::nfd::LOCAL_CONTROL_FEATURE_NEXT_HOP_FACE_ID, nfd::Face::onReceiveData, nfd::Face::onReceiveInterest, and ndn::Block::type().
|
inlineprotected |
Check if LocalControlHeader needs to be included, taking into account both set parameters in supplied LocalControlHeader and features enabled on the local face.
Definition at line 193 of file local-face.hpp.
References ndn::nfd::LocalControlHeader::empty(), ndn::nfd::LocalControlHeader::ENCODE_INCOMING_FACE_ID, isLocalControlHeaderEnabled(), and ndn::nfd::LOCAL_CONTROL_FEATURE_INCOMING_FACE_ID.
|
inlineprotected |
Create LocalControlHeader, considering enabled features.
Definition at line 207 of file local-face.hpp.
References ndn::nfd::LocalControlHeader::ENCODE_INCOMING_FACE_ID, isLocalControlHeaderEnabled(), and ndn::nfd::LOCAL_CONTROL_FEATURE_INCOMING_FACE_ID.
|
static |
Definition at line 70 of file local-face.hpp.
|
static |
upper bound of LocalControlFeature enum
Definition at line 71 of file local-face.hpp.
Referenced by isLocalControlHeaderEnabled(), and setLocalControlHeaderFeature().