\hypertarget{classStaticRoutesNode}{
\section{StaticRoutesNode Class Reference}
\label{classStaticRoutesNode}\index{StaticRoutesNode@{StaticRoutesNode}}
}


The StaticRoutes node class.  




{\ttfamily \#include $<$static\_\-routes\_\-node.hh$>$}

Inheritance diagram for StaticRoutesNode:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=3.929825cm]{classStaticRoutesNode}
\end{center}
\end{figure}
\subsection*{Public Types}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classStaticRoutesNode_a6ed3ac5af63f12f47740e25a673940b4}{
typedef multimap$<$ \hyperlink{classIPvXNet}{IPvXNet}, \hyperlink{classStaticRoute}{StaticRoute} $>$ {\bfseries Table}}
\label{classStaticRoutesNode_a6ed3ac5af63f12f47740e25a673940b4}

\end{DoxyCompactItemize}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hyperlink{classStaticRoutesNode_a99294c6e35b379a6f26c0930a48f6a18}{StaticRoutesNode} (\hyperlink{classEventLoop}{EventLoop} \&eventloop)
\begin{DoxyCompactList}\small\item\em Constructor for a given event loop. \item\end{DoxyCompactList}\item 
\hypertarget{classStaticRoutesNode_aed5045d540485b3f80a1fdf38b37a65f}{
virtual \hyperlink{classStaticRoutesNode_aed5045d540485b3f80a1fdf38b37a65f}{$\sim$StaticRoutesNode} ()}
\label{classStaticRoutesNode_aed5045d540485b3f80a1fdf38b37a65f}

\begin{DoxyCompactList}\small\item\em Destructor. \item\end{DoxyCompactList}\item 
\hyperlink{classEventLoop}{EventLoop} \& \hyperlink{classStaticRoutesNode_ab45597f8a0db9adc563dffa0195a910d}{eventloop} ()
\begin{DoxyCompactList}\small\item\em Get \hyperlink{protocolthe-p}{the} event loop this node is added to. \item\end{DoxyCompactList}\item 
const string \& \hyperlink{classStaticRoutesNode_a2749837ef2b5f9333232af47caf98e00}{protocol\_\-name} () const 
\begin{DoxyCompactList}\small\item\em Get \hyperlink{protocolthe-p}{the} protocol name. \item\end{DoxyCompactList}\item 
int \hyperlink{classStaticRoutesNode_a640c04f2536daf3bdb2703d925b0348d}{startup} ()
\begin{DoxyCompactList}\small\item\em \hyperlink{classStartup}{Startup} \hyperlink{protocolthe-p}{the} node operation. \item\end{DoxyCompactList}\item 
int \hyperlink{classStaticRoutesNode_ade59989dd531a8352963482ce4f5d408}{shutdown} ()
\begin{DoxyCompactList}\small\item\em \hyperlink{classShutdown}{Shutdown} \hyperlink{protocolthe-p}{the} node operation. \item\end{DoxyCompactList}\item 
ProcessStatus \hyperlink{classStaticRoutesNode_ac43560e22559aa7a65171e24f01eb38e}{node\_\-status} (string \&reason\_\-msg)
\begin{DoxyCompactList}\small\item\em Get \hyperlink{protocolthe-p}{the} node status (see ProcessStatus). \item\end{DoxyCompactList}\item 
bool \hyperlink{classStaticRoutesNode_a67b06adcce013306073a926f50dc8e4a}{is\_\-done} () const 
\begin{DoxyCompactList}\small\item\em Test if \hyperlink{protocolthe-p}{the} node processing is done. \item\end{DoxyCompactList}\item 
bool \hyperlink{classStaticRoutesNode_a2a9ddc86f2ffa9b93795ac9bd3815417}{is\_\-enabled} () const 
\begin{DoxyCompactList}\small\item\em Test whether \hyperlink{protocolthe-p}{the} node operation is enabled. \item\end{DoxyCompactList}\item 
void \hyperlink{classStaticRoutesNode_afdd1964310df794c6e362ef9e9c77f41}{set\_\-enabled} (bool enable)
\begin{DoxyCompactList}\small\item\em Enable/disable node operation. \item\end{DoxyCompactList}\item 
int \hyperlink{classStaticRoutesNode_a9f1256f5dc037c9d0c9312525071d2c5}{add\_\-route4} (bool unicast, bool multicast, const \hyperlink{classIPNet}{IPv4Net} \&network, const \hyperlink{classIPv4}{IPv4} \&nexthop, const string \&ifname, const string \&vifname, uint32\_\-t metric, bool is\_\-backup\_\-route, string \&error\_\-msg)
\begin{DoxyCompactList}\small\item\em Add a static \hyperlink{classIPv4}{IPv4} route. \item\end{DoxyCompactList}\item 
int \hyperlink{classStaticRoutesNode_ad74a5e11c1b9a2daa0dea98f8ca9b39f}{add\_\-route6} (bool unicast, bool multicast, const \hyperlink{classIPNet}{IPv6Net} \&network, const \hyperlink{classIPv6}{IPv6} \&nexthop, const string \&ifname, const string \&vifname, uint32\_\-t metric, bool is\_\-backup\_\-route, string \&error\_\-msg)
\begin{DoxyCompactList}\small\item\em Add a static \hyperlink{classIPv6}{IPv6} route. \item\end{DoxyCompactList}\item 
int \hyperlink{classStaticRoutesNode_a7d7ac7de95e1b119f81ac75988a4cf0e}{replace\_\-route4} (bool unicast, bool multicast, const \hyperlink{classIPNet}{IPv4Net} \&network, const \hyperlink{classIPv4}{IPv4} \&nexthop, const string \&ifname, const string \&vifname, uint32\_\-t metric, bool is\_\-backup\_\-route, string \&error\_\-msg)
\begin{DoxyCompactList}\small\item\em Replace a static \hyperlink{classIPv4}{IPv4} route. \item\end{DoxyCompactList}\item 
int \hyperlink{classStaticRoutesNode_ab728f0fe8b11ab44083deaf7d9c8c986}{replace\_\-route6} (bool unicast, bool multicast, const \hyperlink{classIPNet}{IPv6Net} \&network, const \hyperlink{classIPv6}{IPv6} \&nexthop, const string \&ifname, const string \&vifname, uint32\_\-t metric, bool is\_\-backup\_\-route, string \&error\_\-msg)
\begin{DoxyCompactList}\small\item\em Replace a static \hyperlink{classIPv6}{IPv6} route. \item\end{DoxyCompactList}\item 
int \hyperlink{classStaticRoutesNode_ad8c78b9d90eab13539062a7ed4f34770}{delete\_\-route4} (bool unicast, bool multicast, const \hyperlink{classIPNet}{IPv4Net} \&network, const \hyperlink{classIPv4}{IPv4} \&nexthop, const string \&ifname, const string \&vifname, bool is\_\-backup\_\-route, string \&error\_\-msg)
\begin{DoxyCompactList}\small\item\em Delete a static \hyperlink{classIPv4}{IPv4} route. \item\end{DoxyCompactList}\item 
int \hyperlink{classStaticRoutesNode_ae17cc87914f3b0de1303543f66093037}{delete\_\-route6} (bool unicast, bool multicast, const \hyperlink{classIPNet}{IPv6Net} \&network, const \hyperlink{classIPv6}{IPv6} \&nexthop, const string \&ifname, const string \&vifname, bool is\_\-backup\_\-route, string \&error\_\-msg)
\begin{DoxyCompactList}\small\item\em Delete a static \hyperlink{classIPv6}{IPv6} route. \item\end{DoxyCompactList}\item 
StaticRoutesNode::Table::iterator \hyperlink{classStaticRoutesNode_a55430c467be28b0cef28660a0e6d7362}{find\_\-route} (StaticRoutesNode::Table \&table, const \hyperlink{classStaticRoute}{StaticRoute} \&key\_\-route)
\begin{DoxyCompactList}\small\item\em Find a route from \hyperlink{protocolthe-p}{the} routing table. \item\end{DoxyCompactList}\item 
StaticRoutesNode::Table::iterator \hyperlink{classStaticRoutesNode_af0c1664cf65bd891eca6e277a96d37f1}{find\_\-best\_\-accepted\_\-route} (StaticRoutesNode::Table \&table, const \hyperlink{classStaticRoute}{StaticRoute} \&key\_\-route)
\begin{DoxyCompactList}\small\item\em Find \hyperlink{protocolthe-p}{the} best accepted route from \hyperlink{protocolthe-p}{the} routing table. \item\end{DoxyCompactList}\item 
bool \hyperlink{classStaticRoutesNode_a8c5629661f68ec1f5800f00a01a58092}{is\_\-log\_\-trace} () const 
\begin{DoxyCompactList}\small\item\em Test if trace log is enabled. \item\end{DoxyCompactList}\item 
void \hyperlink{classStaticRoutesNode_a8da75af80a0dd74971a944c8f2ba54ba}{set\_\-log\_\-trace} (bool is\_\-enabled)
\begin{DoxyCompactList}\small\item\em Enable/disable trace log. \item\end{DoxyCompactList}\item 
void \hyperlink{classStaticRoutesNode_a32f787818dc36a669f2fc179d1749521}{configure\_\-filter} (const uint32\_\-t \&filter, const string \&conf)
\begin{DoxyCompactList}\small\item\em Configure a policy filter. \item\end{DoxyCompactList}\item 
void \hyperlink{classStaticRoutesNode_af1dd6df3eca88cae233f171ee19f3109}{reset\_\-filter} (const uint32\_\-t \&filter)
\begin{DoxyCompactList}\small\item\em Reset a policy filter. \item\end{DoxyCompactList}\item 
\hypertarget{classStaticRoutesNode_a01afca5b808f259c3e110afc4d490e04}{
void \hyperlink{classStaticRoutesNode_a01afca5b808f259c3e110afc4d490e04}{push\_\-routes} ()}
\label{classStaticRoutesNode_a01afca5b808f259c3e110afc4d490e04}

\begin{DoxyCompactList}\small\item\em \hyperlink{classPush}{Push} all \hyperlink{protocolthe-p}{the} routes through \hyperlink{protocolthe-p}{the} policy filters for re-\/filtering. \item\end{DoxyCompactList}\item 
void \hyperlink{classStaticRoutesNode_a35c27d1f92b39ef4410cff101727f7a7}{push\_\-pull\_\-rib\_\-routes} (bool is\_\-push)
\begin{DoxyCompactList}\small\item\em \hyperlink{classPush}{Push} or pull all \hyperlink{protocolthe-p}{the} routes to/from \hyperlink{protocolthe-p}{the} \hyperlink{classRIB}{RIB}. \item\end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Protected Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classStaticRoutesNode_aa739406156a3f653353455ed78cc33b6}{
void {\bfseries tree\_\-complete} ()}
\label{classStaticRoutesNode_aa739406156a3f653353455ed78cc33b6}

\item 
\hypertarget{classStaticRoutesNode_a47fae7d77cb3d1ef82a3b3a4fc10be76}{
void {\bfseries updates\_\-made} ()}
\label{classStaticRoutesNode_a47fae7d77cb3d1ef82a3b3a4fc10be76}

\item 
\hypertarget{classStaticRoutesNode_aadbc00c78d3fb7e8a6de18f270be3312}{
void {\bfseries incr\_\-startup\_\-requests\_\-n} ()}
\label{classStaticRoutesNode_aadbc00c78d3fb7e8a6de18f270be3312}

\item 
\hypertarget{classStaticRoutesNode_adf4c30554c4c9682064f68822ceee0f5}{
void {\bfseries decr\_\-startup\_\-requests\_\-n} ()}
\label{classStaticRoutesNode_adf4c30554c4c9682064f68822ceee0f5}

\item 
\hypertarget{classStaticRoutesNode_ab252e712929ee381ea37f4175ae07663}{
void {\bfseries incr\_\-shutdown\_\-requests\_\-n} ()}
\label{classStaticRoutesNode_ab252e712929ee381ea37f4175ae07663}

\item 
\hypertarget{classStaticRoutesNode_a14281372119aae3773da6312c4a71029}{
void {\bfseries decr\_\-shutdown\_\-requests\_\-n} ()}
\label{classStaticRoutesNode_a14281372119aae3773da6312c4a71029}

\item 
\hypertarget{classStaticRoutesNode_ac5cda346b2d0223bffebfc50db62e83a}{
void {\bfseries update\_\-status} ()}
\label{classStaticRoutesNode_ac5cda346b2d0223bffebfc50db62e83a}

\end{DoxyCompactItemize}
\subsection*{Private Member Functions}
\begin{DoxyCompactItemize}
\item 
void \hyperlink{classStaticRoutesNode_ac569aa51be5e90cc46029f29eab3f8c3}{status\_\-change} (\hyperlink{classServiceBase}{ServiceBase} $\ast$service, ServiceStatus old\_\-status, ServiceStatus new\_\-status)
\begin{DoxyCompactList}\small\item\em A method invoked when \hyperlink{protocolthe-p}{the} status of a service changes. \item\end{DoxyCompactList}\item 
virtual const \hyperlink{classServiceBase}{ServiceBase} $\ast$ \hyperlink{classStaticRoutesNode_a6faeb33104a6815060450d59972ee324}{ifmgr\_\-mirror\_\-service\_\-base} () const =0
\begin{DoxyCompactList}\small\item\em Get a reference to \hyperlink{protocolthe-p}{the} service base of \hyperlink{protocolthe-p}{the} interface manager. \item\end{DoxyCompactList}\item 
virtual const \hyperlink{classIfMgrIfTree}{IfMgrIfTree} \& \hyperlink{classStaticRoutesNode_a75cd89c096693b430bd02823a901c3e0}{ifmgr\_\-iftree} () const =0
\begin{DoxyCompactList}\small\item\em Get a reference to \hyperlink{protocolthe-p}{the} interface manager tree. \item\end{DoxyCompactList}\item 
virtual void \hyperlink{classStaticRoutesNode_a056c5b0eab044f1adc108f1d274cba38}{fea\_\-register\_\-startup} ()=0
\begin{DoxyCompactList}\small\item\em Initiate registration with \hyperlink{protocolthe-p}{the} FEA. \item\end{DoxyCompactList}\item 
virtual void \hyperlink{classStaticRoutesNode_a0853491b88f90e6d1c7e38e039e338f2}{fea\_\-register\_\-shutdown} ()=0
\begin{DoxyCompactList}\small\item\em Initiate de-\/registration with \hyperlink{protocolthe-p}{the} FEA. \item\end{DoxyCompactList}\item 
virtual void \hyperlink{classStaticRoutesNode_ad7e4d82750ac7074fa37313a3d1ad983}{rib\_\-register\_\-startup} ()=0
\begin{DoxyCompactList}\small\item\em Initiate registration with \hyperlink{protocolthe-p}{the} \hyperlink{classRIB}{RIB}. \item\end{DoxyCompactList}\item 
virtual void \hyperlink{classStaticRoutesNode_a82062f669e700c09de2e2a12ef6425af}{rib\_\-register\_\-shutdown} ()=0
\begin{DoxyCompactList}\small\item\em Initiate de-\/registration with \hyperlink{protocolthe-p}{the} \hyperlink{classRIB}{RIB}. \item\end{DoxyCompactList}\item 
int \hyperlink{classStaticRoutesNode_a01b2e71cc0b9b3568d5e0742f8478b7c}{add\_\-route} (const \hyperlink{classStaticRoute}{StaticRoute} \&static\_\-route, string \&error\_\-msg)
\begin{DoxyCompactList}\small\item\em Add a static \hyperlink{classIPvX}{IPvX} route. \item\end{DoxyCompactList}\item 
int \hyperlink{classStaticRoutesNode_a157088df783d38063292014a1baba943}{replace\_\-route} (const \hyperlink{classStaticRoute}{StaticRoute} \&static\_\-route, string \&error\_\-msg)
\begin{DoxyCompactList}\small\item\em Replace a static \hyperlink{classIPvX}{IPvX} route. \item\end{DoxyCompactList}\item 
int \hyperlink{classStaticRoutesNode_ab580ec4eb73747c593da2141fd6e1039}{delete\_\-route} (const \hyperlink{classStaticRoute}{StaticRoute} \&static\_\-route, string \&error\_\-msg)
\begin{DoxyCompactList}\small\item\em Delete a static \hyperlink{classIPvX}{IPvX} route. \item\end{DoxyCompactList}\item 
void \hyperlink{classStaticRoutesNode_a3eda6483450261e5dcd9a7e332aef999}{prepare\_\-route\_\-for\_\-transmission} (\hyperlink{classStaticRoute}{StaticRoute} \&orig\_\-route, \hyperlink{classStaticRoute}{StaticRoute} \&copy\_\-route)
\begin{DoxyCompactList}\small\item\em Prepare a copy of a route for transmission to \hyperlink{protocolthe-p}{the} \hyperlink{classRIB}{RIB}. \item\end{DoxyCompactList}\item 
virtual void \hyperlink{classStaticRoutesNode_a0e4e3e5bbf83514d88c6b809d8670284}{inform\_\-rib\_\-route\_\-change} (const \hyperlink{classStaticRoute}{StaticRoute} \&static\_\-route)=0
\begin{DoxyCompactList}\small\item\em Inform \hyperlink{protocolthe-p}{the} \hyperlink{classRIB}{RIB} about a route change. \item\end{DoxyCompactList}\item 
virtual void \hyperlink{classStaticRoutesNode_aa1eec43fa43edf1bb5b289c2b648f091}{cancel\_\-rib\_\-route\_\-change} (const \hyperlink{classStaticRoute}{StaticRoute} \&static\_\-route)=0
\begin{DoxyCompactList}\small\item\em Cancel a pending request to inform \hyperlink{protocolthe-p}{the} \hyperlink{classRIB}{RIB} about a route change. \item\end{DoxyCompactList}\item 
bool \hyperlink{classStaticRoutesNode_a379aaa97cd700abb92481f6d8780738f}{update\_\-route} (const \hyperlink{classIfMgrIfTree}{IfMgrIfTree} \&iftree, \hyperlink{classStaticRoute}{StaticRoute} \&route)
\begin{DoxyCompactList}\small\item\em Update a route received from \hyperlink{protocolthe-p}{the} user configuration. \item\end{DoxyCompactList}\item 
bool \hyperlink{classStaticRoutesNode_a01c8553fa3bb7d45ab9b87ba5e26a007}{do\_\-filtering} (\hyperlink{classStaticRoute}{StaticRoute} \&route)
\begin{DoxyCompactList}\small\item\em Do policy filtering on a route. \item\end{DoxyCompactList}\item 
bool \hyperlink{classStaticRoutesNode_abc31b756eb01b100e4c0a71ca4522df6}{is\_\-accepted\_\-by\_\-nexthop} (const \hyperlink{classStaticRoute}{StaticRoute} \&route) const 
\begin{DoxyCompactList}\small\item\em Test whether a route is accepted based on its next-\/hop information. \item\end{DoxyCompactList}\item 
void \hyperlink{classStaticRoutesNode_af9f7ea9e627f1f4935c7da3a32ac7802}{inform\_\-rib} (const \hyperlink{classStaticRoute}{StaticRoute} \&r)
\begin{DoxyCompactList}\small\item\em Inform \hyperlink{protocolthe-p}{the} \hyperlink{classRIB}{RIB} about a route. \item\end{DoxyCompactList}\item 
void \hyperlink{classStaticRoutesNode_ae360830c08c1472649e49ac84db6cb1f}{set\_\-node\_\-status} (ProcessStatus v)
\begin{DoxyCompactList}\small\item\em Set \hyperlink{protocolthe-p}{the} node status. \item\end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Private Attributes}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classStaticRoutesNode_aa6d6bf7036e2fbbca2c0ceec805dd17a}{
\hyperlink{classEventLoop}{EventLoop} \& {\bfseries \_\-eventloop}}
\label{classStaticRoutesNode_aa6d6bf7036e2fbbca2c0ceec805dd17a}

\item 
\hypertarget{classStaticRoutesNode_a7ef2118c5a6e0dda0225aadecc846e16}{
ProcessStatus {\bfseries \_\-node\_\-status}}
\label{classStaticRoutesNode_a7ef2118c5a6e0dda0225aadecc846e16}

\item 
\hypertarget{classStaticRoutesNode_a727cd2e673de9fe6488747745f9e3acf}{
const string {\bfseries \_\-protocol\_\-name}}
\label{classStaticRoutesNode_a727cd2e673de9fe6488747745f9e3acf}

\item 
\hypertarget{classStaticRoutesNode_aad8d16638f283122106a0a199d37de26}{
bool {\bfseries \_\-is\_\-enabled}}
\label{classStaticRoutesNode_aad8d16638f283122106a0a199d37de26}

\item 
\hypertarget{classStaticRoutesNode_a97717ad624788442504fdbcad437c636}{
StaticRoutesNode::Table {\bfseries \_\-static\_\-routes}}
\label{classStaticRoutesNode_a97717ad624788442504fdbcad437c636}

\item 
\hypertarget{classStaticRoutesNode_ad350b89e075a676d256ac955fa7537eb}{
map$<$ \hyperlink{classIPvXNet}{IPvXNet}, \hyperlink{classStaticRoute}{StaticRoute} $>$ {\bfseries \_\-winning\_\-routes\_\-unicast}}
\label{classStaticRoutesNode_ad350b89e075a676d256ac955fa7537eb}

\item 
\hypertarget{classStaticRoutesNode_abd66c359fdeb2ead065f210b16c83a66}{
map$<$ \hyperlink{classIPvXNet}{IPvXNet}, \hyperlink{classStaticRoute}{StaticRoute} $>$ {\bfseries \_\-winning\_\-routes\_\-multicast}}
\label{classStaticRoutesNode_abd66c359fdeb2ead065f210b16c83a66}

\item 
\hypertarget{classStaticRoutesNode_a10b90e3feacb31718df27d941f2a5363}{
size\_\-t {\bfseries \_\-startup\_\-requests\_\-n}}
\label{classStaticRoutesNode_a10b90e3feacb31718df27d941f2a5363}

\item 
\hypertarget{classStaticRoutesNode_a2a50ee55b907536229348f38520e4c90}{
size\_\-t {\bfseries \_\-shutdown\_\-requests\_\-n}}
\label{classStaticRoutesNode_a2a50ee55b907536229348f38520e4c90}

\item 
\hypertarget{classStaticRoutesNode_a9e7494a041a1ddf21f9a7c00362605d2}{
\hyperlink{classIfMgrIfTree}{IfMgrIfTree} {\bfseries \_\-iftree}}
\label{classStaticRoutesNode_a9e7494a041a1ddf21f9a7c00362605d2}

\item 
\hypertarget{classStaticRoutesNode_a0bcb02f813b7eafb80d685f1a97f4cca}{
bool {\bfseries \_\-is\_\-log\_\-trace}}
\label{classStaticRoutesNode_a0bcb02f813b7eafb80d685f1a97f4cca}

\item 
\hypertarget{classStaticRoutesNode_afb5f7e8fdd5798dc5d32e72bb9377f6c}{
\hyperlink{classPolicyFilters}{PolicyFilters} {\bfseries \_\-policy\_\-filters}}
\label{classStaticRoutesNode_afb5f7e8fdd5798dc5d32e72bb9377f6c}

\end{DoxyCompactItemize}


\subsection{Detailed Description}
The StaticRoutes node class. There should be one node per StaticRoutes instance. 

\subsection{Constructor \& Destructor Documentation}
\hypertarget{classStaticRoutesNode_a99294c6e35b379a6f26c0930a48f6a18}{
\index{StaticRoutesNode@{StaticRoutesNode}!StaticRoutesNode@{StaticRoutesNode}}
\index{StaticRoutesNode@{StaticRoutesNode}!StaticRoutesNode@{StaticRoutesNode}}
\subsubsection[{StaticRoutesNode}]{\setlength{\rightskip}{0pt plus 5cm}StaticRoutesNode::StaticRoutesNode (
\begin{DoxyParamCaption}
\item[{{\bf EventLoop} \&}]{eventloop}
\end{DoxyParamCaption}
)}}
\label{classStaticRoutesNode_a99294c6e35b379a6f26c0930a48f6a18}


Constructor for a given event loop. 


\begin{DoxyParams}{Parameters}
{\em eventloop} & \hyperlink{protocolthe-p}{the} event loop to use. \\
\hline
\end{DoxyParams}


\subsection{Member Function Documentation}
\hypertarget{classStaticRoutesNode_a01b2e71cc0b9b3568d5e0742f8478b7c}{
\index{StaticRoutesNode@{StaticRoutesNode}!add\_\-route@{add\_\-route}}
\index{add\_\-route@{add\_\-route}!StaticRoutesNode@{StaticRoutesNode}}
\subsubsection[{add\_\-route}]{\setlength{\rightskip}{0pt plus 5cm}int StaticRoutesNode::add\_\-route (
\begin{DoxyParamCaption}
\item[{const {\bf StaticRoute} \&}]{static\_\-route, }
\item[{string \&}]{error\_\-msg}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}private\mbox{]}}}}
\label{classStaticRoutesNode_a01b2e71cc0b9b3568d5e0742f8478b7c}


Add a static \hyperlink{classIPvX}{IPvX} route. 


\begin{DoxyParams}{Parameters}
{\em static\_\-route} & \hyperlink{protocolthe-p}{the} route to add. \\
\hline
\end{DoxyParams}
\begin{DoxySeeAlso}{See also}
\hyperlink{classStaticRoute}{StaticRoute} 
\end{DoxySeeAlso}

\begin{DoxyParams}{Parameters}
{\em error\_\-msg} & \hyperlink{protocolthe-p}{the} error message (if error). \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
XORP\_\-OK on success, otherwise XORP\_\-ERROR. 
\end{DoxyReturn}
\hypertarget{classStaticRoutesNode_a9f1256f5dc037c9d0c9312525071d2c5}{
\index{StaticRoutesNode@{StaticRoutesNode}!add\_\-route4@{add\_\-route4}}
\index{add\_\-route4@{add\_\-route4}!StaticRoutesNode@{StaticRoutesNode}}
\subsubsection[{add\_\-route4}]{\setlength{\rightskip}{0pt plus 5cm}int StaticRoutesNode::add\_\-route4 (
\begin{DoxyParamCaption}
\item[{bool}]{unicast, }
\item[{bool}]{multicast, }
\item[{const {\bf IPv4Net} \&}]{network, }
\item[{const {\bf IPv4} \&}]{nexthop, }
\item[{const string \&}]{ifname, }
\item[{const string \&}]{vifname, }
\item[{uint32\_\-t}]{metric, }
\item[{bool}]{is\_\-backup\_\-route, }
\item[{string \&}]{error\_\-msg}
\end{DoxyParamCaption}
)}}
\label{classStaticRoutesNode_a9f1256f5dc037c9d0c9312525071d2c5}


Add a static \hyperlink{classIPv4}{IPv4} route. 


\begin{DoxyParams}{Parameters}
{\em unicast} & if true, then \hyperlink{protocolthe-p}{the} route would be used for unicast routing. \\
\hline
{\em multicast} & if true, then \hyperlink{protocolthe-p}{the} route would be used in \hyperlink{protocolthe-p}{the} MRIB (Multicast \hyperlink{classRouting}{Routing} Information Base) for multicast purpose (e.g., computing \hyperlink{protocolthe-p}{the} Reverse-\/Path Forwarding information). \\
\hline
{\em network} & \hyperlink{protocolthe-p}{the} network address prefix this route applies to. \\
\hline
{\em nexthop} & \hyperlink{protocolthe-p}{the} address of \hyperlink{protocolthe-p}{the} next-\/hop router for this route. \\
\hline
{\em ifname} & of \hyperlink{protocolthe-p}{the} name of \hyperlink{protocolthe-p}{the} physical interface toward \hyperlink{protocolthe-p}{the} destination. \\
\hline
{\em vifname} & of \hyperlink{protocolthe-p}{the} name of \hyperlink{protocolthe-p}{the} virtual interface toward \hyperlink{protocolthe-p}{the} destination. \\
\hline
{\em metric} & \hyperlink{protocolthe-p}{the} metric distance for this route. \\
\hline
{\em is\_\-backup\_\-route} & if true, then this is a backup route operation. \\
\hline
{\em error\_\-msg} & \hyperlink{protocolthe-p}{the} error message (if error). \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
XORP\_\-OK on success, otherwise XORP\_\-ERROR. 
\end{DoxyReturn}
\hypertarget{classStaticRoutesNode_ad74a5e11c1b9a2daa0dea98f8ca9b39f}{
\index{StaticRoutesNode@{StaticRoutesNode}!add\_\-route6@{add\_\-route6}}
\index{add\_\-route6@{add\_\-route6}!StaticRoutesNode@{StaticRoutesNode}}
\subsubsection[{add\_\-route6}]{\setlength{\rightskip}{0pt plus 5cm}int StaticRoutesNode::add\_\-route6 (
\begin{DoxyParamCaption}
\item[{bool}]{unicast, }
\item[{bool}]{multicast, }
\item[{const {\bf IPv6Net} \&}]{network, }
\item[{const {\bf IPv6} \&}]{nexthop, }
\item[{const string \&}]{ifname, }
\item[{const string \&}]{vifname, }
\item[{uint32\_\-t}]{metric, }
\item[{bool}]{is\_\-backup\_\-route, }
\item[{string \&}]{error\_\-msg}
\end{DoxyParamCaption}
)}}
\label{classStaticRoutesNode_ad74a5e11c1b9a2daa0dea98f8ca9b39f}


Add a static \hyperlink{classIPv6}{IPv6} route. 


\begin{DoxyParams}{Parameters}
{\em unicast} & if true, then \hyperlink{protocolthe-p}{the} route would be used for unicast routing. \\
\hline
{\em multicast} & if true, then \hyperlink{protocolthe-p}{the} route would be used in \hyperlink{protocolthe-p}{the} MRIB (Multicast \hyperlink{classRouting}{Routing} Information Base) for multicast purpose (e.g., computing \hyperlink{protocolthe-p}{the} Reverse-\/Path Forwarding information). \\
\hline
{\em network} & \hyperlink{protocolthe-p}{the} network address prefix this route applies to. \\
\hline
{\em nexthop} & \hyperlink{protocolthe-p}{the} address of \hyperlink{protocolthe-p}{the} next-\/hop router for this route. \\
\hline
{\em ifname} & of \hyperlink{protocolthe-p}{the} name of \hyperlink{protocolthe-p}{the} physical interface toward \hyperlink{protocolthe-p}{the} destination. \\
\hline
{\em vifname} & of \hyperlink{protocolthe-p}{the} name of \hyperlink{protocolthe-p}{the} virtual interface toward \hyperlink{protocolthe-p}{the} destination. \\
\hline
{\em metric} & \hyperlink{protocolthe-p}{the} metric distance for this route. \\
\hline
{\em is\_\-backup\_\-route} & if true, then this is a backup route operation. \\
\hline
{\em error\_\-msg} & \hyperlink{protocolthe-p}{the} error message (if error). \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
XORP\_\-OK on success, otherwise XORP\_\-ERROR. 
\end{DoxyReturn}
\hypertarget{classStaticRoutesNode_aa1eec43fa43edf1bb5b289c2b648f091}{
\index{StaticRoutesNode@{StaticRoutesNode}!cancel\_\-rib\_\-route\_\-change@{cancel\_\-rib\_\-route\_\-change}}
\index{cancel\_\-rib\_\-route\_\-change@{cancel\_\-rib\_\-route\_\-change}!StaticRoutesNode@{StaticRoutesNode}}
\subsubsection[{cancel\_\-rib\_\-route\_\-change}]{\setlength{\rightskip}{0pt plus 5cm}virtual void StaticRoutesNode::cancel\_\-rib\_\-route\_\-change (
\begin{DoxyParamCaption}
\item[{const {\bf StaticRoute} \&}]{static\_\-route}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}private, pure virtual\mbox{]}}}}
\label{classStaticRoutesNode_aa1eec43fa43edf1bb5b289c2b648f091}


Cancel a pending request to inform \hyperlink{protocolthe-p}{the} \hyperlink{classRIB}{RIB} about a route change. 

This is a pure virtual function, and it must be implemented by \hyperlink{protocolthe-p}{the} communication-\/wrapper class that inherits this base class.


\begin{DoxyParams}{Parameters}
{\em static\_\-route} & \hyperlink{protocolthe-p}{the} route with \hyperlink{protocolthe-p}{the} request that would be canceled. \\
\hline
\end{DoxyParams}


Implemented in \hyperlink{classXrlStaticRoutesNode_ab1fe5f3a9e582a42b3a843fe2b003fa2}{XrlStaticRoutesNode}.

\hypertarget{classStaticRoutesNode_a32f787818dc36a669f2fc179d1749521}{
\index{StaticRoutesNode@{StaticRoutesNode}!configure\_\-filter@{configure\_\-filter}}
\index{configure\_\-filter@{configure\_\-filter}!StaticRoutesNode@{StaticRoutesNode}}
\subsubsection[{configure\_\-filter}]{\setlength{\rightskip}{0pt plus 5cm}void StaticRoutesNode::configure\_\-filter (
\begin{DoxyParamCaption}
\item[{const uint32\_\-t \&}]{filter, }
\item[{const string \&}]{conf}
\end{DoxyParamCaption}
)}}
\label{classStaticRoutesNode_a32f787818dc36a669f2fc179d1749521}


Configure a policy filter. 

Will throw an exception on error.

Export filter is not supported by static routes.


\begin{DoxyParams}{Parameters}
{\em filter} & identifier of filter to configure. \\
\hline
{\em conf} & configuration of \hyperlink{protocolthe-p}{the} filter. \\
\hline
\end{DoxyParams}
\hypertarget{classStaticRoutesNode_ab580ec4eb73747c593da2141fd6e1039}{
\index{StaticRoutesNode@{StaticRoutesNode}!delete\_\-route@{delete\_\-route}}
\index{delete\_\-route@{delete\_\-route}!StaticRoutesNode@{StaticRoutesNode}}
\subsubsection[{delete\_\-route}]{\setlength{\rightskip}{0pt plus 5cm}int StaticRoutesNode::delete\_\-route (
\begin{DoxyParamCaption}
\item[{const {\bf StaticRoute} \&}]{static\_\-route, }
\item[{string \&}]{error\_\-msg}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}private\mbox{]}}}}
\label{classStaticRoutesNode_ab580ec4eb73747c593da2141fd6e1039}


Delete a static \hyperlink{classIPvX}{IPvX} route. 


\begin{DoxyParams}{Parameters}
{\em static\_\-route} & \hyperlink{protocolthe-p}{the} route to delete. \\
\hline
\end{DoxyParams}
\begin{DoxySeeAlso}{See also}
\hyperlink{classStaticRoute}{StaticRoute} 
\end{DoxySeeAlso}

\begin{DoxyParams}{Parameters}
{\em error\_\-msg} & \hyperlink{protocolthe-p}{the} error message (if error). \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
XORP\_\-OK on success, otherwise XORP\_\-ERROR. 
\end{DoxyReturn}
\hypertarget{classStaticRoutesNode_ad8c78b9d90eab13539062a7ed4f34770}{
\index{StaticRoutesNode@{StaticRoutesNode}!delete\_\-route4@{delete\_\-route4}}
\index{delete\_\-route4@{delete\_\-route4}!StaticRoutesNode@{StaticRoutesNode}}
\subsubsection[{delete\_\-route4}]{\setlength{\rightskip}{0pt plus 5cm}int StaticRoutesNode::delete\_\-route4 (
\begin{DoxyParamCaption}
\item[{bool}]{unicast, }
\item[{bool}]{multicast, }
\item[{const {\bf IPv4Net} \&}]{network, }
\item[{const {\bf IPv4} \&}]{nexthop, }
\item[{const string \&}]{ifname, }
\item[{const string \&}]{vifname, }
\item[{bool}]{is\_\-backup\_\-route, }
\item[{string \&}]{error\_\-msg}
\end{DoxyParamCaption}
)}}
\label{classStaticRoutesNode_ad8c78b9d90eab13539062a7ed4f34770}


Delete a static \hyperlink{classIPv4}{IPv4} route. 


\begin{DoxyParams}{Parameters}
{\em unicast} & if true, then \hyperlink{protocolthe-p}{the} route would be used for unicast routing. \\
\hline
{\em multicast} & if true, then \hyperlink{protocolthe-p}{the} route would be used in \hyperlink{protocolthe-p}{the} MRIB (Multicast \hyperlink{classRouting}{Routing} Information Base) for multicast purpose (e.g., computing \hyperlink{protocolthe-p}{the} Reverse-\/Path Forwarding information). \\
\hline
{\em network} & \hyperlink{protocolthe-p}{the} network address prefix this route applies to. \\
\hline
{\em nexthop} & \hyperlink{protocolthe-p}{the} address of \hyperlink{protocolthe-p}{the} next-\/hop router for this route. \\
\hline
{\em ifname} & of \hyperlink{protocolthe-p}{the} name of \hyperlink{protocolthe-p}{the} physical interface toward \hyperlink{protocolthe-p}{the} destination. \\
\hline
{\em vifname} & of \hyperlink{protocolthe-p}{the} name of \hyperlink{protocolthe-p}{the} virtual interface toward \hyperlink{protocolthe-p}{the} destination. \\
\hline
{\em is\_\-backup\_\-route} & if true, then this is a backup route operation. \\
\hline
{\em error\_\-msg} & \hyperlink{protocolthe-p}{the} error message (if error). \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
XORP\_\-OK on success, otherwise XORP\_\-ERROR. 
\end{DoxyReturn}
\hypertarget{classStaticRoutesNode_ae17cc87914f3b0de1303543f66093037}{
\index{StaticRoutesNode@{StaticRoutesNode}!delete\_\-route6@{delete\_\-route6}}
\index{delete\_\-route6@{delete\_\-route6}!StaticRoutesNode@{StaticRoutesNode}}
\subsubsection[{delete\_\-route6}]{\setlength{\rightskip}{0pt plus 5cm}int StaticRoutesNode::delete\_\-route6 (
\begin{DoxyParamCaption}
\item[{bool}]{unicast, }
\item[{bool}]{multicast, }
\item[{const {\bf IPv6Net} \&}]{network, }
\item[{const {\bf IPv6} \&}]{nexthop, }
\item[{const string \&}]{ifname, }
\item[{const string \&}]{vifname, }
\item[{bool}]{is\_\-backup\_\-route, }
\item[{string \&}]{error\_\-msg}
\end{DoxyParamCaption}
)}}
\label{classStaticRoutesNode_ae17cc87914f3b0de1303543f66093037}


Delete a static \hyperlink{classIPv6}{IPv6} route. 


\begin{DoxyParams}{Parameters}
{\em unicast} & if true, then \hyperlink{protocolthe-p}{the} route would be used for unicast routing. \\
\hline
{\em multicast} & if true, then \hyperlink{protocolthe-p}{the} route would be used in \hyperlink{protocolthe-p}{the} MRIB (Multicast \hyperlink{classRouting}{Routing} Information Base) for multicast purpose (e.g., computing \hyperlink{protocolthe-p}{the} Reverse-\/Path Forwarding information). \\
\hline
{\em network} & \hyperlink{protocolthe-p}{the} network address prefix this route applies to. \\
\hline
{\em nexthop} & \hyperlink{protocolthe-p}{the} address of \hyperlink{protocolthe-p}{the} next-\/hop router for this route. \\
\hline
{\em ifname} & of \hyperlink{protocolthe-p}{the} name of \hyperlink{protocolthe-p}{the} physical interface toward \hyperlink{protocolthe-p}{the} destination. \\
\hline
{\em vifname} & of \hyperlink{protocolthe-p}{the} name of \hyperlink{protocolthe-p}{the} virtual interface toward \hyperlink{protocolthe-p}{the} destination. \\
\hline
{\em is\_\-backup\_\-route} & if true, then this is a backup route operation. \\
\hline
{\em error\_\-msg} & \hyperlink{protocolthe-p}{the} error message (if error). \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
XORP\_\-OK on success, otherwise XORP\_\-ERROR. 
\end{DoxyReturn}
\hypertarget{classStaticRoutesNode_a01c8553fa3bb7d45ab9b87ba5e26a007}{
\index{StaticRoutesNode@{StaticRoutesNode}!do\_\-filtering@{do\_\-filtering}}
\index{do\_\-filtering@{do\_\-filtering}!StaticRoutesNode@{StaticRoutesNode}}
\subsubsection[{do\_\-filtering}]{\setlength{\rightskip}{0pt plus 5cm}bool StaticRoutesNode::do\_\-filtering (
\begin{DoxyParamCaption}
\item[{{\bf StaticRoute} \&}]{route}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}private\mbox{]}}}}
\label{classStaticRoutesNode_a01c8553fa3bb7d45ab9b87ba5e26a007}


Do policy filtering on a route. 


\begin{DoxyParams}{Parameters}
{\em route} & route to filter. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
true if route was accepted by policy filter, otherwise false. 
\end{DoxyReturn}
\hypertarget{classStaticRoutesNode_ab45597f8a0db9adc563dffa0195a910d}{
\index{StaticRoutesNode@{StaticRoutesNode}!eventloop@{eventloop}}
\index{eventloop@{eventloop}!StaticRoutesNode@{StaticRoutesNode}}
\subsubsection[{eventloop}]{\setlength{\rightskip}{0pt plus 5cm}{\bf EventLoop}\& StaticRoutesNode::eventloop (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{classStaticRoutesNode_ab45597f8a0db9adc563dffa0195a910d}


Get \hyperlink{protocolthe-p}{the} event loop this node is added to. 

\begin{DoxyReturn}{Returns}
\hyperlink{protocolthe-p}{the} event loop this node is added to. 
\end{DoxyReturn}
\hypertarget{classStaticRoutesNode_a0853491b88f90e6d1c7e38e039e338f2}{
\index{StaticRoutesNode@{StaticRoutesNode}!fea\_\-register\_\-shutdown@{fea\_\-register\_\-shutdown}}
\index{fea\_\-register\_\-shutdown@{fea\_\-register\_\-shutdown}!StaticRoutesNode@{StaticRoutesNode}}
\subsubsection[{fea\_\-register\_\-shutdown}]{\setlength{\rightskip}{0pt plus 5cm}virtual void StaticRoutesNode::fea\_\-register\_\-shutdown (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}private, pure virtual\mbox{]}}}}
\label{classStaticRoutesNode_a0853491b88f90e6d1c7e38e039e338f2}


Initiate de-\/registration with \hyperlink{protocolthe-p}{the} FEA. 

This is a pure virtual function, and it must be implemented by \hyperlink{protocolthe-p}{the} communication-\/wrapper class that inherits this base class. 

Implemented in \hyperlink{classXrlStaticRoutesNode_aa0206e894ccaa594c1428287edc66013}{XrlStaticRoutesNode}.

\hypertarget{classStaticRoutesNode_a056c5b0eab044f1adc108f1d274cba38}{
\index{StaticRoutesNode@{StaticRoutesNode}!fea\_\-register\_\-startup@{fea\_\-register\_\-startup}}
\index{fea\_\-register\_\-startup@{fea\_\-register\_\-startup}!StaticRoutesNode@{StaticRoutesNode}}
\subsubsection[{fea\_\-register\_\-startup}]{\setlength{\rightskip}{0pt plus 5cm}virtual void StaticRoutesNode::fea\_\-register\_\-startup (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}private, pure virtual\mbox{]}}}}
\label{classStaticRoutesNode_a056c5b0eab044f1adc108f1d274cba38}


Initiate registration with \hyperlink{protocolthe-p}{the} FEA. 

This is a pure virtual function, and it must be implemented by \hyperlink{protocolthe-p}{the} communication-\/wrapper class that inherits this base class. 

Implemented in \hyperlink{classXrlStaticRoutesNode_ac88e0d19547c41df38d770d27a6471ed}{XrlStaticRoutesNode}.

\hypertarget{classStaticRoutesNode_af0c1664cf65bd891eca6e277a96d37f1}{
\index{StaticRoutesNode@{StaticRoutesNode}!find\_\-best\_\-accepted\_\-route@{find\_\-best\_\-accepted\_\-route}}
\index{find\_\-best\_\-accepted\_\-route@{find\_\-best\_\-accepted\_\-route}!StaticRoutesNode@{StaticRoutesNode}}
\subsubsection[{find\_\-best\_\-accepted\_\-route}]{\setlength{\rightskip}{0pt plus 5cm}StaticRoutesNode::Table::iterator StaticRoutesNode::find\_\-best\_\-accepted\_\-route (
\begin{DoxyParamCaption}
\item[{StaticRoutesNode::Table \&}]{table, }
\item[{const {\bf StaticRoute} \&}]{key\_\-route}
\end{DoxyParamCaption}
)}}
\label{classStaticRoutesNode_af0c1664cf65bd891eca6e277a96d37f1}


Find \hyperlink{protocolthe-p}{the} best accepted route from \hyperlink{protocolthe-p}{the} routing table. 


\begin{DoxyParams}{Parameters}
{\em table} & \hyperlink{protocolthe-p}{the} routing table to seach. \\
\hline
{\em key\_\-route} & \hyperlink{protocolthe-p}{the} route information to search for. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
a table iterator to \hyperlink{protocolthe-p}{the} route. If \hyperlink{protocolthe-p}{the} route is not found, \hyperlink{protocolthe-p}{the} iterator will point to \hyperlink{protocolthe-p}{the} end of \hyperlink{protocolthe-p}{the} table. 
\end{DoxyReturn}
\hypertarget{classStaticRoutesNode_a55430c467be28b0cef28660a0e6d7362}{
\index{StaticRoutesNode@{StaticRoutesNode}!find\_\-route@{find\_\-route}}
\index{find\_\-route@{find\_\-route}!StaticRoutesNode@{StaticRoutesNode}}
\subsubsection[{find\_\-route}]{\setlength{\rightskip}{0pt plus 5cm}StaticRoutesNode::Table::iterator StaticRoutesNode::find\_\-route (
\begin{DoxyParamCaption}
\item[{StaticRoutesNode::Table \&}]{table, }
\item[{const {\bf StaticRoute} \&}]{key\_\-route}
\end{DoxyParamCaption}
)}}
\label{classStaticRoutesNode_a55430c467be28b0cef28660a0e6d7362}


Find a route from \hyperlink{protocolthe-p}{the} routing table. 


\begin{DoxyParams}{Parameters}
{\em table} & \hyperlink{protocolthe-p}{the} routing table to seach. \\
\hline
{\em key\_\-route} & \hyperlink{protocolthe-p}{the} route information to search for. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
a table iterator to \hyperlink{protocolthe-p}{the} route. If \hyperlink{protocolthe-p}{the} route is not found, \hyperlink{protocolthe-p}{the} iterator will point to \hyperlink{protocolthe-p}{the} end of \hyperlink{protocolthe-p}{the} table. 
\end{DoxyReturn}
\hypertarget{classStaticRoutesNode_a75cd89c096693b430bd02823a901c3e0}{
\index{StaticRoutesNode@{StaticRoutesNode}!ifmgr\_\-iftree@{ifmgr\_\-iftree}}
\index{ifmgr\_\-iftree@{ifmgr\_\-iftree}!StaticRoutesNode@{StaticRoutesNode}}
\subsubsection[{ifmgr\_\-iftree}]{\setlength{\rightskip}{0pt plus 5cm}virtual const {\bf IfMgrIfTree}\& StaticRoutesNode::ifmgr\_\-iftree (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}private, pure virtual\mbox{]}}}}
\label{classStaticRoutesNode_a75cd89c096693b430bd02823a901c3e0}


Get a reference to \hyperlink{protocolthe-p}{the} interface manager tree. 

This is a pure virtual function, and it must be implemented by \hyperlink{protocolthe-p}{the} communication-\/wrapper class that inherits this base class.

\begin{DoxyReturn}{Returns}
a reference to \hyperlink{protocolthe-p}{the} interface manager tree. 
\end{DoxyReturn}


Implemented in \hyperlink{classXrlStaticRoutesNode_ac97897dd9773163d4ca792262228f3a9}{XrlStaticRoutesNode}.

\hypertarget{classStaticRoutesNode_a6faeb33104a6815060450d59972ee324}{
\index{StaticRoutesNode@{StaticRoutesNode}!ifmgr\_\-mirror\_\-service\_\-base@{ifmgr\_\-mirror\_\-service\_\-base}}
\index{ifmgr\_\-mirror\_\-service\_\-base@{ifmgr\_\-mirror\_\-service\_\-base}!StaticRoutesNode@{StaticRoutesNode}}
\subsubsection[{ifmgr\_\-mirror\_\-service\_\-base}]{\setlength{\rightskip}{0pt plus 5cm}virtual const {\bf ServiceBase}$\ast$ StaticRoutesNode::ifmgr\_\-mirror\_\-service\_\-base (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}private, pure virtual\mbox{]}}}}
\label{classStaticRoutesNode_a6faeb33104a6815060450d59972ee324}


Get a reference to \hyperlink{protocolthe-p}{the} service base of \hyperlink{protocolthe-p}{the} interface manager. 

This is a pure virtual function, and it must be implemented by \hyperlink{protocolthe-p}{the} communication-\/wrapper class that inherits this base class.

\begin{DoxyReturn}{Returns}
a reference to \hyperlink{protocolthe-p}{the} service base of \hyperlink{protocolthe-p}{the} interface manager. 
\end{DoxyReturn}


Implemented in \hyperlink{classXrlStaticRoutesNode_a0fcdf3cc1809547fae072a8225b4f7eb}{XrlStaticRoutesNode}.

\hypertarget{classStaticRoutesNode_af9f7ea9e627f1f4935c7da3a32ac7802}{
\index{StaticRoutesNode@{StaticRoutesNode}!inform\_\-rib@{inform\_\-rib}}
\index{inform\_\-rib@{inform\_\-rib}!StaticRoutesNode@{StaticRoutesNode}}
\subsubsection[{inform\_\-rib}]{\setlength{\rightskip}{0pt plus 5cm}void StaticRoutesNode::inform\_\-rib (
\begin{DoxyParamCaption}
\item[{const {\bf StaticRoute} \&}]{r}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}private\mbox{]}}}}
\label{classStaticRoutesNode_af9f7ea9e627f1f4935c7da3a32ac7802}


Inform \hyperlink{protocolthe-p}{the} \hyperlink{classRIB}{RIB} about a route. 


\begin{DoxyParams}{Parameters}
{\em r} & route which should be updated in \hyperlink{protocolthe-p}{the} \hyperlink{classRIB}{RIB}. \\
\hline
\end{DoxyParams}
\hypertarget{classStaticRoutesNode_a0e4e3e5bbf83514d88c6b809d8670284}{
\index{StaticRoutesNode@{StaticRoutesNode}!inform\_\-rib\_\-route\_\-change@{inform\_\-rib\_\-route\_\-change}}
\index{inform\_\-rib\_\-route\_\-change@{inform\_\-rib\_\-route\_\-change}!StaticRoutesNode@{StaticRoutesNode}}
\subsubsection[{inform\_\-rib\_\-route\_\-change}]{\setlength{\rightskip}{0pt plus 5cm}virtual void StaticRoutesNode::inform\_\-rib\_\-route\_\-change (
\begin{DoxyParamCaption}
\item[{const {\bf StaticRoute} \&}]{static\_\-route}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}private, pure virtual\mbox{]}}}}
\label{classStaticRoutesNode_a0e4e3e5bbf83514d88c6b809d8670284}


Inform \hyperlink{protocolthe-p}{the} \hyperlink{classRIB}{RIB} about a route change. 

This is a pure virtual function, and it must be implemented by \hyperlink{protocolthe-p}{the} communication-\/wrapper class that inherits this base class.


\begin{DoxyParams}{Parameters}
{\em static\_\-route} & \hyperlink{protocolthe-p}{the} route with \hyperlink{protocolthe-p}{the} information about \hyperlink{protocolthe-p}{the} change. \\
\hline
\end{DoxyParams}


Implemented in \hyperlink{classXrlStaticRoutesNode_a7636317bee92e1839f8b9cdec1e83a00}{XrlStaticRoutesNode}.

\hypertarget{classStaticRoutesNode_abc31b756eb01b100e4c0a71ca4522df6}{
\index{StaticRoutesNode@{StaticRoutesNode}!is\_\-accepted\_\-by\_\-nexthop@{is\_\-accepted\_\-by\_\-nexthop}}
\index{is\_\-accepted\_\-by\_\-nexthop@{is\_\-accepted\_\-by\_\-nexthop}!StaticRoutesNode@{StaticRoutesNode}}
\subsubsection[{is\_\-accepted\_\-by\_\-nexthop}]{\setlength{\rightskip}{0pt plus 5cm}bool StaticRoutesNode::is\_\-accepted\_\-by\_\-nexthop (
\begin{DoxyParamCaption}
\item[{const {\bf StaticRoute} \&}]{route}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}private\mbox{]}}}}
\label{classStaticRoutesNode_abc31b756eb01b100e4c0a71ca4522df6}


Test whether a route is accepted based on its next-\/hop information. 


\begin{DoxyParams}{Parameters}
{\em route} & \hyperlink{protocolthe-p}{the} route to test. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
true if \hyperlink{protocolthe-p}{the} route is accepted based on its next-\/hop information, otherwise false. 
\end{DoxyReturn}
\hypertarget{classStaticRoutesNode_a67b06adcce013306073a926f50dc8e4a}{
\index{StaticRoutesNode@{StaticRoutesNode}!is\_\-done@{is\_\-done}}
\index{is\_\-done@{is\_\-done}!StaticRoutesNode@{StaticRoutesNode}}
\subsubsection[{is\_\-done}]{\setlength{\rightskip}{0pt plus 5cm}bool StaticRoutesNode::is\_\-done (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{classStaticRoutesNode_a67b06adcce013306073a926f50dc8e4a}


Test if \hyperlink{protocolthe-p}{the} node processing is done. 

\begin{DoxyReturn}{Returns}
true if \hyperlink{protocolthe-p}{the} node processing is done, otherwise false. 
\end{DoxyReturn}
\hypertarget{classStaticRoutesNode_a2a9ddc86f2ffa9b93795ac9bd3815417}{
\index{StaticRoutesNode@{StaticRoutesNode}!is\_\-enabled@{is\_\-enabled}}
\index{is\_\-enabled@{is\_\-enabled}!StaticRoutesNode@{StaticRoutesNode}}
\subsubsection[{is\_\-enabled}]{\setlength{\rightskip}{0pt plus 5cm}bool StaticRoutesNode::is\_\-enabled (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{classStaticRoutesNode_a2a9ddc86f2ffa9b93795ac9bd3815417}


Test whether \hyperlink{protocolthe-p}{the} node operation is enabled. 

\begin{DoxyReturn}{Returns}
true if \hyperlink{protocolthe-p}{the} node operation is enabled, otherwise false. 
\end{DoxyReturn}
\hypertarget{classStaticRoutesNode_a8c5629661f68ec1f5800f00a01a58092}{
\index{StaticRoutesNode@{StaticRoutesNode}!is\_\-log\_\-trace@{is\_\-log\_\-trace}}
\index{is\_\-log\_\-trace@{is\_\-log\_\-trace}!StaticRoutesNode@{StaticRoutesNode}}
\subsubsection[{is\_\-log\_\-trace}]{\setlength{\rightskip}{0pt plus 5cm}bool StaticRoutesNode::is\_\-log\_\-trace (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{classStaticRoutesNode_a8c5629661f68ec1f5800f00a01a58092}


Test if trace log is enabled. 

This method is used to test whether to output trace log debug messges.

\begin{DoxyReturn}{Returns}
true if trace log is enabled, otherwise false. 
\end{DoxyReturn}
\hypertarget{classStaticRoutesNode_ac43560e22559aa7a65171e24f01eb38e}{
\index{StaticRoutesNode@{StaticRoutesNode}!node\_\-status@{node\_\-status}}
\index{node\_\-status@{node\_\-status}!StaticRoutesNode@{StaticRoutesNode}}
\subsubsection[{node\_\-status}]{\setlength{\rightskip}{0pt plus 5cm}ProcessStatus StaticRoutesNode::node\_\-status (
\begin{DoxyParamCaption}
\item[{string \&}]{reason\_\-msg}
\end{DoxyParamCaption}
)}}
\label{classStaticRoutesNode_ac43560e22559aa7a65171e24f01eb38e}


Get \hyperlink{protocolthe-p}{the} node status (see ProcessStatus). 


\begin{DoxyParams}{Parameters}
{\em reason\_\-msg} & return-\/by-\/reference string that contains human-\/readable information about \hyperlink{protocolthe-p}{the} status. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
\hyperlink{protocolthe-p}{the} node status (see ProcessStatus). 
\end{DoxyReturn}
\hypertarget{classStaticRoutesNode_a3eda6483450261e5dcd9a7e332aef999}{
\index{StaticRoutesNode@{StaticRoutesNode}!prepare\_\-route\_\-for\_\-transmission@{prepare\_\-route\_\-for\_\-transmission}}
\index{prepare\_\-route\_\-for\_\-transmission@{prepare\_\-route\_\-for\_\-transmission}!StaticRoutesNode@{StaticRoutesNode}}
\subsubsection[{prepare\_\-route\_\-for\_\-transmission}]{\setlength{\rightskip}{0pt plus 5cm}void StaticRoutesNode::prepare\_\-route\_\-for\_\-transmission (
\begin{DoxyParamCaption}
\item[{{\bf StaticRoute} \&}]{orig\_\-route, }
\item[{{\bf StaticRoute} \&}]{copy\_\-route}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}private\mbox{]}}}}
\label{classStaticRoutesNode_a3eda6483450261e5dcd9a7e332aef999}


Prepare a copy of a route for transmission to \hyperlink{protocolthe-p}{the} \hyperlink{classRIB}{RIB}. 

Note that \hyperlink{protocolthe-p}{the} original route will be modified as appropriate.


\begin{DoxyParams}{Parameters}
{\em orig\_\-route} & \hyperlink{protocolthe-p}{the} original route to prepare. \\
\hline
{\em copy\_\-route} & \hyperlink{protocolthe-p}{the} copy of \hyperlink{protocolthe-p}{the} original route prepared for transmission to \hyperlink{protocolthe-p}{the} \hyperlink{classRIB}{RIB}. \\
\hline
\end{DoxyParams}
\hypertarget{classStaticRoutesNode_a2749837ef2b5f9333232af47caf98e00}{
\index{StaticRoutesNode@{StaticRoutesNode}!protocol\_\-name@{protocol\_\-name}}
\index{protocol\_\-name@{protocol\_\-name}!StaticRoutesNode@{StaticRoutesNode}}
\subsubsection[{protocol\_\-name}]{\setlength{\rightskip}{0pt plus 5cm}const string\& StaticRoutesNode::protocol\_\-name (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{classStaticRoutesNode_a2749837ef2b5f9333232af47caf98e00}


Get \hyperlink{protocolthe-p}{the} protocol name. 

\begin{DoxyReturn}{Returns}
a string with \hyperlink{protocolthe-p}{the} protocol name. 
\end{DoxyReturn}
\hypertarget{classStaticRoutesNode_a35c27d1f92b39ef4410cff101727f7a7}{
\index{StaticRoutesNode@{StaticRoutesNode}!push\_\-pull\_\-rib\_\-routes@{push\_\-pull\_\-rib\_\-routes}}
\index{push\_\-pull\_\-rib\_\-routes@{push\_\-pull\_\-rib\_\-routes}!StaticRoutesNode@{StaticRoutesNode}}
\subsubsection[{push\_\-pull\_\-rib\_\-routes}]{\setlength{\rightskip}{0pt plus 5cm}void StaticRoutesNode::push\_\-pull\_\-rib\_\-routes (
\begin{DoxyParamCaption}
\item[{bool}]{is\_\-push}
\end{DoxyParamCaption}
)}}
\label{classStaticRoutesNode_a35c27d1f92b39ef4410cff101727f7a7}


\hyperlink{classPush}{Push} or pull all \hyperlink{protocolthe-p}{the} routes to/from \hyperlink{protocolthe-p}{the} \hyperlink{classRIB}{RIB}. 


\begin{DoxyParams}{Parameters}
{\em is\_\-push} & if true, then push \hyperlink{protocolthe-p}{the} routes, otherwise pull them \\
\hline
\end{DoxyParams}
\hypertarget{classStaticRoutesNode_a157088df783d38063292014a1baba943}{
\index{StaticRoutesNode@{StaticRoutesNode}!replace\_\-route@{replace\_\-route}}
\index{replace\_\-route@{replace\_\-route}!StaticRoutesNode@{StaticRoutesNode}}
\subsubsection[{replace\_\-route}]{\setlength{\rightskip}{0pt plus 5cm}int StaticRoutesNode::replace\_\-route (
\begin{DoxyParamCaption}
\item[{const {\bf StaticRoute} \&}]{static\_\-route, }
\item[{string \&}]{error\_\-msg}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}private\mbox{]}}}}
\label{classStaticRoutesNode_a157088df783d38063292014a1baba943}


Replace a static \hyperlink{classIPvX}{IPvX} route. 


\begin{DoxyParams}{Parameters}
{\em static\_\-route} & \hyperlink{protocolthe-p}{the} replacement route. \\
\hline
\end{DoxyParams}
\begin{DoxySeeAlso}{See also}
\hyperlink{classStaticRoute}{StaticRoute} 
\end{DoxySeeAlso}

\begin{DoxyParams}{Parameters}
{\em error\_\-msg} & \hyperlink{protocolthe-p}{the} error message (if error). \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
XORP\_\-OK on success, otherwise XORP\_\-ERROR. 
\end{DoxyReturn}
\hypertarget{classStaticRoutesNode_a7d7ac7de95e1b119f81ac75988a4cf0e}{
\index{StaticRoutesNode@{StaticRoutesNode}!replace\_\-route4@{replace\_\-route4}}
\index{replace\_\-route4@{replace\_\-route4}!StaticRoutesNode@{StaticRoutesNode}}
\subsubsection[{replace\_\-route4}]{\setlength{\rightskip}{0pt plus 5cm}int StaticRoutesNode::replace\_\-route4 (
\begin{DoxyParamCaption}
\item[{bool}]{unicast, }
\item[{bool}]{multicast, }
\item[{const {\bf IPv4Net} \&}]{network, }
\item[{const {\bf IPv4} \&}]{nexthop, }
\item[{const string \&}]{ifname, }
\item[{const string \&}]{vifname, }
\item[{uint32\_\-t}]{metric, }
\item[{bool}]{is\_\-backup\_\-route, }
\item[{string \&}]{error\_\-msg}
\end{DoxyParamCaption}
)}}
\label{classStaticRoutesNode_a7d7ac7de95e1b119f81ac75988a4cf0e}


Replace a static \hyperlink{classIPv4}{IPv4} route. 


\begin{DoxyParams}{Parameters}
{\em unicast} & if true, then \hyperlink{protocolthe-p}{the} route would be used for unicast routing. \\
\hline
{\em multicast} & if true, then \hyperlink{protocolthe-p}{the} route would be used in \hyperlink{protocolthe-p}{the} MRIB (Multicast \hyperlink{classRouting}{Routing} Information Base) for multicast purpose (e.g., computing \hyperlink{protocolthe-p}{the} Reverse-\/Path Forwarding information). \\
\hline
{\em network} & \hyperlink{protocolthe-p}{the} network address prefix this route applies to. \\
\hline
{\em nexthop} & \hyperlink{protocolthe-p}{the} address of \hyperlink{protocolthe-p}{the} next-\/hop router for this route. \\
\hline
{\em ifname} & of \hyperlink{protocolthe-p}{the} name of \hyperlink{protocolthe-p}{the} physical interface toward \hyperlink{protocolthe-p}{the} destination. \\
\hline
{\em vifname} & of \hyperlink{protocolthe-p}{the} name of \hyperlink{protocolthe-p}{the} virtual interface toward \hyperlink{protocolthe-p}{the} destination. \\
\hline
{\em metric} & \hyperlink{protocolthe-p}{the} metric distance for this route. \\
\hline
{\em is\_\-backup\_\-route} & if true, then this is a backup route operation. \\
\hline
{\em error\_\-msg} & \hyperlink{protocolthe-p}{the} error message (if error). \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
XORP\_\-OK on success, otherwise XORP\_\-ERROR. 
\end{DoxyReturn}
\hypertarget{classStaticRoutesNode_ab728f0fe8b11ab44083deaf7d9c8c986}{
\index{StaticRoutesNode@{StaticRoutesNode}!replace\_\-route6@{replace\_\-route6}}
\index{replace\_\-route6@{replace\_\-route6}!StaticRoutesNode@{StaticRoutesNode}}
\subsubsection[{replace\_\-route6}]{\setlength{\rightskip}{0pt plus 5cm}int StaticRoutesNode::replace\_\-route6 (
\begin{DoxyParamCaption}
\item[{bool}]{unicast, }
\item[{bool}]{multicast, }
\item[{const {\bf IPv6Net} \&}]{network, }
\item[{const {\bf IPv6} \&}]{nexthop, }
\item[{const string \&}]{ifname, }
\item[{const string \&}]{vifname, }
\item[{uint32\_\-t}]{metric, }
\item[{bool}]{is\_\-backup\_\-route, }
\item[{string \&}]{error\_\-msg}
\end{DoxyParamCaption}
)}}
\label{classStaticRoutesNode_ab728f0fe8b11ab44083deaf7d9c8c986}


Replace a static \hyperlink{classIPv6}{IPv6} route. 


\begin{DoxyParams}{Parameters}
{\em unicast} & if true, then \hyperlink{protocolthe-p}{the} route would be used for unicast routing. \\
\hline
{\em multicast} & if true, then \hyperlink{protocolthe-p}{the} route would be used in \hyperlink{protocolthe-p}{the} MRIB (Multicast \hyperlink{classRouting}{Routing} Information Base) for multicast purpose (e.g., computing \hyperlink{protocolthe-p}{the} Reverse-\/Path Forwarding information). \\
\hline
{\em network} & \hyperlink{protocolthe-p}{the} network address prefix this route applies to. \\
\hline
{\em nexthop} & \hyperlink{protocolthe-p}{the} address of \hyperlink{protocolthe-p}{the} next-\/hop router for this route. \\
\hline
{\em ifname} & of \hyperlink{protocolthe-p}{the} name of \hyperlink{protocolthe-p}{the} physical interface toward \hyperlink{protocolthe-p}{the} destination. \\
\hline
{\em vifname} & of \hyperlink{protocolthe-p}{the} name of \hyperlink{protocolthe-p}{the} virtual interface toward \hyperlink{protocolthe-p}{the} destination. \\
\hline
{\em metric} & \hyperlink{protocolthe-p}{the} metric distance for this route. \\
\hline
{\em is\_\-backup\_\-route} & if true, then this is a backup route operation. \\
\hline
{\em error\_\-msg} & \hyperlink{protocolthe-p}{the} error message (if error). \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
XORP\_\-OK on success, otherwise XORP\_\-ERROR. 
\end{DoxyReturn}
\hypertarget{classStaticRoutesNode_af1dd6df3eca88cae233f171ee19f3109}{
\index{StaticRoutesNode@{StaticRoutesNode}!reset\_\-filter@{reset\_\-filter}}
\index{reset\_\-filter@{reset\_\-filter}!StaticRoutesNode@{StaticRoutesNode}}
\subsubsection[{reset\_\-filter}]{\setlength{\rightskip}{0pt plus 5cm}void StaticRoutesNode::reset\_\-filter (
\begin{DoxyParamCaption}
\item[{const uint32\_\-t \&}]{filter}
\end{DoxyParamCaption}
)}}
\label{classStaticRoutesNode_af1dd6df3eca88cae233f171ee19f3109}


Reset a policy filter. 


\begin{DoxyParams}{Parameters}
{\em filter} & identifier of filter to reset. \\
\hline
\end{DoxyParams}
\hypertarget{classStaticRoutesNode_a82062f669e700c09de2e2a12ef6425af}{
\index{StaticRoutesNode@{StaticRoutesNode}!rib\_\-register\_\-shutdown@{rib\_\-register\_\-shutdown}}
\index{rib\_\-register\_\-shutdown@{rib\_\-register\_\-shutdown}!StaticRoutesNode@{StaticRoutesNode}}
\subsubsection[{rib\_\-register\_\-shutdown}]{\setlength{\rightskip}{0pt plus 5cm}virtual void StaticRoutesNode::rib\_\-register\_\-shutdown (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}private, pure virtual\mbox{]}}}}
\label{classStaticRoutesNode_a82062f669e700c09de2e2a12ef6425af}


Initiate de-\/registration with \hyperlink{protocolthe-p}{the} \hyperlink{classRIB}{RIB}. 

This is a pure virtual function, and it must be implemented by \hyperlink{protocolthe-p}{the} communication-\/wrapper class that inherits this base class. 

Implemented in \hyperlink{classXrlStaticRoutesNode_a0702779b8eb7a346c70ea3e2daa47184}{XrlStaticRoutesNode}.

\hypertarget{classStaticRoutesNode_ad7e4d82750ac7074fa37313a3d1ad983}{
\index{StaticRoutesNode@{StaticRoutesNode}!rib\_\-register\_\-startup@{rib\_\-register\_\-startup}}
\index{rib\_\-register\_\-startup@{rib\_\-register\_\-startup}!StaticRoutesNode@{StaticRoutesNode}}
\subsubsection[{rib\_\-register\_\-startup}]{\setlength{\rightskip}{0pt plus 5cm}virtual void StaticRoutesNode::rib\_\-register\_\-startup (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}private, pure virtual\mbox{]}}}}
\label{classStaticRoutesNode_ad7e4d82750ac7074fa37313a3d1ad983}


Initiate registration with \hyperlink{protocolthe-p}{the} \hyperlink{classRIB}{RIB}. 

This is a pure virtual function, and it must be implemented by \hyperlink{protocolthe-p}{the} communication-\/wrapper class that inherits this base class. 

Implemented in \hyperlink{classXrlStaticRoutesNode_ace9704deb71e89a9c420888c21890e72}{XrlStaticRoutesNode}.

\hypertarget{classStaticRoutesNode_afdd1964310df794c6e362ef9e9c77f41}{
\index{StaticRoutesNode@{StaticRoutesNode}!set\_\-enabled@{set\_\-enabled}}
\index{set\_\-enabled@{set\_\-enabled}!StaticRoutesNode@{StaticRoutesNode}}
\subsubsection[{set\_\-enabled}]{\setlength{\rightskip}{0pt plus 5cm}void StaticRoutesNode::set\_\-enabled (
\begin{DoxyParamCaption}
\item[{bool}]{enable}
\end{DoxyParamCaption}
)}}
\label{classStaticRoutesNode_afdd1964310df794c6e362ef9e9c77f41}


Enable/disable node operation. 

Note that for \hyperlink{protocolthe-p}{the} time being it affects only whether \hyperlink{protocolthe-p}{the} routes are installed into \hyperlink{classRIB}{RIB}. In \hyperlink{protocolthe-p}{the} future it may affect \hyperlink{protocolthe-p}{the} interaction with other modules as well.


\begin{DoxyParams}{Parameters}
{\em enable} & if true then enable node operation, otherwise disable it. \\
\hline
\end{DoxyParams}
\hypertarget{classStaticRoutesNode_a8da75af80a0dd74971a944c8f2ba54ba}{
\index{StaticRoutesNode@{StaticRoutesNode}!set\_\-log\_\-trace@{set\_\-log\_\-trace}}
\index{set\_\-log\_\-trace@{set\_\-log\_\-trace}!StaticRoutesNode@{StaticRoutesNode}}
\subsubsection[{set\_\-log\_\-trace}]{\setlength{\rightskip}{0pt plus 5cm}void StaticRoutesNode::set\_\-log\_\-trace (
\begin{DoxyParamCaption}
\item[{bool}]{is\_\-enabled}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{classStaticRoutesNode_a8da75af80a0dd74971a944c8f2ba54ba}


Enable/disable trace log. 

This method is used to enable/disable trace log debug messages output.


\begin{DoxyParams}{Parameters}
{\em is\_\-enabled} & if true, trace log is enabled, otherwise is disabled. \\
\hline
\end{DoxyParams}
\hypertarget{classStaticRoutesNode_ae360830c08c1472649e49ac84db6cb1f}{
\index{StaticRoutesNode@{StaticRoutesNode}!set\_\-node\_\-status@{set\_\-node\_\-status}}
\index{set\_\-node\_\-status@{set\_\-node\_\-status}!StaticRoutesNode@{StaticRoutesNode}}
\subsubsection[{set\_\-node\_\-status}]{\setlength{\rightskip}{0pt plus 5cm}void StaticRoutesNode::set\_\-node\_\-status (
\begin{DoxyParamCaption}
\item[{ProcessStatus}]{v}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline, private\mbox{]}}}}
\label{classStaticRoutesNode_ae360830c08c1472649e49ac84db6cb1f}


Set \hyperlink{protocolthe-p}{the} node status. 


\begin{DoxyParams}{Parameters}
{\em v} & \hyperlink{protocolthe-p}{the} new node status. \\
\hline
\end{DoxyParams}
\hypertarget{classStaticRoutesNode_ade59989dd531a8352963482ce4f5d408}{
\index{StaticRoutesNode@{StaticRoutesNode}!shutdown@{shutdown}}
\index{shutdown@{shutdown}!StaticRoutesNode@{StaticRoutesNode}}
\subsubsection[{shutdown}]{\setlength{\rightskip}{0pt plus 5cm}int StaticRoutesNode::shutdown (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}
\label{classStaticRoutesNode_ade59989dd531a8352963482ce4f5d408}


\hyperlink{classShutdown}{Shutdown} \hyperlink{protocolthe-p}{the} node operation. 

\begin{DoxyReturn}{Returns}
XORP\_\-OK on success, otherwise XORP\_\-ERROR. 
\end{DoxyReturn}


Implements \hyperlink{classServiceBase_a6ad34506fd5a446d5667abcb2e1b593b}{ServiceBase}.



Reimplemented in \hyperlink{classXrlStaticRoutesNode_a6e4282f9d0bcccddd3d2d310b549206f}{XrlStaticRoutesNode}.

\hypertarget{classStaticRoutesNode_a640c04f2536daf3bdb2703d925b0348d}{
\index{StaticRoutesNode@{StaticRoutesNode}!startup@{startup}}
\index{startup@{startup}!StaticRoutesNode@{StaticRoutesNode}}
\subsubsection[{startup}]{\setlength{\rightskip}{0pt plus 5cm}int StaticRoutesNode::startup (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}
\label{classStaticRoutesNode_a640c04f2536daf3bdb2703d925b0348d}


\hyperlink{classStartup}{Startup} \hyperlink{protocolthe-p}{the} node operation. 

\begin{DoxyReturn}{Returns}
XORP\_\-OK on success, otherwise XORP\_\-ERROR. 
\end{DoxyReturn}


Implements \hyperlink{classServiceBase_a791755872b2056ddd82a2f00904c7d2b}{ServiceBase}.



Reimplemented in \hyperlink{classXrlStaticRoutesNode_a7db0351c50bcb8ae0ceffc6097ea9aff}{XrlStaticRoutesNode}.

\hypertarget{classStaticRoutesNode_ac569aa51be5e90cc46029f29eab3f8c3}{
\index{StaticRoutesNode@{StaticRoutesNode}!status\_\-change@{status\_\-change}}
\index{status\_\-change@{status\_\-change}!StaticRoutesNode@{StaticRoutesNode}}
\subsubsection[{status\_\-change}]{\setlength{\rightskip}{0pt plus 5cm}void StaticRoutesNode::status\_\-change (
\begin{DoxyParamCaption}
\item[{{\bf ServiceBase} $\ast$}]{service, }
\item[{ServiceStatus}]{old\_\-status, }
\item[{ServiceStatus}]{new\_\-status}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}private, virtual\mbox{]}}}}
\label{classStaticRoutesNode_ac569aa51be5e90cc46029f29eab3f8c3}


A method invoked when \hyperlink{protocolthe-p}{the} status of a service changes. 


\begin{DoxyParams}{Parameters}
{\em service} & \hyperlink{protocolthe-p}{the} service whose status has changed. \\
\hline
{\em old\_\-status} & \hyperlink{protocolthe-p}{the} old status. \\
\hline
{\em new\_\-status} & \hyperlink{protocolthe-p}{the} new status. \\
\hline
\end{DoxyParams}


Implements \hyperlink{classServiceChangeObserverBase}{ServiceChangeObserverBase}.

\hypertarget{classStaticRoutesNode_a379aaa97cd700abb92481f6d8780738f}{
\index{StaticRoutesNode@{StaticRoutesNode}!update\_\-route@{update\_\-route}}
\index{update\_\-route@{update\_\-route}!StaticRoutesNode@{StaticRoutesNode}}
\subsubsection[{update\_\-route}]{\setlength{\rightskip}{0pt plus 5cm}bool StaticRoutesNode::update\_\-route (
\begin{DoxyParamCaption}
\item[{const {\bf IfMgrIfTree} \&}]{iftree, }
\item[{{\bf StaticRoute} \&}]{route}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}private\mbox{]}}}}
\label{classStaticRoutesNode_a379aaa97cd700abb92481f6d8780738f}


Update a route received from \hyperlink{protocolthe-p}{the} user configuration. 

Currently, this method is a no-\/op.


\begin{DoxyParams}{Parameters}
{\em iftree} & \hyperlink{protocolthe-p}{the} tree with \hyperlink{protocolthe-p}{the} interface state to update \hyperlink{protocolthe-p}{the} route. \\
\hline
{\em route} & \hyperlink{protocolthe-p}{the} route to update. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
true if \hyperlink{protocolthe-p}{the} route was updated, otherwise false. 
\end{DoxyReturn}


The documentation for this class was generated from the following files:\begin{DoxyCompactItemize}
\item 
/home/greearb/git/xorp.ct.github/xorp/static\_\-routes/static\_\-routes\_\-node.hh\item 
/home/greearb/git/xorp.ct.github/xorp/static\_\-routes/static\_\-routes\_\-node.cc\end{DoxyCompactItemize}
