32 BOOST_CONCEPT_ASSERT((StatusDatasetItem<FaceStatus>));
 
   51 template<encoding::Tag TAG>
 
   55   size_t totalLength = 0;
 
   69   if (m_defaultCongestionThreshold) {
 
   71                                                   *m_defaultCongestionThreshold);
 
   73   if (m_baseCongestionMarkingInterval) {
 
   75                                                   m_baseCongestionMarkingInterval->count());
 
   80   if (m_expirationPeriod) {
 
   82                                                   m_expirationPeriod->count());
 
   88   totalLength += encoder.prependVarNumber(totalLength);
 
  127     NDN_THROW(Error(
"missing required FaceId field"));
 
  135     NDN_THROW(Error(
"missing required Uri field"));
 
  143     NDN_THROW(Error(
"missing required LocalUri field"));
 
  151     m_expirationPeriod = nullopt;
 
  155     m_faceScope = readNonNegativeIntegerAs<FaceScope>(*val);
 
  159     NDN_THROW(Error(
"missing required FaceScope field"));
 
  167     NDN_THROW(Error(
"missing required FacePersistency field"));
 
  171     m_linkType = readNonNegativeIntegerAs<LinkType>(*val);
 
  175     NDN_THROW(Error(
"missing required LinkType field"));
 
  183     m_baseCongestionMarkingInterval = nullopt;
 
  191     m_defaultCongestionThreshold = nullopt;
 
  207     NDN_THROW(Error(
"missing required NInInterests field"));
 
  215     NDN_THROW(Error(
"missing required NInData field"));
 
  223     NDN_THROW(Error(
"missing required NInNacks field"));
 
  231     NDN_THROW(Error(
"missing required NOutInterests field"));
 
  239     NDN_THROW(Error(
"missing required NOutData field"));
 
  247     NDN_THROW(Error(
"missing required NOutNacks field"));
 
  255     NDN_THROW(Error(
"missing required NInBytes field"));
 
  263     NDN_THROW(Error(
"missing required NOutBytes field"));
 
  271     NDN_THROW(Error(
"missing required Flags field"));
 
  279   m_expirationPeriod = expirationPeriod;
 
  287   m_expirationPeriod = nullopt;
 
  295   m_baseCongestionMarkingInterval = interval;
 
  303   m_baseCongestionMarkingInterval = nullopt;
 
  311   m_defaultCongestionThreshold = threshold;
 
  319   m_defaultCongestionThreshold = nullopt;
 
  343   m_nInInterests = nInInterests;
 
  359   m_nInNacks = nInNacks;
 
  367   m_nOutInterests = nOutInterests;
 
  375   m_nOutData = nOutData;
 
  383   m_nOutNacks = nOutNacks;
 
  391   m_nInBytes = nInBytes;
 
  399   m_nOutBytes = nOutBytes;
 
  436   os << 
"Face(FaceId: " << status.
getFaceId() << 
",\n" 
  444     os << 
"     ExpirationPeriod: infinite,\n";
 
  460     os << 
"     Mtu: " << status.
getMtu() << 
" bytes,\n";
 
  466      << 
"                Data: {in: " << status.
getNInData() << 
", " 
Helper class to convert a number to hexadecimal format, for use with stream insertion operators.
 
Represents a TLV element of the NDN packet format.
 
uint32_t type() const
Return the TLV-TYPE of the Block.
 
bool hasWire() const noexcept
Check if the Block contains a fully encoded wire representation.
 
element_const_iterator elements_end() const
Equivalent to elements().end()
 
element_const_iterator elements_begin() const
Equivalent to elements().begin()
 
void reset() noexcept
Reset the Block to a default-constructed state.
 
void parse() const
Parse TLV-VALUE into sub-elements.
 
represents an item in NFD Face dataset
 
FaceStatus & setNOutInterests(uint64_t nOutInterests)
 
const Block & wireEncode() const
encode FaceStatus
 
FaceStatus & unsetExpirationPeriod()
 
FaceStatus & setNOutData(uint64_t nOutData)
 
FaceStatus & unsetDefaultCongestionThreshold()
 
FaceStatus & setNOutBytes(uint64_t nOutBytes)
 
uint64_t getNOutInterests() const
 
FaceStatus & setNInInterests(uint64_t nInInterests)
 
FaceStatus & setNOutNacks(uint64_t nOutNacks)
 
uint64_t getNInData() const
 
uint64_t getNInBytes() const
 
void wireDecode(const Block &wire)
decode FaceStatus
 
uint64_t getNOutData() const
 
FaceStatus & setNInData(uint64_t nInData)
 
FaceStatus & setExpirationPeriod(time::milliseconds expirationPeriod)
 
uint64_t getDefaultCongestionThreshold() const
get default congestion threshold (measured in bytes)
 
bool hasBaseCongestionMarkingInterval() const
 
time::nanoseconds getBaseCongestionMarkingInterval() const
 
uint64_t getNInInterests() const
 
uint64_t getNInNacks() const
 
FaceStatus & setNInNacks(uint64_t nInNacks)
 
FaceStatus & setNInBytes(uint64_t nInBytes)
 
FaceStatus & setMtu(uint64_t mtu)
set MTU (measured in bytes)
 
bool hasExpirationPeriod() const
 
uint64_t getMtu() const
get MTU (measured in bytes)
 
FaceStatus & setDefaultCongestionThreshold(uint64_t threshold)
set default congestion threshold (measured in bytes)
 
bool hasDefaultCongestionThreshold() const
 
FaceStatus & setBaseCongestionMarkingInterval(time::nanoseconds interval)
 
uint64_t getNOutBytes() const
 
FaceStatus & unsetBaseCongestionMarkingInterval()
 
time::milliseconds getExpirationPeriod() const
 
uint64_t getNOutNacks() const
 
uint64_t getFlags() const
 
FacePersistency m_facePersistency
 
const std::string & getLocalUri() const
 
const std::string & getRemoteUri() const
 
FacePersistency getFacePersistency() const
 
uint64_t getFaceId() const
 
FaceScope getFaceScope() const
 
LinkType getLinkType() const
 
#define NDN_CXX_DEFINE_WIRE_ENCODE_INSTANTIATIONS(ClassName)
 
EncodingImpl< EstimatorTag > EncodingEstimator
 
uint64_t readNonNegativeInteger(const Block &block)
Read a non-negative integer from a TLV element.
 
size_t prependNonNegativeIntegerBlock(EncodingImpl< TAG > &encoder, uint32_t type, uint64_t value)
Prepend a TLV element containing a non-negative integer.
 
size_t prependStringBlock(EncodingImpl< TAG > &encoder, uint32_t type, const std::string &value)
Prepend a TLV element containing a string.
 
std::string readString(const Block &block)
Read TLV-VALUE of a TLV element as a string.
 
EncodingImpl< EncoderTag > EncodingBuffer
 
std::ostream & operator<<(std::ostream &os, FaceScope faceScope)
 
bool operator==(const ChannelStatus &a, const ChannelStatus &b)
 
boost::chrono::milliseconds milliseconds
 
boost::chrono::nanoseconds nanoseconds
 
@ BaseCongestionMarkingInterval
 
@ DefaultCongestionThreshold