11 cerr <<
"ADD - I'm " <<
Im
13 <<
"Invalid neighbour "<< dst
23 if(
start ==
nullptr) {
35 cerr <<
"REM - I'm " <<
Im
37 <<
"Invalid neighbour "<< dst
54 for(
int i = 0; i <
pods; i++) {
70 for(
auto & e : *table) {
71 const DCAddr & dst = e.first;
73 if(dst ==
Im) {
continue; }
76 if(tn.
d > 2 || (
int)tn.
L.size() != 1) {
79 const linkId & li = **(tn.
L.begin());
80 if(li.
src.
a != dst.
a) {
88 if(tn.
d > 1 || (
int)tn.
L.size() != 1) {
91 const linkId & li = **(tn.
L.begin());
97 if(tn.
d > 3 || (
int)tn.
L.size() != 1) {
100 const linkId & li = **(tn.
L.begin());
101 if(li.
src.
a != dst.
a) {
109 if(tn.
d > 2 || (
int)tn.
L.size() !=
pods) {
113 if(tn.
d > 4 || (
int)tn.
L.size() !=
pods) {
120 if(tn.
d > 1 || (
int)tn.
L.size() != 1) {
123 const linkId & li = **(tn.
L.begin());
129 if(tn.
d > 5 || (
int)tn.
L.size() !=
pods) {
Register_Class(SimpleDCGenerator)
map< linkId, linkInfo > linksKo
map< linkId, linkInfo > myLinks
void insert(set< const linkId * > Ls)
void activeNeigh(const DCAddr &dst)
set< DCAddr > getNotOptimalDst(map< DCAddr, tableNode > *table)
void inactiveNeigh(const DCAddr &dst)