\hypertarget{classPathAttributeList}{
\section{PathAttributeList$<$ A $>$ Class Template Reference}
\label{classPathAttributeList}\index{PathAttributeList@{PathAttributeList}}
}


\hyperlink{classPathAttributeList}{PathAttributeList} is used to handle efficiently path attribute lists.  




{\ttfamily \#include $<$path\_\-attribute.hh$>$}

\subsection*{Public Types}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classPathAttributeList_a69854aee807cbc125b580f2e296d0217}{
typedef list$<$ \hyperlink{classPathAttribute}{PathAttribute} $\ast$ $>$::const\_\-iterator {\bfseries const\_\-iterator}}
\label{classPathAttributeList_a69854aee807cbc125b580f2e296d0217}

\item 
\hypertarget{classPathAttributeList_ab48f50f11409fc9b40c6407b53e82fbf}{
typedef list$<$ \hyperlink{classPathAttribute}{PathAttribute} $\ast$ $>$::iterator {\bfseries iterator}}
\label{classPathAttributeList_ab48f50f11409fc9b40c6407b53e82fbf}

\end{DoxyCompactItemize}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classPathAttributeList_a17cabba9841b5d24112742f9970406fe}{
{\bfseries PathAttributeList} (const \hyperlink{classPathAttributeList}{PathAttributeList}$<$ A $>$ \&palist)}
\label{classPathAttributeList_a17cabba9841b5d24112742f9970406fe}

\item 
\hypertarget{classPathAttributeList_a9e17493ea55181bf163beb35bf4d2b47}{
{\bfseries PathAttributeList} (FPAListRef \&fpa\_\-list)}
\label{classPathAttributeList_a9e17493ea55181bf163beb35bf4d2b47}

\item 
\hypertarget{classPathAttributeList_a461dd0241f2da3fcd881304368a08999}{
string {\bfseries str} () const }
\label{classPathAttributeList_a461dd0241f2da3fcd881304368a08999}

\item 
\hypertarget{classPathAttributeList_af65aed220bd2e1cccdf8ba3d0faa2ff9}{
bool {\bfseries operator$<$} (const \hyperlink{classPathAttributeList}{PathAttributeList}$<$ A $>$ \&them) const }
\label{classPathAttributeList_af65aed220bd2e1cccdf8ba3d0faa2ff9}

\item 
\hypertarget{classPathAttributeList_a9dff464572fbcf94e6a4e50390c13667}{
bool {\bfseries operator==} (const \hyperlink{classPathAttributeList}{PathAttributeList}$<$ A $>$ \&them) const }
\label{classPathAttributeList_a9dff464572fbcf94e6a4e50390c13667}

\item 
\hypertarget{classPathAttributeList_aef9a15d5251b492037009c62420bf280}{
const uint8\_\-t $\ast$ {\bfseries canonical\_\-data} () const }
\label{classPathAttributeList_aef9a15d5251b492037009c62420bf280}

\item 
\hypertarget{classPathAttributeList_a9a639c2066ab7f7581afb42354236357}{
size\_\-t {\bfseries canonical\_\-length} () const }
\label{classPathAttributeList_a9a639c2066ab7f7581afb42354236357}

\item 
\hypertarget{classPathAttributeList_a2f8cae341b99a13393de632456ea59cb}{
void {\bfseries incr\_\-refcount} (uint32\_\-t change) const }
\label{classPathAttributeList_a2f8cae341b99a13393de632456ea59cb}

\item 
\hypertarget{classPathAttributeList_adf7ee7f2ed19bdce61a089b863c43241}{
void {\bfseries decr\_\-refcount} (uint32\_\-t change) const }
\label{classPathAttributeList_adf7ee7f2ed19bdce61a089b863c43241}

\item 
\hypertarget{classPathAttributeList_aec3c67015193d3e8d47134dc5ea7d3c3}{
uint32\_\-t {\bfseries references} () const }
\label{classPathAttributeList_aec3c67015193d3e8d47134dc5ea7d3c3}

\item 
\hypertarget{classPathAttributeList_a8c8e827834e1b842e236473b3ac722ca}{
void {\bfseries incr\_\-managed\_\-refcount} (uint32\_\-t change) const }
\label{classPathAttributeList_a8c8e827834e1b842e236473b3ac722ca}

\item 
\hypertarget{classPathAttributeList_a879a7f789eeb932580a466e500be01d7}{
void {\bfseries decr\_\-managed\_\-refcount} (uint32\_\-t change) const }
\label{classPathAttributeList_a879a7f789eeb932580a466e500be01d7}

\item 
\hypertarget{classPathAttributeList_a6548cfa721aafab66ad874d35271865f}{
uint32\_\-t {\bfseries managed\_\-references} () const }
\label{classPathAttributeList_a6548cfa721aafab66ad874d35271865f}

\item 
\hypertarget{classPathAttributeList_ac24246f638e8e4e1486223a946010816}{
{\footnotesize template$<$$>$ }\\bool {\bfseries operator$<$} (const \hyperlink{classPathAttributeList}{PathAttributeList}$<$ \hyperlink{classIPv6}{IPv6} $>$ \&him) const}
\label{classPathAttributeList_ac24246f638e8e4e1486223a946010816}

\end{DoxyCompactItemize}
\subsection*{Protected Attributes}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classPathAttributeList_adf82eecbb6d63f511bffc72d95bb22ff}{
uint8\_\-t $\ast$ {\bfseries \_\-canonical\_\-data}}
\label{classPathAttributeList_adf82eecbb6d63f511bffc72d95bb22ff}

\item 
\hypertarget{classPathAttributeList_a46fa5aaa5162617563831913e022c2e4}{
uint16\_\-t {\bfseries \_\-canonical\_\-length}}
\label{classPathAttributeList_a46fa5aaa5162617563831913e022c2e4}

\end{DoxyCompactItemize}
\subsection*{Private Attributes}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classPathAttributeList_a521219fc2b35a31895b929aa62abe3b1}{
uint32\_\-t {\bfseries \_\-refcount}}
\label{classPathAttributeList_a521219fc2b35a31895b929aa62abe3b1}

\item 
\hypertarget{classPathAttributeList_ac151b1fed770a8e22bb69c1c54ca6dee}{
uint32\_\-t {\bfseries \_\-managed\_\-refcount}}
\label{classPathAttributeList_ac151b1fed770a8e22bb69c1c54ca6dee}

\end{DoxyCompactItemize}


\subsection{Detailed Description}
\subsubsection*{template$<$class A$>$ class PathAttributeList$<$ A $>$}

\hyperlink{classPathAttributeList}{PathAttributeList} is used to handle efficiently path attribute lists. An object in \hyperlink{protocolthe-p}{the} class is initialized from explicit \hyperlink{classPathAttribute}{PathAttribute} objects passed in by reference. The initialization creates a copy of \hyperlink{protocolthe-p}{the} attribute, links it into a list, and for mandatory attributes it also stores a pointer to \hyperlink{protocolthe-p}{the} newly created attribute into a class member (e.g. \_\-aspath\_\-att ...) for ease of use. 

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