29 #include <boost/cstdint.hpp> 30 #include <ndn-cxx/util/scheduler.hpp> 31 #include <ndn-cxx/util/time.hpp> 32 #include <boost/tokenizer.hpp> 87 const ndn::time::system_clock::TimePoint&
129 deserialize(
const std::string& content) noexcept = 0;
149 deserializeCommon(boost::tokenizer<boost::char_separator<char>>::iterator& iterator);
165 NameLsa(
const ndn::Name& origR, uint32_t lsn,
166 const ndn::time::system_clock::TimePoint& lt,
208 deserialize(
const std::string& content) noexcept
override;
211 isEqualContent(
const NameLsa& other)
const;
241 AdjLsa(
const ndn::Name& origR, uint32_t lsn,
242 const ndn::time::system_clock::TimePoint& lt,
275 deserialize(
const std::string& content) noexcept
override;
284 isEqualContent(
AdjLsa& alsa);
292 addNptEntries(
Nlsr& pnlsr);
295 removeNptEntries(
Nlsr& pnlsr);
303 return m_adl.begin();
339 const ndn::time::system_clock::TimePoint& lt,
340 double r, std::vector<double> theta);
357 deserialize(
const std::string& content) noexcept
override;
371 const std::vector<double>
399 std::vector<double> m_angles;
427 #endif // NLSR_LSA_HPP
ndn::time::system_clock::TimePoint m_expirationTimePoint
void addAdjacent(Adjacent adj)
std::string getData() const
AdjacencyList::const_iterator const_iterator
std::ostream & operator<<(std::ostream &os, const Adjacent &adjacent)
const ndn::time::system_clock::TimePoint & getExpirationTimePoint() const
void setLsSeqNo(uint32_t lsn)
NamePrefixList & getNpl()
const_iterator end() const
ndn::EventId getExpiringEventId() const
Lsa::Type getType() const override
Lsa::Type getType() const override
bool deserializeCommon(boost::tokenizer< boost::char_separator< char >>::iterator &iterator)
virtual bool deserialize(const std::string &content) noexcept=0
Populate this LSA with content from the string "content".
const_iterator begin() const
std::list< Adjacent >::const_iterator const_iterator
std::string toString() const
void setExpirationTimePoint(const ndn::time::system_clock::TimePoint <)
const ndn::Name & getOrigRouter() const
uint32_t getLsSeqNo() const
virtual Type getType() const
Lsa::Type getType() const override
virtual void writeLog() const =0
const AdjacencyList & getAdl() const
A neighbor reachable over a Face.
void setExpiringEventId(const ndn::EventId leei)
void setCorTheta(std::vector< double > ct)
void removeName(const ndn::Name &name)
Copyright (c) 2014-2018, The University of Memphis, Regents of the University of California, Arizona Board of Regents.
const NamePrefixList & getNpl() const
void setCorRadius(double cr)
const std::vector< double > getCorTheta() const
std::istream & operator>>(std::istream &is, Lsa::Type &type)
void setOrigRouter(const ndn::Name &org)
virtual std::string serialize() const =0
Return the data that this LSA represents.
const ndn::Name getKey() const
Gets the key for this LSA.
void addName(const ndn::Name &name)
double getCorRadius() const
ndn::EventId m_expiringEventId