\hypertarget{classSummaryRouterLsa}{
\section{SummaryRouterLsa Class Reference}
\label{classSummaryRouterLsa}\index{SummaryRouterLsa@{SummaryRouterLsa}}
}


OSPFv2: Summary-\/LSA Type 4 OSPFv3: Inter-\/Area-\/Router-\/LSA.  




{\ttfamily \#include $<$lsa.hh$>$}

Inheritance diagram for SummaryRouterLsa:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=2.000000cm]{classSummaryRouterLsa}
\end{center}
\end{figure}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classSummaryRouterLsa_a1f0a02ab2583ceaa4762cffeeba12da6}{
{\bfseries SummaryRouterLsa} (\hyperlink{structOspfTypes_a60eb031df0c10af753789ae76b185ec2}{OspfTypes::Version} version)}
\label{classSummaryRouterLsa_a1f0a02ab2583ceaa4762cffeeba12da6}

\item 
\hypertarget{classSummaryRouterLsa_acaac115a88e2d38bac17d3254acedf10}{
{\bfseries SummaryRouterLsa} (\hyperlink{structOspfTypes_a60eb031df0c10af753789ae76b185ec2}{OspfTypes::Version} version, uint8\_\-t $\ast$buf, size\_\-t len)}
\label{classSummaryRouterLsa_acaac115a88e2d38bac17d3254acedf10}

\item 
size\_\-t \hyperlink{classSummaryRouterLsa_a78775d1207cd044db9571c9713a5ef86}{min\_\-length} () const 
\item 
uint16\_\-t \hyperlink{classSummaryRouterLsa_a155185f87d1f4c6c538cd0616cb47f5e}{get\_\-ls\_\-type} () const 
\begin{DoxyCompactList}\small\item\em It is \hyperlink{protocolthe-p}{the} responsibilty of \hyperlink{protocolthe-p}{the} derived type to return this information. \item\end{DoxyCompactList}\item 
\hyperlink{classref__ptr}{LsaRef} \hyperlink{classSummaryRouterLsa_aaaf0aac868eb1829524161c6353eeab7}{decode} (uint8\_\-t $\ast$buf, size\_\-t \&len) const   throw (InvalidPacket)
\begin{DoxyCompactList}\small\item\em Decode an LSA. \item\end{DoxyCompactList}\item 
bool \hyperlink{classSummaryRouterLsa_a69b5f1a47e52e617570b46edc33cf91e}{encode} ()
\begin{DoxyCompactList}\small\item\em Encode an LSA for transmission. \item\end{DoxyCompactList}\item 
\hypertarget{classSummaryRouterLsa_a3b5d93a551c28ad96d7bbc8a6ea4b40f}{
void {\bfseries set\_\-options} (uint32\_\-t options)}
\label{classSummaryRouterLsa_a3b5d93a551c28ad96d7bbc8a6ea4b40f}

\item 
\hypertarget{classSummaryRouterLsa_ae7168c6b999e97922d991c30d8643a48}{
uint32\_\-t {\bfseries get\_\-options} () const }
\label{classSummaryRouterLsa_ae7168c6b999e97922d991c30d8643a48}

\item 
\hypertarget{classSummaryRouterLsa_a6e033907c948dc062b409659a0ff53fd}{
void {\bfseries set\_\-metric} (uint32\_\-t metric)}
\label{classSummaryRouterLsa_a6e033907c948dc062b409659a0ff53fd}

\item 
\hypertarget{classSummaryRouterLsa_a247d458cfe5568422b102faafbe53c44}{
uint32\_\-t {\bfseries get\_\-metric} () const }
\label{classSummaryRouterLsa_a247d458cfe5568422b102faafbe53c44}

\item 
\hypertarget{classSummaryRouterLsa_a634210623452b3ed0713525cf4c9addf}{
void {\bfseries set\_\-network\_\-mask} (uint32\_\-t network\_\-mask)}
\label{classSummaryRouterLsa_a634210623452b3ed0713525cf4c9addf}

\item 
\hypertarget{classSummaryRouterLsa_afbb077bbf454ebcc91c9b2bbabc79e00}{
uint32\_\-t {\bfseries get\_\-network\_\-mask} () const }
\label{classSummaryRouterLsa_afbb077bbf454ebcc91c9b2bbabc79e00}

\item 
\hypertarget{classSummaryRouterLsa_a151eda5f4ea9ff20ef935e6ef745867b}{
void {\bfseries set\_\-destination\_\-id} (\hyperlink{structOspfTypes_a8fc36f0cbcee50cfdb0d10b192aaa53a}{OspfTypes::RouterID} destination\_\-id)}
\label{classSummaryRouterLsa_a151eda5f4ea9ff20ef935e6ef745867b}

\item 
\hypertarget{classSummaryRouterLsa_a62e844eb01c641b95816d37842ac6862}{
\hyperlink{structOspfTypes_a8fc36f0cbcee50cfdb0d10b192aaa53a}{OspfTypes::RouterID} {\bfseries get\_\-destination\_\-id} () const }
\label{classSummaryRouterLsa_a62e844eb01c641b95816d37842ac6862}

\item 
\hypertarget{classSummaryRouterLsa_a1c0d243e241942a3da924cf06b42071d}{
const char $\ast$ \hyperlink{classSummaryRouterLsa_a1c0d243e241942a3da924cf06b42071d}{name} () const }
\label{classSummaryRouterLsa_a1c0d243e241942a3da924cf06b42071d}

\begin{DoxyCompactList}\small\item\em Printable name of this LSA. \item\end{DoxyCompactList}\item 
\hypertarget{classSummaryRouterLsa_a8d44a73c353b17dd07bfc84a1261f7c6}{
string \hyperlink{classSummaryRouterLsa_a8d44a73c353b17dd07bfc84a1261f7c6}{str} () const }
\label{classSummaryRouterLsa_a8d44a73c353b17dd07bfc84a1261f7c6}

\begin{DoxyCompactList}\small\item\em Generate a printable representation. \item\end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Private Attributes}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classSummaryRouterLsa_afcd00cdad6b008ace6061cd75d9508fe}{
uint32\_\-t {\bfseries \_\-metric}}
\label{classSummaryRouterLsa_afcd00cdad6b008ace6061cd75d9508fe}

\item 
\hypertarget{classSummaryRouterLsa_a56667e014ec356e50577e2860dd2c07c}{
uint32\_\-t {\bfseries \_\-network\_\-mask}}
\label{classSummaryRouterLsa_a56667e014ec356e50577e2860dd2c07c}

\item 
\hypertarget{classSummaryRouterLsa_a25131cc45e5d51ce2c27b66290a0dec2}{
uint8\_\-t {\bfseries \_\-options}}
\label{classSummaryRouterLsa_a25131cc45e5d51ce2c27b66290a0dec2}

\item 
\hypertarget{classSummaryRouterLsa_ae4eb0d559c7a50746953edd4f34babe5}{
\hyperlink{structOspfTypes_a8fc36f0cbcee50cfdb0d10b192aaa53a}{OspfTypes::RouterID} {\bfseries \_\-destination\_\-id}}
\label{classSummaryRouterLsa_ae4eb0d559c7a50746953edd4f34babe5}

\end{DoxyCompactItemize}


\subsection{Detailed Description}
OSPFv2: Summary-\/LSA Type 4 OSPFv3: Inter-\/Area-\/Router-\/LSA. 

\subsection{Member Function Documentation}
\hypertarget{classSummaryRouterLsa_aaaf0aac868eb1829524161c6353eeab7}{
\index{SummaryRouterLsa@{SummaryRouterLsa}!decode@{decode}}
\index{decode@{decode}!SummaryRouterLsa@{SummaryRouterLsa}}
\subsubsection[{decode}]{\setlength{\rightskip}{0pt plus 5cm}{\bf Lsa::LsaRef} SummaryRouterLsa::decode (
\begin{DoxyParamCaption}
\item[{uint8\_\-t $\ast$}]{buf, }
\item[{size\_\-t \&}]{len}
\end{DoxyParamCaption}
) const  throw ({\bf InvalidPacket})\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}
\label{classSummaryRouterLsa_aaaf0aac868eb1829524161c6353eeab7}


Decode an LSA. 


\begin{DoxyParams}{Parameters}
{\em buf} & pointer to buffer. \\
\hline
{\em len} & length of \hyperlink{protocolthe-p}{the} buffer on input set to \hyperlink{protocolthe-p}{the} number of bytes consumed on output.\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
A reference to an LSA that manages its own memory. 
\end{DoxyReturn}


Implements \hyperlink{classLsa_a2658a7d54d470268138d15938be0f464}{Lsa}.

\hypertarget{classSummaryRouterLsa_a69b5f1a47e52e617570b46edc33cf91e}{
\index{SummaryRouterLsa@{SummaryRouterLsa}!encode@{encode}}
\index{encode@{encode}!SummaryRouterLsa@{SummaryRouterLsa}}
\subsubsection[{encode}]{\setlength{\rightskip}{0pt plus 5cm}bool SummaryRouterLsa::encode (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}
\label{classSummaryRouterLsa_a69b5f1a47e52e617570b46edc33cf91e}


Encode an LSA for transmission. 

\begin{DoxyReturn}{Returns}
True on success. 
\end{DoxyReturn}


Implements \hyperlink{classLsa_ae3bd3a0bd24ed458cc8ac8d7e91d1c35}{Lsa}.

\hypertarget{classSummaryRouterLsa_a155185f87d1f4c6c538cd0616cb47f5e}{
\index{SummaryRouterLsa@{SummaryRouterLsa}!get\_\-ls\_\-type@{get\_\-ls\_\-type}}
\index{get\_\-ls\_\-type@{get\_\-ls\_\-type}!SummaryRouterLsa@{SummaryRouterLsa}}
\subsubsection[{get\_\-ls\_\-type}]{\setlength{\rightskip}{0pt plus 5cm}uint16\_\-t SummaryRouterLsa::get\_\-ls\_\-type (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline, virtual\mbox{]}}}}
\label{classSummaryRouterLsa_a155185f87d1f4c6c538cd0616cb47f5e}


It is \hyperlink{protocolthe-p}{the} responsibilty of \hyperlink{protocolthe-p}{the} derived type to return this information. 

\begin{DoxyReturn}{Returns}
The type this lsa represents. 
\end{DoxyReturn}


Implements \hyperlink{classLsa_a0dcc648678ac88856635609a17029ae9}{Lsa}.

\hypertarget{classSummaryRouterLsa_a78775d1207cd044db9571c9713a5ef86}{
\index{SummaryRouterLsa@{SummaryRouterLsa}!min\_\-length@{min\_\-length}}
\index{min\_\-length@{min\_\-length}!SummaryRouterLsa@{SummaryRouterLsa}}
\subsubsection[{min\_\-length}]{\setlength{\rightskip}{0pt plus 5cm}size\_\-t SummaryRouterLsa::min\_\-length (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline, virtual\mbox{]}}}}
\label{classSummaryRouterLsa_a78775d1207cd044db9571c9713a5ef86}
\begin{DoxyReturn}{Returns}
\hyperlink{protocolthe-p}{the} minimum length of a RouterLSA. 
\end{DoxyReturn}


Implements \hyperlink{classLsa_ad3324ea3bfa81ff90d15690c5ccbd1e4}{Lsa}.



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