\hypertarget{classPacketDecoder}{
\section{PacketDecoder Class Reference}
\label{classPacketDecoder}\index{PacketDecoder@{PacketDecoder}}
}


\hyperlink{classPacket}{Packet} byte streams are decoded through this class.  




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

\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
void \hyperlink{classPacketDecoder_a610ee7d3517a26a3c505e456c5fe4b2a}{register\_\-decoder} (\hyperlink{classPacket}{Packet} $\ast$packet)
\begin{DoxyCompactList}\small\item\em Register \hyperlink{protocolthe-p}{the} packet/decode routines. \item\end{DoxyCompactList}\item 
\hyperlink{classPacket}{Packet} $\ast$ \hyperlink{classPacketDecoder_a141a2b631aed08b35c68a2c439336b02}{decode} (uint8\_\-t $\ast$ptr, size\_\-t len)  throw (InvalidPacket)
\begin{DoxyCompactList}\small\item\em Decode byte stream. \item\end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Private Attributes}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classPacketDecoder_a7a3b91bc60551a502553a9ce8c136372}{
map$<$ \hyperlink{structOspfTypes_abe52a1f48e880751028d473f6a9f780d}{OspfTypes::Type}, \hyperlink{classPacket}{Packet} $\ast$ $>$ {\bfseries \_\-ospfv2}}
\label{classPacketDecoder_a7a3b91bc60551a502553a9ce8c136372}

\item 
\hypertarget{classPacketDecoder_ab1d06be81d88eda2f9768ef22133f207}{
map$<$ \hyperlink{structOspfTypes_abe52a1f48e880751028d473f6a9f780d}{OspfTypes::Type}, \hyperlink{classPacket}{Packet} $\ast$ $>$ {\bfseries \_\-ospfv3}}
\label{classPacketDecoder_ab1d06be81d88eda2f9768ef22133f207}

\end{DoxyCompactItemize}


\subsection{Detailed Description}
\hyperlink{classPacket}{Packet} byte streams are decoded through this class. 

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


Decode byte stream. 


\begin{DoxyParams}{Parameters}
{\em ptr} & to data packet \\
\hline
{\em length} & of data packet\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
a packet structure, which must be free'd 
\end{DoxyReturn}
\hypertarget{classPacketDecoder_a610ee7d3517a26a3c505e456c5fe4b2a}{
\index{PacketDecoder@{PacketDecoder}!register\_\-decoder@{register\_\-decoder}}
\index{register\_\-decoder@{register\_\-decoder}!PacketDecoder@{PacketDecoder}}
\subsubsection[{register\_\-decoder}]{\setlength{\rightskip}{0pt plus 5cm}void PacketDecoder::register\_\-decoder (
\begin{DoxyParamCaption}
\item[{{\bf Packet} $\ast$}]{packet}
\end{DoxyParamCaption}
)}}
\label{classPacketDecoder_a610ee7d3517a26a3c505e456c5fe4b2a}


Register \hyperlink{protocolthe-p}{the} packet/decode routines. 


\begin{DoxyParams}{Parameters}
{\em packet} & decoder \\
\hline
\end{DoxyParams}


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}
