blob: 71829c15eb1bae333795fa25f766af7291992856 [file] [log] [blame]
akmhoque87347a32014-01-31 11:00:44 -06001#ifndef ADL_HPP
2#define ADL_HPP
3
4#include <ndn-cpp-dev/face.hpp>
akmhoque204e7542014-01-31 16:08:25 -06005#include "nlsr_adjacent.hpp"
akmhoque87347a32014-01-31 11:00:44 -06006#include<list>
7
8using namespace std;
9
10class Adl{
11
12public:
13 Adl();
14 ~Adl();
15 int insert(Adjacent& adj);
16 int updateAdjacentStatus(string adjName, int s);
17 int updateAdjacentLinkCost(string adjName, double lc);
akmhoque87347a32014-01-31 11:00:44 -060018 std::list<Adjacent> getAdjList();
akmhoquea8cd6b92014-01-31 20:13:26 -060019 bool isNeighbor(string adjName);
20 void incrementTimedOutInterestCount(string& neighbor);
21 int getTimedOutInterestCount(string& neighbor);
22 int getStatusOfNeighbor(string& neighbor);
23 void setStatusOfNeighbor(string& neighbor, int status);
24 void setTimedOutInterestCount(string& neighbor, int count);
akmhoque87347a32014-01-31 11:00:44 -060025
akmhoquea8cd6b92014-01-31 20:13:26 -060026 void printAdl();
akmhoque87347a32014-01-31 11:00:44 -060027
28private:
29 std::list< Adjacent > adjList;
30};
31
32#endif