\hypertarget{classPimMfc}{
\section{PimMfc Class Reference}
\label{classPimMfc}\index{PimMfc@{PimMfc}}
}
Inheritance diagram for PimMfc:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=2.000000cm]{classPimMfc}
\end{center}
\end{figure}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classPimMfc_a51d26177cfb8d904977d859755f726f9}{
{\bfseries PimMfc} (\hyperlink{classPimMrt}{PimMrt} $\ast$pim\_\-mrt, const \hyperlink{classIPvX}{IPvX} \&source, const \hyperlink{classIPvX}{IPvX} \&group)}
\label{classPimMfc_a51d26177cfb8d904977d859755f726f9}

\item 
\hypertarget{classPimMfc_a3d0de5f72759639baf2f9719180e70e9}{
\hyperlink{classPimNode}{PimNode} $\ast$ {\bfseries pim\_\-node} () const }
\label{classPimMfc_a3d0de5f72759639baf2f9719180e70e9}

\item 
\hypertarget{classPimMfc_a233bd6d0db24904487dbf8d8d16e1a83}{
\hyperlink{classPimMrt}{PimMrt} $\ast$ {\bfseries pim\_\-mrt} () const }
\label{classPimMfc_a233bd6d0db24904487dbf8d8d16e1a83}

\item 
\hypertarget{classPimMfc_aa56effb7903fea75af31d5c9584995a1}{
int {\bfseries family} () const }
\label{classPimMfc_aa56effb7903fea75af31d5c9584995a1}

\item 
\hypertarget{classPimMfc_a92108f357a1afb4a6560dba69771e2bd}{
const \hyperlink{classIPvX}{IPvX} \& {\bfseries rp\_\-addr} () const }
\label{classPimMfc_a92108f357a1afb4a6560dba69771e2bd}

\item 
\hypertarget{classPimMfc_a753f81c170b168a99b2e4d182da20243}{
void {\bfseries set\_\-rp\_\-addr} (const \hyperlink{classIPvX}{IPvX} \&v)}
\label{classPimMfc_a753f81c170b168a99b2e4d182da20243}

\item 
\hypertarget{classPimMfc_ae8deb2a25a4364f3421dc743c3d0f6d7}{
void {\bfseries uncond\_\-set\_\-rp\_\-addr} (const \hyperlink{classIPvX}{IPvX} \&v)}
\label{classPimMfc_ae8deb2a25a4364f3421dc743c3d0f6d7}

\item 
\hypertarget{classPimMfc_a99452f2dbe079c7f49a5b6a2e0661b6b}{
uint32\_\-t {\bfseries iif\_\-vif\_\-index} () const }
\label{classPimMfc_a99452f2dbe079c7f49a5b6a2e0661b6b}

\item 
\hypertarget{classPimMfc_adf57bc07287b12d1faecc5cbd39b7f35}{
void {\bfseries set\_\-iif\_\-vif\_\-index} (uint32\_\-t v)}
\label{classPimMfc_adf57bc07287b12d1faecc5cbd39b7f35}

\item 
\hypertarget{classPimMfc_ac6b7cc555eb555ee500b55ac792afbbb}{
const Mifset \& {\bfseries olist} () const }
\label{classPimMfc_ac6b7cc555eb555ee500b55ac792afbbb}

\item 
\hypertarget{classPimMfc_a1ca2f73268176a4ff245f2595363780a}{
const Mifset \& {\bfseries olist\_\-disable\_\-wrongvif} () const }
\label{classPimMfc_a1ca2f73268176a4ff245f2595363780a}

\item 
\hypertarget{classPimMfc_a527b471b22e60479a621ca39b1e5ef0a}{
bool {\bfseries is\_\-set\_\-oif} (uint32\_\-t vif\_\-index) const }
\label{classPimMfc_a527b471b22e60479a621ca39b1e5ef0a}

\item 
\hypertarget{classPimMfc_a2a5bacf8dcb11b8d9b82100599d02878}{
void {\bfseries set\_\-olist} (const Mifset \&v)}
\label{classPimMfc_a2a5bacf8dcb11b8d9b82100599d02878}

\item 
\hypertarget{classPimMfc_acea65d6b251f42b3d135fdf97cf92f0e}{
void {\bfseries set\_\-olist\_\-disable\_\-wrongvif} (const Mifset \&v)}
\label{classPimMfc_acea65d6b251f42b3d135fdf97cf92f0e}

\item 
\hypertarget{classPimMfc_aa2aa7280b82d80e94f9248bf90731cd1}{
void {\bfseries set\_\-oif} (uint32\_\-t vif\_\-index, bool v)}
\label{classPimMfc_aa2aa7280b82d80e94f9248bf90731cd1}

\item 
\hypertarget{classPimMfc_ac5c90c13c1d218fe23daea104ecbc094}{
void {\bfseries recompute\_\-rp\_\-mfc} ()}
\label{classPimMfc_ac5c90c13c1d218fe23daea104ecbc094}

\item 
\hypertarget{classPimMfc_a5a032834f4d2c0f74a932b03bfbb5918}{
void {\bfseries recompute\_\-iif\_\-olist\_\-mfc} ()}
\label{classPimMfc_a5a032834f4d2c0f74a932b03bfbb5918}

\item 
\hypertarget{classPimMfc_a23b8aaf5de264918bd160b759cd1edd2}{
bool {\bfseries recompute\_\-update\_\-sptbit\_\-mfc} ()}
\label{classPimMfc_a23b8aaf5de264918bd160b759cd1edd2}

\item 
\hypertarget{classPimMfc_a50909ca80441b3033a8b0f522d4cdaf3}{
void {\bfseries recompute\_\-spt\_\-switch\_\-threshold\_\-changed\_\-mfc} ()}
\label{classPimMfc_a50909ca80441b3033a8b0f522d4cdaf3}

\item 
\hypertarget{classPimMfc_a246c9bd8468b188822c633ae29ee2e5f}{
void {\bfseries recompute\_\-monitoring\_\-switch\_\-to\_\-spt\_\-desired\_\-mfc} ()}
\label{classPimMfc_a246c9bd8468b188822c633ae29ee2e5f}

\item 
\hypertarget{classPimMfc_ac32007c4c5d928c57e460bf9ded85908}{
void {\bfseries install\_\-spt\_\-switch\_\-dataflow\_\-monitor\_\-mfc} (\hyperlink{classPimMre}{PimMre} $\ast$pim\_\-mre)}
\label{classPimMfc_ac32007c4c5d928c57e460bf9ded85908}

\item 
\hypertarget{classPimMfc_a1a5ea869174d1f3f9781181de37939c4}{
void {\bfseries update\_\-mfc} (uint32\_\-t new\_\-iif\_\-vif\_\-index, const Mifset \&new\_\-olist, const \hyperlink{classPimMre}{PimMre} $\ast$pim\_\-mre\_\-sg)}
\label{classPimMfc_a1a5ea869174d1f3f9781181de37939c4}

\item 
\hypertarget{classPimMfc_a24e356243dc3947e48a7bd4c93ea9947}{
int {\bfseries add\_\-mfc\_\-to\_\-kernel} ()}
\label{classPimMfc_a24e356243dc3947e48a7bd4c93ea9947}

\item 
\hypertarget{classPimMfc_a574c75d50ff627cd9468092df8f3361e}{
int {\bfseries delete\_\-mfc\_\-from\_\-kernel} ()}
\label{classPimMfc_a574c75d50ff627cd9468092df8f3361e}

\item 
\hypertarget{classPimMfc_abbb4e0c083c3c610421c6d2d2846850e}{
int {\bfseries add\_\-dataflow\_\-monitor} (uint32\_\-t threshold\_\-interval\_\-sec, uint32\_\-t threshold\_\-interval\_\-usec, uint32\_\-t threshold\_\-packets, uint32\_\-t threshold\_\-bytes, bool is\_\-threshold\_\-in\_\-packets, bool is\_\-threshold\_\-in\_\-bytes, bool is\_\-geq\_\-upcall, bool is\_\-leq\_\-upcall)}
\label{classPimMfc_abbb4e0c083c3c610421c6d2d2846850e}

\item 
\hypertarget{classPimMfc_ab73c0d83400a4f48af5fb896558ae6e1}{
int {\bfseries delete\_\-dataflow\_\-monitor} (uint32\_\-t threshold\_\-interval\_\-sec, uint32\_\-t threshold\_\-interval\_\-usec, uint32\_\-t threshold\_\-packets, uint32\_\-t threshold\_\-bytes, bool is\_\-threshold\_\-in\_\-packets, bool is\_\-threshold\_\-in\_\-bytes, bool is\_\-geq\_\-upcall, bool is\_\-leq\_\-upcall)}
\label{classPimMfc_ab73c0d83400a4f48af5fb896558ae6e1}

\item 
\hypertarget{classPimMfc_a31753d10eb7e6a3630fe2514cd276524}{
int {\bfseries delete\_\-all\_\-dataflow\_\-monitor} ()}
\label{classPimMfc_a31753d10eb7e6a3630fe2514cd276524}

\item 
\hypertarget{classPimMfc_a90affc1eac2aa28cf1d247bb91dedfc2}{
bool {\bfseries entry\_\-try\_\-remove} ()}
\label{classPimMfc_a90affc1eac2aa28cf1d247bb91dedfc2}

\item 
\hypertarget{classPimMfc_a6c576126751079b5b9a216bbd57b874d}{
bool {\bfseries entry\_\-can\_\-remove} () const }
\label{classPimMfc_a6c576126751079b5b9a216bbd57b874d}

\item 
\hypertarget{classPimMfc_a092eaf3e8acad8e982fb9fe8b53bdad0}{
void {\bfseries remove\_\-pim\_\-mfc\_\-entry\_\-mfc} ()}
\label{classPimMfc_a092eaf3e8acad8e982fb9fe8b53bdad0}

\item 
\hypertarget{classPimMfc_a51e5841e162f43a454eddec9acb1891c}{
bool {\bfseries is\_\-task\_\-delete\_\-pending} () const }
\label{classPimMfc_a51e5841e162f43a454eddec9acb1891c}

\item 
\hypertarget{classPimMfc_a252fef092444ae9ce4ac47171f330e14}{
void {\bfseries set\_\-is\_\-task\_\-delete\_\-pending} (bool v)}
\label{classPimMfc_a252fef092444ae9ce4ac47171f330e14}

\item 
\hypertarget{classPimMfc_aa9a9f3bea954faba2167a7d0f6adca16}{
bool {\bfseries is\_\-task\_\-delete\_\-done} () const }
\label{classPimMfc_aa9a9f3bea954faba2167a7d0f6adca16}

\item 
\hypertarget{classPimMfc_a99b25f5e83f0fce5dab81ae73bd54eec}{
void {\bfseries set\_\-is\_\-task\_\-delete\_\-done} (bool v)}
\label{classPimMfc_a99b25f5e83f0fce5dab81ae73bd54eec}

\item 
\hypertarget{classPimMfc_adb794bb3a138f84bd4bd323ea67ddf15}{
bool {\bfseries has\_\-idle\_\-dataflow\_\-monitor} () const }
\label{classPimMfc_adb794bb3a138f84bd4bd323ea67ddf15}

\item 
\hypertarget{classPimMfc_a9e532b75bdb92218ce8fbef9154b4655}{
void {\bfseries set\_\-has\_\-idle\_\-dataflow\_\-monitor} (bool v)}
\label{classPimMfc_a9e532b75bdb92218ce8fbef9154b4655}

\item 
\hypertarget{classPimMfc_aa02c8b6a5969970c1cad29c0b8a1748a}{
bool {\bfseries has\_\-spt\_\-switch\_\-dataflow\_\-monitor} () const }
\label{classPimMfc_aa02c8b6a5969970c1cad29c0b8a1748a}

\item 
\hypertarget{classPimMfc_a0a290aa70b9bbc00f23ac9a5c1f7b74b}{
void {\bfseries set\_\-has\_\-spt\_\-switch\_\-dataflow\_\-monitor} (bool v)}
\label{classPimMfc_a0a290aa70b9bbc00f23ac9a5c1f7b74b}

\item 
\hypertarget{classPimMfc_a3b37ef5ae29f93ed6f621cea0fb47110}{
bool {\bfseries has\_\-forced\_\-deletion} () const }
\label{classPimMfc_a3b37ef5ae29f93ed6f621cea0fb47110}

\item 
\hypertarget{classPimMfc_afa7f965c87a382e48ef24758ea468f21}{
void {\bfseries set\_\-has\_\-forced\_\-deletion} (bool v)}
\label{classPimMfc_afa7f965c87a382e48ef24758ea468f21}

\end{DoxyCompactItemize}
\subsection*{Private Types}
\begin{DoxyCompactItemize}
\item 
enum \{ \par
{\bfseries PIM\_\-MFC\_\-TASK\_\-DELETE\_\-PENDING} =  1 $<$$<$ 0, 
{\bfseries PIM\_\-MFC\_\-TASK\_\-DELETE\_\-DONE} =  1 $<$$<$ 1, 
{\bfseries PIM\_\-MFC\_\-HAS\_\-IDLE\_\-DATAFLOW\_\-MONITOR} =  1 $<$$<$ 2, 
{\bfseries PIM\_\-MFC\_\-HAS\_\-SPT\_\-SWITCH\_\-DATAFLOW\_\-MONITOR} =  1 $<$$<$ 3, 
\par
{\bfseries PIM\_\-MFC\_\-HAS\_\-FORCED\_\-DELETION} =  1 $<$$<$ 4
 \}
\end{DoxyCompactItemize}
\subsection*{Private Attributes}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classPimMfc_a4d4354e393918fbc9df4ada7e4da84b2}{
\hyperlink{classPimMrt}{PimMrt} $\ast$ {\bfseries \_\-pim\_\-mrt}}
\label{classPimMfc_a4d4354e393918fbc9df4ada7e4da84b2}

\item 
\hypertarget{classPimMfc_a12c63ac866c9a323441cdf588deb795b}{
\hyperlink{classIPvX}{IPvX} {\bfseries \_\-rp\_\-addr}}
\label{classPimMfc_a12c63ac866c9a323441cdf588deb795b}

\item 
\hypertarget{classPimMfc_a69baf0c41b0575ddff7cdc54c78c010f}{
uint32\_\-t {\bfseries \_\-iif\_\-vif\_\-index}}
\label{classPimMfc_a69baf0c41b0575ddff7cdc54c78c010f}

\item 
\hypertarget{classPimMfc_a0e1c78ccce0873b90a17c6f8cea3d1ca}{
Mifset {\bfseries \_\-olist}}
\label{classPimMfc_a0e1c78ccce0873b90a17c6f8cea3d1ca}

\item 
\hypertarget{classPimMfc_a4528897450886dc34eab1a623c38b0aa}{
Mifset {\bfseries \_\-olist\_\-disable\_\-wrongvif}}
\label{classPimMfc_a4528897450886dc34eab1a623c38b0aa}

\item 
\hypertarget{classPimMfc_aeede2b610fd0d559430c004269bac027}{
uint32\_\-t {\bfseries \_\-flags}}
\label{classPimMfc_aeede2b610fd0d559430c004269bac027}

\end{DoxyCompactItemize}


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