\hypertarget{classagOdalaunch_1_1ServerBase}{
\section{agOdalaunch::ServerBase Class Reference}
\label{d7/d65/classagOdalaunch_1_1ServerBase}\index{agOdalaunch::ServerBase@{agOdalaunch::ServerBase}}
}


{\ttfamily \#include $<$net\_\-packet.h$>$}

Inheritance diagram for agOdalaunch::ServerBase:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=2.000000cm]{d7/d65/classagOdalaunch_1_1ServerBase}
\end{center}
\end{figure}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hyperlink{classagOdalaunch_1_1ServerBase_a679b24a4ebb050d3abee0b45b2f17753}{ServerBase} ()
\item 
virtual \hyperlink{classagOdalaunch_1_1ServerBase_a83eb210acf4cfb1de7c1dc190a9e15fe}{$\sim$ServerBase} ()
\item 
virtual \hyperlink{namespaceagOdalaunch_af240c537f0b468bbf6ac8a6586d45cd7}{int32\_\-t} \hyperlink{classagOdalaunch_1_1ServerBase_aa5a631a028a4cf06dcf40f3d73b2a3e3}{Parse} ()
\item 
\hyperlink{namespaceagOdalaunch_af240c537f0b468bbf6ac8a6586d45cd7}{int32\_\-t} \hyperlink{classagOdalaunch_1_1ServerBase_a51af895b39d69858a31ccb3b71c840b2}{Query} (\hyperlink{namespaceagOdalaunch_af240c537f0b468bbf6ac8a6586d45cd7}{int32\_\-t} Timeout)
\item 
void \hyperlink{classagOdalaunch_1_1ServerBase_aeb07e2be4e4662f088d4ab428c681c51}{SetAddress} (const \hyperlink{sv__main_8cpp_a77792b18743abf1ff3aeeffa24aa45ec}{std::string} \&Address, const \hyperlink{namespaceagOdalaunch_a96a6ef1cb62d73efaf3746df543d8d79}{int16\_\-t} \&Port)
\item 
\hyperlink{sv__main_8cpp_a77792b18743abf1ff3aeeffa24aa45ec}{std::string} \hyperlink{classagOdalaunch_1_1ServerBase_afe1ccb6e52077a59e6026f3c8adc6bd0}{GetAddress} () const 
\item 
\hyperlink{namespaceagOdalaunch_aae422f1dff5a3134d59b743f13eac397}{uint32\_\-t} \hyperlink{classagOdalaunch_1_1ServerBase_a4b5a9979f735ea8944a822756d48121c}{GetPing} () const 
\item 
int \hyperlink{classagOdalaunch_1_1ServerBase_ac81dcaf4bd64a1056a1d876a952c99bb}{GetLock} ()
\item 
int \hyperlink{classagOdalaunch_1_1ServerBase_ad3c9d8666889d8bc9223d3fedf2eba28}{TryLock} ()
\item 
int \hyperlink{classagOdalaunch_1_1ServerBase_a53da7424b2e01f225d0b55be964d9f02}{Unlock} ()
\item 
int \hyperlink{classagOdalaunch_1_1ServerBase_ac81dcaf4bd64a1056a1d876a952c99bb}{GetLock} ()
\item 
int \hyperlink{classagOdalaunch_1_1ServerBase_ad3c9d8666889d8bc9223d3fedf2eba28}{TryLock} ()
\item 
int \hyperlink{classagOdalaunch_1_1ServerBase_a53da7424b2e01f225d0b55be964d9f02}{Unlock} ()
\end{DoxyCompactItemize}
\subsection*{Protected Attributes}
\begin{DoxyCompactItemize}
\item 
\hyperlink{classagOdalaunch_1_1BufferedSocket}{BufferedSocket} \hyperlink{classagOdalaunch_1_1ServerBase_a36e31a7ed2d003051c7981bd1ebd2d62}{Socket}
\item 
\hyperlink{namespaceagOdalaunch_aae422f1dff5a3134d59b743f13eac397}{uint32\_\-t} \hyperlink{classagOdalaunch_1_1ServerBase_a677a71089f4c06fff5c3f914d858a34b}{challenge}
\item 
\hyperlink{namespaceagOdalaunch_aae422f1dff5a3134d59b743f13eac397}{uint32\_\-t} \hyperlink{classagOdalaunch_1_1ServerBase_aae845f90b6aaf9c37171817975c4e39d}{response}
\item 
\hyperlink{namespaceagOdalaunch_aae422f1dff5a3134d59b743f13eac397}{uint32\_\-t} \hyperlink{classagOdalaunch_1_1ServerBase_a28bf487f3f85ba85c56705049e9bf1f8}{Ping}
\item 
AG\_\-Mutex \hyperlink{classagOdalaunch_1_1ServerBase_aca77d7b25c364bb1012694754c66eace}{m\_\-Mutex}
\end{DoxyCompactItemize}


\subsection{Constructor \& Destructor Documentation}
\hypertarget{classagOdalaunch_1_1ServerBase_a679b24a4ebb050d3abee0b45b2f17753}{
\index{agOdalaunch::ServerBase@{agOdalaunch::ServerBase}!ServerBase@{ServerBase}}
\index{ServerBase@{ServerBase}!agOdalaunch::ServerBase@{agOdalaunch::ServerBase}}
\subsubsection[{ServerBase}]{\setlength{\rightskip}{0pt plus 5cm}agOdalaunch::ServerBase::ServerBase (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{d7/d65/classagOdalaunch_1_1ServerBase_a679b24a4ebb050d3abee0b45b2f17753}
\hypertarget{classagOdalaunch_1_1ServerBase_a83eb210acf4cfb1de7c1dc190a9e15fe}{
\index{agOdalaunch::ServerBase@{agOdalaunch::ServerBase}!$\sim$ServerBase@{$\sim$ServerBase}}
\index{$\sim$ServerBase@{$\sim$ServerBase}!agOdalaunch::ServerBase@{agOdalaunch::ServerBase}}
\subsubsection[{$\sim$ServerBase}]{\setlength{\rightskip}{0pt plus 5cm}virtual agOdalaunch::ServerBase::$\sim$ServerBase (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline, virtual\mbox{]}}}}
\label{d7/d65/classagOdalaunch_1_1ServerBase_a83eb210acf4cfb1de7c1dc190a9e15fe}


\subsection{Member Function Documentation}
\hypertarget{classagOdalaunch_1_1ServerBase_afe1ccb6e52077a59e6026f3c8adc6bd0}{
\index{agOdalaunch::ServerBase@{agOdalaunch::ServerBase}!GetAddress@{GetAddress}}
\index{GetAddress@{GetAddress}!agOdalaunch::ServerBase@{agOdalaunch::ServerBase}}
\subsubsection[{GetAddress}]{\setlength{\rightskip}{0pt plus 5cm}{\bf std::string} agOdalaunch::ServerBase::GetAddress (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{d7/d65/classagOdalaunch_1_1ServerBase_afe1ccb6e52077a59e6026f3c8adc6bd0}
\hypertarget{classagOdalaunch_1_1ServerBase_ac81dcaf4bd64a1056a1d876a952c99bb}{
\index{agOdalaunch::ServerBase@{agOdalaunch::ServerBase}!GetLock@{GetLock}}
\index{GetLock@{GetLock}!agOdalaunch::ServerBase@{agOdalaunch::ServerBase}}
\subsubsection[{GetLock}]{\setlength{\rightskip}{0pt plus 5cm}int agOdalaunch::ServerBase::GetLock (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{d7/d65/classagOdalaunch_1_1ServerBase_ac81dcaf4bd64a1056a1d876a952c99bb}
\hypertarget{classagOdalaunch_1_1ServerBase_ac81dcaf4bd64a1056a1d876a952c99bb}{
\index{agOdalaunch::ServerBase@{agOdalaunch::ServerBase}!GetLock@{GetLock}}
\index{GetLock@{GetLock}!agOdalaunch::ServerBase@{agOdalaunch::ServerBase}}
\subsubsection[{GetLock}]{\setlength{\rightskip}{0pt plus 5cm}int agOdalaunch::ServerBase::GetLock (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{d7/d65/classagOdalaunch_1_1ServerBase_ac81dcaf4bd64a1056a1d876a952c99bb}
\hypertarget{classagOdalaunch_1_1ServerBase_a4b5a9979f735ea8944a822756d48121c}{
\index{agOdalaunch::ServerBase@{agOdalaunch::ServerBase}!GetPing@{GetPing}}
\index{GetPing@{GetPing}!agOdalaunch::ServerBase@{agOdalaunch::ServerBase}}
\subsubsection[{GetPing}]{\setlength{\rightskip}{0pt plus 5cm}{\bf uint32\_\-t} agOdalaunch::ServerBase::GetPing (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{d7/d65/classagOdalaunch_1_1ServerBase_a4b5a9979f735ea8944a822756d48121c}
\hypertarget{classagOdalaunch_1_1ServerBase_aa5a631a028a4cf06dcf40f3d73b2a3e3}{
\index{agOdalaunch::ServerBase@{agOdalaunch::ServerBase}!Parse@{Parse}}
\index{Parse@{Parse}!agOdalaunch::ServerBase@{agOdalaunch::ServerBase}}
\subsubsection[{Parse}]{\setlength{\rightskip}{0pt plus 5cm}virtual {\bf int32\_\-t} agOdalaunch::ServerBase::Parse (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline, virtual\mbox{]}}}}
\label{d7/d65/classagOdalaunch_1_1ServerBase_aa5a631a028a4cf06dcf40f3d73b2a3e3}


Reimplemented in \hyperlink{classagOdalaunch_1_1MasterServer_a52cb9c27ea3d783e3caf41e47be51f1d}{agOdalaunch::MasterServer}, and \hyperlink{classagOdalaunch_1_1Server_a9dece29a76b8128c3c73a0ec5d701fcf}{agOdalaunch::Server}.

\hypertarget{classagOdalaunch_1_1ServerBase_a51af895b39d69858a31ccb3b71c840b2}{
\index{agOdalaunch::ServerBase@{agOdalaunch::ServerBase}!Query@{Query}}
\index{Query@{Query}!agOdalaunch::ServerBase@{agOdalaunch::ServerBase}}
\subsubsection[{Query}]{\setlength{\rightskip}{0pt plus 5cm}{\bf int32\_\-t} ServerBase::Query (
\begin{DoxyParamCaption}
\item[{{\bf int32\_\-t}}]{Timeout}
\end{DoxyParamCaption}
)}}
\label{d7/d65/classagOdalaunch_1_1ServerBase_a51af895b39d69858a31ccb3b71c840b2}


Reimplemented in \hyperlink{classagOdalaunch_1_1Server_ac30c62956f4678fcc5039f3991850895}{agOdalaunch::Server}.

\hypertarget{classagOdalaunch_1_1ServerBase_aeb07e2be4e4662f088d4ab428c681c51}{
\index{agOdalaunch::ServerBase@{agOdalaunch::ServerBase}!SetAddress@{SetAddress}}
\index{SetAddress@{SetAddress}!agOdalaunch::ServerBase@{agOdalaunch::ServerBase}}
\subsubsection[{SetAddress}]{\setlength{\rightskip}{0pt plus 5cm}void agOdalaunch::ServerBase::SetAddress (
\begin{DoxyParamCaption}
\item[{const {\bf std::string} \&}]{Address, }
\item[{const {\bf int16\_\-t} \&}]{Port}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{d7/d65/classagOdalaunch_1_1ServerBase_aeb07e2be4e4662f088d4ab428c681c51}
\hypertarget{classagOdalaunch_1_1ServerBase_ad3c9d8666889d8bc9223d3fedf2eba28}{
\index{agOdalaunch::ServerBase@{agOdalaunch::ServerBase}!TryLock@{TryLock}}
\index{TryLock@{TryLock}!agOdalaunch::ServerBase@{agOdalaunch::ServerBase}}
\subsubsection[{TryLock}]{\setlength{\rightskip}{0pt plus 5cm}int agOdalaunch::ServerBase::TryLock (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{d7/d65/classagOdalaunch_1_1ServerBase_ad3c9d8666889d8bc9223d3fedf2eba28}
\hypertarget{classagOdalaunch_1_1ServerBase_ad3c9d8666889d8bc9223d3fedf2eba28}{
\index{agOdalaunch::ServerBase@{agOdalaunch::ServerBase}!TryLock@{TryLock}}
\index{TryLock@{TryLock}!agOdalaunch::ServerBase@{agOdalaunch::ServerBase}}
\subsubsection[{TryLock}]{\setlength{\rightskip}{0pt plus 5cm}int agOdalaunch::ServerBase::TryLock (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{d7/d65/classagOdalaunch_1_1ServerBase_ad3c9d8666889d8bc9223d3fedf2eba28}
\hypertarget{classagOdalaunch_1_1ServerBase_a53da7424b2e01f225d0b55be964d9f02}{
\index{agOdalaunch::ServerBase@{agOdalaunch::ServerBase}!Unlock@{Unlock}}
\index{Unlock@{Unlock}!agOdalaunch::ServerBase@{agOdalaunch::ServerBase}}
\subsubsection[{Unlock}]{\setlength{\rightskip}{0pt plus 5cm}int agOdalaunch::ServerBase::Unlock (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{d7/d65/classagOdalaunch_1_1ServerBase_a53da7424b2e01f225d0b55be964d9f02}
\hypertarget{classagOdalaunch_1_1ServerBase_a53da7424b2e01f225d0b55be964d9f02}{
\index{agOdalaunch::ServerBase@{agOdalaunch::ServerBase}!Unlock@{Unlock}}
\index{Unlock@{Unlock}!agOdalaunch::ServerBase@{agOdalaunch::ServerBase}}
\subsubsection[{Unlock}]{\setlength{\rightskip}{0pt plus 5cm}int agOdalaunch::ServerBase::Unlock (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}
\label{d7/d65/classagOdalaunch_1_1ServerBase_a53da7424b2e01f225d0b55be964d9f02}


\subsection{Field Documentation}
\hypertarget{classagOdalaunch_1_1ServerBase_a677a71089f4c06fff5c3f914d858a34b}{
\index{agOdalaunch::ServerBase@{agOdalaunch::ServerBase}!challenge@{challenge}}
\index{challenge@{challenge}!agOdalaunch::ServerBase@{agOdalaunch::ServerBase}}
\subsubsection[{challenge}]{\setlength{\rightskip}{0pt plus 5cm}{\bf uint32\_\-t} {\bf agOdalaunch::ServerBase::challenge}\hspace{0.3cm}{\ttfamily  \mbox{[}protected\mbox{]}}}}
\label{d7/d65/classagOdalaunch_1_1ServerBase_a677a71089f4c06fff5c3f914d858a34b}
\hypertarget{classagOdalaunch_1_1ServerBase_aca77d7b25c364bb1012694754c66eace}{
\index{agOdalaunch::ServerBase@{agOdalaunch::ServerBase}!m\_\-Mutex@{m\_\-Mutex}}
\index{m\_\-Mutex@{m\_\-Mutex}!agOdalaunch::ServerBase@{agOdalaunch::ServerBase}}
\subsubsection[{m\_\-Mutex}]{\setlength{\rightskip}{0pt plus 5cm}AG\_\-Mutex {\bf agOdalaunch::ServerBase::m\_\-Mutex}\hspace{0.3cm}{\ttfamily  \mbox{[}protected\mbox{]}}}}
\label{d7/d65/classagOdalaunch_1_1ServerBase_aca77d7b25c364bb1012694754c66eace}
\hypertarget{classagOdalaunch_1_1ServerBase_a28bf487f3f85ba85c56705049e9bf1f8}{
\index{agOdalaunch::ServerBase@{agOdalaunch::ServerBase}!Ping@{Ping}}
\index{Ping@{Ping}!agOdalaunch::ServerBase@{agOdalaunch::ServerBase}}
\subsubsection[{Ping}]{\setlength{\rightskip}{0pt plus 5cm}{\bf uint32\_\-t} {\bf agOdalaunch::ServerBase::Ping}\hspace{0.3cm}{\ttfamily  \mbox{[}protected\mbox{]}}}}
\label{d7/d65/classagOdalaunch_1_1ServerBase_a28bf487f3f85ba85c56705049e9bf1f8}
\hypertarget{classagOdalaunch_1_1ServerBase_aae845f90b6aaf9c37171817975c4e39d}{
\index{agOdalaunch::ServerBase@{agOdalaunch::ServerBase}!response@{response}}
\index{response@{response}!agOdalaunch::ServerBase@{agOdalaunch::ServerBase}}
\subsubsection[{response}]{\setlength{\rightskip}{0pt plus 5cm}{\bf uint32\_\-t} {\bf agOdalaunch::ServerBase::response}\hspace{0.3cm}{\ttfamily  \mbox{[}protected\mbox{]}}}}
\label{d7/d65/classagOdalaunch_1_1ServerBase_aae845f90b6aaf9c37171817975c4e39d}
\hypertarget{classagOdalaunch_1_1ServerBase_a36e31a7ed2d003051c7981bd1ebd2d62}{
\index{agOdalaunch::ServerBase@{agOdalaunch::ServerBase}!Socket@{Socket}}
\index{Socket@{Socket}!agOdalaunch::ServerBase@{agOdalaunch::ServerBase}}
\subsubsection[{Socket}]{\setlength{\rightskip}{0pt plus 5cm}{\bf BufferedSocket} {\bf agOdalaunch::ServerBase::Socket}\hspace{0.3cm}{\ttfamily  \mbox{[}protected\mbox{]}}}}
\label{d7/d65/classagOdalaunch_1_1ServerBase_a36e31a7ed2d003051c7981bd1ebd2d62}


The documentation for this class was generated from the following files:\begin{DoxyCompactItemize}
\item 
ag-\/odalaunch/src/\hyperlink{ag-odalaunch_2src_2net__packet_8h}{net\_\-packet.h}\item 
ag-\/odalaunch/src/\hyperlink{ag-odalaunch_2src_2net__packet_8cpp}{net\_\-packet.cpp}\end{DoxyCompactItemize}
