\hypertarget{classFinderTcpAutoConnector}{
\section{FinderTcpAutoConnector Class Reference}
\label{classFinderTcpAutoConnector}\index{FinderTcpAutoConnector@{FinderTcpAutoConnector}}
}


Class to establish and manage a single connection to a \hyperlink{classFinderTcpListener}{FinderTcpListener}.  




{\ttfamily \#include $<$finder\_\-tcp\_\-messenger.hh$>$}

Inheritance diagram for FinderTcpAutoConnector:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=2.000000cm]{classFinderTcpAutoConnector}
\end{center}
\end{figure}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classFinderTcpAutoConnector_a0cb2ff5f5caf45efeab0b5fe1524856c}{
{\bfseries FinderTcpAutoConnector} (\hyperlink{classEventLoop}{EventLoop} \&e, \hyperlink{classFinderMessengerManager}{FinderMessengerManager} \&mm, \hyperlink{classXrlCmdMap}{XrlCmdMap} \&cmds, \hyperlink{classIPv4}{IPv4} host, uint16\_\-t port, bool enabled=true, uint32\_\-t give\_\-up\_\-ms=0)}
\label{classFinderTcpAutoConnector_a0cb2ff5f5caf45efeab0b5fe1524856c}

\item 
\hypertarget{classFinderTcpAutoConnector_ad56f9ac5983f08e9d5cf3057e0e00824}{
void {\bfseries set\_\-enabled} (bool en)}
\label{classFinderTcpAutoConnector_ad56f9ac5983f08e9d5cf3057e0e00824}

\item 
\hypertarget{classFinderTcpAutoConnector_acd132a38c07402ba3c188e1ad9cd1950}{
bool {\bfseries enabled} () const }
\label{classFinderTcpAutoConnector_acd132a38c07402ba3c188e1ad9cd1950}

\item 
\hypertarget{classFinderTcpAutoConnector_af7c089e81eddb2900f459d64508d4a00}{
bool {\bfseries connected} () const }
\label{classFinderTcpAutoConnector_af7c089e81eddb2900f459d64508d4a00}

\item 
\hypertarget{classFinderTcpAutoConnector_a689b504e7f6587dd8160233fdc78914b}{
bool {\bfseries connect\_\-failed} () const }
\label{classFinderTcpAutoConnector_a689b504e7f6587dd8160233fdc78914b}

\end{DoxyCompactItemize}
\subsection*{Protected Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classFinderTcpAutoConnector_a01d90e620dc13d00494a37e28718fb28}{
void {\bfseries do\_\-auto\_\-connect} ()}
\label{classFinderTcpAutoConnector_a01d90e620dc13d00494a37e28718fb28}

\item 
\hypertarget{classFinderTcpAutoConnector_a671ff72ba08ed4fb8d43eea6be820ac1}{
void {\bfseries start\_\-timer} (uint32\_\-t ms=0)}
\label{classFinderTcpAutoConnector_a671ff72ba08ed4fb8d43eea6be820ac1}

\item 
\hypertarget{classFinderTcpAutoConnector_aacfe47a78ff482533b8b3d7a773a1625}{
void {\bfseries stop\_\-timer} ()}
\label{classFinderTcpAutoConnector_aacfe47a78ff482533b8b3d7a773a1625}

\item 
\hypertarget{classFinderTcpAutoConnector_a24271e9497d3cbec014be084aeb676d8}{
void \hyperlink{classFinderTcpAutoConnector_a24271e9497d3cbec014be084aeb676d8}{messenger\_\-birth\_\-event} (\hyperlink{classFinderMessengerBase}{FinderMessengerBase} $\ast$)}
\label{classFinderTcpAutoConnector_a24271e9497d3cbec014be084aeb676d8}

\begin{DoxyCompactList}\small\item\em Method called by messenger constructor. \item\end{DoxyCompactList}\item 
\hypertarget{classFinderTcpAutoConnector_a10f60b27add0679b8b8d27d6acb3cb25}{
void \hyperlink{classFinderTcpAutoConnector_a10f60b27add0679b8b8d27d6acb3cb25}{messenger\_\-death\_\-event} (\hyperlink{classFinderMessengerBase}{FinderMessengerBase} $\ast$)}
\label{classFinderTcpAutoConnector_a10f60b27add0679b8b8d27d6acb3cb25}

\begin{DoxyCompactList}\small\item\em Method called by messenger destructor. \item\end{DoxyCompactList}\item 
\hypertarget{classFinderTcpAutoConnector_ac4b5853efcc2f9a8ad26aff25165c9ba}{
void \hyperlink{classFinderTcpAutoConnector_ac4b5853efcc2f9a8ad26aff25165c9ba}{messenger\_\-active\_\-event} (\hyperlink{classFinderMessengerBase}{FinderMessengerBase} $\ast$)}
\label{classFinderTcpAutoConnector_ac4b5853efcc2f9a8ad26aff25165c9ba}

\begin{DoxyCompactList}\small\item\em Method called before \hyperlink{classXrl}{Xrl} is dispatched. \item\end{DoxyCompactList}\item 
\hypertarget{classFinderTcpAutoConnector_ad4df37a650c23c75d48f50b9c0c30322}{
void \hyperlink{classFinderTcpAutoConnector_ad4df37a650c23c75d48f50b9c0c30322}{messenger\_\-inactive\_\-event} (\hyperlink{classFinderMessengerBase}{FinderMessengerBase} $\ast$)}
\label{classFinderTcpAutoConnector_ad4df37a650c23c75d48f50b9c0c30322}

\begin{DoxyCompactList}\small\item\em Method called immediately after \hyperlink{classXrl}{Xrl} is dispatched. \item\end{DoxyCompactList}\item 
void \hyperlink{classFinderTcpAutoConnector_a1860f8b1766030f8bfa2a345cedbe34a}{messenger\_\-stopped\_\-event} (\hyperlink{classFinderMessengerBase}{FinderMessengerBase} $\ast$)
\begin{DoxyCompactList}\small\item\em Method called when Messenger is unable to continue. \item\end{DoxyCompactList}\item 
\hypertarget{classFinderTcpAutoConnector_a1bce31f6079722312afd35aadff299f7}{
bool \hyperlink{classFinderTcpAutoConnector_a1bce31f6079722312afd35aadff299f7}{manages} (const \hyperlink{classFinderMessengerBase}{FinderMessengerBase} $\ast$) const }
\label{classFinderTcpAutoConnector_a1bce31f6079722312afd35aadff299f7}

\begin{DoxyCompactList}\small\item\em Method called to tell if \hyperlink{classFinderMessengerManager}{FinderMessengerManager} instance manages a particular messenger. \item\end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Protected Attributes}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classFinderTcpAutoConnector_aaf79a775871bfc43a670be95fce13d1f}{
\hyperlink{classFinderMessengerManager}{FinderMessengerManager} \& {\bfseries \_\-real\_\-manager}}
\label{classFinderTcpAutoConnector_aaf79a775871bfc43a670be95fce13d1f}

\item 
\hypertarget{classFinderTcpAutoConnector_a34c949ec7ea9703b4996ba031637942c}{
bool {\bfseries \_\-connected}}
\label{classFinderTcpAutoConnector_a34c949ec7ea9703b4996ba031637942c}

\item 
\hypertarget{classFinderTcpAutoConnector_a50b7a9defbd47fca32480ae8ca733f85}{
bool {\bfseries \_\-connect\_\-failed}}
\label{classFinderTcpAutoConnector_a50b7a9defbd47fca32480ae8ca733f85}

\item 
\hypertarget{classFinderTcpAutoConnector_ad6b2e6ac5c33eb6189ebcc14c13c79f7}{
bool {\bfseries \_\-enabled}}
\label{classFinderTcpAutoConnector_ad6b2e6ac5c33eb6189ebcc14c13c79f7}

\item 
\hypertarget{classFinderTcpAutoConnector_a72b545938c2932eaf9d2b607e08f930a}{
bool {\bfseries \_\-once\_\-active}}
\label{classFinderTcpAutoConnector_a72b545938c2932eaf9d2b607e08f930a}

\item 
\hypertarget{classFinderTcpAutoConnector_a9165af22feb3a32b6fbaf0856ed678cd}{
\hyperlink{classXorpTimer}{XorpTimer} {\bfseries \_\-retry\_\-timer}}
\label{classFinderTcpAutoConnector_a9165af22feb3a32b6fbaf0856ed678cd}

\item 
\hypertarget{classFinderTcpAutoConnector_a20530fdb47ebb2b693662ed4112926d2}{
\hyperlink{classXorpTimer}{XorpTimer} {\bfseries \_\-giveup\_\-timer}}
\label{classFinderTcpAutoConnector_a20530fdb47ebb2b693662ed4112926d2}

\item 
\hypertarget{classFinderTcpAutoConnector_a019c1035adc4ace8236b37dd71ccb306}{
int {\bfseries \_\-last\_\-error}}
\label{classFinderTcpAutoConnector_a019c1035adc4ace8236b37dd71ccb306}

\item 
\hypertarget{classFinderTcpAutoConnector_a13bbef30bb7a64137536f14a58766cf4}{
size\_\-t {\bfseries \_\-consec\_\-error}}
\label{classFinderTcpAutoConnector_a13bbef30bb7a64137536f14a58766cf4}

\end{DoxyCompactItemize}
\subsection*{Static Protected Attributes}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classFinderTcpAutoConnector_accbe2df3409393ecba25ec4737720db1}{
static const uint32\_\-t {\bfseries CONNECT\_\-RETRY\_\-PAUSE\_\-MS} = 100}
\label{classFinderTcpAutoConnector_accbe2df3409393ecba25ec4737720db1}

\item 
\hypertarget{classFinderTcpAutoConnector_a3a3d3df8ebc3fe7bf4f3ab0be1c2b728}{
static const uint32\_\-t {\bfseries CONNECT\_\-FAILS\_\-BEFORE\_\-LOGGING} = 10}
\label{classFinderTcpAutoConnector_a3a3d3df8ebc3fe7bf4f3ab0be1c2b728}

\end{DoxyCompactItemize}


\subsection{Detailed Description}
Class to establish and manage a single connection to a \hyperlink{classFinderTcpListener}{FinderTcpListener}. Should \hyperlink{protocolthe-p}{the} connection fail after being established a new connection is started. 

\subsection{Member Function Documentation}
\hypertarget{classFinderTcpAutoConnector_a1860f8b1766030f8bfa2a345cedbe34a}{
\index{FinderTcpAutoConnector@{FinderTcpAutoConnector}!messenger\_\-stopped\_\-event@{messenger\_\-stopped\_\-event}}
\index{messenger\_\-stopped\_\-event@{messenger\_\-stopped\_\-event}!FinderTcpAutoConnector@{FinderTcpAutoConnector}}
\subsubsection[{messenger\_\-stopped\_\-event}]{\setlength{\rightskip}{0pt plus 5cm}void FinderTcpAutoConnector::messenger\_\-stopped\_\-event (
\begin{DoxyParamCaption}
\item[{{\bf FinderMessengerBase} $\ast$}]{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}protected, virtual\mbox{]}}}}
\label{classFinderTcpAutoConnector_a1860f8b1766030f8bfa2a345cedbe34a}


Method called when Messenger is unable to continue. 

For instance, network connection lost. 

Implements \hyperlink{classFinderMessengerManager_a3c3b9572819175b8f9f6f2097abbfc43}{FinderMessengerManager}.



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