blob: 063f23b1bdcb4961883a52d3ee8f8acec3f46741 [file] [log] [blame]
akmhoque298385a2014-02-13 14:13:09 -06001#ifndef NLSR_NPT_HPP
2#define NLSR_NPT_HPP
3
4#include <list>
5#include "nlsr_npte.hpp"
6#include "nlsr_rte.hpp"
7
akmhoqueb1710aa2014-02-19 17:13:36 -06008namespace nlsr{
9
akmhoque298385a2014-02-13 14:13:09 -060010using namespace std;
11
akmhoque1a481092014-02-19 16:34:22 -060012class Nlsr;
akmhoque298385a2014-02-13 14:13:09 -060013
14class Npt
15{
16public:
17 Npt()
18 {
19 }
akmhoque1a481092014-02-19 16:34:22 -060020 void addNpte(string name, string destRouter, Nlsr& pnlsr);
21 void removeNpte(string name, string destRouter, Nlsr& pnlsr);
22 void updateNptWithNewRoute(Nlsr& pnlsr);
akmhoque298385a2014-02-13 14:13:09 -060023 void printNpt();
24private:
akmhoque1a481092014-02-19 16:34:22 -060025 void addNpte(string name, RoutingTableEntry& rte, Nlsr& pnlsr);
26 void removeNpte(string name, RoutingTableEntry& rte, Nlsr& pnlsr);
akmhoque298385a2014-02-13 14:13:09 -060027private:
28 std::list<Npte> npteList;
29};
30
akmhoqueb1710aa2014-02-19 17:13:36 -060031}//namespace nlsr
32
akmhoque298385a2014-02-13 14:13:09 -060033#endif