\hypertarget{classLibFeaClientBridge}{
\section{LibFeaClientBridge Class Reference}
\label{classLibFeaClientBridge}\index{LibFeaClientBridge@{LibFeaClientBridge}}
}


Bridge class to intervene between \hyperlink{protocolthe-p}{the} FEA's interface manager and libfeaclient.  




{\ttfamily \#include $<$libfeaclient\_\-bridge.hh$>$}

Inheritance diagram for LibFeaClientBridge:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=2.000000cm]{classLibFeaClientBridge}
\end{center}
\end{figure}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classLibFeaClientBridge_a74f636e26d5dbe87301a30e4d9a819ea}{
{\bfseries LibFeaClientBridge} (\hyperlink{classXrlRouter}{XrlRouter} \&rtr, \hyperlink{classIfConfigUpdateReplicator}{IfConfigUpdateReplicator} \&update\_\-replicator)}
\label{classLibFeaClientBridge_a74f636e26d5dbe87301a30e4d9a819ea}

\item 
int \hyperlink{classLibFeaClientBridge_a92fde46f1e7a16edb56e072f637645bd}{add\_\-libfeaclient\_\-mirror} (const string \&xrl\_\-target\_\-instance\_\-name)
\begin{DoxyCompactList}\small\item\em Add named \hyperlink{classXrl}{Xrl} target to list to receive libfeaclient updates. \item\end{DoxyCompactList}\item 
int \hyperlink{classLibFeaClientBridge_a6f1d16e99c0457caf0d073ab6b9c0981}{remove\_\-libfeaclient\_\-mirror} (const string \&xrl\_\-target\_\-instance\_\-name)
\begin{DoxyCompactList}\small\item\em Remove named \hyperlink{classXrl}{Xrl} target from \hyperlink{protocolthe-p}{the} list to receive libfeaclient updates. \item\end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Protected Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classLibFeaClientBridge_a1bee51505ca6e4710e5aa61bdef3374a}{
void {\bfseries interface\_\-update} (const string \&ifname, const Update \&update)}
\label{classLibFeaClientBridge_a1bee51505ca6e4710e5aa61bdef3374a}

\item 
\hypertarget{classLibFeaClientBridge_af569886c4485d256a98321f0cf7af5ec}{
void {\bfseries vif\_\-update} (const string \&ifname, const string \&vifname, const Update \&update)}
\label{classLibFeaClientBridge_af569886c4485d256a98321f0cf7af5ec}

\item 
\hypertarget{classLibFeaClientBridge_ab6bd3c65385f58c57e111e7692f81354}{
void {\bfseries vifaddr4\_\-update} (const string \&ifname, const string \&vifname, const \hyperlink{classIPv4}{IPv4} \&addr, const Update \&update)}
\label{classLibFeaClientBridge_ab6bd3c65385f58c57e111e7692f81354}

\item 
\hypertarget{classLibFeaClientBridge_ae61828832a3a548fd7114514b97e7ccc}{
void {\bfseries updates\_\-completed} ()}
\label{classLibFeaClientBridge_ae61828832a3a548fd7114514b97e7ccc}

\end{DoxyCompactItemize}
\subsection*{Protected Attributes}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classLibFeaClientBridge_ab8ce7e2f05fa583dc93801c50e67fc43}{
\hyperlink{classIfMgrXrlReplicationManager}{IfMgrXrlReplicationManager} $\ast$ {\bfseries \_\-rm}}
\label{classLibFeaClientBridge_ab8ce7e2f05fa583dc93801c50e67fc43}

\end{DoxyCompactItemize}


\subsection{Detailed Description}
Bridge class to intervene between \hyperlink{protocolthe-p}{the} FEA's interface manager and libfeaclient. The \hyperlink{classLibFeaClientBridge}{LibFeaClientBridge} takes updates received from \hyperlink{protocolthe-p}{the} FEA's interface manager and forwards them to registered remote libfeaclient users. For each update received, \hyperlink{protocolthe-p}{the} bridge gets \hyperlink{protocolthe-p}{the} all \hyperlink{protocolthe-p}{the} state associated with \hyperlink{protocolthe-p}{the} item being updated, and pushes it into a contained instance of an \hyperlink{classIfMgrXrlReplicationManager}{IfMgrXrlReplicationManager}. If \hyperlink{protocolthe-p}{the} data pushed into \hyperlink{protocolthe-p}{the} \hyperlink{classIfMgrXrlReplicationManager}{IfMgrXrlReplicationManager} triggers state changes in it's internal interface config representation, it forwards \hyperlink{protocolthe-p}{the} changes to remote observers.

In addition to arranging to plumb \hyperlink{protocolthe-p}{the} \hyperlink{classLibFeaClientBridge}{LibFeaClientBridge} into \hyperlink{protocolthe-p}{the} FEA to receive updates, it is imperative that \hyperlink{protocolthe-p}{the} underlying \hyperlink{classIfTree}{IfTree} object used represent state be available to \hyperlink{protocolthe-p}{the} bridge. The bridge is made aware of this object through iftree. Failure to call method before an update is received will cause a fatal error. 

\subsection{Member Function Documentation}
\hypertarget{classLibFeaClientBridge_a92fde46f1e7a16edb56e072f637645bd}{
\index{LibFeaClientBridge@{LibFeaClientBridge}!add\_\-libfeaclient\_\-mirror@{add\_\-libfeaclient\_\-mirror}}
\index{add\_\-libfeaclient\_\-mirror@{add\_\-libfeaclient\_\-mirror}!LibFeaClientBridge@{LibFeaClientBridge}}
\subsubsection[{add\_\-libfeaclient\_\-mirror}]{\setlength{\rightskip}{0pt plus 5cm}int LibFeaClientBridge::add\_\-libfeaclient\_\-mirror (
\begin{DoxyParamCaption}
\item[{const string \&}]{xrl\_\-target\_\-instance\_\-name}
\end{DoxyParamCaption}
)}}
\label{classLibFeaClientBridge_a92fde46f1e7a16edb56e072f637645bd}


Add named \hyperlink{classXrl}{Xrl} target to list to receive libfeaclient updates. 


\begin{DoxyParams}{Parameters}
{\em xrl\_\-target\_\-instance\_\-name} & \hyperlink{classXrl}{Xrl} target instance name. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
XORP\_\-OK on success, otherwise XORP\_\-ERROR. 
\end{DoxyReturn}
\hypertarget{classLibFeaClientBridge_a6f1d16e99c0457caf0d073ab6b9c0981}{
\index{LibFeaClientBridge@{LibFeaClientBridge}!remove\_\-libfeaclient\_\-mirror@{remove\_\-libfeaclient\_\-mirror}}
\index{remove\_\-libfeaclient\_\-mirror@{remove\_\-libfeaclient\_\-mirror}!LibFeaClientBridge@{LibFeaClientBridge}}
\subsubsection[{remove\_\-libfeaclient\_\-mirror}]{\setlength{\rightskip}{0pt plus 5cm}int LibFeaClientBridge::remove\_\-libfeaclient\_\-mirror (
\begin{DoxyParamCaption}
\item[{const string \&}]{xrl\_\-target\_\-instance\_\-name}
\end{DoxyParamCaption}
)}}
\label{classLibFeaClientBridge_a6f1d16e99c0457caf0d073ab6b9c0981}


Remove named \hyperlink{classXrl}{Xrl} target from \hyperlink{protocolthe-p}{the} list to receive libfeaclient updates. 


\begin{DoxyParams}{Parameters}
{\em xrl\_\-target\_\-instance\_\-name} & \hyperlink{classXrl}{Xrl} target instance name. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
XORP\_\-OK on success, otherwise XORP\_\-ERROR. 
\end{DoxyReturn}


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