\hypertarget{classProtoUnit}{
\section{ProtoUnit Class Reference}
\label{classProtoUnit}\index{ProtoUnit@{ProtoUnit}}
}


Base class for each protocol unit (node, vif, etc).  




{\ttfamily \#include $<$proto\_\-unit.hh$>$}

Inheritance diagram for ProtoUnit:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=12.000000cm]{classProtoUnit}
\end{center}
\end{figure}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hyperlink{classProtoUnit_a281d142e347e97824b48ada5ef70d373}{ProtoUnit} (int init\_\-family, xorp\_\-module\_\-id init\_\-module\_\-id)
\begin{DoxyCompactList}\small\item\em Constructor for a given address family and module ID. \item\end{DoxyCompactList}\item 
\hypertarget{classProtoUnit_a4f1c32818977add6a1b0a99f7459ce1c}{
virtual \hyperlink{classProtoUnit_a4f1c32818977add6a1b0a99f7459ce1c}{$\sim$ProtoUnit} ()}
\label{classProtoUnit_a4f1c32818977add6a1b0a99f7459ce1c}

\begin{DoxyCompactList}\small\item\em Destructor. \item\end{DoxyCompactList}\item 
int \hyperlink{classProtoUnit_a955a2dfb148d0d546c7de9f0f684025c}{family} () const 
\begin{DoxyCompactList}\small\item\em Get \hyperlink{protocolthe-p}{the} address family. \item\end{DoxyCompactList}\item 
xorp\_\-module\_\-id \hyperlink{classProtoUnit_a6c3ed79629f529564ef30cab7158036b}{module\_\-id} () const 
\begin{DoxyCompactList}\small\item\em Get \hyperlink{protocolthe-p}{the} module ID. \item\end{DoxyCompactList}\item 
int \hyperlink{classProtoUnit_a5b64bc1057c3a6c244feeb010789df51}{proto\_\-version} () const 
\begin{DoxyCompactList}\small\item\em Get \hyperlink{protocolthe-p}{the} current protocol version. \item\end{DoxyCompactList}\item 
void \hyperlink{classProtoUnit_a166291900c1e79e8af1121a178082693}{set\_\-proto\_\-version} (int v)
\begin{DoxyCompactList}\small\item\em Set \hyperlink{protocolthe-p}{the} current protocol version. \item\end{DoxyCompactList}\item 
int \hyperlink{classProtoUnit_afbf45a73759b7eafe3eeccc06a1b6ad4}{proto\_\-version\_\-default} () const 
\begin{DoxyCompactList}\small\item\em Get \hyperlink{protocolthe-p}{the} default protocol version. \item\end{DoxyCompactList}\item 
void \hyperlink{classProtoUnit_ab228b2318a99a11862a6aaafd34c4511}{set\_\-proto\_\-version\_\-default} (int v)
\begin{DoxyCompactList}\small\item\em Set \hyperlink{protocolthe-p}{the} default protocol version. \item\end{DoxyCompactList}\item 
bool \hyperlink{classProtoUnit_aa71f3a5e8f711db92fbf17679896cb42}{is\_\-ipv4} () const 
\begin{DoxyCompactList}\small\item\em Test if \hyperlink{protocolthe-p}{the} address family of \hyperlink{protocolthe-p}{the} unit is \hyperlink{classIPv4}{IPv4}. \item\end{DoxyCompactList}\item 
bool \hyperlink{classProtoUnit_a93c09df1b48af2cac87e4228bc4d29af}{is\_\-ipv6} () const 
\begin{DoxyCompactList}\small\item\em Test if \hyperlink{protocolthe-p}{the} address family of \hyperlink{protocolthe-p}{the} unit is \hyperlink{classIPv6}{IPv6}. \item\end{DoxyCompactList}\item 
const char $\ast$ \hyperlink{classProtoUnit_a2994058c087482033740c48ee264801b}{module\_\-name} () const 
\begin{DoxyCompactList}\small\item\em Get \hyperlink{protocolthe-p}{the} module name. \item\end{DoxyCompactList}\item 
int \hyperlink{classProtoUnit_a3aab215075b8fdce46df4a7defbb6dac}{comm\_\-handler} () const 
\begin{DoxyCompactList}\small\item\em Get \hyperlink{protocolthe-p}{the} communication handler for this unit. \item\end{DoxyCompactList}\item 
void \hyperlink{classProtoUnit_a383d75e40122dd15bece52a0a7df1907}{set\_\-comm\_\-handler} (int v)
\begin{DoxyCompactList}\small\item\em Set \hyperlink{protocolthe-p}{the} communication handler for this unit. \item\end{DoxyCompactList}\item 
bool \hyperlink{classProtoUnit_af8463406a2ad258821a7da1796db9148}{proto\_\-is\_\-mld6igmp} () const 
\begin{DoxyCompactList}\small\item\em Test if \hyperlink{protocolthe-p}{the} protocol is MLD6 or IGMP. \item\end{DoxyCompactList}\item 
bool \hyperlink{classProtoUnit_a1ad782c44c505214e65984989bd89056}{proto\_\-is\_\-igmp} () const 
\begin{DoxyCompactList}\small\item\em Test if \hyperlink{protocolthe-p}{the} protocol is IGMP. \item\end{DoxyCompactList}\item 
bool \hyperlink{classProtoUnit_a776d1429dd1c801b35a3e16da68ef935}{proto\_\-is\_\-mld6} () const 
\begin{DoxyCompactList}\small\item\em Test if \hyperlink{protocolthe-p}{the} protocol is MLD6. \item\end{DoxyCompactList}\item 
bool \hyperlink{classProtoUnit_a6a1098700a6b202f25f5959c11c3c109}{proto\_\-is\_\-pimsm} () const 
\begin{DoxyCompactList}\small\item\em Test if \hyperlink{protocolthe-p}{the} protocol is PIM-\/SM. \item\end{DoxyCompactList}\item 
bool \hyperlink{classProtoUnit_a6703e2b250d56e9cd9c29699a2a65dcc}{proto\_\-is\_\-pimdm} () const 
\begin{DoxyCompactList}\small\item\em Test if \hyperlink{protocolthe-p}{the} protocol is PIM-\/DM. \item\end{DoxyCompactList}\item 
bool \hyperlink{classProtoUnit_ac7586158118f8ef504cedeb4329916e3}{proto\_\-is\_\-bgmp} () const 
\begin{DoxyCompactList}\small\item\em Test if \hyperlink{protocolthe-p}{the} protocol is BGMP. \item\end{DoxyCompactList}\item 
bool \hyperlink{classProtoUnit_aa1f61df309e7246f1fa51fe90adb1938}{proto\_\-is\_\-bgp} () const 
\begin{DoxyCompactList}\small\item\em Test if \hyperlink{protocolthe-p}{the} protocol is BGP. \item\end{DoxyCompactList}\item 
bool \hyperlink{classProtoUnit_a8ce56f7514fda76080beafb39473bb40}{proto\_\-is\_\-ospf} () const 
\begin{DoxyCompactList}\small\item\em Test if \hyperlink{protocolthe-p}{the} protocol is OSPF. \item\end{DoxyCompactList}\item 
bool \hyperlink{classProtoUnit_a87123ff34249ecd0f34657293d073d83}{proto\_\-is\_\-rip} () const 
\begin{DoxyCompactList}\small\item\em Test if \hyperlink{protocolthe-p}{the} protocol is RIP. \item\end{DoxyCompactList}\item 
bool \hyperlink{classProtoUnit_a8322b9d66082370eb2dad64afe4506d2}{proto\_\-is\_\-static\_\-routes} () const 
\begin{DoxyCompactList}\small\item\em Test if \hyperlink{protocolthe-p}{the} protocol is StaticRoutes. \item\end{DoxyCompactList}\item 
bool \hyperlink{classProtoUnit_a0c84394c8cd50d86d1ee0cfc6d4ddeb5}{proto\_\-is\_\-fib2mrib} () const 
\begin{DoxyCompactList}\small\item\em Test if \hyperlink{protocolthe-p}{the} protocol is Fib2mrib. \item\end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Private Attributes}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classProtoUnit_a2f8270bdeb5ebed41672d7708728e602}{
int {\bfseries \_\-family}}
\label{classProtoUnit_a2f8270bdeb5ebed41672d7708728e602}

\item 
\hypertarget{classProtoUnit_a97e5cf7b2ba501872902a4ea7d471145}{
xorp\_\-module\_\-id {\bfseries \_\-module\_\-id}}
\label{classProtoUnit_a97e5cf7b2ba501872902a4ea7d471145}

\item 
\hypertarget{classProtoUnit_ae4c51ad710405496b5f24c3759391b9e}{
int {\bfseries \_\-comm\_\-handler}}
\label{classProtoUnit_ae4c51ad710405496b5f24c3759391b9e}

\item 
\hypertarget{classProtoUnit_ad225c2b6db9211dd441cc64516a80089}{
int {\bfseries \_\-proto\_\-version}}
\label{classProtoUnit_ad225c2b6db9211dd441cc64516a80089}

\item 
\hypertarget{classProtoUnit_ab23e89ff98999c7d0d3f733d27e66360}{
int {\bfseries \_\-proto\_\-version\_\-default}}
\label{classProtoUnit_ab23e89ff98999c7d0d3f733d27e66360}

\item 
\hypertarget{classProtoUnit_a7a89b685caa80bdb5cc627d894d55257}{
string {\bfseries \_\-module\_\-name}}
\label{classProtoUnit_a7a89b685caa80bdb5cc627d894d55257}

\end{DoxyCompactItemize}


\subsection{Detailed Description}
Base class for each protocol unit (node, vif, etc). 

\subsection{Constructor \& Destructor Documentation}
\hypertarget{classProtoUnit_a281d142e347e97824b48ada5ef70d373}{
\index{ProtoUnit@{ProtoUnit}!ProtoUnit@{ProtoUnit}}
\index{ProtoUnit@{ProtoUnit}!ProtoUnit@{ProtoUnit}}
\subsubsection[{ProtoUnit}]{\setlength{\rightskip}{0pt plus 5cm}ProtoUnit::ProtoUnit (
\begin{DoxyParamCaption}
\item[{int}]{init\_\-family, }
\item[{xorp\_\-module\_\-id}]{init\_\-module\_\-id}
\end{DoxyParamCaption}
)}}
\label{classProtoUnit_a281d142e347e97824b48ada5ef70d373}


Constructor for a given address family and module ID. 

\hyperlink{classProtoUnit_a281d142e347e97824b48ada5ef70d373}{ProtoUnit::ProtoUnit}: : The address family (AF\_\-INET or AF\_\-INET6 for \hyperlink{classIPv4}{IPv4} and \hyperlink{classIPv6}{IPv6} respectively).


\begin{DoxyParams}{Parameters}
{\em init\_\-family} & \hyperlink{protocolthe-p}{the} address family. \\
\hline
{\em init\_\-module\_\-id} & \hyperlink{protocolthe-p}{the} module ID (xorp\_\-module\_\-id).\\
\hline
\end{DoxyParams}
: The module ID (XORP\_\-MODULE\_\-$\ast$).

Proto unit constructor. 

\subsection{Member Function Documentation}
\hypertarget{classProtoUnit_a3aab215075b8fdce46df4a7defbb6dac}{
\index{ProtoUnit@{ProtoUnit}!comm\_\-handler@{comm\_\-handler}}
\index{comm\_\-handler@{comm\_\-handler}!ProtoUnit@{ProtoUnit}}
\subsubsection[{comm\_\-handler}]{\setlength{\rightskip}{0pt plus 5cm}int ProtoUnit::comm\_\-handler (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{classProtoUnit_a3aab215075b8fdce46df4a7defbb6dac}


Get \hyperlink{protocolthe-p}{the} communication handler for this unit. 

Note: currently, \hyperlink{protocolthe-p}{the} purpose of \hyperlink{protocolthe-p}{the} communication handler is undefined.

\begin{DoxyReturn}{Returns}
\hyperlink{protocolthe-p}{the} communication handler for this unit. 
\end{DoxyReturn}
\hypertarget{classProtoUnit_a955a2dfb148d0d546c7de9f0f684025c}{
\index{ProtoUnit@{ProtoUnit}!family@{family}}
\index{family@{family}!ProtoUnit@{ProtoUnit}}
\subsubsection[{family}]{\setlength{\rightskip}{0pt plus 5cm}int ProtoUnit::family (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{classProtoUnit_a955a2dfb148d0d546c7de9f0f684025c}


Get \hyperlink{protocolthe-p}{the} address family. 

\begin{DoxyReturn}{Returns}
\hyperlink{protocolthe-p}{the} address family (e.g., AF\_\-INET or AF\_\-INET6 for \hyperlink{classIPv4}{IPv4} and \hyperlink{classIPv6}{IPv6} respectively). 
\end{DoxyReturn}


Reimplemented in \hyperlink{classXrlMld6igmpNode_a0af81704402f452373c631360138ade8}{XrlMld6igmpNode}, \hyperlink{classXrlMfeaNode_a9e7937cabe583558aec40b4d59ec12c6}{XrlMfeaNode}, \hyperlink{classXrlMld6igmpNode_a0af81704402f452373c631360138ade8}{XrlMld6igmpNode}, and \hyperlink{classXrlPimNode_a8b39e8ef336695684fe24d302e564802}{XrlPimNode}.

\hypertarget{classProtoUnit_aa71f3a5e8f711db92fbf17679896cb42}{
\index{ProtoUnit@{ProtoUnit}!is\_\-ipv4@{is\_\-ipv4}}
\index{is\_\-ipv4@{is\_\-ipv4}!ProtoUnit@{ProtoUnit}}
\subsubsection[{is\_\-ipv4}]{\setlength{\rightskip}{0pt plus 5cm}bool ProtoUnit::is\_\-ipv4 (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{classProtoUnit_aa71f3a5e8f711db92fbf17679896cb42}


Test if \hyperlink{protocolthe-p}{the} address family of \hyperlink{protocolthe-p}{the} unit is \hyperlink{classIPv4}{IPv4}. 

\begin{DoxyReturn}{Returns}
true if \hyperlink{protocolthe-p}{the} address family of \hyperlink{protocolthe-p}{the} unit is \hyperlink{classIPv4}{IPv4}. 
\end{DoxyReturn}
\hypertarget{classProtoUnit_a93c09df1b48af2cac87e4228bc4d29af}{
\index{ProtoUnit@{ProtoUnit}!is\_\-ipv6@{is\_\-ipv6}}
\index{is\_\-ipv6@{is\_\-ipv6}!ProtoUnit@{ProtoUnit}}
\subsubsection[{is\_\-ipv6}]{\setlength{\rightskip}{0pt plus 5cm}bool ProtoUnit::is\_\-ipv6 (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{classProtoUnit_a93c09df1b48af2cac87e4228bc4d29af}


Test if \hyperlink{protocolthe-p}{the} address family of \hyperlink{protocolthe-p}{the} unit is \hyperlink{classIPv6}{IPv6}. 

\begin{DoxyReturn}{Returns}
true if \hyperlink{protocolthe-p}{the} address family of \hyperlink{protocolthe-p}{the} unit is \hyperlink{classIPv6}{IPv6}. 
\end{DoxyReturn}
\hypertarget{classProtoUnit_a6c3ed79629f529564ef30cab7158036b}{
\index{ProtoUnit@{ProtoUnit}!module\_\-id@{module\_\-id}}
\index{module\_\-id@{module\_\-id}!ProtoUnit@{ProtoUnit}}
\subsubsection[{module\_\-id}]{\setlength{\rightskip}{0pt plus 5cm}xorp\_\-module\_\-id ProtoUnit::module\_\-id (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{classProtoUnit_a6c3ed79629f529564ef30cab7158036b}


Get \hyperlink{protocolthe-p}{the} module ID. 

\begin{DoxyReturn}{Returns}
\hyperlink{protocolthe-p}{the} module ID (xorp\_\-module\_\-id). 
\end{DoxyReturn}
\hypertarget{classProtoUnit_a2994058c087482033740c48ee264801b}{
\index{ProtoUnit@{ProtoUnit}!module\_\-name@{module\_\-name}}
\index{module\_\-name@{module\_\-name}!ProtoUnit@{ProtoUnit}}
\subsubsection[{module\_\-name}]{\setlength{\rightskip}{0pt plus 5cm}const char$\ast$ ProtoUnit::module\_\-name (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{classProtoUnit_a2994058c087482033740c48ee264801b}


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

TODO: temporary, all names are listed in \char`\"{}\_\-xorp\_\-module\_\-name\mbox{[}$\,$\mbox{]}\mbox{[}$\,$\mbox{]}\char`\"{} in proto\_\-unit.cc.

\begin{DoxyReturn}{Returns}
C-\/style string with \hyperlink{protocolthe-p}{the} module name. 
\end{DoxyReturn}
\hypertarget{classProtoUnit_ac7586158118f8ef504cedeb4329916e3}{
\index{ProtoUnit@{ProtoUnit}!proto\_\-is\_\-bgmp@{proto\_\-is\_\-bgmp}}
\index{proto\_\-is\_\-bgmp@{proto\_\-is\_\-bgmp}!ProtoUnit@{ProtoUnit}}
\subsubsection[{proto\_\-is\_\-bgmp}]{\setlength{\rightskip}{0pt plus 5cm}bool ProtoUnit::proto\_\-is\_\-bgmp (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{classProtoUnit_ac7586158118f8ef504cedeb4329916e3}


Test if \hyperlink{protocolthe-p}{the} protocol is BGMP. 

\begin{DoxyReturn}{Returns}
true if \hyperlink{protocolthe-p}{the} protocol is BGMP. 
\end{DoxyReturn}
\hypertarget{classProtoUnit_aa1f61df309e7246f1fa51fe90adb1938}{
\index{ProtoUnit@{ProtoUnit}!proto\_\-is\_\-bgp@{proto\_\-is\_\-bgp}}
\index{proto\_\-is\_\-bgp@{proto\_\-is\_\-bgp}!ProtoUnit@{ProtoUnit}}
\subsubsection[{proto\_\-is\_\-bgp}]{\setlength{\rightskip}{0pt plus 5cm}bool ProtoUnit::proto\_\-is\_\-bgp (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{classProtoUnit_aa1f61df309e7246f1fa51fe90adb1938}


Test if \hyperlink{protocolthe-p}{the} protocol is BGP. 

\begin{DoxyReturn}{Returns}
true if \hyperlink{protocolthe-p}{the} protocol is BGP. 
\end{DoxyReturn}
\hypertarget{classProtoUnit_a0c84394c8cd50d86d1ee0cfc6d4ddeb5}{
\index{ProtoUnit@{ProtoUnit}!proto\_\-is\_\-fib2mrib@{proto\_\-is\_\-fib2mrib}}
\index{proto\_\-is\_\-fib2mrib@{proto\_\-is\_\-fib2mrib}!ProtoUnit@{ProtoUnit}}
\subsubsection[{proto\_\-is\_\-fib2mrib}]{\setlength{\rightskip}{0pt plus 5cm}bool ProtoUnit::proto\_\-is\_\-fib2mrib (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{classProtoUnit_a0c84394c8cd50d86d1ee0cfc6d4ddeb5}


Test if \hyperlink{protocolthe-p}{the} protocol is Fib2mrib. 

\begin{DoxyReturn}{Returns}
true if \hyperlink{protocolthe-p}{the} protocol is Fib2mrib 
\end{DoxyReturn}
\hypertarget{classProtoUnit_a1ad782c44c505214e65984989bd89056}{
\index{ProtoUnit@{ProtoUnit}!proto\_\-is\_\-igmp@{proto\_\-is\_\-igmp}}
\index{proto\_\-is\_\-igmp@{proto\_\-is\_\-igmp}!ProtoUnit@{ProtoUnit}}
\subsubsection[{proto\_\-is\_\-igmp}]{\setlength{\rightskip}{0pt plus 5cm}bool ProtoUnit::proto\_\-is\_\-igmp (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{classProtoUnit_a1ad782c44c505214e65984989bd89056}


Test if \hyperlink{protocolthe-p}{the} protocol is IGMP. 

\begin{DoxyReturn}{Returns}
true if \hyperlink{protocolthe-p}{the} protocol is IGMP. 
\end{DoxyReturn}
\hypertarget{classProtoUnit_a776d1429dd1c801b35a3e16da68ef935}{
\index{ProtoUnit@{ProtoUnit}!proto\_\-is\_\-mld6@{proto\_\-is\_\-mld6}}
\index{proto\_\-is\_\-mld6@{proto\_\-is\_\-mld6}!ProtoUnit@{ProtoUnit}}
\subsubsection[{proto\_\-is\_\-mld6}]{\setlength{\rightskip}{0pt plus 5cm}bool ProtoUnit::proto\_\-is\_\-mld6 (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{classProtoUnit_a776d1429dd1c801b35a3e16da68ef935}


Test if \hyperlink{protocolthe-p}{the} protocol is MLD6. 

\begin{DoxyReturn}{Returns}
true if \hyperlink{protocolthe-p}{the} protocol is MLD6. 
\end{DoxyReturn}
\hypertarget{classProtoUnit_af8463406a2ad258821a7da1796db9148}{
\index{ProtoUnit@{ProtoUnit}!proto\_\-is\_\-mld6igmp@{proto\_\-is\_\-mld6igmp}}
\index{proto\_\-is\_\-mld6igmp@{proto\_\-is\_\-mld6igmp}!ProtoUnit@{ProtoUnit}}
\subsubsection[{proto\_\-is\_\-mld6igmp}]{\setlength{\rightskip}{0pt plus 5cm}bool ProtoUnit::proto\_\-is\_\-mld6igmp (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{classProtoUnit_af8463406a2ad258821a7da1796db9148}


Test if \hyperlink{protocolthe-p}{the} protocol is MLD6 or IGMP. 

\begin{DoxyReturn}{Returns}
true if \hyperlink{protocolthe-p}{the} protocol is MLD6 or IGMP. 
\end{DoxyReturn}
\hypertarget{classProtoUnit_a8ce56f7514fda76080beafb39473bb40}{
\index{ProtoUnit@{ProtoUnit}!proto\_\-is\_\-ospf@{proto\_\-is\_\-ospf}}
\index{proto\_\-is\_\-ospf@{proto\_\-is\_\-ospf}!ProtoUnit@{ProtoUnit}}
\subsubsection[{proto\_\-is\_\-ospf}]{\setlength{\rightskip}{0pt plus 5cm}bool ProtoUnit::proto\_\-is\_\-ospf (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{classProtoUnit_a8ce56f7514fda76080beafb39473bb40}


Test if \hyperlink{protocolthe-p}{the} protocol is OSPF. 

\begin{DoxyReturn}{Returns}
true if \hyperlink{protocolthe-p}{the} protocol is OSPF. 
\end{DoxyReturn}
\hypertarget{classProtoUnit_a6703e2b250d56e9cd9c29699a2a65dcc}{
\index{ProtoUnit@{ProtoUnit}!proto\_\-is\_\-pimdm@{proto\_\-is\_\-pimdm}}
\index{proto\_\-is\_\-pimdm@{proto\_\-is\_\-pimdm}!ProtoUnit@{ProtoUnit}}
\subsubsection[{proto\_\-is\_\-pimdm}]{\setlength{\rightskip}{0pt plus 5cm}bool ProtoUnit::proto\_\-is\_\-pimdm (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{classProtoUnit_a6703e2b250d56e9cd9c29699a2a65dcc}


Test if \hyperlink{protocolthe-p}{the} protocol is PIM-\/DM. 

\begin{DoxyReturn}{Returns}
true if \hyperlink{protocolthe-p}{the} protocol is PIM-\/DM. 
\end{DoxyReturn}
\hypertarget{classProtoUnit_a6a1098700a6b202f25f5959c11c3c109}{
\index{ProtoUnit@{ProtoUnit}!proto\_\-is\_\-pimsm@{proto\_\-is\_\-pimsm}}
\index{proto\_\-is\_\-pimsm@{proto\_\-is\_\-pimsm}!ProtoUnit@{ProtoUnit}}
\subsubsection[{proto\_\-is\_\-pimsm}]{\setlength{\rightskip}{0pt plus 5cm}bool ProtoUnit::proto\_\-is\_\-pimsm (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{classProtoUnit_a6a1098700a6b202f25f5959c11c3c109}


Test if \hyperlink{protocolthe-p}{the} protocol is PIM-\/SM. 

\begin{DoxyReturn}{Returns}
true if \hyperlink{protocolthe-p}{the} protocol is PIM-\/SM. 
\end{DoxyReturn}
\hypertarget{classProtoUnit_a87123ff34249ecd0f34657293d073d83}{
\index{ProtoUnit@{ProtoUnit}!proto\_\-is\_\-rip@{proto\_\-is\_\-rip}}
\index{proto\_\-is\_\-rip@{proto\_\-is\_\-rip}!ProtoUnit@{ProtoUnit}}
\subsubsection[{proto\_\-is\_\-rip}]{\setlength{\rightskip}{0pt plus 5cm}bool ProtoUnit::proto\_\-is\_\-rip (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{classProtoUnit_a87123ff34249ecd0f34657293d073d83}


Test if \hyperlink{protocolthe-p}{the} protocol is RIP. 

\begin{DoxyReturn}{Returns}
true if \hyperlink{protocolthe-p}{the} protocol is RIP. 
\end{DoxyReturn}
\hypertarget{classProtoUnit_a8322b9d66082370eb2dad64afe4506d2}{
\index{ProtoUnit@{ProtoUnit}!proto\_\-is\_\-static\_\-routes@{proto\_\-is\_\-static\_\-routes}}
\index{proto\_\-is\_\-static\_\-routes@{proto\_\-is\_\-static\_\-routes}!ProtoUnit@{ProtoUnit}}
\subsubsection[{proto\_\-is\_\-static\_\-routes}]{\setlength{\rightskip}{0pt plus 5cm}bool ProtoUnit::proto\_\-is\_\-static\_\-routes (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{classProtoUnit_a8322b9d66082370eb2dad64afe4506d2}


Test if \hyperlink{protocolthe-p}{the} protocol is StaticRoutes. 

\begin{DoxyReturn}{Returns}
true if \hyperlink{protocolthe-p}{the} protocol is StaticRoutes 
\end{DoxyReturn}
\hypertarget{classProtoUnit_a5b64bc1057c3a6c244feeb010789df51}{
\index{ProtoUnit@{ProtoUnit}!proto\_\-version@{proto\_\-version}}
\index{proto\_\-version@{proto\_\-version}!ProtoUnit@{ProtoUnit}}
\subsubsection[{proto\_\-version}]{\setlength{\rightskip}{0pt plus 5cm}int ProtoUnit::proto\_\-version (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{classProtoUnit_a5b64bc1057c3a6c244feeb010789df51}


Get \hyperlink{protocolthe-p}{the} current protocol version. 

\begin{DoxyReturn}{Returns}
\hyperlink{protocolthe-p}{the} current protocol version. 
\end{DoxyReturn}
\hypertarget{classProtoUnit_afbf45a73759b7eafe3eeccc06a1b6ad4}{
\index{ProtoUnit@{ProtoUnit}!proto\_\-version\_\-default@{proto\_\-version\_\-default}}
\index{proto\_\-version\_\-default@{proto\_\-version\_\-default}!ProtoUnit@{ProtoUnit}}
\subsubsection[{proto\_\-version\_\-default}]{\setlength{\rightskip}{0pt plus 5cm}int ProtoUnit::proto\_\-version\_\-default (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{classProtoUnit_afbf45a73759b7eafe3eeccc06a1b6ad4}


Get \hyperlink{protocolthe-p}{the} default protocol version. 

\begin{DoxyReturn}{Returns}
\hyperlink{protocolthe-p}{the} default protocol version. 
\end{DoxyReturn}
\hypertarget{classProtoUnit_a383d75e40122dd15bece52a0a7df1907}{
\index{ProtoUnit@{ProtoUnit}!set\_\-comm\_\-handler@{set\_\-comm\_\-handler}}
\index{set\_\-comm\_\-handler@{set\_\-comm\_\-handler}!ProtoUnit@{ProtoUnit}}
\subsubsection[{set\_\-comm\_\-handler}]{\setlength{\rightskip}{0pt plus 5cm}void ProtoUnit::set\_\-comm\_\-handler (
\begin{DoxyParamCaption}
\item[{int}]{v}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{classProtoUnit_a383d75e40122dd15bece52a0a7df1907}


Set \hyperlink{protocolthe-p}{the} communication handler for this unit. 


\begin{DoxyParams}{Parameters}
{\em v} & \hyperlink{protocolthe-p}{the} communication handler to set for this unit. \\
\hline
\end{DoxyParams}
\hypertarget{classProtoUnit_a166291900c1e79e8af1121a178082693}{
\index{ProtoUnit@{ProtoUnit}!set\_\-proto\_\-version@{set\_\-proto\_\-version}}
\index{set\_\-proto\_\-version@{set\_\-proto\_\-version}!ProtoUnit@{ProtoUnit}}
\subsubsection[{set\_\-proto\_\-version}]{\setlength{\rightskip}{0pt plus 5cm}void ProtoUnit::set\_\-proto\_\-version (
\begin{DoxyParamCaption}
\item[{int}]{v}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{classProtoUnit_a166291900c1e79e8af1121a178082693}


Set \hyperlink{protocolthe-p}{the} current protocol version. 


\begin{DoxyParams}{Parameters}
{\em v} & \hyperlink{protocolthe-p}{the} protocol version. \\
\hline
\end{DoxyParams}


Reimplemented in \hyperlink{classMld6igmpVif_a59529e8b1c47a60993167a6d6f718c96}{Mld6igmpVif}, \hyperlink{classMld6igmpVif_a59529e8b1c47a60993167a6d6f718c96}{Mld6igmpVif}, and \hyperlink{classPimVif_a0880009de4536966ef9e1eff12371564}{PimVif}.

\hypertarget{classProtoUnit_ab228b2318a99a11862a6aaafd34c4511}{
\index{ProtoUnit@{ProtoUnit}!set\_\-proto\_\-version\_\-default@{set\_\-proto\_\-version\_\-default}}
\index{set\_\-proto\_\-version\_\-default@{set\_\-proto\_\-version\_\-default}!ProtoUnit@{ProtoUnit}}
\subsubsection[{set\_\-proto\_\-version\_\-default}]{\setlength{\rightskip}{0pt plus 5cm}void ProtoUnit::set\_\-proto\_\-version\_\-default (
\begin{DoxyParamCaption}
\item[{int}]{v}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{classProtoUnit_ab228b2318a99a11862a6aaafd34c4511}


Set \hyperlink{protocolthe-p}{the} default protocol version. 


\begin{DoxyParams}{Parameters}
{\em v} & \hyperlink{protocolthe-p}{the} default protocol version. \\
\hline
\end{DoxyParams}


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