blob: f1f54edb3389c8798f67f882c4d5c89c17cdee49 [file] [log] [blame]
akmhoque62a8e402014-02-08 12:00:27 -06001#ifndef NLSR_FIB_HPP
2#define NLSR_FIB_HPP
3
4#include <list>
5#include "nlsr_fe.hpp"
6
7class nlsr;
8
9using namespace std;
10
11class Fib
12{
13public:
14 Fib()
15 {
16 }
17
18 void removeFromFib(string name);
19 void updateFib(string name, Nhl& nextHopList, int maxFacesPerPrefix);
20 void cleanFib();
21 void printFib();
22
23private:
24 void removeFibEntryHop(Nhl& nl, int doNotRemoveHop);
25 int getNumberOfFacesForName(Nhl& nextHopList, int maxFacesPerPrefix);
26
27private:
28 std::list<FibEntry> fibTable;
29};
30
31#endif