22 #ifndef NLSR_LSA_NAME_LSA_HPP
23 #define NLSR_LSA_NAME_LSA_HPP
40 NameLsa(
const ndn::Name& originRouter, uint64_t seqNo,
41 const ndn::time::system_clock::time_point& timepoint,
44 NameLsa(
const ndn::Block& block);
87 template<ndn::encoding::Tag TAG>
89 wireEncode(ndn::EncodingImpl<TAG>& block)
const;
100 std::tuple<bool, std::list<ndn::Name>, std::list<ndn::Name>>
101 update(
const std::shared_ptr<Lsa>& lsa)
override;
Data abstraction for Lsa Lsa := LSA-TYPE TLV-LENGTH Name SequenceNumber ExpirationTimePoint.
Data abstraction for NameLsa NameLsa := NAME-LSA-TYPE TLV-LENGTH Lsa Name+.
NamePrefixList & getNpl()
static constexpr Lsa::Type type()
std::string toString() const override
void addName(const ndn::Name &name)
std::tuple< bool, std::list< ndn::Name >, std::list< ndn::Name > > update(const std::shared_ptr< Lsa > &lsa) override
void removeName(const ndn::Name &name)
void wireDecode(const ndn::Block &wire)
const NamePrefixList & getNpl() const
const ndn::Block & wireEncode() const override
bool isEqualContent(const NameLsa &other) const
Lsa::Type getType() const override
bool remove(const ndn::Name &name, const std::string &source="")
removes name from NamePrefixList
bool insert(const ndn::Name &name, const std::string &source="")
inserts name into NamePrefixList
Copyright (c) 2014-2020, The University of Memphis, Regents of the University of California.
NDN_CXX_DECLARE_WIRE_ENCODE_INSTANTIATIONS(Adjacent)
std::ostream & operator<<(std::ostream &os, const Adjacent &adjacent)