\hypertarget{classIfTreeItem}{
\section{IfTreeItem Class Reference}
\label{classIfTreeItem}\index{IfTreeItem@{IfTreeItem}}
}


Base class for FEA configurable items where \hyperlink{protocolthe-p}{the} modifications need to be held over and propagated later, ie changes happen during a transaction but are propagated during \hyperlink{protocolthe-p}{the} commit.  




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

Inheritance diagram for IfTreeItem:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=2.896552cm]{classIfTreeItem}
\end{center}
\end{figure}
\subsection*{Public Types}
\begin{DoxyCompactItemize}
\item 
enum {\bfseries State} \{ {\bfseries NO\_\-CHANGE} =  0x00, 
{\bfseries CREATED} =  0x01, 
{\bfseries DELETED} =  0x02, 
{\bfseries CHANGED} =  0x04
 \}
\end{DoxyCompactItemize}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classIfTreeItem_af3114b6747daf47b08ba6e0bd5b272ce}{
int {\bfseries set\_\-state} (State st)}
\label{classIfTreeItem_af3114b6747daf47b08ba6e0bd5b272ce}

\item 
\hypertarget{classIfTreeItem_a50791367ee3fc3048add29dddc60ebad}{
State {\bfseries state} () const }
\label{classIfTreeItem_a50791367ee3fc3048add29dddc60ebad}

\item 
\hypertarget{classIfTreeItem_aff1d720a46d8cace2413eaaa7b0910f5}{
virtual int {\bfseries mark} (State st)}
\label{classIfTreeItem_aff1d720a46d8cace2413eaaa7b0910f5}

\item 
\hypertarget{classIfTreeItem_a8839b7626f71f637d82148410565528c}{
bool {\bfseries is\_\-marked} (State st) const }
\label{classIfTreeItem_a8839b7626f71f637d82148410565528c}

\item 
\hypertarget{classIfTreeItem_a39cc50a0dcf5e04f71d87b1f8e5db514}{
void {\bfseries set\_\-soft} (bool en)}
\label{classIfTreeItem_a39cc50a0dcf5e04f71d87b1f8e5db514}

\item 
\hypertarget{classIfTreeItem_ad2c7f59851c0e3884c4d62c554cb59c8}{
bool {\bfseries is\_\-soft} () const }
\label{classIfTreeItem_ad2c7f59851c0e3884c4d62c554cb59c8}

\item 
\hypertarget{classIfTreeItem_a86f9f5013f09cd1f6cf9c9f84fcc3efa}{
virtual void \hyperlink{classIfTreeItem_a86f9f5013f09cd1f6cf9c9f84fcc3efa}{finalize\_\-state} ()=0}
\label{classIfTreeItem_a86f9f5013f09cd1f6cf9c9f84fcc3efa}

\begin{DoxyCompactList}\small\item\em Virtual method to be implemented to flush out state associated objects, ie if an object is marked CREATED or CHANGED it should be marked NO\_\-CHANGE, if an object is marked DELETED, it should be removed from \hyperlink{protocolthe-p}{the} relevant container and destructed. \item\end{DoxyCompactList}\item 
\hypertarget{classIfTreeItem_a05511e0ce63320523d485381075a10d9}{
string {\bfseries str} () const }
\label{classIfTreeItem_a05511e0ce63320523d485381075a10d9}

\end{DoxyCompactItemize}
\subsection*{Static Protected Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classIfTreeItem_a750b1ec84b3aa2b3b6360931ec97b732}{
static uint32\_\-t {\bfseries bits} (State st)}
\label{classIfTreeItem_a750b1ec84b3aa2b3b6360931ec97b732}

\end{DoxyCompactItemize}
\subsection*{Protected Attributes}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classIfTreeItem_af536fa483aa31c26722a3aef738b8036}{
State {\bfseries \_\-st}}
\label{classIfTreeItem_af536fa483aa31c26722a3aef738b8036}

\item 
\hypertarget{classIfTreeItem_aca15571c6135b364fec5ef1c01838eaa}{
bool {\bfseries \_\-soft}}
\label{classIfTreeItem_aca15571c6135b364fec5ef1c01838eaa}

\end{DoxyCompactItemize}


\subsection{Detailed Description}
Base class for FEA configurable items where \hyperlink{protocolthe-p}{the} modifications need to be held over and propagated later, ie changes happen during a transaction but are propagated during \hyperlink{protocolthe-p}{the} commit. 

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