\hypertarget{classDataDescriptionPacket}{
\section{DataDescriptionPacket Class Reference}
\label{classDataDescriptionPacket}\index{DataDescriptionPacket@{DataDescriptionPacket}}
}


Database Description \hyperlink{classPacket}{Packet}.  




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

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

\item 
\hyperlink{structOspfTypes_abe52a1f48e880751028d473f6a9f780d}{OspfTypes::Type} \hyperlink{classDataDescriptionPacket_a1670258f487b852f95603125ed9a33d7}{get\_\-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 
\hypertarget{classDataDescriptionPacket_a1684bd895c62a446304589d3586186de}{
size\_\-t {\bfseries minimum\_\-length} () const }
\label{classDataDescriptionPacket_a1684bd895c62a446304589d3586186de}

\item 
\hyperlink{classPacket}{Packet} $\ast$ \hyperlink{classDataDescriptionPacket_a06da9e1f6873282ef5df6925f7c38349}{decode} (uint8\_\-t $\ast$ptr, size\_\-t len) const   throw (InvalidPacket)
\begin{DoxyCompactList}\small\item\em Decode \hyperlink{protocolthe-p}{the} packet. \item\end{DoxyCompactList}\item 
bool \hyperlink{classDataDescriptionPacket_a2f396fbb35014043efaa072ef70a2a03}{encode} (vector$<$ uint8\_\-t $>$ \&pkt)
\begin{DoxyCompactList}\small\item\em Encode \hyperlink{protocolthe-p}{the} packet. \item\end{DoxyCompactList}\item 
\hypertarget{classDataDescriptionPacket_ac17336ab2e7b404d8ffbf4f85463662d}{
void {\bfseries set\_\-interface\_\-mtu} (uint16\_\-t mtu)}
\label{classDataDescriptionPacket_ac17336ab2e7b404d8ffbf4f85463662d}

\item 
\hypertarget{classDataDescriptionPacket_a135e44ca03bb885479f3e0cf6ce1048a}{
uint16\_\-t {\bfseries get\_\-interface\_\-mtu} () const }
\label{classDataDescriptionPacket_a135e44ca03bb885479f3e0cf6ce1048a}

\item 
\hypertarget{classDataDescriptionPacket_a8d9f0164884354e80bfe64b04e95d504}{
void {\bfseries set\_\-options} (uint32\_\-t options)}
\label{classDataDescriptionPacket_a8d9f0164884354e80bfe64b04e95d504}

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

\item 
\hypertarget{classDataDescriptionPacket_a05e4b5da8c4beb7f8cb929bbace94ed4}{
void {\bfseries set\_\-i\_\-bit} (bool bit)}
\label{classDataDescriptionPacket_a05e4b5da8c4beb7f8cb929bbace94ed4}

\item 
\hypertarget{classDataDescriptionPacket_ac3ba8de65e3b32aada81d0cee4062ab9}{
bool {\bfseries get\_\-i\_\-bit} () const }
\label{classDataDescriptionPacket_ac3ba8de65e3b32aada81d0cee4062ab9}

\item 
\hypertarget{classDataDescriptionPacket_afe0b01a4fee97513a593a55bf97128ae}{
void {\bfseries set\_\-m\_\-bit} (bool bit)}
\label{classDataDescriptionPacket_afe0b01a4fee97513a593a55bf97128ae}

\item 
\hypertarget{classDataDescriptionPacket_a7cba9f965868128ec77979d1f0af32e5}{
bool {\bfseries get\_\-m\_\-bit} () const }
\label{classDataDescriptionPacket_a7cba9f965868128ec77979d1f0af32e5}

\item 
\hypertarget{classDataDescriptionPacket_a152d4deca26ba3c04ee0e69f9d3b90c1}{
void {\bfseries set\_\-ms\_\-bit} (bool bit)}
\label{classDataDescriptionPacket_a152d4deca26ba3c04ee0e69f9d3b90c1}

\item 
\hypertarget{classDataDescriptionPacket_ab5c3e85003ccecfd25cb2d558adc1879}{
bool {\bfseries get\_\-ms\_\-bit} () const }
\label{classDataDescriptionPacket_ab5c3e85003ccecfd25cb2d558adc1879}

\item 
\hypertarget{classDataDescriptionPacket_a8be0bc83dd73f4c6ea5fc6e4c94903ad}{
void {\bfseries set\_\-dd\_\-seqno} (uint32\_\-t seqno)}
\label{classDataDescriptionPacket_a8be0bc83dd73f4c6ea5fc6e4c94903ad}

\item 
\hypertarget{classDataDescriptionPacket_a9cb1864b3c708bb6a54660c0429fd066}{
uint32\_\-t {\bfseries get\_\-dd\_\-seqno} () const }
\label{classDataDescriptionPacket_a9cb1864b3c708bb6a54660c0429fd066}

\item 
\hypertarget{classDataDescriptionPacket_a93522c93c3c3227a0ecc6226c614cc84}{
list$<$ \hyperlink{classLsa__header}{Lsa\_\-header} $>$ \& {\bfseries get\_\-lsa\_\-headers} ()}
\label{classDataDescriptionPacket_a93522c93c3c3227a0ecc6226c614cc84}

\item 
\hypertarget{classDataDescriptionPacket_a639de8f193bbe7db1240723bb6333015}{
string \hyperlink{classDataDescriptionPacket_a639de8f193bbe7db1240723bb6333015}{str} () const }
\label{classDataDescriptionPacket_a639de8f193bbe7db1240723bb6333015}

\begin{DoxyCompactList}\small\item\em Generate a printable representation of \hyperlink{protocolthe-p}{the} packet. \item\end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Private Attributes}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classDataDescriptionPacket_aede552e5b43501174f4ab0fe53c10563}{
uint16\_\-t {\bfseries \_\-interface\_\-mtu}}
\label{classDataDescriptionPacket_aede552e5b43501174f4ab0fe53c10563}

\item 
\hypertarget{classDataDescriptionPacket_ae185bbabc53d59680a7136b587f28699}{
uint32\_\-t {\bfseries \_\-options}}
\label{classDataDescriptionPacket_ae185bbabc53d59680a7136b587f28699}

\item 
\hypertarget{classDataDescriptionPacket_abe2d17c6de48a3dff401791dc4113b9a}{
bool {\bfseries \_\-i\_\-bit}}
\label{classDataDescriptionPacket_abe2d17c6de48a3dff401791dc4113b9a}

\item 
\hypertarget{classDataDescriptionPacket_a851c6b03e49b26f59619b61999e5810c}{
bool {\bfseries \_\-m\_\-bit}}
\label{classDataDescriptionPacket_a851c6b03e49b26f59619b61999e5810c}

\item 
\hypertarget{classDataDescriptionPacket_a4f913f51f81771410f4855eeb4676e89}{
bool {\bfseries \_\-ms\_\-bit}}
\label{classDataDescriptionPacket_a4f913f51f81771410f4855eeb4676e89}

\item 
\hypertarget{classDataDescriptionPacket_a8730c6978b01edde55441a6c01e4576a}{
uint32\_\-t {\bfseries \_\-DD\_\-seqno}}
\label{classDataDescriptionPacket_a8730c6978b01edde55441a6c01e4576a}

\item 
\hypertarget{classDataDescriptionPacket_a1d41f848fea34a45cfca4b15556b8d3d}{
list$<$ \hyperlink{classLsa__header}{Lsa\_\-header} $>$ {\bfseries \_\-lsa\_\-headers}}
\label{classDataDescriptionPacket_a1d41f848fea34a45cfca4b15556b8d3d}

\end{DoxyCompactItemize}


\subsection{Detailed Description}
Database Description \hyperlink{classPacket}{Packet}. 

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


Decode \hyperlink{protocolthe-p}{the} packet. 

The returned packet must be free'd. 

Implements \hyperlink{classPacket_af6b945f661691c93345e93bd3d01fd2d}{Packet}.

\hypertarget{classDataDescriptionPacket_a2f396fbb35014043efaa072ef70a2a03}{
\index{DataDescriptionPacket@{DataDescriptionPacket}!encode@{encode}}
\index{encode@{encode}!DataDescriptionPacket@{DataDescriptionPacket}}
\subsubsection[{encode}]{\setlength{\rightskip}{0pt plus 5cm}bool DataDescriptionPacket::encode (
\begin{DoxyParamCaption}
\item[{vector$<$ uint8\_\-t $>$ \&}]{pkt}
\end{DoxyParamCaption}
)}}
\label{classDataDescriptionPacket_a2f396fbb35014043efaa072ef70a2a03}


Encode \hyperlink{protocolthe-p}{the} packet. 


\begin{DoxyParams}{Parameters}
{\em pkt} & vector into which \hyperlink{protocolthe-p}{the} packet should be placed. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
true if \hyperlink{protocolthe-p}{the} encoding suceeded. 
\end{DoxyReturn}


Reimplemented from \hyperlink{classPacket_ab13870adf8a96f499581589f1d1463ce}{Packet}.

\hypertarget{classDataDescriptionPacket_a1670258f487b852f95603125ed9a33d7}{
\index{DataDescriptionPacket@{DataDescriptionPacket}!get\_\-type@{get\_\-type}}
\index{get\_\-type@{get\_\-type}!DataDescriptionPacket@{DataDescriptionPacket}}
\subsubsection[{get\_\-type}]{\setlength{\rightskip}{0pt plus 5cm}{\bf OspfTypes::Type} DataDescriptionPacket::get\_\-type (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline, virtual\mbox{]}}}}
\label{classDataDescriptionPacket_a1670258f487b852f95603125ed9a33d7}


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

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


Implements \hyperlink{classPacket_aa0f90dc35cd40f34f6eac3a7cdb8d69b}{Packet}.



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