\hypertarget{classNodes}{
\section{Nodes Class Reference}
\label{classNodes}\index{Nodes@{Nodes}}
}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classNodes_a370e3d7915da516aa8e86827b65af2f0}{
{\bfseries Nodes} (\hyperlink{classSimulator}{Simulator} $\ast$r, \hyperlink{classEventLoop}{EventLoop} \&ev)}
\label{classNodes_a370e3d7915da516aa8e86827b65af2f0}

\item 
bool \hyperlink{classNodes_ae7f8a8b590b175f6119d5669d497a86e}{create\_\-node} (const vector$<$ \hyperlink{classIPv4}{IPv4} $>$ \&addrs)
\begin{DoxyCompactList}\small\item\em Simulation graph creation. \item\end{DoxyCompactList}\item 
bool \hyperlink{classNodes_a3c559241c9531aa6e71487895fbdb943}{destroy\_\-node} (const \hyperlink{classIPv4}{IPv4} \&main\_\-addr)
\begin{DoxyCompactList}\small\item\em Destroy an OLSR node in \hyperlink{protocolthe-p}{the} simulator. \item\end{DoxyCompactList}\item 
size\_\-t \hyperlink{classNodes_af1ed09ea9a3489c373d4b4883361e8f9}{purge\_\-links\_\-by\_\-node} (const \hyperlink{classIPv4}{IPv4} \&main\_\-addr)  throw (NoSuchAddress)
\begin{DoxyCompactList}\small\item\em Given \hyperlink{protocolthe-p}{the} main address of an OLSR node, destroy all links referencing that node. \item\end{DoxyCompactList}\item 
bool \hyperlink{classNodes_a0867a2af67b173f6ff2b92b95a5afdde}{configure\_\-address} (const \hyperlink{classIPv4}{IPv4} \&iface\_\-addr)
\begin{DoxyCompactList}\small\item\em Mark an OLSR node address as administratively up. \item\end{DoxyCompactList}\item 
bool \hyperlink{classNodes_a28fec1e2b5f49411b2f9acac71f3f5b1}{unconfigure\_\-address} (const \hyperlink{classIPv4}{IPv4} \&iface\_\-addr)
\begin{DoxyCompactList}\small\item\em Mark an OLSR node address as administratively down. \item\end{DoxyCompactList}\item 
\hypertarget{classNodes_afedeb0473d41de02f1cbacce4e4c98ca}{
void {\bfseries set\_\-default\_\-hello\_\-interval} (const int value)}
\label{classNodes_afedeb0473d41de02f1cbacce4e4c98ca}

\item 
\hypertarget{classNodes_ae8ac3d3d8eab54f01cbbce7b6720bb92}{
void {\bfseries set\_\-default\_\-mid\_\-interval} (const int value)}
\label{classNodes_ae8ac3d3d8eab54f01cbbce7b6720bb92}

\item 
\hypertarget{classNodes_a65a8aacbdd95809d6db4eb8c4053f4b2}{
void {\bfseries set\_\-default\_\-mpr\_\-coverage} (const int value)}
\label{classNodes_a65a8aacbdd95809d6db4eb8c4053f4b2}

\item 
\hypertarget{classNodes_ae24e97e94d0d9f04d521fd5c196b9262}{
void {\bfseries set\_\-default\_\-refresh\_\-interval} (const int value)}
\label{classNodes_ae24e97e94d0d9f04d521fd5c196b9262}

\item 
\hypertarget{classNodes_ad6564b2b26d372b309be49c856a793b0}{
void {\bfseries set\_\-default\_\-tc\_\-interval} (const int value)}
\label{classNodes_ad6564b2b26d372b309be49c856a793b0}

\item 
\hypertarget{classNodes_a35bf983acd883c90ed647d0a58f03b61}{
void {\bfseries set\_\-default\_\-hna\_\-interval} (const int value)}
\label{classNodes_a35bf983acd883c90ed647d0a58f03b61}

\item 
\hypertarget{classNodes_a6cf43ab6df2e925779406f1f8f5ec1d8}{
void {\bfseries set\_\-default\_\-dup\_\-hold\_\-time} (const int value)}
\label{classNodes_a6cf43ab6df2e925779406f1f8f5ec1d8}

\item 
\hypertarget{classNodes_aaf5a473c9a6e7742727dd94f76dd18d1}{
void {\bfseries set\_\-default\_\-willingness} (const int value)}
\label{classNodes_aaf5a473c9a6e7742727dd94f76dd18d1}

\item 
\hypertarget{classNodes_a5f5e1b1f3242fa6344ebb27ffc106da7}{
void {\bfseries set\_\-default\_\-tc\_\-redundancy} (const int value)}
\label{classNodes_a5f5e1b1f3242fa6344ebb27ffc106da7}

\item 
bool \hyperlink{classNodes_a44df29f4a7aaa4a175670c46a3292742}{set\_\-hello\_\-interval} (const \hyperlink{classIPv4}{IPv4} \&main\_\-addr, const int value)
\begin{DoxyCompactList}\small\item\em Set HELLO\_\-INTERVAL variable for \hyperlink{protocolthe-p}{the} node given by main\_\-addr. \item\end{DoxyCompactList}\item 
bool \hyperlink{classNodes_a1402d3ec71466f847c87386aff53944a}{set\_\-mid\_\-interval} (const \hyperlink{classIPv4}{IPv4} \&main\_\-addr, const int value)
\begin{DoxyCompactList}\small\item\em Set MID\_\-INTERVAL variable for \hyperlink{protocolthe-p}{the} node given by main\_\-addr. \item\end{DoxyCompactList}\item 
bool \hyperlink{classNodes_af31646bbb41a0ea9ecec36702e80f5c9}{set\_\-mpr\_\-coverage} (const \hyperlink{classIPv4}{IPv4} \&main\_\-addr, const int value)
\begin{DoxyCompactList}\small\item\em Set MPR\_\-COVERAGE variable for \hyperlink{protocolthe-p}{the} node given by main\_\-addr. \item\end{DoxyCompactList}\item 
bool \hyperlink{classNodes_ac39dc7fe2447b5d18af6337e6da6b0ca}{set\_\-refresh\_\-interval} (const \hyperlink{classIPv4}{IPv4} \&main\_\-addr, const int value)
\begin{DoxyCompactList}\small\item\em Set REFRESH\_\-INTERVAL variable for \hyperlink{protocolthe-p}{the} node given by main\_\-addr. \item\end{DoxyCompactList}\item 
bool \hyperlink{classNodes_ae12c183e3c1f7210013f2d840f90c236}{set\_\-tc\_\-interval} (const \hyperlink{classIPv4}{IPv4} \&main\_\-addr, const int value)
\begin{DoxyCompactList}\small\item\em Set TC\_\-INTERVAL variable for \hyperlink{protocolthe-p}{the} node given by main\_\-addr. \item\end{DoxyCompactList}\item 
bool \hyperlink{classNodes_a7f2001cbb142603696e4ad871e9e61bd}{set\_\-tc\_\-redundancy} (const \hyperlink{classIPv4}{IPv4} \&main\_\-addr, const int value)
\begin{DoxyCompactList}\small\item\em Set TC\_\-REDUNDANCY variable for \hyperlink{protocolthe-p}{the} node given by main\_\-addr. \item\end{DoxyCompactList}\item 
bool \hyperlink{classNodes_a05dfd93ac4d28c86fb2e954ffe3606b6}{set\_\-willingness} (const \hyperlink{classIPv4}{IPv4} \&main\_\-addr, const int value)
\begin{DoxyCompactList}\small\item\em Set WILLINGNESS variable for \hyperlink{protocolthe-p}{the} node given by main\_\-addr. \item\end{DoxyCompactList}\item 
bool \hyperlink{classNodes_a5860e5bc66b59c8280fbfd844e5f10fe}{set\_\-hna\_\-interval} (const \hyperlink{classIPv4}{IPv4} \&main\_\-addr, const int value)
\begin{DoxyCompactList}\small\item\em Set HNA\_\-INTERVAL variable for \hyperlink{protocolthe-p}{the} node given by main\_\-addr. \item\end{DoxyCompactList}\item 
bool \hyperlink{classNodes_a5f14e885a395063b735720be16ff4ca0}{set\_\-dup\_\-hold\_\-time} (const \hyperlink{classIPv4}{IPv4} \&main\_\-addr, const int value)
\begin{DoxyCompactList}\small\item\em Set DUP\_\-HOLD\_\-TIME variable for \hyperlink{protocolthe-p}{the} node given by main\_\-addr. \item\end{DoxyCompactList}\item 
bool \hyperlink{classNodes_af2f11dce2f3056f1c9f50c7cf53987d3}{select\_\-node} (const \hyperlink{classIPv4}{IPv4} \&main\_\-addr)
\begin{DoxyCompactList}\small\item\em Select \hyperlink{protocolthe-p}{the} OLSR node with \hyperlink{protocolthe-p}{the} given main address for \hyperlink{protocolthe-p}{the} verification commands which follow. \item\end{DoxyCompactList}\item 
bool \hyperlink{classNodes_a9c9cb3102905238c04fcdcc20a5e2604}{dump\_\-routing\_\-table} (const \hyperlink{classIPv4}{IPv4} \&main\_\-addr)
\begin{DoxyCompactList}\small\item\em Dump a node's routing table to cout. \item\end{DoxyCompactList}\item 
bool \hyperlink{classNodes_aa158a3e537fd637b69e8588a16b38117}{verify\_\-all\_\-link\_\-state\_\-empty} ()
\begin{DoxyCompactList}\small\item\em Verify that \hyperlink{protocolthe-p}{the} link state database at every node in \hyperlink{protocolthe-p}{the} topology is empty (N1/N2/TC/MPR/MID). \item\end{DoxyCompactList}\item 
bool \hyperlink{classNodes_a70202a23ad364f2d9eb9f9b8a3081376}{verify\_\-node\_\-link\_\-state\_\-empty} (\hyperlink{classNodeTuple}{NodeTuple} \&nat)
\begin{DoxyCompactList}\small\item\em Verify that \hyperlink{protocolthe-p}{the} link state database in \hyperlink{protocolthe-p}{the} given node is empty (N1/N2/TC/MPR/MID). \item\end{DoxyCompactList}\item 
bool \hyperlink{classNodes_a3ad0aa06c03117bf26168a63d2c94567}{verify\_\-n1} (const \hyperlink{classIPv4}{IPv4} \&n1\_\-addr, const bool expected\_\-is\_\-n1)
\begin{DoxyCompactList}\small\item\em Verify that \hyperlink{protocolthe-p}{the} neighbor given by n1\_\-addr is a one-\/hop neighbor of \hyperlink{protocolthe-p}{the} currently selected node. \item\end{DoxyCompactList}\item 
bool \hyperlink{classNodes_a72e8b1abc0aeceff3bd76ae3b81709df}{verify\_\-n2} (const \hyperlink{classIPv4}{IPv4} \&n2\_\-addr, const bool expected\_\-is\_\-n2)
\begin{DoxyCompactList}\small\item\em Verify that n2\_\-addr is \hyperlink{protocolthe-p}{the} address of a two-\/hop neighbor of \hyperlink{protocolthe-p}{the} currently selected node. \item\end{DoxyCompactList}\item 
bool \hyperlink{classNodes_abbbcc15469ea8ad5eb89ae6ded0682cb}{verify\_\-is\_\-mpr} (const bool expected\_\-is\_\-mpr)
\begin{DoxyCompactList}\small\item\em Verify \hyperlink{protocolthe-p}{the} MPR status of \hyperlink{protocolthe-p}{the} selected node. \item\end{DoxyCompactList}\item 
bool \hyperlink{classNodes_aa4c8122f6a46742cff9c7bd6b6d7c608}{verify\_\-mpr\_\-set} (const vector$<$ \hyperlink{classIPv4}{IPv4} $>$ \&mpr\_\-addrs)
\begin{DoxyCompactList}\small\item\em Verify \hyperlink{protocolthe-p}{the} MPR set of \hyperlink{protocolthe-p}{the} selected node. \item\end{DoxyCompactList}\item 
bool \hyperlink{classNodes_a90d804febe303ee28f46e7ee78c1bc45}{verify\_\-mpr\_\-selector\_\-set} (const vector$<$ \hyperlink{classIPv4}{IPv4} $>$ \&mprs\_\-addrs)
\begin{DoxyCompactList}\small\item\em Verify \hyperlink{protocolthe-p}{the} MPR selector set of \hyperlink{protocolthe-p}{the} selected node. \item\end{DoxyCompactList}\item 
bool \hyperlink{classNodes_abccea6b29ca2f47eb877656850ae7917}{verify\_\-mid\_\-node\_\-count} (const size\_\-t expected)
\begin{DoxyCompactList}\small\item\em Verify \hyperlink{protocolthe-p}{the} MID database of \hyperlink{protocolthe-p}{the} selected node contains \hyperlink{protocolthe-p}{the} expected number of nodes (Note: this is NOT \hyperlink{protocolthe-p}{the} same as entries; rather, it's \hyperlink{protocolthe-p}{the} number of unique keys we have in \hyperlink{protocolthe-p}{the} \_\-mid\_\-addr multimap.) \item\end{DoxyCompactList}\item 
bool \hyperlink{classNodes_ad4050597d44b1e5b39e0dbe787019380}{verify\_\-mid\_\-node\_\-addrs} (const \hyperlink{classIPv4}{IPv4} \&origin, const vector$<$ \hyperlink{classIPv4}{IPv4} $>$ \&addrs)
\begin{DoxyCompactList}\small\item\em Verify \hyperlink{protocolthe-p}{the} MID database of \hyperlink{protocolthe-p}{the} selected node contains \hyperlink{protocolthe-p}{the} given entries for \hyperlink{protocolthe-p}{the} given protocol address. \item\end{DoxyCompactList}\item 
bool \hyperlink{classNodes_a68372f29913169388c063d75ed1ed424}{verify\_\-mid\_\-address\_\-distance} (const \hyperlink{classIPv4}{IPv4} \&origin, const \hyperlink{classIPv4}{IPv4} \&iface\_\-addr, const uint16\_\-t expected\_\-distance)
\begin{DoxyCompactList}\small\item\em Verify \hyperlink{protocolthe-p}{the} MID database of \hyperlink{protocolthe-p}{the} selected node contains an entry for \hyperlink{protocolthe-p}{the} given main address and interface address, at \hyperlink{protocolthe-p}{the} given network distance measured in hops. \item\end{DoxyCompactList}\item 
bool \hyperlink{classNodes_a8de6fc73c8f4bebe7804d874c2363252}{verify\_\-tc\_\-origin\_\-count} (const size\_\-t expected\_\-count)
\begin{DoxyCompactList}\small\item\em Verify \hyperlink{protocolthe-p}{the} TC database of \hyperlink{protocolthe-p}{the} selected node contains entries which have originated from \hyperlink{protocolthe-p}{the} given number of unique OLSR nodes. \item\end{DoxyCompactList}\item 
bool \hyperlink{classNodes_af38c859375760b4825c102dbe81d88a4}{verify\_\-tc\_\-ans} (const \hyperlink{classIPv4}{IPv4} \&origin, const uint16\_\-t expected\_\-ansn, const vector$<$ \hyperlink{classIPv4}{IPv4} $>$ \&expected\_\-addrs)
\begin{DoxyCompactList}\small\item\em Verify that \hyperlink{protocolthe-p}{the} Advertised \hyperlink{classNeighbor}{Neighbor} Set of 'origin', as seen at \hyperlink{protocolthe-p}{the} currently selected node, has \hyperlink{protocolthe-p}{the} expected ANSN and \hyperlink{protocolthe-p}{the} expected neighbor set contents. \item\end{DoxyCompactList}\item 
bool \hyperlink{classNodes_a449fb646bd3e4e30d293a96f0d2273eb}{verify\_\-tc\_\-origin\_\-seen} (const \hyperlink{classIPv4}{IPv4} \&origin, const bool expected\_\-seen)
\begin{DoxyCompactList}\small\item\em Verify that \hyperlink{protocolthe-p}{the} selected node has seen TC broadcasts from 'origin' at least once during \hyperlink{protocolthe-p}{the} lifetime of \hyperlink{protocolthe-p}{the} simulation. \item\end{DoxyCompactList}\item 
bool \hyperlink{classNodes_a05c4ffce40ef86a5c657f125de69afc9}{verify\_\-tc\_\-distance} (const \hyperlink{classIPv4}{IPv4} \&origin, const \hyperlink{classIPv4}{IPv4} \&neighbor\_\-addr, const uint16\_\-t expected\_\-distance)
\begin{DoxyCompactList}\small\item\em Verify that \hyperlink{protocolthe-p}{the} given TC entry has \hyperlink{protocolthe-p}{the} expected hop count, as observed at \hyperlink{protocolthe-p}{the} currently selected node's TC database. \item\end{DoxyCompactList}\item 
bool \hyperlink{classNodes_a43fd9a7e5287dd825cbd88b33e85bef0}{verify\_\-tc\_\-destination} (const \hyperlink{classIPv4}{IPv4} \&dest\_\-addr, const size\_\-t expected\_\-count)
\begin{DoxyCompactList}\small\item\em Verify that \hyperlink{protocolthe-p}{the} currently selected node has a given number of TC entries pointing to \hyperlink{protocolthe-p}{the} given destination. \item\end{DoxyCompactList}\item 
bool \hyperlink{classNodes_a988c813baa5013970d11b73cbae790bd}{verify\_\-hna\_\-entry} (const \hyperlink{classIPNet}{IPv4Net} \&dest, const \hyperlink{classIPv4}{IPv4} \&origin)
\begin{DoxyCompactList}\small\item\em Verify \hyperlink{protocolthe-p}{the} HNA database of \hyperlink{protocolthe-p}{the} selected node contains an entry for \hyperlink{protocolthe-p}{the} given destination from \hyperlink{protocolthe-p}{the} given origin. \item\end{DoxyCompactList}\item 
bool \hyperlink{classNodes_a877328ba32574f278f135cfb558cb231}{verify\_\-hna\_\-distance} (const \hyperlink{classIPNet}{IPv4Net} \&dest, const \hyperlink{classIPv4}{IPv4} \&origin, const uint16\_\-t distance)
\begin{DoxyCompactList}\small\item\em Verify \hyperlink{protocolthe-p}{the} HNA database of \hyperlink{protocolthe-p}{the} selected node contains an entry for \hyperlink{protocolthe-p}{the} given destination from \hyperlink{protocolthe-p}{the} given origin, at \hyperlink{protocolthe-p}{the} given distance. \item\end{DoxyCompactList}\item 
bool \hyperlink{classNodes_a00f70a18417bc191f7736095a1b073ea}{verify\_\-hna\_\-entry\_\-count} (const size\_\-t expected\_\-count)
\begin{DoxyCompactList}\small\item\em Verify \hyperlink{protocolthe-p}{the} HNA database of \hyperlink{protocolthe-p}{the} selected node contains exactly \hyperlink{protocolthe-p}{the} given number of entries. \item\end{DoxyCompactList}\item 
bool \hyperlink{classNodes_aeadad3277c4aea74040e697657c77471}{verify\_\-hna\_\-origin\_\-count} (const size\_\-t expected\_\-count)
\begin{DoxyCompactList}\small\item\em Verify \hyperlink{protocolthe-p}{the} HNA database of \hyperlink{protocolthe-p}{the} selected node contains entries which have originated from \hyperlink{protocolthe-p}{the} given number of unique OLSR nodes. \item\end{DoxyCompactList}\item 
bool \hyperlink{classNodes_ada879dcfce213100e041a4c0cd2fc305}{verify\_\-hna\_\-dest\_\-count} (const size\_\-t expected\_\-count)
\begin{DoxyCompactList}\small\item\em Verify \hyperlink{protocolthe-p}{the} HNA database of \hyperlink{protocolthe-p}{the} selected node contains \hyperlink{protocolthe-p}{the} given number of leanred network prefixes. \item\end{DoxyCompactList}\item 
bool \hyperlink{classNodes_a56da736d57d11ea0919e2a175056767c}{originate\_\-hna} (const \hyperlink{classIPNet}{IPv4Net} \&dest)
\begin{DoxyCompactList}\small\item\em Add a prefix to \hyperlink{protocolthe-p}{the} HNA \char`\"{}routes out\char`\"{} database of \hyperlink{protocolthe-p}{the} currently selected node, and start advertising it. \item\end{DoxyCompactList}\item 
bool \hyperlink{classNodes_ad4b34d05ad93e5a6d6e5fad2f816020f}{withdraw\_\-hna} (const \hyperlink{classIPNet}{IPv4Net} \&dest)
\begin{DoxyCompactList}\small\item\em Withdraw a prefix from \hyperlink{protocolthe-p}{the} HNA \char`\"{}routes out\char`\"{} database of \hyperlink{protocolthe-p}{the} currently selected node, and stop advertising it. \item\end{DoxyCompactList}\item 
bool \hyperlink{classNodes_acad0a62ce52a9fd0b566c5e007d03d41}{verify\_\-routing\_\-table\_\-size} (const size\_\-t rtsize)
\begin{DoxyCompactList}\small\item\em Verify \hyperlink{protocolthe-p}{the} routing table of \hyperlink{protocolthe-p}{the} selected node contains exactly \hyperlink{protocolthe-p}{the} given number of entries. \item\end{DoxyCompactList}\item 
bool \hyperlink{classNodes_ae24eedc86a95399597ab58881de014a7}{verify\_\-routing\_\-entry} (\hyperlink{classIPNet}{IPv4Net} dest, \hyperlink{classIPv4}{IPv4} nexthop, uint32\_\-t metric)
\begin{DoxyCompactList}\small\item\em Verify \hyperlink{protocolthe-p}{the} routing table of \hyperlink{protocolthe-p}{the} selected node contains \hyperlink{protocolthe-p}{the} given route entry. \item\end{DoxyCompactList}\item 
\hyperlink{classNodeTuple}{NodeTuple} \& \hyperlink{classNodes_ab6a6d1a8035a3184683043e2ada5ed28}{get\_\-node\_\-tuple\_\-by\_\-addr} (const \hyperlink{classIPv4}{IPv4} \&addr)  throw (NoSuchAddress)
\begin{DoxyCompactList}\small\item\em Given an OLSR protocol address, return \hyperlink{protocolthe-p}{the} corresponding \hyperlink{classNodeTuple}{NodeTuple} instance by value. \item\end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Protected Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classNodes_a3842df460766cd23bcdf5438e3107fc6}{
bool {\bfseries node\_\-is\_\-selected} ()}
\label{classNodes_a3842df460766cd23bcdf5438e3107fc6}

\end{DoxyCompactItemize}
\subsection*{Private Attributes}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classNodes_a3530e6188afe91998bac4914194d70ba}{
\hyperlink{classSimulator}{Simulator} $\ast$ {\bfseries \_\-parent}}
\label{classNodes_a3530e6188afe91998bac4914194d70ba}

\item 
\hypertarget{classNodes_a9da1a0ca610e75a001fc788a58fa17a6}{
\hyperlink{classEventLoop}{EventLoop} \& {\bfseries \_\-eventloop}}
\label{classNodes_a9da1a0ca610e75a001fc788a58fa17a6}

\item 
\hypertarget{classNodes_ad376146f9d1fc5f7da62c8a0adb6d153}{
int \hyperlink{classNodes_ad376146f9d1fc5f7da62c8a0adb6d153}{\_\-next\_\-instance\_\-id}}
\label{classNodes_ad376146f9d1fc5f7da62c8a0adb6d153}

\begin{DoxyCompactList}\small\item\em The next available instance ID for a pair of OLSR/DebugIO instances. \item\end{DoxyCompactList}\item 
\hypertarget{classNodes_ab6ef152a8f1ae0b29916f0fdf6b97019}{
int {\bfseries \_\-default\_\-hello\_\-interval}}
\label{classNodes_ab6ef152a8f1ae0b29916f0fdf6b97019}

\item 
\hypertarget{classNodes_a1564fa0cb73969ccba8ec71abd07b632}{
int {\bfseries \_\-default\_\-mid\_\-interval}}
\label{classNodes_a1564fa0cb73969ccba8ec71abd07b632}

\item 
\hypertarget{classNodes_a2247d19d3548f331807c87c057a2d537}{
int {\bfseries \_\-default\_\-mpr\_\-coverage}}
\label{classNodes_a2247d19d3548f331807c87c057a2d537}

\item 
\hypertarget{classNodes_a46f802e549f19e7c846c620af1b7db20}{
int {\bfseries \_\-default\_\-refresh\_\-interval}}
\label{classNodes_a46f802e549f19e7c846c620af1b7db20}

\item 
\hypertarget{classNodes_ab284a03090dd9569c79b04cf2be374f8}{
int {\bfseries \_\-default\_\-tc\_\-interval}}
\label{classNodes_ab284a03090dd9569c79b04cf2be374f8}

\item 
\hypertarget{classNodes_ad0c5bd72ccb54aa1ed4d98400a18cb53}{
int {\bfseries \_\-default\_\-hna\_\-interval}}
\label{classNodes_ad0c5bd72ccb54aa1ed4d98400a18cb53}

\item 
\hypertarget{classNodes_aace0fb1b360acf11bfaf364b1bddfb5a}{
int {\bfseries \_\-default\_\-dup\_\-hold\_\-time}}
\label{classNodes_aace0fb1b360acf11bfaf364b1bddfb5a}

\item 
\hypertarget{classNodes_af0c74bf172cb8235d003e7e75ef55777}{
int {\bfseries \_\-default\_\-willingness}}
\label{classNodes_af0c74bf172cb8235d003e7e75ef55777}

\item 
\hypertarget{classNodes_aac7ade5188a865f5d622b48128496dca}{
int {\bfseries \_\-default\_\-tc\_\-redundancy}}
\label{classNodes_aac7ade5188a865f5d622b48128496dca}

\item 
map$<$ \hyperlink{classIPv4}{IPv4}, \hyperlink{classNodeTuple}{NodeTuple} $>$ \hyperlink{classNodes_a3482a86444648e9d5a48c9e3e16658c8}{\_\-nodes}
\begin{DoxyCompactList}\small\item\em Database of current simulation instances, keyed by protocol address; one entry for each OLSR address. \item\end{DoxyCompactList}\item 
\hypertarget{classNodes_aefd11bab196bc65557defa4bd4d4c7d9}{
\hyperlink{classNodeTuple}{NodeTuple} \hyperlink{classNodes_aefd11bab196bc65557defa4bd4d4c7d9}{\_\-selected\_\-node}}
\label{classNodes_aefd11bab196bc65557defa4bd4d4c7d9}

\begin{DoxyCompactList}\small\item\em The currently selected node. \item\end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Member Function Documentation}
\hypertarget{classNodes_a0867a2af67b173f6ff2b92b95a5afdde}{
\index{Nodes@{Nodes}!configure\_\-address@{configure\_\-address}}
\index{configure\_\-address@{configure\_\-address}!Nodes@{Nodes}}
\subsubsection[{configure\_\-address}]{\setlength{\rightskip}{0pt plus 5cm}bool Nodes::configure\_\-address (
\begin{DoxyParamCaption}
\item[{const {\bf IPv4} \&}]{iface\_\-addr}
\end{DoxyParamCaption}
)}}
\label{classNodes_a0867a2af67b173f6ff2b92b95a5afdde}


Mark an OLSR node address as administratively up. 


\begin{DoxyParams}{Parameters}
{\em iface\_\-addr} & \hyperlink{protocolthe-p}{the} interface address to configure up. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
true if ok, false if any error occurred. 
\end{DoxyReturn}
\hypertarget{classNodes_ae7f8a8b590b175f6119d5669d497a86e}{
\index{Nodes@{Nodes}!create\_\-node@{create\_\-node}}
\index{create\_\-node@{create\_\-node}!Nodes@{Nodes}}
\subsubsection[{create\_\-node}]{\setlength{\rightskip}{0pt plus 5cm}bool Nodes::create\_\-node (
\begin{DoxyParamCaption}
\item[{const vector$<$ {\bf IPv4} $>$ \&}]{addrs}
\end{DoxyParamCaption}
)}}
\label{classNodes_ae7f8a8b590b175f6119d5669d497a86e}


Simulation graph creation. 

Create an OLSR node in \hyperlink{protocolthe-p}{the} simulator.


\begin{DoxyParams}{Parameters}
{\em addrs} & \hyperlink{protocolthe-p}{the} interface addresses to create \hyperlink{protocolthe-p}{the} node with; \hyperlink{protocolthe-p}{the} first address is always \hyperlink{protocolthe-p}{the} main address. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
true if ok, false if any error occurred. 
\end{DoxyReturn}
\hypertarget{classNodes_a3c559241c9531aa6e71487895fbdb943}{
\index{Nodes@{Nodes}!destroy\_\-node@{destroy\_\-node}}
\index{destroy\_\-node@{destroy\_\-node}!Nodes@{Nodes}}
\subsubsection[{destroy\_\-node}]{\setlength{\rightskip}{0pt plus 5cm}bool Nodes::destroy\_\-node (
\begin{DoxyParamCaption}
\item[{const {\bf IPv4} \&}]{main\_\-addr}
\end{DoxyParamCaption}
)}}
\label{classNodes_a3c559241c9531aa6e71487895fbdb943}


Destroy an OLSR node in \hyperlink{protocolthe-p}{the} simulator. 


\begin{DoxyParams}{Parameters}
{\em main\_\-addr} & \hyperlink{protocolthe-p}{the} main address of \hyperlink{protocolthe-p}{the} node to destroy. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
true if ok, false if any error occurred. 
\end{DoxyReturn}
\hypertarget{classNodes_a9c9cb3102905238c04fcdcc20a5e2604}{
\index{Nodes@{Nodes}!dump\_\-routing\_\-table@{dump\_\-routing\_\-table}}
\index{dump\_\-routing\_\-table@{dump\_\-routing\_\-table}!Nodes@{Nodes}}
\subsubsection[{dump\_\-routing\_\-table}]{\setlength{\rightskip}{0pt plus 5cm}bool Nodes::dump\_\-routing\_\-table (
\begin{DoxyParamCaption}
\item[{const {\bf IPv4} \&}]{main\_\-addr}
\end{DoxyParamCaption}
)}}
\label{classNodes_a9c9cb3102905238c04fcdcc20a5e2604}


Dump a node's routing table to cout. 


\begin{DoxyParams}{Parameters}
{\em main\_\-addr} & \hyperlink{protocolthe-p}{the} address of \hyperlink{protocolthe-p}{the} node to dump routes for. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
true if ok, false if any error occurred. 
\end{DoxyReturn}
\hypertarget{classNodes_ab6a6d1a8035a3184683043e2ada5ed28}{
\index{Nodes@{Nodes}!get\_\-node\_\-tuple\_\-by\_\-addr@{get\_\-node\_\-tuple\_\-by\_\-addr}}
\index{get\_\-node\_\-tuple\_\-by\_\-addr@{get\_\-node\_\-tuple\_\-by\_\-addr}!Nodes@{Nodes}}
\subsubsection[{get\_\-node\_\-tuple\_\-by\_\-addr}]{\setlength{\rightskip}{0pt plus 5cm}{\bf NodeTuple} \& Nodes::get\_\-node\_\-tuple\_\-by\_\-addr (
\begin{DoxyParamCaption}
\item[{const {\bf IPv4} \&}]{addr}
\end{DoxyParamCaption}
)  throw ({\bf NoSuchAddress})}}
\label{classNodes_ab6a6d1a8035a3184683043e2ada5ed28}


Given an OLSR protocol address, return \hyperlink{protocolthe-p}{the} corresponding \hyperlink{classNodeTuple}{NodeTuple} instance by value. 


\begin{DoxyParams}{Parameters}
{\em addr} & \hyperlink{protocolthe-p}{the} OLSR protocol address to look up in \hyperlink{protocolthe-p}{the} simulator. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
\hyperlink{protocolthe-p}{the} \hyperlink{classNodeTuple}{NodeTuple} corresponding to addr. 
\end{DoxyReturn}

\begin{DoxyExceptions}{Exceptions}
{\em NoSuchAddr} & if \hyperlink{protocolthe-p}{the} address does not exist. \\
\hline
\end{DoxyExceptions}
\hypertarget{classNodes_a56da736d57d11ea0919e2a175056767c}{
\index{Nodes@{Nodes}!originate\_\-hna@{originate\_\-hna}}
\index{originate\_\-hna@{originate\_\-hna}!Nodes@{Nodes}}
\subsubsection[{originate\_\-hna}]{\setlength{\rightskip}{0pt plus 5cm}bool Nodes::originate\_\-hna (
\begin{DoxyParamCaption}
\item[{const {\bf IPv4Net} \&}]{dest}
\end{DoxyParamCaption}
)}}
\label{classNodes_a56da736d57d11ea0919e2a175056767c}


Add a prefix to \hyperlink{protocolthe-p}{the} HNA \char`\"{}routes out\char`\"{} database of \hyperlink{protocolthe-p}{the} currently selected node, and start advertising it. 


\begin{DoxyParams}{Parameters}
{\em dest} & \hyperlink{protocolthe-p}{the} network prefix to originate. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
true if ok, false if any error occurred. 
\end{DoxyReturn}
\hypertarget{classNodes_af1ed09ea9a3489c373d4b4883361e8f9}{
\index{Nodes@{Nodes}!purge\_\-links\_\-by\_\-node@{purge\_\-links\_\-by\_\-node}}
\index{purge\_\-links\_\-by\_\-node@{purge\_\-links\_\-by\_\-node}!Nodes@{Nodes}}
\subsubsection[{purge\_\-links\_\-by\_\-node}]{\setlength{\rightskip}{0pt plus 5cm}size\_\-t Nodes::purge\_\-links\_\-by\_\-node (
\begin{DoxyParamCaption}
\item[{const {\bf IPv4} \&}]{main\_\-addr}
\end{DoxyParamCaption}
)  throw ({\bf NoSuchAddress})}}
\label{classNodes_af1ed09ea9a3489c373d4b4883361e8f9}


Given \hyperlink{protocolthe-p}{the} main address of an OLSR node, destroy all links referencing that node. 


\begin{DoxyParams}{Parameters}
{\em main\_\-addr} & The OLSR interface address of \hyperlink{protocolthe-p}{the} node. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
\hyperlink{protocolthe-p}{the} number of links which were destroyed. 
\end{DoxyReturn}

\begin{DoxyExceptions}{Exceptions}
{\em \hyperlink{classNoSuchAddress}{NoSuchAddress}} & if link\_\-addr does not exist. \\
\hline
\end{DoxyExceptions}
\hypertarget{classNodes_af2f11dce2f3056f1c9f50c7cf53987d3}{
\index{Nodes@{Nodes}!select\_\-node@{select\_\-node}}
\index{select\_\-node@{select\_\-node}!Nodes@{Nodes}}
\subsubsection[{select\_\-node}]{\setlength{\rightskip}{0pt plus 5cm}bool Nodes::select\_\-node (
\begin{DoxyParamCaption}
\item[{const {\bf IPv4} \&}]{main\_\-addr}
\end{DoxyParamCaption}
)}}
\label{classNodes_af2f11dce2f3056f1c9f50c7cf53987d3}


Select \hyperlink{protocolthe-p}{the} OLSR node with \hyperlink{protocolthe-p}{the} given main address for \hyperlink{protocolthe-p}{the} verification commands which follow. 


\begin{DoxyParams}{Parameters}
{\em main\_\-addr} & \hyperlink{protocolthe-p}{the} address of \hyperlink{protocolthe-p}{the} node to select. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
true if ok, false if any error occurred. 
\end{DoxyReturn}
\hypertarget{classNodes_a5f14e885a395063b735720be16ff4ca0}{
\index{Nodes@{Nodes}!set\_\-dup\_\-hold\_\-time@{set\_\-dup\_\-hold\_\-time}}
\index{set\_\-dup\_\-hold\_\-time@{set\_\-dup\_\-hold\_\-time}!Nodes@{Nodes}}
\subsubsection[{set\_\-dup\_\-hold\_\-time}]{\setlength{\rightskip}{0pt plus 5cm}bool Nodes::set\_\-dup\_\-hold\_\-time (
\begin{DoxyParamCaption}
\item[{const {\bf IPv4} \&}]{main\_\-addr, }
\item[{const int}]{value}
\end{DoxyParamCaption}
)}}
\label{classNodes_a5f14e885a395063b735720be16ff4ca0}


Set DUP\_\-HOLD\_\-TIME variable for \hyperlink{protocolthe-p}{the} node given by main\_\-addr. 


\begin{DoxyParams}{Parameters}
{\em main\_\-addr} & \hyperlink{protocolthe-p}{the} address of \hyperlink{protocolthe-p}{the} node to set \hyperlink{protocolthe-p}{the} variable for. \\
\hline
{\em value} & \hyperlink{protocolthe-p}{the} new value of \hyperlink{protocolthe-p}{the} DUP\_\-HOLD\_\-TIME protocol variable. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
true if ok, false if any error occurred. 
\end{DoxyReturn}
\hypertarget{classNodes_a44df29f4a7aaa4a175670c46a3292742}{
\index{Nodes@{Nodes}!set\_\-hello\_\-interval@{set\_\-hello\_\-interval}}
\index{set\_\-hello\_\-interval@{set\_\-hello\_\-interval}!Nodes@{Nodes}}
\subsubsection[{set\_\-hello\_\-interval}]{\setlength{\rightskip}{0pt plus 5cm}bool Nodes::set\_\-hello\_\-interval (
\begin{DoxyParamCaption}
\item[{const {\bf IPv4} \&}]{main\_\-addr, }
\item[{const int}]{value}
\end{DoxyParamCaption}
)}}
\label{classNodes_a44df29f4a7aaa4a175670c46a3292742}


Set HELLO\_\-INTERVAL variable for \hyperlink{protocolthe-p}{the} node given by main\_\-addr. 


\begin{DoxyParams}{Parameters}
{\em main\_\-addr} & \hyperlink{protocolthe-p}{the} address of \hyperlink{protocolthe-p}{the} node to set \hyperlink{protocolthe-p}{the} variable for. \\
\hline
{\em value} & \hyperlink{protocolthe-p}{the} new value of \hyperlink{protocolthe-p}{the} HELLO\_\-INTERVAL protocol variable. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
true if ok, false if any error occurred. 
\end{DoxyReturn}
\hypertarget{classNodes_a5860e5bc66b59c8280fbfd844e5f10fe}{
\index{Nodes@{Nodes}!set\_\-hna\_\-interval@{set\_\-hna\_\-interval}}
\index{set\_\-hna\_\-interval@{set\_\-hna\_\-interval}!Nodes@{Nodes}}
\subsubsection[{set\_\-hna\_\-interval}]{\setlength{\rightskip}{0pt plus 5cm}bool Nodes::set\_\-hna\_\-interval (
\begin{DoxyParamCaption}
\item[{const {\bf IPv4} \&}]{main\_\-addr, }
\item[{const int}]{value}
\end{DoxyParamCaption}
)}}
\label{classNodes_a5860e5bc66b59c8280fbfd844e5f10fe}


Set HNA\_\-INTERVAL variable for \hyperlink{protocolthe-p}{the} node given by main\_\-addr. 


\begin{DoxyParams}{Parameters}
{\em main\_\-addr} & \hyperlink{protocolthe-p}{the} address of \hyperlink{protocolthe-p}{the} node to set \hyperlink{protocolthe-p}{the} variable for. \\
\hline
{\em value} & \hyperlink{protocolthe-p}{the} new value of \hyperlink{protocolthe-p}{the} HNA\_\-INTERVAL protocol variable. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
true if ok, false if any error occurred. 
\end{DoxyReturn}
\hypertarget{classNodes_a1402d3ec71466f847c87386aff53944a}{
\index{Nodes@{Nodes}!set\_\-mid\_\-interval@{set\_\-mid\_\-interval}}
\index{set\_\-mid\_\-interval@{set\_\-mid\_\-interval}!Nodes@{Nodes}}
\subsubsection[{set\_\-mid\_\-interval}]{\setlength{\rightskip}{0pt plus 5cm}bool Nodes::set\_\-mid\_\-interval (
\begin{DoxyParamCaption}
\item[{const {\bf IPv4} \&}]{main\_\-addr, }
\item[{const int}]{value}
\end{DoxyParamCaption}
)}}
\label{classNodes_a1402d3ec71466f847c87386aff53944a}


Set MID\_\-INTERVAL variable for \hyperlink{protocolthe-p}{the} node given by main\_\-addr. 


\begin{DoxyParams}{Parameters}
{\em main\_\-addr} & \hyperlink{protocolthe-p}{the} address of \hyperlink{protocolthe-p}{the} node to set \hyperlink{protocolthe-p}{the} variable for. \\
\hline
{\em value} & \hyperlink{protocolthe-p}{the} new value of \hyperlink{protocolthe-p}{the} MID\_\-INTERVAL protocol variable. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
true if ok, false if any error occurred. 
\end{DoxyReturn}
\hypertarget{classNodes_af31646bbb41a0ea9ecec36702e80f5c9}{
\index{Nodes@{Nodes}!set\_\-mpr\_\-coverage@{set\_\-mpr\_\-coverage}}
\index{set\_\-mpr\_\-coverage@{set\_\-mpr\_\-coverage}!Nodes@{Nodes}}
\subsubsection[{set\_\-mpr\_\-coverage}]{\setlength{\rightskip}{0pt plus 5cm}bool Nodes::set\_\-mpr\_\-coverage (
\begin{DoxyParamCaption}
\item[{const {\bf IPv4} \&}]{main\_\-addr, }
\item[{const int}]{value}
\end{DoxyParamCaption}
)}}
\label{classNodes_af31646bbb41a0ea9ecec36702e80f5c9}


Set MPR\_\-COVERAGE variable for \hyperlink{protocolthe-p}{the} node given by main\_\-addr. 


\begin{DoxyParams}{Parameters}
{\em main\_\-addr} & \hyperlink{protocolthe-p}{the} address of \hyperlink{protocolthe-p}{the} node to set \hyperlink{protocolthe-p}{the} variable for. \\
\hline
{\em value} & \hyperlink{protocolthe-p}{the} new value of \hyperlink{protocolthe-p}{the} MPR\_\-COVERAGE protocol variable. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
true if ok, false if any error occurred. 
\end{DoxyReturn}
\hypertarget{classNodes_ac39dc7fe2447b5d18af6337e6da6b0ca}{
\index{Nodes@{Nodes}!set\_\-refresh\_\-interval@{set\_\-refresh\_\-interval}}
\index{set\_\-refresh\_\-interval@{set\_\-refresh\_\-interval}!Nodes@{Nodes}}
\subsubsection[{set\_\-refresh\_\-interval}]{\setlength{\rightskip}{0pt plus 5cm}bool Nodes::set\_\-refresh\_\-interval (
\begin{DoxyParamCaption}
\item[{const {\bf IPv4} \&}]{main\_\-addr, }
\item[{const int}]{value}
\end{DoxyParamCaption}
)}}
\label{classNodes_ac39dc7fe2447b5d18af6337e6da6b0ca}


Set REFRESH\_\-INTERVAL variable for \hyperlink{protocolthe-p}{the} node given by main\_\-addr. 


\begin{DoxyParams}{Parameters}
{\em main\_\-addr} & \hyperlink{protocolthe-p}{the} address of \hyperlink{protocolthe-p}{the} node to set \hyperlink{protocolthe-p}{the} variable for. \\
\hline
{\em value} & \hyperlink{protocolthe-p}{the} new value of \hyperlink{protocolthe-p}{the} REFRESH\_\-INTERVAL protocol variable. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
true if ok, false if any error occurred. 
\end{DoxyReturn}
\hypertarget{classNodes_ae12c183e3c1f7210013f2d840f90c236}{
\index{Nodes@{Nodes}!set\_\-tc\_\-interval@{set\_\-tc\_\-interval}}
\index{set\_\-tc\_\-interval@{set\_\-tc\_\-interval}!Nodes@{Nodes}}
\subsubsection[{set\_\-tc\_\-interval}]{\setlength{\rightskip}{0pt plus 5cm}bool Nodes::set\_\-tc\_\-interval (
\begin{DoxyParamCaption}
\item[{const {\bf IPv4} \&}]{main\_\-addr, }
\item[{const int}]{value}
\end{DoxyParamCaption}
)}}
\label{classNodes_ae12c183e3c1f7210013f2d840f90c236}


Set TC\_\-INTERVAL variable for \hyperlink{protocolthe-p}{the} node given by main\_\-addr. 


\begin{DoxyParams}{Parameters}
{\em main\_\-addr} & \hyperlink{protocolthe-p}{the} address of \hyperlink{protocolthe-p}{the} node to set \hyperlink{protocolthe-p}{the} variable for. \\
\hline
{\em value} & \hyperlink{protocolthe-p}{the} new value of \hyperlink{protocolthe-p}{the} TC\_\-INTERVAL protocol variable. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
true if ok, false if any error occurred. 
\end{DoxyReturn}
\hypertarget{classNodes_a7f2001cbb142603696e4ad871e9e61bd}{
\index{Nodes@{Nodes}!set\_\-tc\_\-redundancy@{set\_\-tc\_\-redundancy}}
\index{set\_\-tc\_\-redundancy@{set\_\-tc\_\-redundancy}!Nodes@{Nodes}}
\subsubsection[{set\_\-tc\_\-redundancy}]{\setlength{\rightskip}{0pt plus 5cm}bool Nodes::set\_\-tc\_\-redundancy (
\begin{DoxyParamCaption}
\item[{const {\bf IPv4} \&}]{main\_\-addr, }
\item[{const int}]{value}
\end{DoxyParamCaption}
)}}
\label{classNodes_a7f2001cbb142603696e4ad871e9e61bd}


Set TC\_\-REDUNDANCY variable for \hyperlink{protocolthe-p}{the} node given by main\_\-addr. 


\begin{DoxyParams}{Parameters}
{\em main\_\-addr} & \hyperlink{protocolthe-p}{the} address of \hyperlink{protocolthe-p}{the} node to set \hyperlink{protocolthe-p}{the} variable for. \\
\hline
{\em value} & \hyperlink{protocolthe-p}{the} new value of \hyperlink{protocolthe-p}{the} TC\_\-REDUNDANCY protocol variable. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
true if ok, false if any error occurred. 
\end{DoxyReturn}
\hypertarget{classNodes_a05dfd93ac4d28c86fb2e954ffe3606b6}{
\index{Nodes@{Nodes}!set\_\-willingness@{set\_\-willingness}}
\index{set\_\-willingness@{set\_\-willingness}!Nodes@{Nodes}}
\subsubsection[{set\_\-willingness}]{\setlength{\rightskip}{0pt plus 5cm}bool Nodes::set\_\-willingness (
\begin{DoxyParamCaption}
\item[{const {\bf IPv4} \&}]{main\_\-addr, }
\item[{const int}]{value}
\end{DoxyParamCaption}
)}}
\label{classNodes_a05dfd93ac4d28c86fb2e954ffe3606b6}


Set WILLINGNESS variable for \hyperlink{protocolthe-p}{the} node given by main\_\-addr. 


\begin{DoxyParams}{Parameters}
{\em main\_\-addr} & \hyperlink{protocolthe-p}{the} address of \hyperlink{protocolthe-p}{the} node to set \hyperlink{protocolthe-p}{the} variable for. \\
\hline
{\em value} & \hyperlink{protocolthe-p}{the} new value of \hyperlink{protocolthe-p}{the} WILLINGNESS protocol variable. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
true if ok, false if any error occurred. 
\end{DoxyReturn}
\hypertarget{classNodes_a28fec1e2b5f49411b2f9acac71f3f5b1}{
\index{Nodes@{Nodes}!unconfigure\_\-address@{unconfigure\_\-address}}
\index{unconfigure\_\-address@{unconfigure\_\-address}!Nodes@{Nodes}}
\subsubsection[{unconfigure\_\-address}]{\setlength{\rightskip}{0pt plus 5cm}bool Nodes::unconfigure\_\-address (
\begin{DoxyParamCaption}
\item[{const {\bf IPv4} \&}]{iface\_\-addr}
\end{DoxyParamCaption}
)}}
\label{classNodes_a28fec1e2b5f49411b2f9acac71f3f5b1}


Mark an OLSR node address as administratively down. 


\begin{DoxyParams}{Parameters}
{\em iface\_\-addr} & \hyperlink{protocolthe-p}{the} interface address to configure down. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
true if ok, false if any error occurred. 
\end{DoxyReturn}
\hypertarget{classNodes_aa158a3e537fd637b69e8588a16b38117}{
\index{Nodes@{Nodes}!verify\_\-all\_\-link\_\-state\_\-empty@{verify\_\-all\_\-link\_\-state\_\-empty}}
\index{verify\_\-all\_\-link\_\-state\_\-empty@{verify\_\-all\_\-link\_\-state\_\-empty}!Nodes@{Nodes}}
\subsubsection[{verify\_\-all\_\-link\_\-state\_\-empty}]{\setlength{\rightskip}{0pt plus 5cm}bool Nodes::verify\_\-all\_\-link\_\-state\_\-empty (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}}
\label{classNodes_aa158a3e537fd637b69e8588a16b38117}


Verify that \hyperlink{protocolthe-p}{the} link state database at every node in \hyperlink{protocolthe-p}{the} topology is empty (N1/N2/TC/MPR/MID). 

HNA state is NOT checked.

\begin{DoxyReturn}{Returns}
true if ok, false if any error occurred. 
\end{DoxyReturn}
\hypertarget{classNodes_ada879dcfce213100e041a4c0cd2fc305}{
\index{Nodes@{Nodes}!verify\_\-hna\_\-dest\_\-count@{verify\_\-hna\_\-dest\_\-count}}
\index{verify\_\-hna\_\-dest\_\-count@{verify\_\-hna\_\-dest\_\-count}!Nodes@{Nodes}}
\subsubsection[{verify\_\-hna\_\-dest\_\-count}]{\setlength{\rightskip}{0pt plus 5cm}bool Nodes::verify\_\-hna\_\-dest\_\-count (
\begin{DoxyParamCaption}
\item[{const size\_\-t}]{expected\_\-count}
\end{DoxyParamCaption}
)}}
\label{classNodes_ada879dcfce213100e041a4c0cd2fc305}


Verify \hyperlink{protocolthe-p}{the} HNA database of \hyperlink{protocolthe-p}{the} selected node contains \hyperlink{protocolthe-p}{the} given number of leanred network prefixes. 


\begin{DoxyParams}{Parameters}
{\em expected\_\-count} & \hyperlink{protocolthe-p}{the} expected number of HNA prefixes. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
true if ok, false if any error occurred. 
\end{DoxyReturn}
\hypertarget{classNodes_a877328ba32574f278f135cfb558cb231}{
\index{Nodes@{Nodes}!verify\_\-hna\_\-distance@{verify\_\-hna\_\-distance}}
\index{verify\_\-hna\_\-distance@{verify\_\-hna\_\-distance}!Nodes@{Nodes}}
\subsubsection[{verify\_\-hna\_\-distance}]{\setlength{\rightskip}{0pt plus 5cm}bool Nodes::verify\_\-hna\_\-distance (
\begin{DoxyParamCaption}
\item[{const {\bf IPv4Net} \&}]{dest, }
\item[{const {\bf IPv4} \&}]{origin, }
\item[{const uint16\_\-t}]{distance}
\end{DoxyParamCaption}
)}}
\label{classNodes_a877328ba32574f278f135cfb558cb231}


Verify \hyperlink{protocolthe-p}{the} HNA database of \hyperlink{protocolthe-p}{the} selected node contains an entry for \hyperlink{protocolthe-p}{the} given destination from \hyperlink{protocolthe-p}{the} given origin, at \hyperlink{protocolthe-p}{the} given distance. 


\begin{DoxyParams}{Parameters}
{\em dest} & \hyperlink{protocolthe-p}{the} \hyperlink{classIPv4}{IPv4} destination to look up in HNA. \\
\hline
{\em origin} & \hyperlink{protocolthe-p}{the} expected OLSR main address of \hyperlink{protocolthe-p}{the} origin. \\
\hline
{\em distance} & \hyperlink{protocolthe-p}{the} expected distance to \hyperlink{protocolthe-p}{the} origin, as measured from \hyperlink{protocolthe-p}{the} HNA messages themselves. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
true if ok, false if any error occurred. 
\end{DoxyReturn}
\hypertarget{classNodes_a988c813baa5013970d11b73cbae790bd}{
\index{Nodes@{Nodes}!verify\_\-hna\_\-entry@{verify\_\-hna\_\-entry}}
\index{verify\_\-hna\_\-entry@{verify\_\-hna\_\-entry}!Nodes@{Nodes}}
\subsubsection[{verify\_\-hna\_\-entry}]{\setlength{\rightskip}{0pt plus 5cm}bool Nodes::verify\_\-hna\_\-entry (
\begin{DoxyParamCaption}
\item[{const {\bf IPv4Net} \&}]{dest, }
\item[{const {\bf IPv4} \&}]{origin}
\end{DoxyParamCaption}
)}}
\label{classNodes_a988c813baa5013970d11b73cbae790bd}


Verify \hyperlink{protocolthe-p}{the} HNA database of \hyperlink{protocolthe-p}{the} selected node contains an entry for \hyperlink{protocolthe-p}{the} given destination from \hyperlink{protocolthe-p}{the} given origin. 


\begin{DoxyParams}{Parameters}
{\em dest} & \hyperlink{protocolthe-p}{the} \hyperlink{classIPv4}{IPv4} destination to look up in HNA. \\
\hline
{\em origin} & \hyperlink{protocolthe-p}{the} expected OLSR main address of \hyperlink{protocolthe-p}{the} origin. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
true if ok, false if any error occurred. 
\end{DoxyReturn}
\hypertarget{classNodes_a00f70a18417bc191f7736095a1b073ea}{
\index{Nodes@{Nodes}!verify\_\-hna\_\-entry\_\-count@{verify\_\-hna\_\-entry\_\-count}}
\index{verify\_\-hna\_\-entry\_\-count@{verify\_\-hna\_\-entry\_\-count}!Nodes@{Nodes}}
\subsubsection[{verify\_\-hna\_\-entry\_\-count}]{\setlength{\rightskip}{0pt plus 5cm}bool Nodes::verify\_\-hna\_\-entry\_\-count (
\begin{DoxyParamCaption}
\item[{const size\_\-t}]{expected\_\-count}
\end{DoxyParamCaption}
)}}
\label{classNodes_a00f70a18417bc191f7736095a1b073ea}


Verify \hyperlink{protocolthe-p}{the} HNA database of \hyperlink{protocolthe-p}{the} selected node contains exactly \hyperlink{protocolthe-p}{the} given number of entries. 


\begin{DoxyParams}{Parameters}
{\em expected\_\-count} & \hyperlink{protocolthe-p}{the} expected number of HNA entries. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
true if ok, false if any error occurred. 
\end{DoxyReturn}
\hypertarget{classNodes_aeadad3277c4aea74040e697657c77471}{
\index{Nodes@{Nodes}!verify\_\-hna\_\-origin\_\-count@{verify\_\-hna\_\-origin\_\-count}}
\index{verify\_\-hna\_\-origin\_\-count@{verify\_\-hna\_\-origin\_\-count}!Nodes@{Nodes}}
\subsubsection[{verify\_\-hna\_\-origin\_\-count}]{\setlength{\rightskip}{0pt plus 5cm}bool Nodes::verify\_\-hna\_\-origin\_\-count (
\begin{DoxyParamCaption}
\item[{const size\_\-t}]{expected\_\-count}
\end{DoxyParamCaption}
)}}
\label{classNodes_aeadad3277c4aea74040e697657c77471}


Verify \hyperlink{protocolthe-p}{the} HNA database of \hyperlink{protocolthe-p}{the} selected node contains entries which have originated from \hyperlink{protocolthe-p}{the} given number of unique OLSR nodes. 


\begin{DoxyParams}{Parameters}
{\em expected\_\-count} & \hyperlink{protocolthe-p}{the} expected number of HNA origins. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
true if ok, false if any error occurred. 
\end{DoxyReturn}
\hypertarget{classNodes_abbbcc15469ea8ad5eb89ae6ded0682cb}{
\index{Nodes@{Nodes}!verify\_\-is\_\-mpr@{verify\_\-is\_\-mpr}}
\index{verify\_\-is\_\-mpr@{verify\_\-is\_\-mpr}!Nodes@{Nodes}}
\subsubsection[{verify\_\-is\_\-mpr}]{\setlength{\rightskip}{0pt plus 5cm}bool Nodes::verify\_\-is\_\-mpr (
\begin{DoxyParamCaption}
\item[{const bool}]{expected\_\-is\_\-mpr}
\end{DoxyParamCaption}
)}}
\label{classNodes_abbbcc15469ea8ad5eb89ae6ded0682cb}


Verify \hyperlink{protocolthe-p}{the} MPR status of \hyperlink{protocolthe-p}{the} selected node. 


\begin{DoxyParams}{Parameters}
{\em expected\_\-is\_\-mpr} & \hyperlink{protocolthe-p}{the} expected MPR status. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
true if ok, false if any error occurred. 
\end{DoxyReturn}
\hypertarget{classNodes_a68372f29913169388c063d75ed1ed424}{
\index{Nodes@{Nodes}!verify\_\-mid\_\-address\_\-distance@{verify\_\-mid\_\-address\_\-distance}}
\index{verify\_\-mid\_\-address\_\-distance@{verify\_\-mid\_\-address\_\-distance}!Nodes@{Nodes}}
\subsubsection[{verify\_\-mid\_\-address\_\-distance}]{\setlength{\rightskip}{0pt plus 5cm}bool Nodes::verify\_\-mid\_\-address\_\-distance (
\begin{DoxyParamCaption}
\item[{const {\bf IPv4} \&}]{origin, }
\item[{const {\bf IPv4} \&}]{iface\_\-addr, }
\item[{const uint16\_\-t}]{expected\_\-distance}
\end{DoxyParamCaption}
)}}
\label{classNodes_a68372f29913169388c063d75ed1ed424}


Verify \hyperlink{protocolthe-p}{the} MID database of \hyperlink{protocolthe-p}{the} selected node contains an entry for \hyperlink{protocolthe-p}{the} given main address and interface address, at \hyperlink{protocolthe-p}{the} given network distance measured in hops. 


\begin{DoxyParams}{Parameters}
{\em main\_\-addr} & \hyperlink{protocolthe-p}{the} main address to look up in \hyperlink{protocolthe-p}{the} MID database. \\
\hline
{\em iface\_\-addr} & \hyperlink{protocolthe-p}{the} interface address for \hyperlink{protocolthe-p}{the} MID entry. \\
\hline
{\em expected\_\-distance} & \hyperlink{protocolthe-p}{the} expected distance in hops. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
true if ok, false if any error occurred. 
\end{DoxyReturn}
\hypertarget{classNodes_ad4050597d44b1e5b39e0dbe787019380}{
\index{Nodes@{Nodes}!verify\_\-mid\_\-node\_\-addrs@{verify\_\-mid\_\-node\_\-addrs}}
\index{verify\_\-mid\_\-node\_\-addrs@{verify\_\-mid\_\-node\_\-addrs}!Nodes@{Nodes}}
\subsubsection[{verify\_\-mid\_\-node\_\-addrs}]{\setlength{\rightskip}{0pt plus 5cm}bool Nodes::verify\_\-mid\_\-node\_\-addrs (
\begin{DoxyParamCaption}
\item[{const {\bf IPv4} \&}]{origin, }
\item[{const vector$<$ {\bf IPv4} $>$ \&}]{addrs}
\end{DoxyParamCaption}
)}}
\label{classNodes_ad4050597d44b1e5b39e0dbe787019380}


Verify \hyperlink{protocolthe-p}{the} MID database of \hyperlink{protocolthe-p}{the} selected node contains \hyperlink{protocolthe-p}{the} given entries for \hyperlink{protocolthe-p}{the} given protocol address. 


\begin{DoxyParams}{Parameters}
{\em origin} & \hyperlink{protocolthe-p}{the} main address to look up in \hyperlink{protocolthe-p}{the} MID database. \\
\hline
{\em addrs} & \hyperlink{protocolthe-p}{the} expected addresses for this node; may be empty. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
true if ok, false if any error occurred. 
\end{DoxyReturn}
\hypertarget{classNodes_abccea6b29ca2f47eb877656850ae7917}{
\index{Nodes@{Nodes}!verify\_\-mid\_\-node\_\-count@{verify\_\-mid\_\-node\_\-count}}
\index{verify\_\-mid\_\-node\_\-count@{verify\_\-mid\_\-node\_\-count}!Nodes@{Nodes}}
\subsubsection[{verify\_\-mid\_\-node\_\-count}]{\setlength{\rightskip}{0pt plus 5cm}bool Nodes::verify\_\-mid\_\-node\_\-count (
\begin{DoxyParamCaption}
\item[{const size\_\-t}]{expected}
\end{DoxyParamCaption}
)}}
\label{classNodes_abccea6b29ca2f47eb877656850ae7917}


Verify \hyperlink{protocolthe-p}{the} MID database of \hyperlink{protocolthe-p}{the} selected node contains \hyperlink{protocolthe-p}{the} expected number of nodes (Note: this is NOT \hyperlink{protocolthe-p}{the} same as entries; rather, it's \hyperlink{protocolthe-p}{the} number of unique keys we have in \hyperlink{protocolthe-p}{the} \_\-mid\_\-addr multimap.) 


\begin{DoxyParams}{Parameters}
{\em expected\_\-size} & \hyperlink{protocolthe-p}{the} expected dize of \hyperlink{protocolthe-p}{the} MID table. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
true if ok, false if any error occurred. 
\end{DoxyReturn}
\hypertarget{classNodes_a90d804febe303ee28f46e7ee78c1bc45}{
\index{Nodes@{Nodes}!verify\_\-mpr\_\-selector\_\-set@{verify\_\-mpr\_\-selector\_\-set}}
\index{verify\_\-mpr\_\-selector\_\-set@{verify\_\-mpr\_\-selector\_\-set}!Nodes@{Nodes}}
\subsubsection[{verify\_\-mpr\_\-selector\_\-set}]{\setlength{\rightskip}{0pt plus 5cm}bool Nodes::verify\_\-mpr\_\-selector\_\-set (
\begin{DoxyParamCaption}
\item[{const vector$<$ {\bf IPv4} $>$ \&}]{mprs\_\-addrs}
\end{DoxyParamCaption}
)}}
\label{classNodes_a90d804febe303ee28f46e7ee78c1bc45}


Verify \hyperlink{protocolthe-p}{the} MPR selector set of \hyperlink{protocolthe-p}{the} selected node. 


\begin{DoxyParams}{Parameters}
{\em mprs\_\-addrs} & \hyperlink{protocolthe-p}{the} expected contents of \hyperlink{protocolthe-p}{the} MPR selector set. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
true if ok, false if any error occurred. 
\end{DoxyReturn}
\hypertarget{classNodes_aa4c8122f6a46742cff9c7bd6b6d7c608}{
\index{Nodes@{Nodes}!verify\_\-mpr\_\-set@{verify\_\-mpr\_\-set}}
\index{verify\_\-mpr\_\-set@{verify\_\-mpr\_\-set}!Nodes@{Nodes}}
\subsubsection[{verify\_\-mpr\_\-set}]{\setlength{\rightskip}{0pt plus 5cm}bool Nodes::verify\_\-mpr\_\-set (
\begin{DoxyParamCaption}
\item[{const vector$<$ {\bf IPv4} $>$ \&}]{mpr\_\-addrs}
\end{DoxyParamCaption}
)}}
\label{classNodes_aa4c8122f6a46742cff9c7bd6b6d7c608}


Verify \hyperlink{protocolthe-p}{the} MPR set of \hyperlink{protocolthe-p}{the} selected node. 


\begin{DoxyParams}{Parameters}
{\em mpr\_\-addrs} & \hyperlink{protocolthe-p}{the} expected contents of \hyperlink{protocolthe-p}{the} MPR set. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
true if ok, false if any error occurred. 
\end{DoxyReturn}
\hypertarget{classNodes_a3ad0aa06c03117bf26168a63d2c94567}{
\index{Nodes@{Nodes}!verify\_\-n1@{verify\_\-n1}}
\index{verify\_\-n1@{verify\_\-n1}!Nodes@{Nodes}}
\subsubsection[{verify\_\-n1}]{\setlength{\rightskip}{0pt plus 5cm}bool Nodes::verify\_\-n1 (
\begin{DoxyParamCaption}
\item[{const {\bf IPv4} \&}]{n1\_\-addr, }
\item[{const bool}]{expected\_\-is\_\-n1}
\end{DoxyParamCaption}
)}}
\label{classNodes_a3ad0aa06c03117bf26168a63d2c94567}


Verify that \hyperlink{protocolthe-p}{the} neighbor given by n1\_\-addr is a one-\/hop neighbor of \hyperlink{protocolthe-p}{the} currently selected node. 


\begin{DoxyParams}{Parameters}
{\em n1\_\-addr} & \hyperlink{protocolthe-p}{the} address of \hyperlink{protocolthe-p}{the} one-\/hop neighbor to verify. \\
\hline
{\em expected\_\-is\_\-n1} & \hyperlink{protocolthe-p}{the} expected status \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
true if ok, false if any error occurred. 
\end{DoxyReturn}
\hypertarget{classNodes_a72e8b1abc0aeceff3bd76ae3b81709df}{
\index{Nodes@{Nodes}!verify\_\-n2@{verify\_\-n2}}
\index{verify\_\-n2@{verify\_\-n2}!Nodes@{Nodes}}
\subsubsection[{verify\_\-n2}]{\setlength{\rightskip}{0pt plus 5cm}bool Nodes::verify\_\-n2 (
\begin{DoxyParamCaption}
\item[{const {\bf IPv4} \&}]{n2\_\-addr, }
\item[{const bool}]{expected\_\-is\_\-n2}
\end{DoxyParamCaption}
)}}
\label{classNodes_a72e8b1abc0aeceff3bd76ae3b81709df}


Verify that n2\_\-addr is \hyperlink{protocolthe-p}{the} address of a two-\/hop neighbor of \hyperlink{protocolthe-p}{the} currently selected node. 


\begin{DoxyParams}{Parameters}
{\em n2\_\-addr} & \hyperlink{protocolthe-p}{the} address of \hyperlink{protocolthe-p}{the} two-\/hop neighbor to verify. \\
\hline
{\em expected\_\-is\_\-n2} & \hyperlink{protocolthe-p}{the} expected status \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
true if ok, false if any error occurred. 
\end{DoxyReturn}
\hypertarget{classNodes_a70202a23ad364f2d9eb9f9b8a3081376}{
\index{Nodes@{Nodes}!verify\_\-node\_\-link\_\-state\_\-empty@{verify\_\-node\_\-link\_\-state\_\-empty}}
\index{verify\_\-node\_\-link\_\-state\_\-empty@{verify\_\-node\_\-link\_\-state\_\-empty}!Nodes@{Nodes}}
\subsubsection[{verify\_\-node\_\-link\_\-state\_\-empty}]{\setlength{\rightskip}{0pt plus 5cm}bool Nodes::verify\_\-node\_\-link\_\-state\_\-empty (
\begin{DoxyParamCaption}
\item[{{\bf NodeTuple} \&}]{nat}
\end{DoxyParamCaption}
)}}
\label{classNodes_a70202a23ad364f2d9eb9f9b8a3081376}


Verify that \hyperlink{protocolthe-p}{the} link state database in \hyperlink{protocolthe-p}{the} given node is empty (N1/N2/TC/MPR/MID). 

HNA state is NOT checked.


\begin{DoxyParams}{Parameters}
{\em nat} & \hyperlink{protocolthe-p}{the} \hyperlink{classNodeTuple}{NodeTuple} to verify. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
true if ok, false if any error occurred. 
\end{DoxyReturn}
\hypertarget{classNodes_ae24eedc86a95399597ab58881de014a7}{
\index{Nodes@{Nodes}!verify\_\-routing\_\-entry@{verify\_\-routing\_\-entry}}
\index{verify\_\-routing\_\-entry@{verify\_\-routing\_\-entry}!Nodes@{Nodes}}
\subsubsection[{verify\_\-routing\_\-entry}]{\setlength{\rightskip}{0pt plus 5cm}bool Nodes::verify\_\-routing\_\-entry (
\begin{DoxyParamCaption}
\item[{{\bf IPv4Net}}]{dest, }
\item[{{\bf IPv4}}]{nexthop, }
\item[{uint32\_\-t}]{metric}
\end{DoxyParamCaption}
)}}
\label{classNodes_ae24eedc86a95399597ab58881de014a7}


Verify \hyperlink{protocolthe-p}{the} routing table of \hyperlink{protocolthe-p}{the} selected node contains \hyperlink{protocolthe-p}{the} given route entry. 

TODO deal with multiple matches.


\begin{DoxyParams}{Parameters}
{\em dest} & \hyperlink{protocolthe-p}{the} destination. \\
\hline
{\em nexthop} & \hyperlink{protocolthe-p}{the} expected next-\/hop of \hyperlink{protocolthe-p}{the} entry. \\
\hline
{\em metric} & \hyperlink{protocolthe-p}{the} expected metric of \hyperlink{protocolthe-p}{the} entry. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
true if ok, false if any error occurred. 
\end{DoxyReturn}
\hypertarget{classNodes_acad0a62ce52a9fd0b566c5e007d03d41}{
\index{Nodes@{Nodes}!verify\_\-routing\_\-table\_\-size@{verify\_\-routing\_\-table\_\-size}}
\index{verify\_\-routing\_\-table\_\-size@{verify\_\-routing\_\-table\_\-size}!Nodes@{Nodes}}
\subsubsection[{verify\_\-routing\_\-table\_\-size}]{\setlength{\rightskip}{0pt plus 5cm}bool Nodes::verify\_\-routing\_\-table\_\-size (
\begin{DoxyParamCaption}
\item[{const size\_\-t}]{rtsize}
\end{DoxyParamCaption}
)}}
\label{classNodes_acad0a62ce52a9fd0b566c5e007d03d41}


Verify \hyperlink{protocolthe-p}{the} routing table of \hyperlink{protocolthe-p}{the} selected node contains exactly \hyperlink{protocolthe-p}{the} given number of entries. 


\begin{DoxyParams}{Parameters}
{\em rtsize} & \hyperlink{protocolthe-p}{the} expected number of routing table entries. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
true if ok, false if any error occurred. 
\end{DoxyReturn}
\hypertarget{classNodes_af38c859375760b4825c102dbe81d88a4}{
\index{Nodes@{Nodes}!verify\_\-tc\_\-ans@{verify\_\-tc\_\-ans}}
\index{verify\_\-tc\_\-ans@{verify\_\-tc\_\-ans}!Nodes@{Nodes}}
\subsubsection[{verify\_\-tc\_\-ans}]{\setlength{\rightskip}{0pt plus 5cm}bool Nodes::verify\_\-tc\_\-ans (
\begin{DoxyParamCaption}
\item[{const {\bf IPv4} \&}]{origin, }
\item[{const uint16\_\-t}]{expected\_\-ansn, }
\item[{const vector$<$ {\bf IPv4} $>$ \&}]{expected\_\-addrs}
\end{DoxyParamCaption}
)}}
\label{classNodes_af38c859375760b4825c102dbe81d88a4}


Verify that \hyperlink{protocolthe-p}{the} Advertised \hyperlink{classNeighbor}{Neighbor} Set of 'origin', as seen at \hyperlink{protocolthe-p}{the} currently selected node, has \hyperlink{protocolthe-p}{the} expected ANSN and \hyperlink{protocolthe-p}{the} expected neighbor set contents. 


\begin{DoxyParams}{Parameters}
{\em origin} & \hyperlink{protocolthe-p}{the} origin to look up in \hyperlink{protocolthe-p}{the} TC database. \\
\hline
{\em expected\_\-ansn} & \hyperlink{protocolthe-p}{the} ANSN we expect to see. \\
\hline
{\em expected\_\-addrs} & \hyperlink{protocolthe-p}{the} expected neighbor set contents; may be empty to indicate set should be empty. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
true if ok, false if any error occurred. 
\end{DoxyReturn}
\hypertarget{classNodes_a43fd9a7e5287dd825cbd88b33e85bef0}{
\index{Nodes@{Nodes}!verify\_\-tc\_\-destination@{verify\_\-tc\_\-destination}}
\index{verify\_\-tc\_\-destination@{verify\_\-tc\_\-destination}!Nodes@{Nodes}}
\subsubsection[{verify\_\-tc\_\-destination}]{\setlength{\rightskip}{0pt plus 5cm}bool Nodes::verify\_\-tc\_\-destination (
\begin{DoxyParamCaption}
\item[{const {\bf IPv4} \&}]{dest\_\-addr, }
\item[{const size\_\-t}]{expected\_\-count}
\end{DoxyParamCaption}
)}}
\label{classNodes_a43fd9a7e5287dd825cbd88b33e85bef0}


Verify that \hyperlink{protocolthe-p}{the} currently selected node has a given number of TC entries pointing to \hyperlink{protocolthe-p}{the} given destination. 


\begin{DoxyParams}{Parameters}
{\em addr} & \hyperlink{protocolthe-p}{the} destination to look up in \hyperlink{protocolthe-p}{the} TC database. \\
\hline
{\em expected\_\-count} & \hyperlink{protocolthe-p}{the} number of TC entries we expect to see. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
true if ok, false if any error occurred. 
\end{DoxyReturn}
\hypertarget{classNodes_a05c4ffce40ef86a5c657f125de69afc9}{
\index{Nodes@{Nodes}!verify\_\-tc\_\-distance@{verify\_\-tc\_\-distance}}
\index{verify\_\-tc\_\-distance@{verify\_\-tc\_\-distance}!Nodes@{Nodes}}
\subsubsection[{verify\_\-tc\_\-distance}]{\setlength{\rightskip}{0pt plus 5cm}bool Nodes::verify\_\-tc\_\-distance (
\begin{DoxyParamCaption}
\item[{const {\bf IPv4} \&}]{origin, }
\item[{const {\bf IPv4} \&}]{neighbor\_\-addr, }
\item[{const uint16\_\-t}]{expected\_\-distance}
\end{DoxyParamCaption}
)}}
\label{classNodes_a05c4ffce40ef86a5c657f125de69afc9}


Verify that \hyperlink{protocolthe-p}{the} given TC entry has \hyperlink{protocolthe-p}{the} expected hop count, as observed at \hyperlink{protocolthe-p}{the} currently selected node's TC database. 

NOTE: The distance thus observed can never be less than 2, this accounts for \hyperlink{protocolthe-p}{the} hop used to reach us, and \hyperlink{protocolthe-p}{the} hop from \hyperlink{protocolthe-p}{the} TC's origin to \hyperlink{protocolthe-p}{the} advertised neighbor. This is used for \hyperlink{protocolthe-p}{the} local TC routing computation.


\begin{DoxyParams}{Parameters}
{\em origin} & \hyperlink{protocolthe-p}{the} origin to look up in \hyperlink{protocolthe-p}{the} TC database. \\
\hline
{\em neighbor\_\-addr} & \hyperlink{protocolthe-p}{the} neighbor to look up for origin. \\
\hline
{\em expected\_\-distance} & \hyperlink{protocolthe-p}{the} distance we expect to see recorded for this TC entry. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
true if ok, false if any error occurred. 
\end{DoxyReturn}
\hypertarget{classNodes_a8de6fc73c8f4bebe7804d874c2363252}{
\index{Nodes@{Nodes}!verify\_\-tc\_\-origin\_\-count@{verify\_\-tc\_\-origin\_\-count}}
\index{verify\_\-tc\_\-origin\_\-count@{verify\_\-tc\_\-origin\_\-count}!Nodes@{Nodes}}
\subsubsection[{verify\_\-tc\_\-origin\_\-count}]{\setlength{\rightskip}{0pt plus 5cm}bool Nodes::verify\_\-tc\_\-origin\_\-count (
\begin{DoxyParamCaption}
\item[{const size\_\-t}]{expected\_\-count}
\end{DoxyParamCaption}
)}}
\label{classNodes_a8de6fc73c8f4bebe7804d874c2363252}


Verify \hyperlink{protocolthe-p}{the} TC database of \hyperlink{protocolthe-p}{the} selected node contains entries which have originated from \hyperlink{protocolthe-p}{the} given number of unique OLSR nodes. 


\begin{DoxyParams}{Parameters}
{\em expected\_\-count} & \hyperlink{protocolthe-p}{the} expected number of TC origins. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
true if ok, false if any error occurred. 
\end{DoxyReturn}
\hypertarget{classNodes_a449fb646bd3e4e30d293a96f0d2273eb}{
\index{Nodes@{Nodes}!verify\_\-tc\_\-origin\_\-seen@{verify\_\-tc\_\-origin\_\-seen}}
\index{verify\_\-tc\_\-origin\_\-seen@{verify\_\-tc\_\-origin\_\-seen}!Nodes@{Nodes}}
\subsubsection[{verify\_\-tc\_\-origin\_\-seen}]{\setlength{\rightskip}{0pt plus 5cm}bool Nodes::verify\_\-tc\_\-origin\_\-seen (
\begin{DoxyParamCaption}
\item[{const {\bf IPv4} \&}]{origin, }
\item[{const bool}]{expected\_\-seen}
\end{DoxyParamCaption}
)}}
\label{classNodes_a449fb646bd3e4e30d293a96f0d2273eb}


Verify that \hyperlink{protocolthe-p}{the} selected node has seen TC broadcasts from 'origin' at least once during \hyperlink{protocolthe-p}{the} lifetime of \hyperlink{protocolthe-p}{the} simulation. 

If it has never been seen then \hyperlink{classTopologyManager_a3f4e545a9e144a0ab4dabb74b7515bfe}{TopologyManager::get\_\-tc\_\-neighbor\_\-set()} will throw an exception -\/-\/ there is a check which takes place to look for final recorded ANSN values.


\begin{DoxyParams}{Parameters}
{\em origin} & \hyperlink{protocolthe-p}{the} origin to look up in \hyperlink{protocolthe-p}{the} TC database. \\
\hline
{\em expected\_\-seen} & true if we expect to have seen \hyperlink{protocolthe-p}{the} origin. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
true if ok, false if any error occurred. 
\end{DoxyReturn}
\hypertarget{classNodes_ad4b34d05ad93e5a6d6e5fad2f816020f}{
\index{Nodes@{Nodes}!withdraw\_\-hna@{withdraw\_\-hna}}
\index{withdraw\_\-hna@{withdraw\_\-hna}!Nodes@{Nodes}}
\subsubsection[{withdraw\_\-hna}]{\setlength{\rightskip}{0pt plus 5cm}bool Nodes::withdraw\_\-hna (
\begin{DoxyParamCaption}
\item[{const {\bf IPv4Net} \&}]{dest}
\end{DoxyParamCaption}
)}}
\label{classNodes_ad4b34d05ad93e5a6d6e5fad2f816020f}


Withdraw a prefix from \hyperlink{protocolthe-p}{the} HNA \char`\"{}routes out\char`\"{} database of \hyperlink{protocolthe-p}{the} currently selected node, and stop advertising it. 


\begin{DoxyParams}{Parameters}
{\em dest} & \hyperlink{protocolthe-p}{the} network prefix to withdraw. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
true if ok, false if any error occurred. 
\end{DoxyReturn}


\subsection{Member Data Documentation}
\hypertarget{classNodes_a3482a86444648e9d5a48c9e3e16658c8}{
\index{Nodes@{Nodes}!\_\-nodes@{\_\-nodes}}
\index{\_\-nodes@{\_\-nodes}!Nodes@{Nodes}}
\subsubsection[{\_\-nodes}]{\setlength{\rightskip}{0pt plus 5cm}map$<${\bf IPv4}, {\bf NodeTuple}$>$ {\bf Nodes::\_\-nodes}\hspace{0.3cm}{\ttfamily  \mbox{[}private\mbox{]}}}}
\label{classNodes_a3482a86444648e9d5a48c9e3e16658c8}


Database of current simulation instances, keyed by protocol address; one entry for each OLSR address. 

Multiple addresses may map to \hyperlink{protocolthe-p}{the} same OLSR instance (see MID). 

The documentation for this class was generated from the following file:\begin{DoxyCompactItemize}
\item 
/home/greearb/git/xorp.ct.github/xorp/contrib/olsr/test\_\-simulator.cc\end{DoxyCompactItemize}
