\hypertarget{classXrlFeaIo}{
\section{XrlFeaIo Class Reference}
\label{classXrlFeaIo}\index{XrlFeaIo@{XrlFeaIo}}
}


FEA (Forwarding Engine Abstraction) XRL-\/based I/O class.  




{\ttfamily \#include $<$xrl\_\-fea\_\-io.hh$>$}

Inheritance diagram for XrlFeaIo:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=2.000000cm]{classXrlFeaIo}
\end{center}
\end{figure}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hyperlink{classXrlFeaIo_a454b22ff5595506999aea6f2393c4261}{XrlFeaIo} (\hyperlink{classEventLoop}{EventLoop} \&eventloop, \hyperlink{classXrlRouter}{XrlRouter} \&xrl\_\-router, const string \&xrl\_\-finder\_\-targetname)
\begin{DoxyCompactList}\small\item\em Constructor. \item\end{DoxyCompactList}\item 
\hypertarget{classXrlFeaIo_a83c7086a00740d1605cb034672176e6f}{
virtual \hyperlink{classXrlFeaIo_a83c7086a00740d1605cb034672176e6f}{$\sim$XrlFeaIo} ()}
\label{classXrlFeaIo_a83c7086a00740d1605cb034672176e6f}

\begin{DoxyCompactList}\small\item\em Destructor. \item\end{DoxyCompactList}\item 
int \hyperlink{classXrlFeaIo_a283d65928a67faaa75dffedbc97b30f5}{startup} ()
\begin{DoxyCompactList}\small\item\em \hyperlink{classStartup}{Startup} \hyperlink{protocolthe-p}{the} service operation. \item\end{DoxyCompactList}\item 
int \hyperlink{classXrlFeaIo_a7fd550079ddb5670fa9e04826babd912}{shutdown} ()
\begin{DoxyCompactList}\small\item\em \hyperlink{classShutdown}{Shutdown} \hyperlink{protocolthe-p}{the} service operation. \item\end{DoxyCompactList}\item 
bool \hyperlink{classXrlFeaIo_abb43c85aa0dd8452103ef8feb14cc342}{is\_\-running} () const 
\begin{DoxyCompactList}\small\item\em Test whether \hyperlink{protocolthe-p}{the} service is running. \item\end{DoxyCompactList}\item 
int \hyperlink{classXrlFeaIo_ac978e55438fea6b38c6902d32731fe7b}{register\_\-instance\_\-event\_\-interest} (const string \&instance\_\-name, string \&error\_\-msg)
\begin{DoxyCompactList}\small\item\em Register interest in events relating to a particular instance. \item\end{DoxyCompactList}\item 
int \hyperlink{classXrlFeaIo_aab91c9198d9c628abc302df1565b3f4d}{deregister\_\-instance\_\-event\_\-interest} (const string \&instance\_\-name, string \&error\_\-msg)
\begin{DoxyCompactList}\small\item\em Deregister interest in events relating to a particular instance. \item\end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Private Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classXrlFeaIo_a308a9911d664f803bb2b53978311d0a6}{
void {\bfseries register\_\-instance\_\-event\_\-interest\_\-cb} (const \hyperlink{classXrlError}{XrlError} \&xrl\_\-error, string instance\_\-name)}
\label{classXrlFeaIo_a308a9911d664f803bb2b53978311d0a6}

\item 
\hypertarget{classXrlFeaIo_abfb47835115896720d79b7b8fb3eeab2}{
void {\bfseries deregister\_\-instance\_\-event\_\-interest\_\-cb} (const \hyperlink{classXrlError}{XrlError} \&xrl\_\-error, string instance\_\-name)}
\label{classXrlFeaIo_abfb47835115896720d79b7b8fb3eeab2}

\end{DoxyCompactItemize}
\subsection*{Private Attributes}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classXrlFeaIo_a64659724b0cc99643170764b6123ed9f}{
\hyperlink{classXrlRouter}{XrlRouter} \& {\bfseries \_\-xrl\_\-router}}
\label{classXrlFeaIo_a64659724b0cc99643170764b6123ed9f}

\item 
\hypertarget{classXrlFeaIo_a56f844ae0c8f789433131500fa51eaf7}{
const string {\bfseries \_\-xrl\_\-finder\_\-targetname}}
\label{classXrlFeaIo_a56f844ae0c8f789433131500fa51eaf7}

\end{DoxyCompactItemize}


\subsection{Detailed Description}
FEA (Forwarding Engine Abstraction) XRL-\/based I/O class. 

\subsection{Constructor \& Destructor Documentation}
\hypertarget{classXrlFeaIo_a454b22ff5595506999aea6f2393c4261}{
\index{XrlFeaIo@{XrlFeaIo}!XrlFeaIo@{XrlFeaIo}}
\index{XrlFeaIo@{XrlFeaIo}!XrlFeaIo@{XrlFeaIo}}
\subsubsection[{XrlFeaIo}]{\setlength{\rightskip}{0pt plus 5cm}XrlFeaIo::XrlFeaIo (
\begin{DoxyParamCaption}
\item[{{\bf EventLoop} \&}]{eventloop, }
\item[{{\bf XrlRouter} \&}]{xrl\_\-router, }
\item[{const string \&}]{xrl\_\-finder\_\-targetname}
\end{DoxyParamCaption}
)}}
\label{classXrlFeaIo_a454b22ff5595506999aea6f2393c4261}


Constructor. 


\begin{DoxyParams}{Parameters}
{\em eventloop} & \hyperlink{protocolthe-p}{the} event loop to use. \\
\hline
{\em xrl\_\-router} & \hyperlink{protocolthe-p}{the} XRL transmission and reception point. \\
\hline
{\em xrl\_\-finder\_\-targetname} & \hyperlink{protocolthe-p}{the} XRL targetname of \hyperlink{protocolthe-p}{the} \hyperlink{classFinder}{Finder}. \\
\hline
\end{DoxyParams}


\subsection{Member Function Documentation}
\hypertarget{classXrlFeaIo_aab91c9198d9c628abc302df1565b3f4d}{
\index{XrlFeaIo@{XrlFeaIo}!deregister\_\-instance\_\-event\_\-interest@{deregister\_\-instance\_\-event\_\-interest}}
\index{deregister\_\-instance\_\-event\_\-interest@{deregister\_\-instance\_\-event\_\-interest}!XrlFeaIo@{XrlFeaIo}}
\subsubsection[{deregister\_\-instance\_\-event\_\-interest}]{\setlength{\rightskip}{0pt plus 5cm}int XrlFeaIo::deregister\_\-instance\_\-event\_\-interest (
\begin{DoxyParamCaption}
\item[{const string \&}]{instance\_\-name, }
\item[{string \&}]{error\_\-msg}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}
\label{classXrlFeaIo_aab91c9198d9c628abc302df1565b3f4d}


Deregister interest in events relating to a particular instance. 


\begin{DoxyParams}{Parameters}
{\em instance\_\-name} & name of target instance to stop event notifications for. \\
\hline
{\em error\_\-msg} & \hyperlink{protocolthe-p}{the} error message (if error). \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
XORP\_\-OK on success, otherwise XORP\_\-ERROR. 
\end{DoxyReturn}


Implements \hyperlink{classFeaIo_a8dc226a78b06f098728a5fdb26c26af5}{FeaIo}.

\hypertarget{classXrlFeaIo_abb43c85aa0dd8452103ef8feb14cc342}{
\index{XrlFeaIo@{XrlFeaIo}!is\_\-running@{is\_\-running}}
\index{is\_\-running@{is\_\-running}!XrlFeaIo@{XrlFeaIo}}
\subsubsection[{is\_\-running}]{\setlength{\rightskip}{0pt plus 5cm}bool XrlFeaIo::is\_\-running (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const}}
\label{classXrlFeaIo_abb43c85aa0dd8452103ef8feb14cc342}


Test whether \hyperlink{protocolthe-p}{the} service is running. 

\begin{DoxyReturn}{Returns}
true if \hyperlink{protocolthe-p}{the} service is still running, otherwise false. 
\end{DoxyReturn}


Reimplemented from \hyperlink{classFeaIo_a2977ef3c2c014c600e0c34400572e353}{FeaIo}.

\hypertarget{classXrlFeaIo_ac978e55438fea6b38c6902d32731fe7b}{
\index{XrlFeaIo@{XrlFeaIo}!register\_\-instance\_\-event\_\-interest@{register\_\-instance\_\-event\_\-interest}}
\index{register\_\-instance\_\-event\_\-interest@{register\_\-instance\_\-event\_\-interest}!XrlFeaIo@{XrlFeaIo}}
\subsubsection[{register\_\-instance\_\-event\_\-interest}]{\setlength{\rightskip}{0pt plus 5cm}int XrlFeaIo::register\_\-instance\_\-event\_\-interest (
\begin{DoxyParamCaption}
\item[{const string \&}]{instance\_\-name, }
\item[{string \&}]{error\_\-msg}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}
\label{classXrlFeaIo_ac978e55438fea6b38c6902d32731fe7b}


Register interest in events relating to a particular instance. 


\begin{DoxyParams}{Parameters}
{\em instance\_\-name} & name of target instance to receive event notifications for. \\
\hline
{\em error\_\-msg} & \hyperlink{protocolthe-p}{the} error message (if error). \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
XORP\_\-OK on success, otherwise XORP\_\-ERROR. 
\end{DoxyReturn}


Implements \hyperlink{classFeaIo_ab3bc996fd6020e5e19a087f77ae527ad}{FeaIo}.

\hypertarget{classXrlFeaIo_a7fd550079ddb5670fa9e04826babd912}{
\index{XrlFeaIo@{XrlFeaIo}!shutdown@{shutdown}}
\index{shutdown@{shutdown}!XrlFeaIo@{XrlFeaIo}}
\subsubsection[{shutdown}]{\setlength{\rightskip}{0pt plus 5cm}int XrlFeaIo::shutdown (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}}
\label{classXrlFeaIo_a7fd550079ddb5670fa9e04826babd912}


\hyperlink{classShutdown}{Shutdown} \hyperlink{protocolthe-p}{the} service operation. 

\begin{DoxyReturn}{Returns}
XORP\_\-OK on success, otherwise XORP\_\-ERROR. 
\end{DoxyReturn}


Reimplemented from \hyperlink{classFeaIo_ab0becd1d1baf39ff3b2170d20f3e0bee}{FeaIo}.

\hypertarget{classXrlFeaIo_a283d65928a67faaa75dffedbc97b30f5}{
\index{XrlFeaIo@{XrlFeaIo}!startup@{startup}}
\index{startup@{startup}!XrlFeaIo@{XrlFeaIo}}
\subsubsection[{startup}]{\setlength{\rightskip}{0pt plus 5cm}int XrlFeaIo::startup (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}}
\label{classXrlFeaIo_a283d65928a67faaa75dffedbc97b30f5}


\hyperlink{classStartup}{Startup} \hyperlink{protocolthe-p}{the} service operation. 

\begin{DoxyReturn}{Returns}
XORP\_\-OK on success, otherwise XORP\_\-ERROR. 
\end{DoxyReturn}


Reimplemented from \hyperlink{classFeaIo_ab393d8801e151e292e033ab0d917ac71}{FeaIo}.



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