Get rid of codelite crap.
This commit is contained in:
1 parent
a40f7314a8
commit
e6c1e9db0d
409 files changed
+50
-20401
No files matched your search
@@ -1,21 +0,0 @@
|
||||
all: refman.pdf
|
||||
|
||||
pdf: refman.pdf
|
||||
|
||||
refman.pdf: clean refman.tex
|
||||
pdflatex refman
|
||||
makeindex refman.idx
|
||||
pdflatex refman
|
||||
latex_count=8 ; \
|
||||
while egrep -s 'Rerun (LaTeX|to get cross-references right)' refman.log && [ $$latex_count -gt 0 ] ;\
|
||||
do \
|
||||
echo "Rerunning latex...." ;\
|
||||
pdflatex refman ;\
|
||||
latex_count=`expr $$latex_count - 1` ;\
|
||||
done
|
||||
makeindex refman.idx
|
||||
pdflatex refman
|
||||
|
||||
|
||||
clean:
|
||||
rm -f *.ps *.dvi *.aux *.toc *.idx *.ind *.ilg *.log *.out *.brf *.blg *.bbl refman.pdf
|
||||
@@ -1,23 +0,0 @@
|
||||
\section{Class List}
|
||||
Here are the classes, structs, unions and interfaces with brief descriptions\+:\begin{DoxyCompactList}
|
||||
\item\contentsline{section}{\hyperlink{classcore_1_1_command}{core\+::\+Command} }{\pageref{classcore_1_1_command}}{}
|
||||
\item\contentsline{section}{\hyperlink{classcore_1_1_command_list}{core\+::\+Command\+List} }{\pageref{classcore_1_1_command_list}}{}
|
||||
\item\contentsline{section}{\hyperlink{classcore_1_1_console_server}{core\+::\+Console\+Server} }{\pageref{classcore_1_1_console_server}}{}
|
||||
\item\contentsline{section}{\hyperlink{classcore_1_1_console_session}{core\+::\+Console\+Session} }{\pageref{classcore_1_1_console_session}}{}
|
||||
\item\contentsline{section}{\hyperlink{classcore_1_1_e_poll}{core\+::\+E\+Poll} }{\pageref{classcore_1_1_e_poll}}{}
|
||||
\item\contentsline{section}{\hyperlink{classcore_1_1_i_p_address}{core\+::\+I\+P\+Address} }{\pageref{classcore_1_1_i_p_address}}{}
|
||||
\item\contentsline{section}{\hyperlink{classcore_1_1_i_p_address_list}{core\+::\+I\+P\+Address\+List} }{\pageref{classcore_1_1_i_p_address_list}}{}
|
||||
\item\contentsline{section}{\hyperlink{classcore_1_1_object}{core\+::\+Object} }{\pageref{classcore_1_1_object}}{}
|
||||
\item\contentsline{section}{\hyperlink{classcore_1_1_session_filter}{core\+::\+Session\+Filter} }{\pageref{classcore_1_1_session_filter}}{}
|
||||
\item\contentsline{section}{\hyperlink{classcore_1_1_socket}{core\+::\+Socket} }{\pageref{classcore_1_1_socket}}{}
|
||||
\item\contentsline{section}{\hyperlink{classcore_1_1_t_c_p_server}{core\+::\+T\+C\+P\+Server} }{\pageref{classcore_1_1_t_c_p_server}}{}
|
||||
\item\contentsline{section}{\hyperlink{classcore_1_1_t_c_p_session}{core\+::\+T\+C\+P\+Session} }{\pageref{classcore_1_1_t_c_p_session}}{}
|
||||
\item\contentsline{section}{\hyperlink{classcore_1_1_t_c_p_socket}{core\+::\+T\+C\+P\+Socket} }{\pageref{classcore_1_1_t_c_p_socket}}{}
|
||||
\item\contentsline{section}{\hyperlink{classcore_1_1_terminal_session}{core\+::\+Terminal\+Session} }{\pageref{classcore_1_1_terminal_session}}{}
|
||||
\item\contentsline{section}{\hyperlink{classcore_1_1_thread}{core\+::\+Thread} }{\pageref{classcore_1_1_thread}}{}
|
||||
\item\contentsline{section}{\hyperlink{classcore_1_1_timer}{core\+::\+Timer} }{\pageref{classcore_1_1_timer}}{}
|
||||
\item\contentsline{section}{\hyperlink{classcore_1_1_t_l_s_server}{core\+::\+T\+L\+S\+Server} }{\pageref{classcore_1_1_t_l_s_server}}{}
|
||||
\item\contentsline{section}{\hyperlink{classcore_1_1_t_l_s_session}{core\+::\+T\+L\+S\+Session} }{\pageref{classcore_1_1_t_l_s_session}}{}
|
||||
\item\contentsline{section}{\hyperlink{classcore_1_1_u_d_p_server_socket}{core\+::\+U\+D\+P\+Server\+Socket} }{\pageref{classcore_1_1_u_d_p_server_socket}}{}
|
||||
\item\contentsline{section}{\hyperlink{classcore_1_1_u_d_p_socket}{core\+::\+U\+D\+P\+Socket} }{\pageref{classcore_1_1_u_d_p_socket}}{}
|
||||
\end{DoxyCompactList}
|
||||
@@ -1,121 +0,0 @@
|
||||
\hypertarget{classcore_1_1_command}{}\section{core\+:\+:Command Class Reference}
|
||||
\label{classcore_1_1_command}\index{core\+::\+Command@{core\+::\+Command}}
|
||||
|
||||
|
||||
{\ttfamily \#include $<$Command.\+h$>$}
|
||||
|
||||
|
||||
|
||||
Inheritance diagram for core\+:\+:Command\+:
|
||||
\nopagebreak
|
||||
\begin{figure}[H]
|
||||
\begin{center}
|
||||
\leavevmode
|
||||
\includegraphics[width=350pt]{classcore_1_1_command__inherit__graph}
|
||||
\end{center}
|
||||
\end{figure}
|
||||
|
||||
|
||||
Collaboration diagram for core\+:\+:Command\+:
|
||||
\nopagebreak
|
||||
\begin{figure}[H]
|
||||
\begin{center}
|
||||
\leavevmode
|
||||
\includegraphics[width=166pt]{classcore_1_1_command__coll__graph}
|
||||
\end{center}
|
||||
\end{figure}
|
||||
\subsection*{Public Member Functions}
|
||||
\begin{DoxyCompactItemize}
|
||||
\item
|
||||
virtual bool \hyperlink{classcore_1_1_command_abdc0d7a4693a7f7940bbae20c4a667c0}{check} (std\+::string request)
|
||||
\item
|
||||
virtual int \hyperlink{classcore_1_1_command_a068ebc22f7a067cf23ed2c17f95b06e9}{process\+Command} (std\+::string request, \hyperlink{classcore_1_1_t_c_p_session}{T\+C\+P\+Session} $\ast$session, std\+::stringstream \&data)
|
||||
\item
|
||||
virtual void \hyperlink{classcore_1_1_command_a314aef05f78aacb802097f8ae0875291}{output} (Session $\ast$session)
|
||||
\item
|
||||
void \hyperlink{classcore_1_1_command_ad8b0321c64838f4d5c8f93461b97cfef}{set\+Name} (std\+::string name)
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_command_aa63cf88493b2a1b775b5b93b07e79324}\label{classcore_1_1_command_aa63cf88493b2a1b775b5b93b07e79324}}
|
||||
std\+::string {\bfseries get\+Name} ()
|
||||
\end{DoxyCompactItemize}
|
||||
\subsection*{Additional Inherited Members}
|
||||
|
||||
|
||||
\subsection{Detailed Description}
|
||||
\hyperlink{classcore_1_1_command}{Command}
|
||||
|
||||
Use the \hyperlink{classcore_1_1_command}{Command} object in combination with a \hyperlink{classcore_1_1_command_list}{Command\+List} object to maintain a list of functions that can be invoked as a result of processing a request.
|
||||
|
||||
\subsection{Member Function Documentation}
|
||||
\mbox{\Hypertarget{classcore_1_1_command_abdc0d7a4693a7f7940bbae20c4a667c0}\label{classcore_1_1_command_abdc0d7a4693a7f7940bbae20c4a667c0}}
|
||||
\index{core\+::\+Command@{core\+::\+Command}!check@{check}}
|
||||
\index{check@{check}!core\+::\+Command@{core\+::\+Command}}
|
||||
\subsubsection{\texorpdfstring{check()}{check()}}
|
||||
{\footnotesize\ttfamily bool core\+::\+Command\+::check (\begin{DoxyParamCaption}\item[{std\+::string}]{request }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}
|
||||
|
||||
Implement check method to provide a special check rule upon the request to see if the command should be processed.
|
||||
|
||||
The default rule is to verify that the first token in the request string matches the name given on the registration of the command to the \hyperlink{classcore_1_1_command_list}{Command\+List}. This can be overridden by implementing the \hyperlink{classcore_1_1_command_abdc0d7a4693a7f7940bbae20c4a667c0}{check()} method to perform the test and return the condition of the command.
|
||||
|
||||
|
||||
\begin{DoxyParams}{Parameters}
|
||||
{\em request} & The request passed to the parser to check the rule. \\
|
||||
\hline
|
||||
\end{DoxyParams}
|
||||
\begin{DoxyReturn}{Returns}
|
||||
Return true to execute the command. Returning false will cause no action on this command.
|
||||
\end{DoxyReturn}
|
||||
\mbox{\Hypertarget{classcore_1_1_command_a314aef05f78aacb802097f8ae0875291}\label{classcore_1_1_command_a314aef05f78aacb802097f8ae0875291}}
|
||||
\index{core\+::\+Command@{core\+::\+Command}!output@{output}}
|
||||
\index{output@{output}!core\+::\+Command@{core\+::\+Command}}
|
||||
\subsubsection{\texorpdfstring{output()}{output()}}
|
||||
{\footnotesize\ttfamily void core\+::\+Command\+::output (\begin{DoxyParamCaption}\item[{Session $\ast$}]{session }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}
|
||||
|
||||
Specify the output that will occur to the specified session.
|
||||
|
||||
|
||||
\begin{DoxyParams}{Parameters}
|
||||
{\em session} & The session that will receive the output. \\
|
||||
\hline
|
||||
\end{DoxyParams}
|
||||
\mbox{\Hypertarget{classcore_1_1_command_a068ebc22f7a067cf23ed2c17f95b06e9}\label{classcore_1_1_command_a068ebc22f7a067cf23ed2c17f95b06e9}}
|
||||
\index{core\+::\+Command@{core\+::\+Command}!process\+Command@{process\+Command}}
|
||||
\index{process\+Command@{process\+Command}!core\+::\+Command@{core\+::\+Command}}
|
||||
\subsubsection{\texorpdfstring{process\+Command()}{processCommand()}}
|
||||
{\footnotesize\ttfamily int core\+::\+Command\+::process\+Command (\begin{DoxyParamCaption}\item[{std\+::string}]{request, }\item[{\hyperlink{classcore_1_1_t_c_p_session}{T\+C\+P\+Session} $\ast$}]{session, }\item[{std\+::stringstream \&}]{data }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}
|
||||
|
||||
This method is used to implement the functionality of the requested command. This pure virtual function must be implemented in your inheriting object.
|
||||
|
||||
|
||||
\begin{DoxyParams}{Parameters}
|
||||
{\em request} & The request that was entered by the user to invoke this command. \\
|
||||
\hline
|
||||
{\em session} & Specify the requesting session so that the execution of the command process can return its output to the session. \\
|
||||
\hline
|
||||
\end{DoxyParams}
|
||||
\begin{DoxyReturn}{Returns}
|
||||
Returns 0 if execution of the command was successful. Otherwise returns a non-\/zero value indicating an error condition.
|
||||
\end{DoxyReturn}
|
||||
|
||||
|
||||
Reimplemented in \hyperlink{classcore_1_1_e_poll_a0c2d7fdaec43d0a15abab0399d5727df}{core\+::\+E\+Poll}, \hyperlink{classcore_1_1_t_c_p_server_a93f64f81bc63f145799af91138a064dc}{core\+::\+T\+C\+P\+Server}, and \hyperlink{classcore_1_1_command_list_a98939555ca061b445019a841726e3ef6}{core\+::\+Command\+List}.
|
||||
|
||||
\mbox{\Hypertarget{classcore_1_1_command_ad8b0321c64838f4d5c8f93461b97cfef}\label{classcore_1_1_command_ad8b0321c64838f4d5c8f93461b97cfef}}
|
||||
\index{core\+::\+Command@{core\+::\+Command}!set\+Name@{set\+Name}}
|
||||
\index{set\+Name@{set\+Name}!core\+::\+Command@{core\+::\+Command}}
|
||||
\subsubsection{\texorpdfstring{set\+Name()}{setName()}}
|
||||
{\footnotesize\ttfamily void core\+::\+Command\+::set\+Name (\begin{DoxyParamCaption}\item[{std\+::string}]{name }\end{DoxyParamCaption})}
|
||||
|
||||
Set the name of this command used in default rule checking during request parsing. N\+O\+TE\+: You do not need to call this under normal conditions as adding a \hyperlink{classcore_1_1_command}{Command} to a \hyperlink{classcore_1_1_command_list}{Command\+List} using the add() method contains a parameter to pass the name of the \hyperlink{classcore_1_1_command}{Command}.
|
||||
|
||||
|
||||
\begin{DoxyParams}{Parameters}
|
||||
{\em name} & Specify the name of this command for default parsing. \\
|
||||
\hline
|
||||
\end{DoxyParams}
|
||||
|
||||
|
||||
The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
|
||||
\item
|
||||
Command.\+h\item
|
||||
Command.\+cpp\end{DoxyCompactItemize}
|
||||
@@ -1 +0,0 @@
|
||||
bed67932de10285ad02f3e59441e88fc
|
||||
Binary file not shown.
@@ -1 +0,0 @@
|
||||
874292dc0e38a469f1dedb341a49da7a
|
||||
Binary file not shown.
@@ -1,88 +0,0 @@
|
||||
\hypertarget{classcore_1_1_command_list}{}\section{core\+:\+:Command\+List Class Reference}
|
||||
\label{classcore_1_1_command_list}\index{core\+::\+Command\+List@{core\+::\+Command\+List}}
|
||||
|
||||
|
||||
{\ttfamily \#include $<$Command\+List.\+h$>$}
|
||||
|
||||
|
||||
|
||||
Inheritance diagram for core\+:\+:Command\+List\+:
|
||||
\nopagebreak
|
||||
\begin{figure}[H]
|
||||
\begin{center}
|
||||
\leavevmode
|
||||
\includegraphics[width=182pt]{classcore_1_1_command_list__inherit__graph}
|
||||
\end{center}
|
||||
\end{figure}
|
||||
|
||||
|
||||
Collaboration diagram for core\+:\+:Command\+List\+:
|
||||
\nopagebreak
|
||||
\begin{figure}[H]
|
||||
\begin{center}
|
||||
\leavevmode
|
||||
\includegraphics[width=182pt]{classcore_1_1_command_list__coll__graph}
|
||||
\end{center}
|
||||
\end{figure}
|
||||
\subsection*{Public Member Functions}
|
||||
\begin{DoxyCompactItemize}
|
||||
\item
|
||||
void \hyperlink{classcore_1_1_command_list_a7a45e75e3d21a25fd3f7e887acf395e9}{add} (\hyperlink{classcore_1_1_command}{Command} \&command, std\+::string name=\char`\"{}\char`\"{})
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_command_list_aaac684effb9ecf5238d23ca60d3fffaa}\label{classcore_1_1_command_list_aaac684effb9ecf5238d23ca60d3fffaa}}
|
||||
void {\bfseries remove} (\hyperlink{classcore_1_1_command}{Command} \&command)
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_command_list_a589f3eba55beebad94a5978970e0650d}\label{classcore_1_1_command_list_a589f3eba55beebad94a5978970e0650d}}
|
||||
bool {\bfseries process\+Request} (std\+::string request, \hyperlink{classcore_1_1_t_c_p_session}{T\+C\+P\+Session} $\ast$session, std\+::stringstream \&data)
|
||||
\item
|
||||
int \hyperlink{classcore_1_1_command_list_a98939555ca061b445019a841726e3ef6}{process\+Command} (std\+::string request, \hyperlink{classcore_1_1_t_c_p_session}{T\+C\+P\+Session} $\ast$session, std\+::stringstream \&data)
|
||||
\end{DoxyCompactItemize}
|
||||
\subsection*{Protected Attributes}
|
||||
\begin{DoxyCompactItemize}
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_command_list_a435f09d15c78dad43e7bca4977d6bdf1}\label{classcore_1_1_command_list_a435f09d15c78dad43e7bca4977d6bdf1}}
|
||||
std\+::vector$<$ \hyperlink{classcore_1_1_command}{Command} $\ast$ $>$ {\bfseries commands}
|
||||
\end{DoxyCompactItemize}
|
||||
\subsection*{Additional Inherited Members}
|
||||
|
||||
|
||||
\subsection{Detailed Description}
|
||||
\hyperlink{classcore_1_1_command_list}{Command\+List}
|
||||
|
||||
This object organizes \hyperlink{classcore_1_1_command}{Command} objects into a list that is used to parse an input and run the process associated with the selected command.
|
||||
|
||||
\subsection{Member Function Documentation}
|
||||
\mbox{\Hypertarget{classcore_1_1_command_list_a7a45e75e3d21a25fd3f7e887acf395e9}\label{classcore_1_1_command_list_a7a45e75e3d21a25fd3f7e887acf395e9}}
|
||||
\index{core\+::\+Command\+List@{core\+::\+Command\+List}!add@{add}}
|
||||
\index{add@{add}!core\+::\+Command\+List@{core\+::\+Command\+List}}
|
||||
\subsubsection{\texorpdfstring{add()}{add()}}
|
||||
{\footnotesize\ttfamily void core\+::\+Command\+List\+::add (\begin{DoxyParamCaption}\item[{\hyperlink{classcore_1_1_command}{Command} \&}]{command, }\item[{std\+::string}]{name = {\ttfamily \char`\"{}\char`\"{}} }\end{DoxyParamCaption})}
|
||||
|
||||
Add a new command to the command list and assign a default search value. \mbox{\Hypertarget{classcore_1_1_command_list_a98939555ca061b445019a841726e3ef6}\label{classcore_1_1_command_list_a98939555ca061b445019a841726e3ef6}}
|
||||
\index{core\+::\+Command\+List@{core\+::\+Command\+List}!process\+Command@{process\+Command}}
|
||||
\index{process\+Command@{process\+Command}!core\+::\+Command\+List@{core\+::\+Command\+List}}
|
||||
\subsubsection{\texorpdfstring{process\+Command()}{processCommand()}}
|
||||
{\footnotesize\ttfamily int core\+::\+Command\+List\+::process\+Command (\begin{DoxyParamCaption}\item[{std\+::string}]{request, }\item[{\hyperlink{classcore_1_1_t_c_p_session}{T\+C\+P\+Session} $\ast$}]{session, }\item[{std\+::stringstream \&}]{data }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}
|
||||
|
||||
This method is used to implement the functionality of the requested command. This pure virtual function must be implemented in your inheriting object.
|
||||
|
||||
|
||||
\begin{DoxyParams}{Parameters}
|
||||
{\em request} & The request that was entered by the user to invoke this command. \\
|
||||
\hline
|
||||
{\em session} & Specify the requesting session so that the execution of the command process can return its output to the session. \\
|
||||
\hline
|
||||
\end{DoxyParams}
|
||||
\begin{DoxyReturn}{Returns}
|
||||
Returns 0 if execution of the command was successful. Otherwise returns a non-\/zero value indicating an error condition.
|
||||
\end{DoxyReturn}
|
||||
|
||||
|
||||
Reimplemented from \hyperlink{classcore_1_1_command_a068ebc22f7a067cf23ed2c17f95b06e9}{core\+::\+Command}.
|
||||
|
||||
|
||||
|
||||
The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
|
||||
\item
|
||||
Command\+List.\+h\item
|
||||
Command\+List.\+cpp\end{DoxyCompactItemize}
|
||||
@@ -1 +0,0 @@
|
||||
961f7d9d2264d448dc9a2232b865c966
|
||||
Binary file not shown.
@@ -1 +0,0 @@
|
||||
fd6b0b8bec19a67555453bba23012fe7
|
||||
Binary file not shown.
@@ -1,53 +0,0 @@
|
||||
\hypertarget{classcore_1_1_console_server}{}\section{core\+:\+:Console\+Server Class Reference}
|
||||
\label{classcore_1_1_console_server}\index{core\+::\+Console\+Server@{core\+::\+Console\+Server}}
|
||||
|
||||
|
||||
Inheritance diagram for core\+:\+:Console\+Server\+:
|
||||
\nopagebreak
|
||||
\begin{figure}[H]
|
||||
\begin{center}
|
||||
\leavevmode
|
||||
\includegraphics[width=350pt]{classcore_1_1_console_server__inherit__graph}
|
||||
\end{center}
|
||||
\end{figure}
|
||||
|
||||
|
||||
Collaboration diagram for core\+:\+:Console\+Server\+:
|
||||
\nopagebreak
|
||||
\begin{figure}[H]
|
||||
\begin{center}
|
||||
\leavevmode
|
||||
\includegraphics[width=350pt]{classcore_1_1_console_server__coll__graph}
|
||||
\end{center}
|
||||
\end{figure}
|
||||
\subsection*{Public Member Functions}
|
||||
\begin{DoxyCompactItemize}
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_console_server_a938c93207ced5bfa3e15e9f4a1cbf3f0}\label{classcore_1_1_console_server_a938c93207ced5bfa3e15e9f4a1cbf3f0}}
|
||||
{\bfseries Console\+Server} (\hyperlink{classcore_1_1_e_poll}{E\+Poll} \&e\+Poll, \hyperlink{classcore_1_1_i_p_address}{I\+P\+Address} address)
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_console_server_ace482706881fd6cbec4e01534c091391}\label{classcore_1_1_console_server_ace482706881fd6cbec4e01534c091391}}
|
||||
void {\bfseries log\+Send} (std\+::string out) override
|
||||
\item
|
||||
\hyperlink{classcore_1_1_t_c_p_session}{T\+C\+P\+Session} $\ast$ \hyperlink{classcore_1_1_console_server_a80d9ea7f3fc5e07c50d5b9e0d4943ca8}{get\+Socket\+Accept} (\hyperlink{classcore_1_1_e_poll}{E\+Poll} \&e\+Poll) override
|
||||
\end{DoxyCompactItemize}
|
||||
\subsection*{Additional Inherited Members}
|
||||
|
||||
|
||||
\subsection{Member Function Documentation}
|
||||
\mbox{\Hypertarget{classcore_1_1_console_server_a80d9ea7f3fc5e07c50d5b9e0d4943ca8}\label{classcore_1_1_console_server_a80d9ea7f3fc5e07c50d5b9e0d4943ca8}}
|
||||
\index{core\+::\+Console\+Server@{core\+::\+Console\+Server}!get\+Socket\+Accept@{get\+Socket\+Accept}}
|
||||
\index{get\+Socket\+Accept@{get\+Socket\+Accept}!core\+::\+Console\+Server@{core\+::\+Console\+Server}}
|
||||
\subsubsection{\texorpdfstring{get\+Socket\+Accept()}{getSocketAccept()}}
|
||||
{\footnotesize\ttfamily \hyperlink{classcore_1_1_t_c_p_session}{T\+C\+P\+Session} $\ast$ core\+::\+Console\+Server\+::get\+Socket\+Accept (\begin{DoxyParamCaption}\item[{\hyperlink{classcore_1_1_e_poll}{E\+Poll} \&}]{epoll }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}}
|
||||
|
||||
get\+Socket\+Accept is designed to allow a polymorphic extension of this object to return a type of object that extends the definition of the server socket. Returning the appropriate session object that extends from Session provides the mechanism where the server can select the protocol dialog for the desired service.
|
||||
|
||||
Reimplemented from \hyperlink{classcore_1_1_t_c_p_server_a841f02799ad8529aad7cea132f4de8a9}{core\+::\+T\+C\+P\+Server}.
|
||||
|
||||
|
||||
|
||||
The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
|
||||
\item
|
||||
Console\+Server.\+h\item
|
||||
Console\+Server.\+cpp\end{DoxyCompactItemize}
|
||||
@@ -1 +0,0 @@
|
||||
d25657445425e2f5f64214d48bba7fd5
|
||||
Binary file not shown.
@@ -1 +0,0 @@
|
||||
fc9e9355d896bd101c94e55e595010e6
|
||||
Binary file not shown.
@@ -1,65 +0,0 @@
|
||||
\hypertarget{classcore_1_1_console_session}{}\section{core\+:\+:Console\+Session Class Reference}
|
||||
\label{classcore_1_1_console_session}\index{core\+::\+Console\+Session@{core\+::\+Console\+Session}}
|
||||
|
||||
|
||||
{\ttfamily \#include $<$Console\+Session.\+h$>$}
|
||||
|
||||
|
||||
|
||||
Inheritance diagram for core\+:\+:Console\+Session\+:
|
||||
\nopagebreak
|
||||
\begin{figure}[H]
|
||||
\begin{center}
|
||||
\leavevmode
|
||||
\includegraphics[width=248pt]{classcore_1_1_console_session__inherit__graph}
|
||||
\end{center}
|
||||
\end{figure}
|
||||
|
||||
|
||||
Collaboration diagram for core\+:\+:Console\+Session\+:
|
||||
\nopagebreak
|
||||
\begin{figure}[H]
|
||||
\begin{center}
|
||||
\leavevmode
|
||||
\includegraphics[width=350pt]{classcore_1_1_console_session__coll__graph}
|
||||
\end{center}
|
||||
\end{figure}
|
||||
\subsection*{Public Member Functions}
|
||||
\begin{DoxyCompactItemize}
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_console_session_ae735e9739fb4cfd2ef983cc56f9982c7}\label{classcore_1_1_console_session_ae735e9739fb4cfd2ef983cc56f9982c7}}
|
||||
{\bfseries Console\+Session} (\hyperlink{classcore_1_1_e_poll}{E\+Poll} \&e\+Poll, \hyperlink{classcore_1_1_t_c_p_server}{T\+C\+P\+Server} \&server)
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_console_session_a6e6b56503966f1cae5bdff8b3814e2b9}\label{classcore_1_1_console_session_a6e6b56503966f1cae5bdff8b3814e2b9}}
|
||||
void {\bfseries write\+Log} (std\+::string data)
|
||||
\end{DoxyCompactItemize}
|
||||
\subsection*{Protected Member Functions}
|
||||
\begin{DoxyCompactItemize}
|
||||
\item
|
||||
void \hyperlink{classcore_1_1_console_session_a830cc1e1e0c3fe3b066f0a9f7f469490}{protocol} (std\+::string data) override
|
||||
\end{DoxyCompactItemize}
|
||||
\subsection*{Additional Inherited Members}
|
||||
|
||||
|
||||
\subsection{Detailed Description}
|
||||
\hyperlink{classcore_1_1_console_session}{Console\+Session}
|
||||
|
||||
Extends the session parameters for this \hyperlink{classcore_1_1_t_c_p_socket}{T\+C\+P\+Socket} derived object. Extend the \hyperlink{classcore_1_1_console_session_a830cc1e1e0c3fe3b066f0a9f7f469490}{protocol()} method in order to define the behavior and protocol interaction for this socket which is a console session.
|
||||
|
||||
\subsection{Member Function Documentation}
|
||||
\mbox{\Hypertarget{classcore_1_1_console_session_a830cc1e1e0c3fe3b066f0a9f7f469490}\label{classcore_1_1_console_session_a830cc1e1e0c3fe3b066f0a9f7f469490}}
|
||||
\index{core\+::\+Console\+Session@{core\+::\+Console\+Session}!protocol@{protocol}}
|
||||
\index{protocol@{protocol}!core\+::\+Console\+Session@{core\+::\+Console\+Session}}
|
||||
\subsubsection{\texorpdfstring{protocol()}{protocol()}}
|
||||
{\footnotesize\ttfamily void core\+::\+Console\+Session\+::protocol (\begin{DoxyParamCaption}\item[{std\+::string}]{data = {\ttfamily \char`\"{}\char`\"{}} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [protected]}, {\ttfamily [virtual]}}
|
||||
|
||||
Override the protocol method to manage and control the session communications in your inherited session. If you do not override this method then the Session default will process the \textquotesingle{}commands\textquotesingle{} added to the server object using the process\+Request method on the session input.
|
||||
|
||||
Reimplemented from \hyperlink{classcore_1_1_t_c_p_session_ae90dc64e2d3c4b3239117923145edb3f}{core\+::\+T\+C\+P\+Session}.
|
||||
|
||||
|
||||
|
||||
The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
|
||||
\item
|
||||
Console\+Session.\+h\item
|
||||
Console\+Session.\+cpp\end{DoxyCompactItemize}
|
||||
@@ -1 +0,0 @@
|
||||
52cb4d865b03cdc8f4c24fa90a6fe6a6
|
||||
Binary file not shown.
@@ -1 +0,0 @@
|
||||
f11fbad1afaf282d1ef4e148ae494b62
|
||||
Binary file not shown.
@@ -1,226 +0,0 @@
|
||||
\hypertarget{classcore_1_1_e_poll}{}\section{core\+:\+:E\+Poll Class Reference}
|
||||
\label{classcore_1_1_e_poll}\index{core\+::\+E\+Poll@{core\+::\+E\+Poll}}
|
||||
|
||||
|
||||
{\ttfamily \#include $<$E\+Poll.\+h$>$}
|
||||
|
||||
|
||||
|
||||
Inheritance diagram for core\+:\+:E\+Poll\+:
|
||||
\nopagebreak
|
||||
\begin{figure}[H]
|
||||
\begin{center}
|
||||
\leavevmode
|
||||
\includegraphics[width=166pt]{classcore_1_1_e_poll__inherit__graph}
|
||||
\end{center}
|
||||
\end{figure}
|
||||
|
||||
|
||||
Collaboration diagram for core\+:\+:E\+Poll\+:
|
||||
\nopagebreak
|
||||
\begin{figure}[H]
|
||||
\begin{center}
|
||||
\leavevmode
|
||||
\includegraphics[width=166pt]{classcore_1_1_e_poll__coll__graph}
|
||||
\end{center}
|
||||
\end{figure}
|
||||
\subsection*{Public Member Functions}
|
||||
\begin{DoxyCompactItemize}
|
||||
\item
|
||||
\hyperlink{classcore_1_1_e_poll_a2fd5cc4336b5f72990ecc0e7ea3d7641}{E\+Poll} ()
|
||||
\item
|
||||
\hyperlink{classcore_1_1_e_poll_a8e7a2496d684b745a6410f9bd3e88534}{$\sim$\+E\+Poll} ()
|
||||
\item
|
||||
bool \hyperlink{classcore_1_1_e_poll_aaefe2caef75eb538af90cb34682d277b}{start} (int number\+Of\+Threads, int \hyperlink{classcore_1_1_e_poll_acfcef2513d94f7b9a191fed3dc744d90}{max\+Sockets})
|
||||
\begin{DoxyCompactList}\small\item\em Start the B\+M\+A\+E\+Poll processing. \end{DoxyCompactList}\item
|
||||
bool \hyperlink{classcore_1_1_e_poll_a0c2865acd31d14fbf19dbc42cc084ddc}{stop} ()
|
||||
\begin{DoxyCompactList}\small\item\em Stop and shut down the B\+M\+A\+E\+Poll processing. \end{DoxyCompactList}\item
|
||||
bool \hyperlink{classcore_1_1_e_poll_a301b46b71ac7ac61a687ff723fe269b3}{is\+Stopping} ()
|
||||
\begin{DoxyCompactList}\small\item\em Returns a true if the stop command has been requested. \end{DoxyCompactList}\item
|
||||
bool \hyperlink{classcore_1_1_e_poll_a3d813c7bbf0da70ebc8e3cb6aeeacfb4}{register\+Socket} (\hyperlink{classcore_1_1_socket}{Socket} $\ast$socket)
|
||||
\begin{DoxyCompactList}\small\item\em Register a B\+M\+A\+Socket for monitoring by B\+M\+A\+E\+Poll. \end{DoxyCompactList}\item
|
||||
bool \hyperlink{classcore_1_1_e_poll_a5ab5e82ab51e0952fc8fbcc128f52900}{unregister\+Socket} (\hyperlink{classcore_1_1_socket}{Socket} $\ast$socket)
|
||||
\begin{DoxyCompactList}\small\item\em Unregister a B\+M\+A\+Socket from monitoring by B\+M\+A\+E\+Poll. \end{DoxyCompactList}\item
|
||||
int \hyperlink{classcore_1_1_e_poll_a1e52017e1deae15c1c87c6b6a099e1ed}{get\+Descriptor} ()
|
||||
\begin{DoxyCompactList}\small\item\em Return the descriptor for the e\+Poll socket. \end{DoxyCompactList}\item
|
||||
void \hyperlink{classcore_1_1_e_poll_a3238b150b5d0a57eb2e1b17daa236d3b}{event\+Received} (struct epoll\+\_\+event event)
|
||||
\begin{DoxyCompactList}\small\item\em Dispatch event to appropriate socket. \end{DoxyCompactList}\item
|
||||
int \hyperlink{classcore_1_1_e_poll_a0c2d7fdaec43d0a15abab0399d5727df}{process\+Command} (std\+::string command, \hyperlink{classcore_1_1_t_c_p_session}{T\+C\+P\+Session} $\ast$session, std\+::stringstream \&data) override
|
||||
\begin{DoxyCompactList}\small\item\em Output the threads array to the console. \end{DoxyCompactList}\end{DoxyCompactItemize}
|
||||
\subsection*{Public Attributes}
|
||||
\begin{DoxyCompactItemize}
|
||||
\item
|
||||
int \hyperlink{classcore_1_1_e_poll_acfcef2513d94f7b9a191fed3dc744d90}{max\+Sockets}
|
||||
\begin{DoxyCompactList}\small\item\em The maximum number of socket allowed. \end{DoxyCompactList}\end{DoxyCompactItemize}
|
||||
|
||||
|
||||
\subsection{Detailed Description}
|
||||
\hyperlink{classcore_1_1_e_poll}{E\+Poll}
|
||||
|
||||
Manage socket events from the epoll system call.
|
||||
|
||||
Use this object to establish a socket server using the epoll network structure of Linux.
|
||||
|
||||
Use this object to establish the basis of working with multiple sockets of all sorts using the epoll capabilities of the Linux platform. \hyperlink{classcore_1_1_socket}{Socket} objects can register with B\+M\+A\+E\+Poll which will establish a communication mechanism with that socket.
|
||||
|
||||
The maximum number of sockets to communicate with is specified on the start method.
|
||||
|
||||
Threads are used to establish a read queue for epoll. The desired number of threads (or queues) is established by a parameter on the start method.
|
||||
|
||||
\subsection{Constructor \& Destructor Documentation}
|
||||
\mbox{\Hypertarget{classcore_1_1_e_poll_a2fd5cc4336b5f72990ecc0e7ea3d7641}\label{classcore_1_1_e_poll_a2fd5cc4336b5f72990ecc0e7ea3d7641}}
|
||||
\index{core\+::\+E\+Poll@{core\+::\+E\+Poll}!E\+Poll@{E\+Poll}}
|
||||
\index{E\+Poll@{E\+Poll}!core\+::\+E\+Poll@{core\+::\+E\+Poll}}
|
||||
\subsubsection{\texorpdfstring{E\+Poll()}{EPoll()}}
|
||||
{\footnotesize\ttfamily core\+::\+E\+Poll\+::\+E\+Poll (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}
|
||||
|
||||
The constructor for the B\+M\+A\+E\+Poll object. \mbox{\Hypertarget{classcore_1_1_e_poll_a8e7a2496d684b745a6410f9bd3e88534}\label{classcore_1_1_e_poll_a8e7a2496d684b745a6410f9bd3e88534}}
|
||||
\index{core\+::\+E\+Poll@{core\+::\+E\+Poll}!````~E\+Poll@{$\sim$\+E\+Poll}}
|
||||
\index{````~E\+Poll@{$\sim$\+E\+Poll}!core\+::\+E\+Poll@{core\+::\+E\+Poll}}
|
||||
\subsubsection{\texorpdfstring{$\sim$\+E\+Poll()}{~EPoll()}}
|
||||
{\footnotesize\ttfamily core\+::\+E\+Poll\+::$\sim$\+E\+Poll (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}
|
||||
|
||||
The destructor for the B\+M\+A\+E\+Poll object.
|
||||
|
||||
\subsection{Member Function Documentation}
|
||||
\mbox{\Hypertarget{classcore_1_1_e_poll_a3238b150b5d0a57eb2e1b17daa236d3b}\label{classcore_1_1_e_poll_a3238b150b5d0a57eb2e1b17daa236d3b}}
|
||||
\index{core\+::\+E\+Poll@{core\+::\+E\+Poll}!event\+Received@{event\+Received}}
|
||||
\index{event\+Received@{event\+Received}!core\+::\+E\+Poll@{core\+::\+E\+Poll}}
|
||||
\subsubsection{\texorpdfstring{event\+Received()}{eventReceived()}}
|
||||
{\footnotesize\ttfamily void core\+::\+E\+Poll\+::event\+Received (\begin{DoxyParamCaption}\item[{struct epoll\+\_\+event}]{event }\end{DoxyParamCaption})}
|
||||
|
||||
|
||||
|
||||
Dispatch event to appropriate socket.
|
||||
|
||||
Receive the epoll events and dispatch the event to the socket making the request. \mbox{\Hypertarget{classcore_1_1_e_poll_a1e52017e1deae15c1c87c6b6a099e1ed}\label{classcore_1_1_e_poll_a1e52017e1deae15c1c87c6b6a099e1ed}}
|
||||
\index{core\+::\+E\+Poll@{core\+::\+E\+Poll}!get\+Descriptor@{get\+Descriptor}}
|
||||
\index{get\+Descriptor@{get\+Descriptor}!core\+::\+E\+Poll@{core\+::\+E\+Poll}}
|
||||
\subsubsection{\texorpdfstring{get\+Descriptor()}{getDescriptor()}}
|
||||
{\footnotesize\ttfamily int core\+::\+E\+Poll\+::get\+Descriptor (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}
|
||||
|
||||
|
||||
|
||||
Return the descriptor for the e\+Poll socket.
|
||||
|
||||
Use this method to obtain the current descriptor socket number for the epoll function call. \mbox{\Hypertarget{classcore_1_1_e_poll_a301b46b71ac7ac61a687ff723fe269b3}\label{classcore_1_1_e_poll_a301b46b71ac7ac61a687ff723fe269b3}}
|
||||
\index{core\+::\+E\+Poll@{core\+::\+E\+Poll}!is\+Stopping@{is\+Stopping}}
|
||||
\index{is\+Stopping@{is\+Stopping}!core\+::\+E\+Poll@{core\+::\+E\+Poll}}
|
||||
\subsubsection{\texorpdfstring{is\+Stopping()}{isStopping()}}
|
||||
{\footnotesize\ttfamily bool core\+::\+E\+Poll\+::is\+Stopping (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}
|
||||
|
||||
|
||||
|
||||
Returns a true if the stop command has been requested.
|
||||
|
||||
This method returns a true if the \hyperlink{classcore_1_1_e_poll_a0c2865acd31d14fbf19dbc42cc084ddc}{stop()} method has been called and the epoll system is shutting. \mbox{\Hypertarget{classcore_1_1_e_poll_a0c2d7fdaec43d0a15abab0399d5727df}\label{classcore_1_1_e_poll_a0c2d7fdaec43d0a15abab0399d5727df}}
|
||||
\index{core\+::\+E\+Poll@{core\+::\+E\+Poll}!process\+Command@{process\+Command}}
|
||||
\index{process\+Command@{process\+Command}!core\+::\+E\+Poll@{core\+::\+E\+Poll}}
|
||||
\subsubsection{\texorpdfstring{process\+Command()}{processCommand()}}
|
||||
{\footnotesize\ttfamily int core\+::\+E\+Poll\+::process\+Command (\begin{DoxyParamCaption}\item[{std\+::string}]{command, }\item[{\hyperlink{classcore_1_1_t_c_p_session}{T\+C\+P\+Session} $\ast$}]{session, }\item[{std\+::stringstream \&}]{data }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}}
|
||||
|
||||
|
||||
|
||||
Output the threads array to the console.
|
||||
|
||||
The \hyperlink{classcore_1_1_e_poll_a0c2d7fdaec43d0a15abab0399d5727df}{process\+Command()} method displays the thread array to the requesting console via the session passed as parameter.
|
||||
|
||||
|
||||
\begin{DoxyParams}{Parameters}
|
||||
{\em session} & the session to write the requested data to. \\
|
||||
\hline
|
||||
\end{DoxyParams}
|
||||
|
||||
|
||||
Reimplemented from \hyperlink{classcore_1_1_command_a068ebc22f7a067cf23ed2c17f95b06e9}{core\+::\+Command}.
|
||||
|
||||
\mbox{\Hypertarget{classcore_1_1_e_poll_a3d813c7bbf0da70ebc8e3cb6aeeacfb4}\label{classcore_1_1_e_poll_a3d813c7bbf0da70ebc8e3cb6aeeacfb4}}
|
||||
\index{core\+::\+E\+Poll@{core\+::\+E\+Poll}!register\+Socket@{register\+Socket}}
|
||||
\index{register\+Socket@{register\+Socket}!core\+::\+E\+Poll@{core\+::\+E\+Poll}}
|
||||
\subsubsection{\texorpdfstring{register\+Socket()}{registerSocket()}}
|
||||
{\footnotesize\ttfamily bool core\+::\+E\+Poll\+::register\+Socket (\begin{DoxyParamCaption}\item[{\hyperlink{classcore_1_1_socket}{Socket} $\ast$}]{socket }\end{DoxyParamCaption})}
|
||||
|
||||
|
||||
|
||||
Register a B\+M\+A\+Socket for monitoring by B\+M\+A\+E\+Poll.
|
||||
|
||||
Use register\+Socket to add a new socket to the e\+Poll event watch list. This enables a new B\+M\+A\+Socket object to receive events when data is received as well as to write data output to the socket.
|
||||
|
||||
|
||||
\begin{DoxyParams}{Parameters}
|
||||
{\em socket} & a pointer to a B\+M\+A\+Socket object. \\
|
||||
\hline
|
||||
\end{DoxyParams}
|
||||
\begin{DoxyReturn}{Returns}
|
||||
a booelean that indicates the socket was registered or not.
|
||||
\end{DoxyReturn}
|
||||
|
||||
\begin{DoxyParams}{Parameters}
|
||||
{\em socket} & The \hyperlink{classcore_1_1_socket}{Socket} to register. \\
|
||||
\hline
|
||||
\end{DoxyParams}
|
||||
\mbox{\Hypertarget{classcore_1_1_e_poll_aaefe2caef75eb538af90cb34682d277b}\label{classcore_1_1_e_poll_aaefe2caef75eb538af90cb34682d277b}}
|
||||
\index{core\+::\+E\+Poll@{core\+::\+E\+Poll}!start@{start}}
|
||||
\index{start@{start}!core\+::\+E\+Poll@{core\+::\+E\+Poll}}
|
||||
\subsubsection{\texorpdfstring{start()}{start()}}
|
||||
{\footnotesize\ttfamily bool core\+::\+E\+Poll\+::start (\begin{DoxyParamCaption}\item[{int}]{number\+Of\+Threads, }\item[{int}]{max\+Sockets }\end{DoxyParamCaption})}
|
||||
|
||||
|
||||
|
||||
Start the B\+M\+A\+E\+Poll processing.
|
||||
|
||||
Use the \hyperlink{classcore_1_1_e_poll_aaefe2caef75eb538af90cb34682d277b}{start()} method to initiate the threads and begin epoll queue processing.
|
||||
|
||||
|
||||
\begin{DoxyParams}{Parameters}
|
||||
{\em number\+Of\+Threads} & the number of threads to start for processing epoll entries. \\
|
||||
\hline
|
||||
{\em max\+Sockets} & the maximum number of open sockets that epoll will manage. \\
|
||||
\hline
|
||||
\end{DoxyParams}
|
||||
\mbox{\Hypertarget{classcore_1_1_e_poll_a0c2865acd31d14fbf19dbc42cc084ddc}\label{classcore_1_1_e_poll_a0c2865acd31d14fbf19dbc42cc084ddc}}
|
||||
\index{core\+::\+E\+Poll@{core\+::\+E\+Poll}!stop@{stop}}
|
||||
\index{stop@{stop}!core\+::\+E\+Poll@{core\+::\+E\+Poll}}
|
||||
\subsubsection{\texorpdfstring{stop()}{stop()}}
|
||||
{\footnotesize\ttfamily bool core\+::\+E\+Poll\+::stop (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}
|
||||
|
||||
|
||||
|
||||
Stop and shut down the B\+M\+A\+E\+Poll processing.
|
||||
|
||||
Use the \hyperlink{classcore_1_1_e_poll_a0c2865acd31d14fbf19dbc42cc084ddc}{stop()} method to initiate the shutdown process for the epoll socket management.
|
||||
|
||||
A complete shutdown of all managed sockets will be initiated by this method call. \mbox{\Hypertarget{classcore_1_1_e_poll_a5ab5e82ab51e0952fc8fbcc128f52900}\label{classcore_1_1_e_poll_a5ab5e82ab51e0952fc8fbcc128f52900}}
|
||||
\index{core\+::\+E\+Poll@{core\+::\+E\+Poll}!unregister\+Socket@{unregister\+Socket}}
|
||||
\index{unregister\+Socket@{unregister\+Socket}!core\+::\+E\+Poll@{core\+::\+E\+Poll}}
|
||||
\subsubsection{\texorpdfstring{unregister\+Socket()}{unregisterSocket()}}
|
||||
{\footnotesize\ttfamily bool core\+::\+E\+Poll\+::unregister\+Socket (\begin{DoxyParamCaption}\item[{\hyperlink{classcore_1_1_socket}{Socket} $\ast$}]{socket }\end{DoxyParamCaption})}
|
||||
|
||||
|
||||
|
||||
Unregister a B\+M\+A\+Socket from monitoring by B\+M\+A\+E\+Poll.
|
||||
|
||||
Use this method to remove a socket from receiving events from the epoll system.
|
||||
\begin{DoxyParams}{Parameters}
|
||||
{\em socket} & The \hyperlink{classcore_1_1_socket}{Socket} to unregister. \\
|
||||
\hline
|
||||
\end{DoxyParams}
|
||||
|
||||
|
||||
\subsection{Member Data Documentation}
|
||||
\mbox{\Hypertarget{classcore_1_1_e_poll_acfcef2513d94f7b9a191fed3dc744d90}\label{classcore_1_1_e_poll_acfcef2513d94f7b9a191fed3dc744d90}}
|
||||
\index{core\+::\+E\+Poll@{core\+::\+E\+Poll}!max\+Sockets@{max\+Sockets}}
|
||||
\index{max\+Sockets@{max\+Sockets}!core\+::\+E\+Poll@{core\+::\+E\+Poll}}
|
||||
\subsubsection{\texorpdfstring{max\+Sockets}{maxSockets}}
|
||||
{\footnotesize\ttfamily int core\+::\+E\+Poll\+::max\+Sockets}
|
||||
|
||||
|
||||
|
||||
The maximum number of socket allowed.
|
||||
|
||||
The maximum number of sockets that can be managed by the epoll system.
|
||||
|
||||
The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
|
||||
\item
|
||||
E\+Poll.\+h\item
|
||||
E\+Poll.\+cpp\end{DoxyCompactItemize}
|
||||
@@ -1 +0,0 @@
|
||||
4680177dcffbf9af71baaa4695c46637
|
||||
Binary file not shown.
@@ -1 +0,0 @@
|
||||
6d8867cd822b3b9737e41393bb096197
|
||||
Binary file not shown.
@@ -1,58 +0,0 @@
|
||||
\hypertarget{classcore_1_1_i_p_address}{}\section{core\+:\+:I\+P\+Address Class Reference}
|
||||
\label{classcore_1_1_i_p_address}\index{core\+::\+I\+P\+Address@{core\+::\+I\+P\+Address}}
|
||||
|
||||
|
||||
Inheritance diagram for core\+:\+:I\+P\+Address\+:
|
||||
\nopagebreak
|
||||
\begin{figure}[H]
|
||||
\begin{center}
|
||||
\leavevmode
|
||||
\includegraphics[width=167pt]{classcore_1_1_i_p_address__inherit__graph}
|
||||
\end{center}
|
||||
\end{figure}
|
||||
|
||||
|
||||
Collaboration diagram for core\+:\+:I\+P\+Address\+:
|
||||
\nopagebreak
|
||||
\begin{figure}[H]
|
||||
\begin{center}
|
||||
\leavevmode
|
||||
\includegraphics[width=167pt]{classcore_1_1_i_p_address__coll__graph}
|
||||
\end{center}
|
||||
\end{figure}
|
||||
\subsection*{Public Member Functions}
|
||||
\begin{DoxyCompactItemize}
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_i_p_address_a31fb55b1b979f0e8a07446285f9a99f8}\label{classcore_1_1_i_p_address_a31fb55b1b979f0e8a07446285f9a99f8}}
|
||||
{\bfseries I\+P\+Address} (std\+::string address)
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_i_p_address_a37d942b8fae09010adbda33f714808c0}\label{classcore_1_1_i_p_address_a37d942b8fae09010adbda33f714808c0}}
|
||||
{\bfseries I\+P\+Address} (std\+::string address, int port)
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_i_p_address_a095a5ab48cc72161c1614ddfa89ac3ee}\label{classcore_1_1_i_p_address_a095a5ab48cc72161c1614ddfa89ac3ee}}
|
||||
struct sockaddr $\ast$ {\bfseries get\+Pointer} ()
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_i_p_address_ae5e7e28589d026bbbc6c3423d418b008}\label{classcore_1_1_i_p_address_ae5e7e28589d026bbbc6c3423d418b008}}
|
||||
std\+::string \hyperlink{classcore_1_1_i_p_address_ae5e7e28589d026bbbc6c3423d418b008}{get\+Client\+Address} ()
|
||||
\begin{DoxyCompactList}\small\item\em Get the client network address as xxx.\+xxx.\+xxx.\+xxx. \end{DoxyCompactList}\item
|
||||
\mbox{\Hypertarget{classcore_1_1_i_p_address_abea870f1a048cb7bba1d2bad98558232}\label{classcore_1_1_i_p_address_abea870f1a048cb7bba1d2bad98558232}}
|
||||
std\+::string \hyperlink{classcore_1_1_i_p_address_abea870f1a048cb7bba1d2bad98558232}{get\+Client\+Address\+And\+Port} ()
|
||||
\begin{DoxyCompactList}\small\item\em Get the client network address and port as xxx.\+xxx.\+xxx.\+xxx\+:ppppp. \end{DoxyCompactList}\item
|
||||
\mbox{\Hypertarget{classcore_1_1_i_p_address_a39f706f2d43d7d001296ecead4b587e8}\label{classcore_1_1_i_p_address_a39f706f2d43d7d001296ecead4b587e8}}
|
||||
int \hyperlink{classcore_1_1_i_p_address_a39f706f2d43d7d001296ecead4b587e8}{get\+Client\+Port} ()
|
||||
\begin{DoxyCompactList}\small\item\em Get the client network port number. \end{DoxyCompactList}\end{DoxyCompactItemize}
|
||||
\subsection*{Public Attributes}
|
||||
\begin{DoxyCompactItemize}
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_i_p_address_ac1291bdc515fc5b2c9ba177ddec06454}\label{classcore_1_1_i_p_address_ac1291bdc515fc5b2c9ba177ddec06454}}
|
||||
struct sockaddr\+\_\+in {\bfseries addr}
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_i_p_address_a00856ef1b1deccd0341cd7ea6d1bc8e5}\label{classcore_1_1_i_p_address_a00856ef1b1deccd0341cd7ea6d1bc8e5}}
|
||||
socklen\+\_\+t {\bfseries address\+Length}
|
||||
\end{DoxyCompactItemize}
|
||||
|
||||
|
||||
The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
|
||||
\item
|
||||
I\+P\+Address.\+h\item
|
||||
I\+P\+Address.\+cpp\end{DoxyCompactItemize}
|
||||
@@ -1 +0,0 @@
|
||||
da636a7561373f43c06c83cd6242d08f
|
||||
Binary file not shown.
@@ -1 +0,0 @@
|
||||
bf8c177a1686af2251cf944afd0441de
|
||||
Binary file not shown.
@@ -1,23 +0,0 @@
|
||||
\hypertarget{classcore_1_1_i_p_address_list}{}\section{core\+:\+:I\+P\+Address\+List Class Reference}
|
||||
\label{classcore_1_1_i_p_address_list}\index{core\+::\+I\+P\+Address\+List@{core\+::\+I\+P\+Address\+List}}
|
||||
\subsection*{Public Member Functions}
|
||||
\begin{DoxyCompactItemize}
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_i_p_address_list_a740cf5f7e2633836b7a741b9f048036f}\label{classcore_1_1_i_p_address_list_a740cf5f7e2633836b7a741b9f048036f}}
|
||||
std\+::map$<$ std\+::string, \hyperlink{classcore_1_1_i_p_address}{I\+P\+Address} $>$ {\bfseries get\+List} ()
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_i_p_address_list_a6133d1065d28b5ceac4daf7f379b6a60}\label{classcore_1_1_i_p_address_list_a6133d1065d28b5ceac4daf7f379b6a60}}
|
||||
bool {\bfseries add} (\hyperlink{classcore_1_1_i_p_address}{I\+P\+Address} ip\+Address)
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_i_p_address_list_a86e9890e15e8e0d87e34f36b637d5c40}\label{classcore_1_1_i_p_address_list_a86e9890e15e8e0d87e34f36b637d5c40}}
|
||||
bool {\bfseries remove} (\hyperlink{classcore_1_1_i_p_address}{I\+P\+Address} ip\+Address)
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_i_p_address_list_add254c996687fd8f9ada0b5335e477cd}\label{classcore_1_1_i_p_address_list_add254c996687fd8f9ada0b5335e477cd}}
|
||||
bool {\bfseries contains} (std\+::string ip\+Address)
|
||||
\end{DoxyCompactItemize}
|
||||
|
||||
|
||||
The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
|
||||
\item
|
||||
I\+P\+Address\+List.\+h\item
|
||||
I\+P\+Address\+List.\+cpp\end{DoxyCompactItemize}
|
||||
@@ -1,26 +0,0 @@
|
||||
\hypertarget{classcore_1_1_object}{}\section{core\+:\+:Object Class Reference}
|
||||
\label{classcore_1_1_object}\index{core\+::\+Object@{core\+::\+Object}}
|
||||
|
||||
|
||||
Inheritance diagram for core\+:\+:Object\+:
|
||||
\nopagebreak
|
||||
\begin{figure}[H]
|
||||
\begin{center}
|
||||
\leavevmode
|
||||
\includegraphics[width=350pt]{classcore_1_1_object__inherit__graph}
|
||||
\end{center}
|
||||
\end{figure}
|
||||
\subsection*{Public Attributes}
|
||||
\begin{DoxyCompactItemize}
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_object_aa096b2bab35f1019c91077ef3ec106ce}\label{classcore_1_1_object_aa096b2bab35f1019c91077ef3ec106ce}}
|
||||
std\+::string {\bfseries name}
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_object_ad503c264c529c41c25528c34421c83df}\label{classcore_1_1_object_ad503c264c529c41c25528c34421c83df}}
|
||||
std\+::string {\bfseries tag}
|
||||
\end{DoxyCompactItemize}
|
||||
|
||||
|
||||
The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize}
|
||||
\item
|
||||
Object.\+h\end{DoxyCompactItemize}
|
||||
@@ -1 +0,0 @@
|
||||
0e2a86b4eb3dcb5b5ffe6e6e4f24d758
|
||||
Binary file not shown.
@@ -1,34 +0,0 @@
|
||||
\hypertarget{classcore_1_1_session_filter}{}\section{core\+:\+:Session\+Filter Class Reference}
|
||||
\label{classcore_1_1_session_filter}\index{core\+::\+Session\+Filter@{core\+::\+Session\+Filter}}
|
||||
|
||||
|
||||
Inheritance diagram for core\+:\+:Session\+Filter\+:
|
||||
\nopagebreak
|
||||
\begin{figure}[H]
|
||||
\begin{center}
|
||||
\leavevmode
|
||||
\includegraphics[width=178pt]{classcore_1_1_session_filter__inherit__graph}
|
||||
\end{center}
|
||||
\end{figure}
|
||||
|
||||
|
||||
Collaboration diagram for core\+:\+:Session\+Filter\+:
|
||||
\nopagebreak
|
||||
\begin{figure}[H]
|
||||
\begin{center}
|
||||
\leavevmode
|
||||
\includegraphics[width=178pt]{classcore_1_1_session_filter__coll__graph}
|
||||
\end{center}
|
||||
\end{figure}
|
||||
\subsection*{Public Member Functions}
|
||||
\begin{DoxyCompactItemize}
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_session_filter_a9871d18a9f90c8028f879b0993b25b6f}\label{classcore_1_1_session_filter_a9871d18a9f90c8028f879b0993b25b6f}}
|
||||
virtual bool {\bfseries test} (\hyperlink{classcore_1_1_t_c_p_session}{T\+C\+P\+Session} \&session)
|
||||
\end{DoxyCompactItemize}
|
||||
\subsection*{Additional Inherited Members}
|
||||
|
||||
|
||||
The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize}
|
||||
\item
|
||||
Session\+Filter.\+h\end{DoxyCompactItemize}
|
||||
@@ -1 +0,0 @@
|
||||
5bf31a95b25d8a5d86437ee88df0f0a5
|
||||
Binary file not shown.
@@ -1 +0,0 @@
|
||||
57c31d430fa3b66f2e30f09c113c69d6
|
||||
Binary file not shown.
@@ -1,197 +0,0 @@
|
||||
\hypertarget{classcore_1_1_socket}{}\section{core\+:\+:Socket Class Reference}
|
||||
\label{classcore_1_1_socket}\index{core\+::\+Socket@{core\+::\+Socket}}
|
||||
|
||||
|
||||
{\ttfamily \#include $<$Socket.\+h$>$}
|
||||
|
||||
|
||||
|
||||
Inheritance diagram for core\+:\+:Socket\+:
|
||||
\nopagebreak
|
||||
\begin{figure}[H]
|
||||
\begin{center}
|
||||
\leavevmode
|
||||
\includegraphics[width=350pt]{classcore_1_1_socket__inherit__graph}
|
||||
\end{center}
|
||||
\end{figure}
|
||||
|
||||
|
||||
Collaboration diagram for core\+:\+:Socket\+:
|
||||
\nopagebreak
|
||||
\begin{figure}[H]
|
||||
\begin{center}
|
||||
\leavevmode
|
||||
\includegraphics[width=302pt]{classcore_1_1_socket__coll__graph}
|
||||
\end{center}
|
||||
\end{figure}
|
||||
\subsection*{Public Member Functions}
|
||||
\begin{DoxyCompactItemize}
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_socket_a0009f3813f6d64285f3dad602e4e01cf}\label{classcore_1_1_socket_a0009f3813f6d64285f3dad602e4e01cf}}
|
||||
{\bfseries Socket} (\hyperlink{classcore_1_1_e_poll}{E\+Poll} \&e\+Poll)
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_socket_a5809d4805615c23d49aea224cb20a380}\label{classcore_1_1_socket_a5809d4805615c23d49aea224cb20a380}}
|
||||
void {\bfseries shutdown} ()
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_socket_ac44f6ae3196a8a3e09a6a85fcf495762}\label{classcore_1_1_socket_ac44f6ae3196a8a3e09a6a85fcf495762}}
|
||||
void \hyperlink{classcore_1_1_socket_ac44f6ae3196a8a3e09a6a85fcf495762}{set\+Descriptor} (int descriptor)
|
||||
\begin{DoxyCompactList}\small\item\em Set the descriptor for the socket. \end{DoxyCompactList}\item
|
||||
\mbox{\Hypertarget{classcore_1_1_socket_a06ba54744530439d4131e6aba4623d08}\label{classcore_1_1_socket_a06ba54744530439d4131e6aba4623d08}}
|
||||
int \hyperlink{classcore_1_1_socket_a06ba54744530439d4131e6aba4623d08}{get\+Descriptor} ()
|
||||
\begin{DoxyCompactList}\small\item\em Get the descriptor for the socket. \end{DoxyCompactList}\item
|
||||
void \hyperlink{classcore_1_1_socket_a651bd967a6655152f87b7dd44e880cb2}{event\+Received} (struct epoll\+\_\+event event)
|
||||
\begin{DoxyCompactList}\small\item\em Parse epoll event and call specified callbacks. \end{DoxyCompactList}\item
|
||||
void \hyperlink{classcore_1_1_socket_a36ad0e990494d451c493e752dc2a2722}{write} (std\+::string data)
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_socket_a4855594af113428eacdaa7448d661121}\label{classcore_1_1_socket_a4855594af113428eacdaa7448d661121}}
|
||||
void {\bfseries write} (char $\ast$buffer, int length)
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_socket_ad67b0f95127bd987b98323120f40f6ed}\label{classcore_1_1_socket_ad67b0f95127bd987b98323120f40f6ed}}
|
||||
void {\bfseries output} (std\+::stringstream \&out)
|
||||
\item
|
||||
virtual void \hyperlink{classcore_1_1_socket_a23b9824653bbe4652a716acb828665b1}{on\+Registered} ()
|
||||
\begin{DoxyCompactList}\small\item\em Called when the socket has finished registering with the epoll processing. \end{DoxyCompactList}\item
|
||||
virtual void \hyperlink{classcore_1_1_socket_ae9be59697c2b2e5efb19aaae3ba943d2}{on\+Unregistered} ()
|
||||
\begin{DoxyCompactList}\small\item\em Called when the socket has finished unregistering for the epoll processing. \end{DoxyCompactList}\item
|
||||
\mbox{\Hypertarget{classcore_1_1_socket_a80b113c4105bb0c74f2e104b0feb90e4}\label{classcore_1_1_socket_a80b113c4105bb0c74f2e104b0feb90e4}}
|
||||
void \hyperlink{classcore_1_1_socket_a80b113c4105bb0c74f2e104b0feb90e4}{enable} (bool mode)
|
||||
\begin{DoxyCompactList}\small\item\em Enable the socket to read or write based upon buffer. \end{DoxyCompactList}\end{DoxyCompactItemize}
|
||||
\subsection*{Public Attributes}
|
||||
\begin{DoxyCompactItemize}
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_socket_a26ce6667b1d883e7a77fcd46ead03f6b}\label{classcore_1_1_socket_a26ce6667b1d883e7a77fcd46ead03f6b}}
|
||||
\begin{tabbing}
|
||||
xx\=xx\=xx\=xx\=xx\=xx\=xx\=xx\=xx\=\kill
|
||||
class \{\\
|
||||
\} {\bfseries bufferSize}\\
|
||||
|
||||
\end{tabbing}\end{DoxyCompactItemize}
|
||||
\subsection*{Protected Member Functions}
|
||||
\begin{DoxyCompactItemize}
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_socket_a71c77a162698b9c074a7497beab7b5d8}\label{classcore_1_1_socket_a71c77a162698b9c074a7497beab7b5d8}}
|
||||
void {\bfseries set\+Buffer\+Size} (int length)
|
||||
\item
|
||||
virtual void \hyperlink{classcore_1_1_socket_a96b8919a4b5580e389df810a4820e2e0}{on\+Connected} ()
|
||||
\begin{DoxyCompactList}\small\item\em Called when socket is open and ready to communicate. \end{DoxyCompactList}\item
|
||||
\mbox{\Hypertarget{classcore_1_1_socket_a03067c96facd44f0f399bd882148b07c}\label{classcore_1_1_socket_a03067c96facd44f0f399bd882148b07c}}
|
||||
virtual void {\bfseries on\+T\+L\+S\+Init} ()
|
||||
\item
|
||||
virtual void \hyperlink{classcore_1_1_socket_add22bdee877319a372db2fd707dc5a1c}{on\+Data\+Received} (std\+::string data)=0
|
||||
\begin{DoxyCompactList}\small\item\em Called when data is received from the socket. \end{DoxyCompactList}\item
|
||||
virtual void \hyperlink{classcore_1_1_socket_af455ec6f793473f529507af26aa54695}{receive\+Data} (char $\ast$buffer, int buffer\+Length)
|
||||
\end{DoxyCompactItemize}
|
||||
\subsection*{Protected Attributes}
|
||||
\begin{DoxyCompactItemize}
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_socket_a3b0b139ac7da581f0d969f6ae9a0c97c}\label{classcore_1_1_socket_a3b0b139ac7da581f0d969f6ae9a0c97c}}
|
||||
\hyperlink{classcore_1_1_e_poll}{E\+Poll} \& {\bfseries e\+Poll}
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_socket_aa09db6c6298d20ea76c6e65f8bffd3dc}\label{classcore_1_1_socket_aa09db6c6298d20ea76c6e65f8bffd3dc}}
|
||||
bool {\bfseries shut\+Down} = false
|
||||
\end{DoxyCompactItemize}
|
||||
|
||||
|
||||
\subsection{Detailed Description}
|
||||
\hyperlink{classcore_1_1_socket}{Socket}
|
||||
|
||||
The core component to managing a socket.
|
||||
|
||||
Hooks into the \hyperlink{classcore_1_1_e_poll}{E\+Poll} through the registration and unregistration process and provides a communication socket of the specified protocol type. This object provides for all receiving data threading through use of the \hyperlink{classcore_1_1_e_poll}{E\+Poll} object and also provides buffering for output data requests to the socket.
|
||||
|
||||
A program using a socket object can request to open a socket (file or network or whatever) and communicate through the streambuffer interface of the socket object.
|
||||
|
||||
The socket side of the \hyperlink{classcore_1_1_socket}{Socket} accepts E\+P\+O\+L\+L\+IN event and will maintain the data in a buffer for the stream readers to read. A on\+Data\+Received event is then sent with the data received in the buffer that can be read through the stream.
|
||||
|
||||
When writing to the stream the data is written into a buffer and a E\+P\+O\+L\+L\+O\+UT is scheduled. Upon receiving the E\+P\+O\+L\+L\+O\+UT event then the buffer is written to the socket output.
|
||||
|
||||
\subsection{Member Function Documentation}
|
||||
\mbox{\Hypertarget{classcore_1_1_socket_a651bd967a6655152f87b7dd44e880cb2}\label{classcore_1_1_socket_a651bd967a6655152f87b7dd44e880cb2}}
|
||||
\index{core\+::\+Socket@{core\+::\+Socket}!event\+Received@{event\+Received}}
|
||||
\index{event\+Received@{event\+Received}!core\+::\+Socket@{core\+::\+Socket}}
|
||||
\subsubsection{\texorpdfstring{event\+Received()}{eventReceived()}}
|
||||
{\footnotesize\ttfamily void core\+::\+Socket\+::event\+Received (\begin{DoxyParamCaption}\item[{struct epoll\+\_\+event}]{event }\end{DoxyParamCaption})}
|
||||
|
||||
|
||||
|
||||
Parse epoll event and call specified callbacks.
|
||||
|
||||
The event received from epoll is sent through the event\+Received method which will parse the event and call the read and write callbacks on the socket.
|
||||
|
||||
This method is called by the B\+M\+A\+E\+Poll object and should not be called from any user extended classes unless an epoll event is being simulated. \mbox{\Hypertarget{classcore_1_1_socket_a96b8919a4b5580e389df810a4820e2e0}\label{classcore_1_1_socket_a96b8919a4b5580e389df810a4820e2e0}}
|
||||
\index{core\+::\+Socket@{core\+::\+Socket}!on\+Connected@{on\+Connected}}
|
||||
\index{on\+Connected@{on\+Connected}!core\+::\+Socket@{core\+::\+Socket}}
|
||||
\subsubsection{\texorpdfstring{on\+Connected()}{onConnected()}}
|
||||
{\footnotesize\ttfamily void core\+::\+Socket\+::on\+Connected (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [protected]}, {\ttfamily [virtual]}}
|
||||
|
||||
|
||||
|
||||
Called when socket is open and ready to communicate.
|
||||
|
||||
The on\+Connected method is called when the socket is ready to communicate. Writing to the socket can begin on this call to initiate a contact with the remote device.
|
||||
|
||||
Reimplemented in \hyperlink{classcore_1_1_t_c_p_session_a4730b14e70d0eea1f0e3c759d3707f81}{core\+::\+T\+C\+P\+Session}.
|
||||
|
||||
\mbox{\Hypertarget{classcore_1_1_socket_add22bdee877319a372db2fd707dc5a1c}\label{classcore_1_1_socket_add22bdee877319a372db2fd707dc5a1c}}
|
||||
\index{core\+::\+Socket@{core\+::\+Socket}!on\+Data\+Received@{on\+Data\+Received}}
|
||||
\index{on\+Data\+Received@{on\+Data\+Received}!core\+::\+Socket@{core\+::\+Socket}}
|
||||
\subsubsection{\texorpdfstring{on\+Data\+Received()}{onDataReceived()}}
|
||||
{\footnotesize\ttfamily virtual void core\+::\+Socket\+::on\+Data\+Received (\begin{DoxyParamCaption}\item[{std\+::string}]{data }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [protected]}, {\ttfamily [pure virtual]}}
|
||||
|
||||
|
||||
|
||||
Called when data is received from the socket.
|
||||
|
||||
The on\+Data\+Received method is called when the socket has received an event from epoll and there is data ready to be read from the socket. The default handler will pull the data and put it into the streambuf for the socket. E\+P\+O\+L\+L\+IN
|
||||
|
||||
|
||||
\begin{DoxyParams}{Parameters}
|
||||
{\em data} & the data that has been received from the socket. \\
|
||||
\hline
|
||||
\end{DoxyParams}
|
||||
|
||||
|
||||
Implemented in \hyperlink{classcore_1_1_t_c_p_server_a276ccbc8cb9b4380ebd78807b97f0159}{core\+::\+T\+C\+P\+Server}, \hyperlink{classcore_1_1_t_c_p_session_aa87aca65cece02a107e7c288a925271f}{core\+::\+T\+C\+P\+Session}, and \hyperlink{classcore_1_1_u_d_p_server_socket_a41933ca153c854a800e3d047ab18313e}{core\+::\+U\+D\+P\+Server\+Socket}.
|
||||
|
||||
\mbox{\Hypertarget{classcore_1_1_socket_a23b9824653bbe4652a716acb828665b1}\label{classcore_1_1_socket_a23b9824653bbe4652a716acb828665b1}}
|
||||
\index{core\+::\+Socket@{core\+::\+Socket}!on\+Registered@{on\+Registered}}
|
||||
\index{on\+Registered@{on\+Registered}!core\+::\+Socket@{core\+::\+Socket}}
|
||||
\subsubsection{\texorpdfstring{on\+Registered()}{onRegistered()}}
|
||||
{\footnotesize\ttfamily void core\+::\+Socket\+::on\+Registered (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}
|
||||
|
||||
|
||||
|
||||
Called when the socket has finished registering with the epoll processing.
|
||||
|
||||
The on\+Registered method is called whenever the socket is registered with e\+Poll and socket communcation events can be started. \mbox{\Hypertarget{classcore_1_1_socket_ae9be59697c2b2e5efb19aaae3ba943d2}\label{classcore_1_1_socket_ae9be59697c2b2e5efb19aaae3ba943d2}}
|
||||
\index{core\+::\+Socket@{core\+::\+Socket}!on\+Unregistered@{on\+Unregistered}}
|
||||
\index{on\+Unregistered@{on\+Unregistered}!core\+::\+Socket@{core\+::\+Socket}}
|
||||
\subsubsection{\texorpdfstring{on\+Unregistered()}{onUnregistered()}}
|
||||
{\footnotesize\ttfamily void core\+::\+Socket\+::on\+Unregistered (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}
|
||||
|
||||
|
||||
|
||||
Called when the socket has finished unregistering for the epoll processing.
|
||||
|
||||
The on\+Unregistered method is called whenever the socket is unregistered with e\+Poll and socket communcation events will be stopped. The default method will close the socket and clean up the connection. If this is overridden by an extended object then the object should call this method to clean the socket up. \mbox{\Hypertarget{classcore_1_1_socket_af455ec6f793473f529507af26aa54695}\label{classcore_1_1_socket_af455ec6f793473f529507af26aa54695}}
|
||||
\index{core\+::\+Socket@{core\+::\+Socket}!receive\+Data@{receive\+Data}}
|
||||
\index{receive\+Data@{receive\+Data}!core\+::\+Socket@{core\+::\+Socket}}
|
||||
\subsubsection{\texorpdfstring{receive\+Data()}{receiveData()}}
|
||||
{\footnotesize\ttfamily void core\+::\+Socket\+::receive\+Data (\begin{DoxyParamCaption}\item[{char $\ast$}]{buffer, }\item[{int}]{buffer\+Length }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [protected]}, {\ttfamily [virtual]}}
|
||||
|
||||
receive\+Data will read the data from the socket and place it in the socket buffer. T\+LS layer overrides this to be able to read from S\+SL.
|
||||
|
||||
Reimplemented in \hyperlink{classcore_1_1_t_l_s_session_a1822cb21de545dc1a183ec0bac6cc4f0}{core\+::\+T\+L\+S\+Session}.
|
||||
|
||||
\mbox{\Hypertarget{classcore_1_1_socket_a36ad0e990494d451c493e752dc2a2722}\label{classcore_1_1_socket_a36ad0e990494d451c493e752dc2a2722}}
|
||||
\index{core\+::\+Socket@{core\+::\+Socket}!write@{write}}
|
||||
\index{write@{write}!core\+::\+Socket@{core\+::\+Socket}}
|
||||
\subsubsection{\texorpdfstring{write()}{write()}}
|
||||
{\footnotesize\ttfamily void core\+::\+Socket\+::write (\begin{DoxyParamCaption}\item[{std\+::string}]{data }\end{DoxyParamCaption})}
|
||||
|
||||
Write data to the socket.
|
||||
|
||||
The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
|
||||
\item
|
||||
Socket.\+h\item
|
||||
Socket.\+cpp\end{DoxyCompactItemize}
|
||||
@@ -1 +0,0 @@
|
||||
8a6187714fc193cf956d14d77f7af04d
|
||||
Binary file not shown.
@@ -1 +0,0 @@
|
||||
58ccf7be26305607e49b686629262ef1
|
||||
Binary file not shown.
@@ -1,185 +0,0 @@
|
||||
\hypertarget{classcore_1_1_t_c_p_server}{}\section{core\+:\+:T\+C\+P\+Server Class Reference}
|
||||
\label{classcore_1_1_t_c_p_server}\index{core\+::\+T\+C\+P\+Server@{core\+::\+T\+C\+P\+Server}}
|
||||
|
||||
|
||||
{\ttfamily \#include $<$T\+C\+P\+Server.\+h$>$}
|
||||
|
||||
|
||||
|
||||
Inheritance diagram for core\+:\+:T\+C\+P\+Server\+:
|
||||
\nopagebreak
|
||||
\begin{figure}[H]
|
||||
\begin{center}
|
||||
\leavevmode
|
||||
\includegraphics[width=292pt]{classcore_1_1_t_c_p_server__inherit__graph}
|
||||
\end{center}
|
||||
\end{figure}
|
||||
|
||||
|
||||
Collaboration diagram for core\+:\+:T\+C\+P\+Server\+:
|
||||
\nopagebreak
|
||||
\begin{figure}[H]
|
||||
\begin{center}
|
||||
\leavevmode
|
||||
\includegraphics[width=350pt]{classcore_1_1_t_c_p_server__coll__graph}
|
||||
\end{center}
|
||||
\end{figure}
|
||||
\subsection*{Public Member Functions}
|
||||
\begin{DoxyCompactItemize}
|
||||
\item
|
||||
\hyperlink{classcore_1_1_t_c_p_server_ac5993876ff6876a2d3ed60b62afda29d}{T\+C\+P\+Server} (\hyperlink{classcore_1_1_e_poll}{E\+Poll} \&e\+Poll, \hyperlink{classcore_1_1_i_p_address}{I\+P\+Address} address)
|
||||
\item
|
||||
\hyperlink{classcore_1_1_t_c_p_server_a7ccdc057c9eee8504fce796301f82088}{$\sim$\+T\+C\+P\+Server} ()
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_t_c_p_server_a88c603cd5df9dbc1632fd4b5e164d75b}\label{classcore_1_1_t_c_p_server_a88c603cd5df9dbc1632fd4b5e164d75b}}
|
||||
void {\bfseries remove\+From\+Session\+List} (\hyperlink{classcore_1_1_t_c_p_session}{T\+C\+P\+Session} $\ast$session)
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_t_c_p_server_a9dd556a1e2df635bedbb3755f13e082e}\label{classcore_1_1_t_c_p_server_a9dd556a1e2df635bedbb3755f13e082e}}
|
||||
virtual void {\bfseries session\+Error\+Handler} (std\+::string error\+String)
|
||||
\item
|
||||
virtual \hyperlink{classcore_1_1_t_c_p_session}{T\+C\+P\+Session} $\ast$ \hyperlink{classcore_1_1_t_c_p_server_a841f02799ad8529aad7cea132f4de8a9}{get\+Socket\+Accept} (\hyperlink{classcore_1_1_e_poll}{E\+Poll} \&epoll)
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_t_c_p_server_a120d5031360cc62251bdc43fa2d9813a}\label{classcore_1_1_t_c_p_server_a120d5031360cc62251bdc43fa2d9813a}}
|
||||
void \hyperlink{classcore_1_1_t_c_p_server_a120d5031360cc62251bdc43fa2d9813a}{output} (\hyperlink{classcore_1_1_t_c_p_session}{T\+C\+P\+Session} $\ast$session)
|
||||
\begin{DoxyCompactList}\small\item\em Output the consoles array to the console. \end{DoxyCompactList}\end{DoxyCompactItemize}
|
||||
\subsection*{Public Attributes}
|
||||
\begin{DoxyCompactItemize}
|
||||
\item
|
||||
\hyperlink{classcore_1_1_i_p_address_list}{I\+P\+Address\+List} $\ast$ \hyperlink{classcore_1_1_t_c_p_server_a82f6bf16e4ab20d8b30da09e034fffff}{black\+List}
|
||||
\item
|
||||
\hyperlink{classcore_1_1_i_p_address_list}{I\+P\+Address\+List} $\ast$ \hyperlink{classcore_1_1_t_c_p_server_abad6300b6234ca8b69cef9128755342e}{white\+List}
|
||||
\item
|
||||
std\+::vector$<$ \hyperlink{classcore_1_1_t_c_p_session}{T\+C\+P\+Session} $\ast$ $>$ \hyperlink{classcore_1_1_t_c_p_server_aeed1bc55d099667ccda51cd682bfc633}{sessions}
|
||||
\item
|
||||
\hyperlink{classcore_1_1_command_list}{Command\+List} \hyperlink{classcore_1_1_t_c_p_server_afcc44802b988e2f4292504e804dccf8b}{commands}
|
||||
\end{DoxyCompactItemize}
|
||||
\subsection*{Protected Member Functions}
|
||||
\begin{DoxyCompactItemize}
|
||||
\item
|
||||
void \hyperlink{classcore_1_1_t_c_p_server_a276ccbc8cb9b4380ebd78807b97f0159}{on\+Data\+Received} (std\+::string data) override
|
||||
\item
|
||||
int \hyperlink{classcore_1_1_t_c_p_server_a93f64f81bc63f145799af91138a064dc}{process\+Command} (std\+::string command, \hyperlink{classcore_1_1_t_c_p_session}{T\+C\+P\+Session} $\ast$session, std\+::stringstream \&data) override
|
||||
\end{DoxyCompactItemize}
|
||||
\subsection*{Additional Inherited Members}
|
||||
|
||||
|
||||
\subsection{Detailed Description}
|
||||
\hyperlink{classcore_1_1_t_c_p_server}{T\+C\+P\+Server}
|
||||
|
||||
Manage a socket connection as a T\+CP server type. Connections to the socket are processed through the accept functionality.
|
||||
|
||||
A list of connections is maintained in a vector object.
|
||||
|
||||
This object extends the B\+M\+A\+Command object as well so it can be added to a Console object and process commands to display status information.
|
||||
|
||||
\subsection{Constructor \& Destructor Documentation}
|
||||
\mbox{\Hypertarget{classcore_1_1_t_c_p_server_ac5993876ff6876a2d3ed60b62afda29d}\label{classcore_1_1_t_c_p_server_ac5993876ff6876a2d3ed60b62afda29d}}
|
||||
\index{core\+::\+T\+C\+P\+Server@{core\+::\+T\+C\+P\+Server}!T\+C\+P\+Server@{T\+C\+P\+Server}}
|
||||
\index{T\+C\+P\+Server@{T\+C\+P\+Server}!core\+::\+T\+C\+P\+Server@{core\+::\+T\+C\+P\+Server}}
|
||||
\subsubsection{\texorpdfstring{T\+C\+P\+Server()}{TCPServer()}}
|
||||
{\footnotesize\ttfamily core\+::\+T\+C\+P\+Server\+::\+T\+C\+P\+Server (\begin{DoxyParamCaption}\item[{\hyperlink{classcore_1_1_e_poll}{E\+Poll} \&}]{e\+Poll, }\item[{\hyperlink{classcore_1_1_i_p_address}{I\+P\+Address}}]{address }\end{DoxyParamCaption})}
|
||||
|
||||
The constructor for the B\+M\+A\+T\+C\+P\+Socket object.
|
||||
|
||||
|
||||
\begin{DoxyParams}{Parameters}
|
||||
{\em e\+Poll} & the \hyperlink{classcore_1_1_e_poll}{E\+Poll} instance that manages the socket. \\
|
||||
\hline
|
||||
{\em url} & the IP address for the socket to receive connection requests. \\
|
||||
\hline
|
||||
{\em port} & the port number that the socket will listen on. \\
|
||||
\hline
|
||||
{\em command\+Name} & the name of the command used to invoke the status display for this object. \\
|
||||
\hline
|
||||
\end{DoxyParams}
|
||||
\begin{DoxyReturn}{Returns}
|
||||
the instance of the B\+M\+A\+T\+C\+P\+Server\+Socket.
|
||||
\end{DoxyReturn}
|
||||
\mbox{\Hypertarget{classcore_1_1_t_c_p_server_a7ccdc057c9eee8504fce796301f82088}\label{classcore_1_1_t_c_p_server_a7ccdc057c9eee8504fce796301f82088}}
|
||||
\index{core\+::\+T\+C\+P\+Server@{core\+::\+T\+C\+P\+Server}!````~T\+C\+P\+Server@{$\sim$\+T\+C\+P\+Server}}
|
||||
\index{````~T\+C\+P\+Server@{$\sim$\+T\+C\+P\+Server}!core\+::\+T\+C\+P\+Server@{core\+::\+T\+C\+P\+Server}}
|
||||
\subsubsection{\texorpdfstring{$\sim$\+T\+C\+P\+Server()}{~TCPServer()}}
|
||||
{\footnotesize\ttfamily core\+::\+T\+C\+P\+Server\+::$\sim$\+T\+C\+P\+Server (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}
|
||||
|
||||
The destructor for this object.
|
||||
|
||||
\subsection{Member Function Documentation}
|
||||
\mbox{\Hypertarget{classcore_1_1_t_c_p_server_a841f02799ad8529aad7cea132f4de8a9}\label{classcore_1_1_t_c_p_server_a841f02799ad8529aad7cea132f4de8a9}}
|
||||
\index{core\+::\+T\+C\+P\+Server@{core\+::\+T\+C\+P\+Server}!get\+Socket\+Accept@{get\+Socket\+Accept}}
|
||||
\index{get\+Socket\+Accept@{get\+Socket\+Accept}!core\+::\+T\+C\+P\+Server@{core\+::\+T\+C\+P\+Server}}
|
||||
\subsubsection{\texorpdfstring{get\+Socket\+Accept()}{getSocketAccept()}}
|
||||
{\footnotesize\ttfamily \hyperlink{classcore_1_1_t_c_p_session}{T\+C\+P\+Session} $\ast$ core\+::\+T\+C\+P\+Server\+::get\+Socket\+Accept (\begin{DoxyParamCaption}\item[{\hyperlink{classcore_1_1_e_poll}{E\+Poll} \&}]{epoll }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}
|
||||
|
||||
get\+Socket\+Accept is designed to allow a polymorphic extension of this object to return a type of object that extends the definition of the server socket. Returning the appropriate session object that extends from Session provides the mechanism where the server can select the protocol dialog for the desired service.
|
||||
|
||||
Reimplemented in \hyperlink{classcore_1_1_console_server_a80d9ea7f3fc5e07c50d5b9e0d4943ca8}{core\+::\+Console\+Server}.
|
||||
|
||||
\mbox{\Hypertarget{classcore_1_1_t_c_p_server_a276ccbc8cb9b4380ebd78807b97f0159}\label{classcore_1_1_t_c_p_server_a276ccbc8cb9b4380ebd78807b97f0159}}
|
||||
\index{core\+::\+T\+C\+P\+Server@{core\+::\+T\+C\+P\+Server}!on\+Data\+Received@{on\+Data\+Received}}
|
||||
\index{on\+Data\+Received@{on\+Data\+Received}!core\+::\+T\+C\+P\+Server@{core\+::\+T\+C\+P\+Server}}
|
||||
\subsubsection{\texorpdfstring{on\+Data\+Received()}{onDataReceived()}}
|
||||
{\footnotesize\ttfamily void core\+::\+T\+C\+P\+Server\+::on\+Data\+Received (\begin{DoxyParamCaption}\item[{std\+::string}]{data }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [protected]}, {\ttfamily [virtual]}}
|
||||
|
||||
Override the virtual data\+Received since for the server these are requests to accept the new connection socket. No data is to be read or written when this method is called. It is the response to the fact that a new connection is coming into the system
|
||||
|
||||
|
||||
\begin{DoxyParams}{Parameters}
|
||||
{\em data} & the pointer to the buffer containing the received data. \\
|
||||
\hline
|
||||
{\em length} & the length of the associated data buffer. \\
|
||||
\hline
|
||||
\end{DoxyParams}
|
||||
|
||||
|
||||
Implements \hyperlink{classcore_1_1_socket_add22bdee877319a372db2fd707dc5a1c}{core\+::\+Socket}.
|
||||
|
||||
\mbox{\Hypertarget{classcore_1_1_t_c_p_server_a93f64f81bc63f145799af91138a064dc}\label{classcore_1_1_t_c_p_server_a93f64f81bc63f145799af91138a064dc}}
|
||||
\index{core\+::\+T\+C\+P\+Server@{core\+::\+T\+C\+P\+Server}!process\+Command@{process\+Command}}
|
||||
\index{process\+Command@{process\+Command}!core\+::\+T\+C\+P\+Server@{core\+::\+T\+C\+P\+Server}}
|
||||
\subsubsection{\texorpdfstring{process\+Command()}{processCommand()}}
|
||||
{\footnotesize\ttfamily int core\+::\+T\+C\+P\+Server\+::process\+Command (\begin{DoxyParamCaption}\item[{std\+::string}]{command, }\item[{\hyperlink{classcore_1_1_t_c_p_session}{T\+C\+P\+Session} $\ast$}]{session, }\item[{std\+::stringstream \&}]{data }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [protected]}, {\ttfamily [virtual]}}
|
||||
|
||||
This method is called when the \hyperlink{classcore_1_1_command}{Command} associated with this object is requested because a user has typed in the associated command name on a command entry line.
|
||||
|
||||
|
||||
\begin{DoxyParams}{Parameters}
|
||||
{\em the} & session object to write the output to. \\
|
||||
\hline
|
||||
\end{DoxyParams}
|
||||
|
||||
|
||||
Reimplemented from \hyperlink{classcore_1_1_command_a068ebc22f7a067cf23ed2c17f95b06e9}{core\+::\+Command}.
|
||||
|
||||
|
||||
|
||||
\subsection{Member Data Documentation}
|
||||
\mbox{\Hypertarget{classcore_1_1_t_c_p_server_a82f6bf16e4ab20d8b30da09e034fffff}\label{classcore_1_1_t_c_p_server_a82f6bf16e4ab20d8b30da09e034fffff}}
|
||||
\index{core\+::\+T\+C\+P\+Server@{core\+::\+T\+C\+P\+Server}!black\+List@{black\+List}}
|
||||
\index{black\+List@{black\+List}!core\+::\+T\+C\+P\+Server@{core\+::\+T\+C\+P\+Server}}
|
||||
\subsubsection{\texorpdfstring{black\+List}{blackList}}
|
||||
{\footnotesize\ttfamily \hyperlink{classcore_1_1_i_p_address_list}{I\+P\+Address\+List}$\ast$ core\+::\+T\+C\+P\+Server\+::black\+List}
|
||||
|
||||
If not N\+U\+LL the blacklist object can be assigned to this server socket and the server IP addresses connecting to the server attempting to accept a socket are contained in this list then the connection is rejected and no accept is granted. \mbox{\Hypertarget{classcore_1_1_t_c_p_server_afcc44802b988e2f4292504e804dccf8b}\label{classcore_1_1_t_c_p_server_afcc44802b988e2f4292504e804dccf8b}}
|
||||
\index{core\+::\+T\+C\+P\+Server@{core\+::\+T\+C\+P\+Server}!commands@{commands}}
|
||||
\index{commands@{commands}!core\+::\+T\+C\+P\+Server@{core\+::\+T\+C\+P\+Server}}
|
||||
\subsubsection{\texorpdfstring{commands}{commands}}
|
||||
{\footnotesize\ttfamily \hyperlink{classcore_1_1_command_list}{Command\+List} core\+::\+T\+C\+P\+Server\+::commands}
|
||||
|
||||
The commands object is a \hyperlink{classcore_1_1_command_list}{Command\+List} and is used to store \hyperlink{classcore_1_1_command}{Command} objects to be parsed and run as data comes into the session. \mbox{\Hypertarget{classcore_1_1_t_c_p_server_aeed1bc55d099667ccda51cd682bfc633}\label{classcore_1_1_t_c_p_server_aeed1bc55d099667ccda51cd682bfc633}}
|
||||
\index{core\+::\+T\+C\+P\+Server@{core\+::\+T\+C\+P\+Server}!sessions@{sessions}}
|
||||
\index{sessions@{sessions}!core\+::\+T\+C\+P\+Server@{core\+::\+T\+C\+P\+Server}}
|
||||
\subsubsection{\texorpdfstring{sessions}{sessions}}
|
||||
{\footnotesize\ttfamily std\+::vector$<$\hyperlink{classcore_1_1_t_c_p_session}{T\+C\+P\+Session} $\ast$$>$ core\+::\+T\+C\+P\+Server\+::sessions}
|
||||
|
||||
The list of sessions that are currently open and being maintained by this object. \mbox{\Hypertarget{classcore_1_1_t_c_p_server_abad6300b6234ca8b69cef9128755342e}\label{classcore_1_1_t_c_p_server_abad6300b6234ca8b69cef9128755342e}}
|
||||
\index{core\+::\+T\+C\+P\+Server@{core\+::\+T\+C\+P\+Server}!white\+List@{white\+List}}
|
||||
\index{white\+List@{white\+List}!core\+::\+T\+C\+P\+Server@{core\+::\+T\+C\+P\+Server}}
|
||||
\subsubsection{\texorpdfstring{white\+List}{whiteList}}
|
||||
{\footnotesize\ttfamily \hyperlink{classcore_1_1_i_p_address_list}{I\+P\+Address\+List}$\ast$ core\+::\+T\+C\+P\+Server\+::white\+List}
|
||||
|
||||
If not N\+U\+LL the blacklist object can be assigned to this server socket and the server IP addresses connecting to the server attempting to accept a socket are contained in this list then the connection is rejected and no accept is granted.
|
||||
|
||||
The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
|
||||
\item
|
||||
T\+C\+P\+Server.\+h\item
|
||||
T\+C\+P\+Server.\+cpp\end{DoxyCompactItemize}
|
||||
@@ -1 +0,0 @@
|
||||
785a8983295c3bf1c7882f3c3427e958
|
||||
Binary file not shown.
@@ -1 +0,0 @@
|
||||
1bb3b09ea83b26a9a1e2be0aa3cedb73
|
||||
Binary file not shown.
@@ -1,150 +0,0 @@
|
||||
\hypertarget{classcore_1_1_t_c_p_session}{}\section{core\+:\+:T\+C\+P\+Session Class Reference}
|
||||
\label{classcore_1_1_t_c_p_session}\index{core\+::\+T\+C\+P\+Session@{core\+::\+T\+C\+P\+Session}}
|
||||
|
||||
|
||||
{\ttfamily \#include $<$T\+C\+P\+Session.\+h$>$}
|
||||
|
||||
|
||||
|
||||
Inheritance diagram for core\+:\+:T\+C\+P\+Session\+:
|
||||
\nopagebreak
|
||||
\begin{figure}[H]
|
||||
\begin{center}
|
||||
\leavevmode
|
||||
\includegraphics[width=308pt]{classcore_1_1_t_c_p_session__inherit__graph}
|
||||
\end{center}
|
||||
\end{figure}
|
||||
|
||||
|
||||
Collaboration diagram for core\+:\+:T\+C\+P\+Session\+:
|
||||
\nopagebreak
|
||||
\begin{figure}[H]
|
||||
\begin{center}
|
||||
\leavevmode
|
||||
\includegraphics[width=350pt]{classcore_1_1_t_c_p_session__coll__graph}
|
||||
\end{center}
|
||||
\end{figure}
|
||||
\subsection*{Public Member Functions}
|
||||
\begin{DoxyCompactItemize}
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_t_c_p_session_a66e485cd2ba804e6ee4ac11eba3e4fa0}\label{classcore_1_1_t_c_p_session_a66e485cd2ba804e6ee4ac11eba3e4fa0}}
|
||||
{\bfseries T\+C\+P\+Session} (\hyperlink{classcore_1_1_e_poll}{E\+Poll} \&e\+Poll, \hyperlink{classcore_1_1_t_c_p_server}{T\+C\+P\+Server} \&server)
|
||||
\item
|
||||
virtual void \hyperlink{classcore_1_1_t_c_p_session_a50037cbfc515650e04054e5481785981}{output} (std\+::stringstream \&data)
|
||||
\item
|
||||
void \hyperlink{classcore_1_1_t_c_p_session_a2b09eeafef5e44009a77d9da43e3b889}{send} ()
|
||||
\item
|
||||
void \hyperlink{classcore_1_1_t_c_p_session_afdfe135694c6689f5365fac6c090ec33}{send\+To\+All} ()
|
||||
\item
|
||||
void \hyperlink{classcore_1_1_t_c_p_session_a05c489dcd2ebd74f527864759929e351}{send\+To\+All} (\hyperlink{classcore_1_1_session_filter}{Session\+Filter} filter)
|
||||
\end{DoxyCompactItemize}
|
||||
\subsection*{Public Attributes}
|
||||
\begin{DoxyCompactItemize}
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_t_c_p_session_abb302bbb3d7e7bc75490c736364f0d4d}\label{classcore_1_1_t_c_p_session_abb302bbb3d7e7bc75490c736364f0d4d}}
|
||||
std\+::stringstream {\bfseries out}
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_t_c_p_session_a265d9493fa544e601b5ad5fb1663340c}\label{classcore_1_1_t_c_p_session_a265d9493fa544e601b5ad5fb1663340c}}
|
||||
\hyperlink{classcore_1_1_t_c_p_server}{T\+C\+P\+Server} \& {\bfseries server}
|
||||
\end{DoxyCompactItemize}
|
||||
\subsection*{Protected Member Functions}
|
||||
\begin{DoxyCompactItemize}
|
||||
\item
|
||||
void \hyperlink{classcore_1_1_t_c_p_session_aa87aca65cece02a107e7c288a925271f}{on\+Data\+Received} (std\+::string data) override
|
||||
\begin{DoxyCompactList}\small\item\em Called when data is received from the socket. \end{DoxyCompactList}\item
|
||||
void \hyperlink{classcore_1_1_t_c_p_session_a4730b14e70d0eea1f0e3c759d3707f81}{on\+Connected} () override
|
||||
\begin{DoxyCompactList}\small\item\em Called when socket is open and ready to communicate. \end{DoxyCompactList}\item
|
||||
virtual void \hyperlink{classcore_1_1_t_c_p_session_ae90dc64e2d3c4b3239117923145edb3f}{protocol} (std\+::string data)
|
||||
\end{DoxyCompactItemize}
|
||||
\subsection*{Additional Inherited Members}
|
||||
|
||||
|
||||
\subsection{Detailed Description}
|
||||
\hyperlink{classcore_1_1_t_c_p_session}{T\+C\+P\+Session}
|
||||
|
||||
\hyperlink{classcore_1_1_t_c_p_session}{T\+C\+P\+Session} defines the nature of the interaction with the client and stores persistent data for a defined session. B\+M\+A\+Session objects are not sockets but instead provide a communications control mechanism. Protocol conversations are provided through extensions from this object.
|
||||
|
||||
\subsection{Member Function Documentation}
|
||||
\mbox{\Hypertarget{classcore_1_1_t_c_p_session_a4730b14e70d0eea1f0e3c759d3707f81}\label{classcore_1_1_t_c_p_session_a4730b14e70d0eea1f0e3c759d3707f81}}
|
||||
\index{core\+::\+T\+C\+P\+Session@{core\+::\+T\+C\+P\+Session}!on\+Connected@{on\+Connected}}
|
||||
\index{on\+Connected@{on\+Connected}!core\+::\+T\+C\+P\+Session@{core\+::\+T\+C\+P\+Session}}
|
||||
\subsubsection{\texorpdfstring{on\+Connected()}{onConnected()}}
|
||||
{\footnotesize\ttfamily void core\+::\+T\+C\+P\+Session\+::on\+Connected (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [protected]}, {\ttfamily [virtual]}}
|
||||
|
||||
|
||||
|
||||
Called when socket is open and ready to communicate.
|
||||
|
||||
The on\+Connected method is called when the socket is ready to communicate. Writing to the socket can begin on this call to initiate a contact with the remote device.
|
||||
|
||||
Reimplemented from \hyperlink{classcore_1_1_socket_a96b8919a4b5580e389df810a4820e2e0}{core\+::\+Socket}.
|
||||
|
||||
\mbox{\Hypertarget{classcore_1_1_t_c_p_session_aa87aca65cece02a107e7c288a925271f}\label{classcore_1_1_t_c_p_session_aa87aca65cece02a107e7c288a925271f}}
|
||||
\index{core\+::\+T\+C\+P\+Session@{core\+::\+T\+C\+P\+Session}!on\+Data\+Received@{on\+Data\+Received}}
|
||||
\index{on\+Data\+Received@{on\+Data\+Received}!core\+::\+T\+C\+P\+Session@{core\+::\+T\+C\+P\+Session}}
|
||||
\subsubsection{\texorpdfstring{on\+Data\+Received()}{onDataReceived()}}
|
||||
{\footnotesize\ttfamily void core\+::\+T\+C\+P\+Session\+::on\+Data\+Received (\begin{DoxyParamCaption}\item[{std\+::string}]{data }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [protected]}, {\ttfamily [virtual]}}
|
||||
|
||||
|
||||
|
||||
Called when data is received from the socket.
|
||||
|
||||
The on\+Data\+Received method is called when the socket has received an event from epoll and there is data ready to be read from the socket. The default handler will pull the data and put it into the streambuf for the socket. E\+P\+O\+L\+L\+IN
|
||||
|
||||
|
||||
\begin{DoxyParams}{Parameters}
|
||||
{\em data} & the data that has been received from the socket. \\
|
||||
\hline
|
||||
\end{DoxyParams}
|
||||
|
||||
|
||||
Implements \hyperlink{classcore_1_1_socket_add22bdee877319a372db2fd707dc5a1c}{core\+::\+Socket}.
|
||||
|
||||
\mbox{\Hypertarget{classcore_1_1_t_c_p_session_a50037cbfc515650e04054e5481785981}\label{classcore_1_1_t_c_p_session_a50037cbfc515650e04054e5481785981}}
|
||||
\index{core\+::\+T\+C\+P\+Session@{core\+::\+T\+C\+P\+Session}!output@{output}}
|
||||
\index{output@{output}!core\+::\+T\+C\+P\+Session@{core\+::\+T\+C\+P\+Session}}
|
||||
\subsubsection{\texorpdfstring{output()}{output()}}
|
||||
{\footnotesize\ttfamily void core\+::\+T\+C\+P\+Session\+::output (\begin{DoxyParamCaption}\item[{std\+::stringstream \&}]{out }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}
|
||||
|
||||
The output method is called by a socket session (B\+M\+A\+Session) and will output the detail information for the client socket. When extending B\+M\+A\+T\+C\+P\+Socket or B\+M\+A\+Session you can override the method to add attributes to the list.
|
||||
|
||||
Reimplemented from \hyperlink{classcore_1_1_t_c_p_socket_afacf7528ff3c9ac077d7b5a49e2116fd}{core\+::\+T\+C\+P\+Socket}.
|
||||
|
||||
|
||||
|
||||
Reimplemented in \hyperlink{classcore_1_1_t_l_s_session_ae55de8a035d1ddc560cf619b2030af43}{core\+::\+T\+L\+S\+Session}.
|
||||
|
||||
\mbox{\Hypertarget{classcore_1_1_t_c_p_session_ae90dc64e2d3c4b3239117923145edb3f}\label{classcore_1_1_t_c_p_session_ae90dc64e2d3c4b3239117923145edb3f}}
|
||||
\index{core\+::\+T\+C\+P\+Session@{core\+::\+T\+C\+P\+Session}!protocol@{protocol}}
|
||||
\index{protocol@{protocol}!core\+::\+T\+C\+P\+Session@{core\+::\+T\+C\+P\+Session}}
|
||||
\subsubsection{\texorpdfstring{protocol()}{protocol()}}
|
||||
{\footnotesize\ttfamily void core\+::\+T\+C\+P\+Session\+::protocol (\begin{DoxyParamCaption}\item[{std\+::string}]{data = {\ttfamily \char`\"{}\char`\"{}} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [protected]}, {\ttfamily [virtual]}}
|
||||
|
||||
Override the protocol method to manage and control the session communications in your inherited session. If you do not override this method then the Session default will process the \textquotesingle{}commands\textquotesingle{} added to the server object using the process\+Request method on the session input.
|
||||
|
||||
Reimplemented in \hyperlink{classcore_1_1_t_l_s_session_a547c436ab69f75307f065eca8cfcd109}{core\+::\+T\+L\+S\+Session}, and \hyperlink{classcore_1_1_console_session_a830cc1e1e0c3fe3b066f0a9f7f469490}{core\+::\+Console\+Session}.
|
||||
|
||||
\mbox{\Hypertarget{classcore_1_1_t_c_p_session_a2b09eeafef5e44009a77d9da43e3b889}\label{classcore_1_1_t_c_p_session_a2b09eeafef5e44009a77d9da43e3b889}}
|
||||
\index{core\+::\+T\+C\+P\+Session@{core\+::\+T\+C\+P\+Session}!send@{send}}
|
||||
\index{send@{send}!core\+::\+T\+C\+P\+Session@{core\+::\+T\+C\+P\+Session}}
|
||||
\subsubsection{\texorpdfstring{send()}{send()}}
|
||||
{\footnotesize\ttfamily void core\+::\+T\+C\+P\+Session\+::send (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}
|
||||
|
||||
The send method is used to output the contents of the out stream to the session containing the stream. \mbox{\Hypertarget{classcore_1_1_t_c_p_session_afdfe135694c6689f5365fac6c090ec33}\label{classcore_1_1_t_c_p_session_afdfe135694c6689f5365fac6c090ec33}}
|
||||
\index{core\+::\+T\+C\+P\+Session@{core\+::\+T\+C\+P\+Session}!send\+To\+All@{send\+To\+All}}
|
||||
\index{send\+To\+All@{send\+To\+All}!core\+::\+T\+C\+P\+Session@{core\+::\+T\+C\+P\+Session}}
|
||||
\subsubsection{\texorpdfstring{send\+To\+All()}{sendToAll()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
|
||||
{\footnotesize\ttfamily void core\+::\+T\+C\+P\+Session\+::send\+To\+All (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}
|
||||
|
||||
Use this send\+To\+All method to output the contents of the out stream to all the connections on the server excluding the sender session. \mbox{\Hypertarget{classcore_1_1_t_c_p_session_a05c489dcd2ebd74f527864759929e351}\label{classcore_1_1_t_c_p_session_a05c489dcd2ebd74f527864759929e351}}
|
||||
\index{core\+::\+T\+C\+P\+Session@{core\+::\+T\+C\+P\+Session}!send\+To\+All@{send\+To\+All}}
|
||||
\index{send\+To\+All@{send\+To\+All}!core\+::\+T\+C\+P\+Session@{core\+::\+T\+C\+P\+Session}}
|
||||
\subsubsection{\texorpdfstring{send\+To\+All()}{sendToAll()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
|
||||
{\footnotesize\ttfamily void core\+::\+T\+C\+P\+Session\+::send\+To\+All (\begin{DoxyParamCaption}\item[{\hyperlink{classcore_1_1_session_filter}{Session\+Filter}}]{filter }\end{DoxyParamCaption})}
|
||||
|
||||
Use this send\+To\+All method to output the contents of the out stream to all the connections on the server excluding the sender session and the entries identified by the passed in filter object.
|
||||
|
||||
The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
|
||||
\item
|
||||
T\+C\+P\+Session.\+h\item
|
||||
T\+C\+P\+Session.\+cpp\end{DoxyCompactItemize}
|
||||
@@ -1 +0,0 @@
|
||||
f0cee0ed2ae98f8f33c7faf3f931c529
|
||||
Binary file not shown.
@@ -1 +0,0 @@
|
||||
e459eb5b9551a4b1c67954b61dc6e53c
|
||||
Binary file not shown.
@@ -1,70 +0,0 @@
|
||||
\hypertarget{classcore_1_1_t_c_p_socket}{}\section{core\+:\+:T\+C\+P\+Socket Class Reference}
|
||||
\label{classcore_1_1_t_c_p_socket}\index{core\+::\+T\+C\+P\+Socket@{core\+::\+T\+C\+P\+Socket}}
|
||||
|
||||
|
||||
{\ttfamily \#include $<$T\+C\+P\+Socket.\+h$>$}
|
||||
|
||||
|
||||
|
||||
Inheritance diagram for core\+:\+:T\+C\+P\+Socket\+:
|
||||
\nopagebreak
|
||||
\begin{figure}[H]
|
||||
\begin{center}
|
||||
\leavevmode
|
||||
\includegraphics[width=350pt]{classcore_1_1_t_c_p_socket__inherit__graph}
|
||||
\end{center}
|
||||
\end{figure}
|
||||
|
||||
|
||||
Collaboration diagram for core\+:\+:T\+C\+P\+Socket\+:
|
||||
\nopagebreak
|
||||
\begin{figure}[H]
|
||||
\begin{center}
|
||||
\leavevmode
|
||||
\includegraphics[width=350pt]{classcore_1_1_t_c_p_socket__coll__graph}
|
||||
\end{center}
|
||||
\end{figure}
|
||||
\subsection*{Public Member Functions}
|
||||
\begin{DoxyCompactItemize}
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_t_c_p_socket_a09089f0bc701edcf6c148958fd29d374}\label{classcore_1_1_t_c_p_socket_a09089f0bc701edcf6c148958fd29d374}}
|
||||
{\bfseries T\+C\+P\+Socket} (\hyperlink{classcore_1_1_e_poll}{E\+Poll} \&e\+Poll)
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_t_c_p_socket_a22dae8f5b7989d206fab918297e0df94}\label{classcore_1_1_t_c_p_socket_a22dae8f5b7989d206fab918297e0df94}}
|
||||
void {\bfseries connect} (\hyperlink{classcore_1_1_i_p_address}{I\+P\+Address} \&address)
|
||||
\item
|
||||
virtual void \hyperlink{classcore_1_1_t_c_p_socket_afacf7528ff3c9ac077d7b5a49e2116fd}{output} (std\+::stringstream \&out)
|
||||
\end{DoxyCompactItemize}
|
||||
\subsection*{Public Attributes}
|
||||
\begin{DoxyCompactItemize}
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_t_c_p_socket_abe7d0a740dc0c19c058661270a6fb630}\label{classcore_1_1_t_c_p_socket_abe7d0a740dc0c19c058661270a6fb630}}
|
||||
\hyperlink{classcore_1_1_i_p_address}{I\+P\+Address} {\bfseries ip\+Address}
|
||||
\end{DoxyCompactItemize}
|
||||
\subsection*{Additional Inherited Members}
|
||||
|
||||
|
||||
\subsection{Detailed Description}
|
||||
\hyperlink{classcore_1_1_t_c_p_socket}{T\+C\+P\+Socket}
|
||||
|
||||
Provides a network T\+CP socket.
|
||||
|
||||
For accessing T\+CP network functions use this object. The connection oriented nature of T\+CP provides a single client persistent connection with data error correction and a durable synchronous data connection.
|
||||
|
||||
\subsection{Member Function Documentation}
|
||||
\mbox{\Hypertarget{classcore_1_1_t_c_p_socket_afacf7528ff3c9ac077d7b5a49e2116fd}\label{classcore_1_1_t_c_p_socket_afacf7528ff3c9ac077d7b5a49e2116fd}}
|
||||
\index{core\+::\+T\+C\+P\+Socket@{core\+::\+T\+C\+P\+Socket}!output@{output}}
|
||||
\index{output@{output}!core\+::\+T\+C\+P\+Socket@{core\+::\+T\+C\+P\+Socket}}
|
||||
\subsubsection{\texorpdfstring{output()}{output()}}
|
||||
{\footnotesize\ttfamily void core\+::\+T\+C\+P\+Socket\+::output (\begin{DoxyParamCaption}\item[{std\+::stringstream \&}]{out }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}
|
||||
|
||||
The output method is called by a socket session (B\+M\+A\+Session) and will output the detail information for the client socket. When extending B\+M\+A\+T\+C\+P\+Socket or B\+M\+A\+Session you can override the method to add attributes to the list.
|
||||
|
||||
Reimplemented in \hyperlink{classcore_1_1_t_l_s_session_ae55de8a035d1ddc560cf619b2030af43}{core\+::\+T\+L\+S\+Session}, and \hyperlink{classcore_1_1_t_c_p_session_a50037cbfc515650e04054e5481785981}{core\+::\+T\+C\+P\+Session}.
|
||||
|
||||
|
||||
|
||||
The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
|
||||
\item
|
||||
T\+C\+P\+Socket.\+h\item
|
||||
T\+C\+P\+Socket.\+cpp\end{DoxyCompactItemize}
|
||||
@@ -1 +0,0 @@
|
||||
2ec49949d079991ab344763304559275
|
||||
Binary file not shown.
@@ -1 +0,0 @@
|
||||
4e8ed226a46a10c87e3a54d257e59ad8
|
||||
Binary file not shown.
@@ -1,85 +0,0 @@
|
||||
\hypertarget{classcore_1_1_t_l_s_server}{}\section{core\+:\+:T\+L\+S\+Server Class Reference}
|
||||
\label{classcore_1_1_t_l_s_server}\index{core\+::\+T\+L\+S\+Server@{core\+::\+T\+L\+S\+Server}}
|
||||
|
||||
|
||||
{\ttfamily \#include $<$T\+L\+S\+Server.\+h$>$}
|
||||
|
||||
|
||||
|
||||
Inheritance diagram for core\+:\+:T\+L\+S\+Server\+:
|
||||
\nopagebreak
|
||||
\begin{figure}[H]
|
||||
\begin{center}
|
||||
\leavevmode
|
||||
\includegraphics[width=276pt]{classcore_1_1_t_l_s_server__inherit__graph}
|
||||
\end{center}
|
||||
\end{figure}
|
||||
|
||||
|
||||
Collaboration diagram for core\+:\+:T\+L\+S\+Server\+:
|
||||
\nopagebreak
|
||||
\begin{figure}[H]
|
||||
\begin{center}
|
||||
\leavevmode
|
||||
\includegraphics[width=350pt]{classcore_1_1_t_l_s_server__coll__graph}
|
||||
\end{center}
|
||||
\end{figure}
|
||||
\subsection*{Public Member Functions}
|
||||
\begin{DoxyCompactItemize}
|
||||
\item
|
||||
\hyperlink{classcore_1_1_t_l_s_server_a6460f9872936015efdfd0b8de04aa2fe}{T\+L\+S\+Server} (\hyperlink{classcore_1_1_e_poll}{E\+Poll} \&e\+Poll, \hyperlink{classcore_1_1_i_p_address}{I\+P\+Address} address)
|
||||
\item
|
||||
\hyperlink{classcore_1_1_t_l_s_server_ac71db77c796a1bf65357409cb96054c7}{$\sim$\+T\+L\+S\+Server} ()
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_t_l_s_server_a984dfd9faaa792e29f905e860d2e4a9e}\label{classcore_1_1_t_l_s_server_a984dfd9faaa792e29f905e860d2e4a9e}}
|
||||
\hyperlink{classcore_1_1_t_c_p_session}{T\+C\+P\+Session} $\ast$ {\bfseries get\+Socket\+Accept} ()
|
||||
\end{DoxyCompactItemize}
|
||||
\subsection*{Public Attributes}
|
||||
\begin{DoxyCompactItemize}
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_t_l_s_server_ab4e788350bda508fa44604d146e7537f}\label{classcore_1_1_t_l_s_server_ab4e788350bda508fa44604d146e7537f}}
|
||||
S\+S\+L\+\_\+\+C\+TX $\ast$ {\bfseries ctx}
|
||||
\end{DoxyCompactItemize}
|
||||
\subsection*{Additional Inherited Members}
|
||||
|
||||
|
||||
\subsection{Detailed Description}
|
||||
\hyperlink{classcore_1_1_t_l_s_server}{T\+L\+S\+Server}
|
||||
|
||||
Manage a socket connection as a T\+LS server type. Connections to the socket are processed through the accept functionality.
|
||||
|
||||
\subsection{Constructor \& Destructor Documentation}
|
||||
\mbox{\Hypertarget{classcore_1_1_t_l_s_server_a6460f9872936015efdfd0b8de04aa2fe}\label{classcore_1_1_t_l_s_server_a6460f9872936015efdfd0b8de04aa2fe}}
|
||||
\index{core\+::\+T\+L\+S\+Server@{core\+::\+T\+L\+S\+Server}!T\+L\+S\+Server@{T\+L\+S\+Server}}
|
||||
\index{T\+L\+S\+Server@{T\+L\+S\+Server}!core\+::\+T\+L\+S\+Server@{core\+::\+T\+L\+S\+Server}}
|
||||
\subsubsection{\texorpdfstring{T\+L\+S\+Server()}{TLSServer()}}
|
||||
{\footnotesize\ttfamily core\+::\+T\+L\+S\+Server\+::\+T\+L\+S\+Server (\begin{DoxyParamCaption}\item[{\hyperlink{classcore_1_1_e_poll}{E\+Poll} \&}]{e\+Poll, }\item[{\hyperlink{classcore_1_1_i_p_address}{I\+P\+Address}}]{address }\end{DoxyParamCaption})}
|
||||
|
||||
The constructor.
|
||||
|
||||
|
||||
\begin{DoxyParams}{Parameters}
|
||||
{\em e\+Poll} & the B\+M\+A\+E\+Poll instance that manages the socket. \\
|
||||
\hline
|
||||
{\em url} & the IP address for the socket to receive connection requests. \\
|
||||
\hline
|
||||
{\em port} & the port number that the socket will listen on. \\
|
||||
\hline
|
||||
{\em command\+Name} & the name of the command used to invoke the status display for this object. \\
|
||||
\hline
|
||||
\end{DoxyParams}
|
||||
\begin{DoxyReturn}{Returns}
|
||||
the instance of the B\+M\+A\+T\+L\+S\+Server\+Socket.
|
||||
\end{DoxyReturn}
|
||||
\mbox{\Hypertarget{classcore_1_1_t_l_s_server_ac71db77c796a1bf65357409cb96054c7}\label{classcore_1_1_t_l_s_server_ac71db77c796a1bf65357409cb96054c7}}
|
||||
\index{core\+::\+T\+L\+S\+Server@{core\+::\+T\+L\+S\+Server}!````~T\+L\+S\+Server@{$\sim$\+T\+L\+S\+Server}}
|
||||
\index{````~T\+L\+S\+Server@{$\sim$\+T\+L\+S\+Server}!core\+::\+T\+L\+S\+Server@{core\+::\+T\+L\+S\+Server}}
|
||||
\subsubsection{\texorpdfstring{$\sim$\+T\+L\+S\+Server()}{~TLSServer()}}
|
||||
{\footnotesize\ttfamily core\+::\+T\+L\+S\+Server\+::$\sim$\+T\+L\+S\+Server (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}
|
||||
|
||||
The destructor for this object.
|
||||
|
||||
The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
|
||||
\item
|
||||
T\+L\+S\+Server.\+h\item
|
||||
T\+L\+S\+Server.\+cpp\end{DoxyCompactItemize}
|
||||
@@ -1 +0,0 @@
|
||||
5f4973e1771dbfb8e2b50f804645d65c
|
||||
Binary file not shown.
@@ -1 +0,0 @@
|
||||
42128dc24443865b615dd9a69895402e
|
||||
Binary file not shown.
@@ -1,88 +0,0 @@
|
||||
\hypertarget{classcore_1_1_t_l_s_session}{}\section{core\+:\+:T\+L\+S\+Session Class Reference}
|
||||
\label{classcore_1_1_t_l_s_session}\index{core\+::\+T\+L\+S\+Session@{core\+::\+T\+L\+S\+Session}}
|
||||
|
||||
|
||||
{\ttfamily \#include $<$T\+L\+S\+Session.\+h$>$}
|
||||
|
||||
|
||||
|
||||
Inheritance diagram for core\+:\+:T\+L\+S\+Session\+:
|
||||
\nopagebreak
|
||||
\begin{figure}[H]
|
||||
\begin{center}
|
||||
\leavevmode
|
||||
\includegraphics[width=248pt]{classcore_1_1_t_l_s_session__inherit__graph}
|
||||
\end{center}
|
||||
\end{figure}
|
||||
|
||||
|
||||
Collaboration diagram for core\+:\+:T\+L\+S\+Session\+:
|
||||
\nopagebreak
|
||||
\begin{figure}[H]
|
||||
\begin{center}
|
||||
\leavevmode
|
||||
\includegraphics[width=350pt]{classcore_1_1_t_l_s_session__coll__graph}
|
||||
\end{center}
|
||||
\end{figure}
|
||||
\subsection*{Public Member Functions}
|
||||
\begin{DoxyCompactItemize}
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_t_l_s_session_ac2bd48a18a46a3b6827cd689775e3552}\label{classcore_1_1_t_l_s_session_ac2bd48a18a46a3b6827cd689775e3552}}
|
||||
{\bfseries T\+L\+S\+Session} (\hyperlink{classcore_1_1_e_poll}{E\+Poll} \&e\+Poll, \hyperlink{classcore_1_1_t_c_p_server}{T\+C\+P\+Server} \&server)
|
||||
\item
|
||||
virtual void \hyperlink{classcore_1_1_t_l_s_session_ae55de8a035d1ddc560cf619b2030af43}{output} (std\+::stringstream \&out)
|
||||
\item
|
||||
virtual void \hyperlink{classcore_1_1_t_l_s_session_a547c436ab69f75307f065eca8cfcd109}{protocol} (std\+::string data) override
|
||||
\end{DoxyCompactItemize}
|
||||
\subsection*{Protected Member Functions}
|
||||
\begin{DoxyCompactItemize}
|
||||
\item
|
||||
void \hyperlink{classcore_1_1_t_l_s_session_a1822cb21de545dc1a183ec0bac6cc4f0}{receive\+Data} (char $\ast$buffer, int buffer\+Length) override
|
||||
\end{DoxyCompactItemize}
|
||||
\subsection*{Additional Inherited Members}
|
||||
|
||||
|
||||
\subsection{Detailed Description}
|
||||
\hyperlink{classcore_1_1_t_l_s_session}{T\+L\+S\+Session}
|
||||
|
||||
Provides a network T\+LS socket.
|
||||
|
||||
For accessing T\+LS network functions use this object. The connection oriented nature of T\+LS provides a single client persistent connection with data error correction and a durable synchronous data connection.
|
||||
|
||||
\subsection{Member Function Documentation}
|
||||
\mbox{\Hypertarget{classcore_1_1_t_l_s_session_ae55de8a035d1ddc560cf619b2030af43}\label{classcore_1_1_t_l_s_session_ae55de8a035d1ddc560cf619b2030af43}}
|
||||
\index{core\+::\+T\+L\+S\+Session@{core\+::\+T\+L\+S\+Session}!output@{output}}
|
||||
\index{output@{output}!core\+::\+T\+L\+S\+Session@{core\+::\+T\+L\+S\+Session}}
|
||||
\subsubsection{\texorpdfstring{output()}{output()}}
|
||||
{\footnotesize\ttfamily void core\+::\+T\+L\+S\+Session\+::output (\begin{DoxyParamCaption}\item[{std\+::stringstream \&}]{out }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}
|
||||
|
||||
The output method is called by a socket session (Session) and will output the detail information for the client socket. When extending T\+L\+S\+Socket or Session you can override the method to add attributes to the list.
|
||||
|
||||
Reimplemented from \hyperlink{classcore_1_1_t_c_p_session_a50037cbfc515650e04054e5481785981}{core\+::\+T\+C\+P\+Session}.
|
||||
|
||||
\mbox{\Hypertarget{classcore_1_1_t_l_s_session_a547c436ab69f75307f065eca8cfcd109}\label{classcore_1_1_t_l_s_session_a547c436ab69f75307f065eca8cfcd109}}
|
||||
\index{core\+::\+T\+L\+S\+Session@{core\+::\+T\+L\+S\+Session}!protocol@{protocol}}
|
||||
\index{protocol@{protocol}!core\+::\+T\+L\+S\+Session@{core\+::\+T\+L\+S\+Session}}
|
||||
\subsubsection{\texorpdfstring{protocol()}{protocol()}}
|
||||
{\footnotesize\ttfamily void core\+::\+T\+L\+S\+Session\+::protocol (\begin{DoxyParamCaption}\item[{std\+::string}]{data }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}}
|
||||
|
||||
Override the protocol method to manage and control the session communications in your inherited session. If you do not override this method then the Session default will process the \textquotesingle{}commands\textquotesingle{} added to the server object using the process\+Request method on the session input.
|
||||
|
||||
Reimplemented from \hyperlink{classcore_1_1_t_c_p_session_ae90dc64e2d3c4b3239117923145edb3f}{core\+::\+T\+C\+P\+Session}.
|
||||
|
||||
\mbox{\Hypertarget{classcore_1_1_t_l_s_session_a1822cb21de545dc1a183ec0bac6cc4f0}\label{classcore_1_1_t_l_s_session_a1822cb21de545dc1a183ec0bac6cc4f0}}
|
||||
\index{core\+::\+T\+L\+S\+Session@{core\+::\+T\+L\+S\+Session}!receive\+Data@{receive\+Data}}
|
||||
\index{receive\+Data@{receive\+Data}!core\+::\+T\+L\+S\+Session@{core\+::\+T\+L\+S\+Session}}
|
||||
\subsubsection{\texorpdfstring{receive\+Data()}{receiveData()}}
|
||||
{\footnotesize\ttfamily void core\+::\+T\+L\+S\+Session\+::receive\+Data (\begin{DoxyParamCaption}\item[{char $\ast$}]{buffer, }\item[{int}]{buffer\+Length }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [protected]}, {\ttfamily [virtual]}}
|
||||
|
||||
receive\+Data will read the data from the socket and place it in the socket buffer. T\+LS layer overrides this to be able to read from S\+SL.
|
||||
|
||||
Reimplemented from \hyperlink{classcore_1_1_socket_af455ec6f793473f529507af26aa54695}{core\+::\+Socket}.
|
||||
|
||||
|
||||
|
||||
The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
|
||||
\item
|
||||
T\+L\+S\+Session.\+h\item
|
||||
T\+L\+S\+Session.\+cpp\end{DoxyCompactItemize}
|
||||
@@ -1 +0,0 @@
|
||||
3d99b62e64cdbccc78959769c47fdc10
|
||||
Binary file not shown.
@@ -1 +0,0 @@
|
||||
ea75b9e9dda9684841dc33c1bce7a394
|
||||
Binary file not shown.
@@ -1,68 +0,0 @@
|
||||
\hypertarget{classcore_1_1_terminal_session}{}\section{core\+:\+:Terminal\+Session Class Reference}
|
||||
\label{classcore_1_1_terminal_session}\index{core\+::\+Terminal\+Session@{core\+::\+Terminal\+Session}}
|
||||
|
||||
|
||||
Inheritance diagram for core\+:\+:Terminal\+Session\+:
|
||||
\nopagebreak
|
||||
\begin{figure}[H]
|
||||
\begin{center}
|
||||
\leavevmode
|
||||
\includegraphics[width=248pt]{classcore_1_1_terminal_session__inherit__graph}
|
||||
\end{center}
|
||||
\end{figure}
|
||||
|
||||
|
||||
Collaboration diagram for core\+:\+:Terminal\+Session\+:
|
||||
\nopagebreak
|
||||
\begin{figure}[H]
|
||||
\begin{center}
|
||||
\leavevmode
|
||||
\includegraphics[width=350pt]{classcore_1_1_terminal_session__coll__graph}
|
||||
\end{center}
|
||||
\end{figure}
|
||||
\subsection*{Public Member Functions}
|
||||
\begin{DoxyCompactItemize}
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_terminal_session_a6773b1897d2e417ab573b28fa127230c}\label{classcore_1_1_terminal_session_a6773b1897d2e417ab573b28fa127230c}}
|
||||
{\bfseries Terminal\+Session} (\hyperlink{classcore_1_1_e_poll}{E\+Poll} \&e\+Poll, \hyperlink{classcore_1_1_t_c_p_server}{T\+C\+P\+Server} \&server)
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_terminal_session_a0df0106164a7f213acf2e814e725c576}\label{classcore_1_1_terminal_session_a0df0106164a7f213acf2e814e725c576}}
|
||||
int {\bfseries get\+Lines} ()
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_terminal_session_a42bb06857891220a831da04248233935}\label{classcore_1_1_terminal_session_a42bb06857891220a831da04248233935}}
|
||||
void {\bfseries clear} ()
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_terminal_session_aa660768eed03b0b996a749e8a146446c}\label{classcore_1_1_terminal_session_aa660768eed03b0b996a749e8a146446c}}
|
||||
void {\bfseries clear\+E\+OL} ()
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_terminal_session_aa9939cbe36c08e1a0b8413a96ca251fa}\label{classcore_1_1_terminal_session_aa9939cbe36c08e1a0b8413a96ca251fa}}
|
||||
void {\bfseries set\+Cursor\+Location} (int x, int y)
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_terminal_session_abb104a3743f52c8237afc25c9abd3815}\label{classcore_1_1_terminal_session_abb104a3743f52c8237afc25c9abd3815}}
|
||||
void {\bfseries set\+Color} (int color)
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_terminal_session_a96c909e28a87f2e5b64fe2ca7ab79ca7}\label{classcore_1_1_terminal_session_a96c909e28a87f2e5b64fe2ca7ab79ca7}}
|
||||
void {\bfseries set\+Back\+Color} (int color)
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_terminal_session_a930de98aea34eca4723a1efbc0272223}\label{classcore_1_1_terminal_session_a930de98aea34eca4723a1efbc0272223}}
|
||||
void {\bfseries save\+Cursor} ()
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_terminal_session_afc89dc99e1b104bee7717b0cda2f9b37}\label{classcore_1_1_terminal_session_afc89dc99e1b104bee7717b0cda2f9b37}}
|
||||
void {\bfseries restore\+Cursor} ()
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_terminal_session_a21f8ec433bcb4c7f55807cdcbc929134}\label{classcore_1_1_terminal_session_a21f8ec433bcb4c7f55807cdcbc929134}}
|
||||
void {\bfseries Next\+Line} (int lines)
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_terminal_session_aea2f243e65074cb174ddf8844c9126ff}\label{classcore_1_1_terminal_session_aea2f243e65074cb174ddf8844c9126ff}}
|
||||
void {\bfseries Previous\+Line} (int lines)
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_terminal_session_a2305ddd73d1ccb8a303abd718cd6e7b0}\label{classcore_1_1_terminal_session_a2305ddd73d1ccb8a303abd718cd6e7b0}}
|
||||
void {\bfseries scroll\+Area} (int start, int end)
|
||||
\end{DoxyCompactItemize}
|
||||
\subsection*{Additional Inherited Members}
|
||||
|
||||
|
||||
The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
|
||||
\item
|
||||
Terminal\+Session.\+h\item
|
||||
Terminal\+Session.\+cpp\end{DoxyCompactItemize}
|
||||
@@ -1 +0,0 @@
|
||||
13dd2b5e640decdde8e16e06f7f3b0e4
|
||||
Binary file not shown.
@@ -1 +0,0 @@
|
||||
be10d90fc56d51757620eadf227c9fd5
|
||||
Binary file not shown.
@@ -1,70 +0,0 @@
|
||||
\hypertarget{classcore_1_1_thread}{}\section{core\+:\+:Thread Class Reference}
|
||||
\label{classcore_1_1_thread}\index{core\+::\+Thread@{core\+::\+Thread}}
|
||||
|
||||
|
||||
{\ttfamily \#include $<$Thread.\+h$>$}
|
||||
|
||||
|
||||
|
||||
Inheritance diagram for core\+:\+:Thread\+:
|
||||
\nopagebreak
|
||||
\begin{figure}[H]
|
||||
\begin{center}
|
||||
\leavevmode
|
||||
\includegraphics[width=151pt]{classcore_1_1_thread__inherit__graph}
|
||||
\end{center}
|
||||
\end{figure}
|
||||
|
||||
|
||||
Collaboration diagram for core\+:\+:Thread\+:
|
||||
\nopagebreak
|
||||
\begin{figure}[H]
|
||||
\begin{center}
|
||||
\leavevmode
|
||||
\includegraphics[width=151pt]{classcore_1_1_thread__coll__graph}
|
||||
\end{center}
|
||||
\end{figure}
|
||||
\subsection*{Public Member Functions}
|
||||
\begin{DoxyCompactItemize}
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_thread_acf8e7e682431fa6a4a3a77ce9b33aefc}\label{classcore_1_1_thread_acf8e7e682431fa6a4a3a77ce9b33aefc}}
|
||||
{\bfseries Thread} (\hyperlink{classcore_1_1_e_poll}{E\+Poll} \&e\+Poll)
|
||||
\item
|
||||
void \hyperlink{classcore_1_1_thread_ae6885df9a9b9503669e5776518b19054}{start} ()
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_thread_a9ba3b9a5127dcfa0ee2c5f315d6a648d}\label{classcore_1_1_thread_a9ba3b9a5127dcfa0ee2c5f315d6a648d}}
|
||||
void {\bfseries join} ()
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_thread_a0b5d8efe9bf913e06a7768cb5ef75c8a}\label{classcore_1_1_thread_a0b5d8efe9bf913e06a7768cb5ef75c8a}}
|
||||
std\+::string {\bfseries get\+Status} ()
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_thread_adddf5bccd9189cbd81eeadf0311dbdd6}\label{classcore_1_1_thread_adddf5bccd9189cbd81eeadf0311dbdd6}}
|
||||
pid\+\_\+t {\bfseries get\+Thread\+Id} ()
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_thread_aca6a18a5aba7e87fe91a828f4896d654}\label{classcore_1_1_thread_aca6a18a5aba7e87fe91a828f4896d654}}
|
||||
int {\bfseries get\+Count} ()
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_thread_aa5b676aa441735c2ac60d05fd3ab02b5}\label{classcore_1_1_thread_aa5b676aa441735c2ac60d05fd3ab02b5}}
|
||||
void {\bfseries output} (std\+::stringstream \&data)
|
||||
\end{DoxyCompactItemize}
|
||||
\subsection*{Additional Inherited Members}
|
||||
|
||||
|
||||
\subsection{Detailed Description}
|
||||
\hyperlink{classcore_1_1_thread}{Thread}
|
||||
|
||||
This thread object is designed to be the thread processor for the \hyperlink{classcore_1_1_e_poll}{E\+Poll} object. It wraps the thread object to allow maintaining a status value for monitoring the thread activity. \hyperlink{classcore_1_1_e_poll}{E\+Poll} will instantiate a \hyperlink{classcore_1_1_thread}{Thread} object for each thread specified in the \hyperlink{classcore_1_1_e_poll}{E\+Poll}\textquotesingle{}s start method.
|
||||
|
||||
\subsection{Member Function Documentation}
|
||||
\mbox{\Hypertarget{classcore_1_1_thread_ae6885df9a9b9503669e5776518b19054}\label{classcore_1_1_thread_ae6885df9a9b9503669e5776518b19054}}
|
||||
\index{core\+::\+Thread@{core\+::\+Thread}!start@{start}}
|
||||
\index{start@{start}!core\+::\+Thread@{core\+::\+Thread}}
|
||||
\subsubsection{\texorpdfstring{start()}{start()}}
|
||||
{\footnotesize\ttfamily void core\+::\+Thread\+::start (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}
|
||||
|
||||
Start the thread object. This will cause the epoll scheduler to commence reading the epoll queue.
|
||||
|
||||
The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
|
||||
\item
|
||||
Thread.\+h\item
|
||||
Thread.\+cpp\end{DoxyCompactItemize}
|
||||
@@ -1 +0,0 @@
|
||||
e74fbc0466e793358e4bcbf4c18ccef1
|
||||
Binary file not shown.
@@ -1 +0,0 @@
|
||||
6b0d0b500328b76e40595bf89beb877e
|
||||
Binary file not shown.
@@ -1,96 +0,0 @@
|
||||
\hypertarget{classcore_1_1_timer}{}\section{core\+:\+:Timer Class Reference}
|
||||
\label{classcore_1_1_timer}\index{core\+::\+Timer@{core\+::\+Timer}}
|
||||
|
||||
|
||||
{\ttfamily \#include $<$Timer.\+h$>$}
|
||||
|
||||
|
||||
|
||||
Inheritance diagram for core\+:\+:Timer\+:
|
||||
\nopagebreak
|
||||
\begin{figure}[H]
|
||||
\begin{center}
|
||||
\leavevmode
|
||||
\includegraphics[width=248pt]{classcore_1_1_timer__inherit__graph}
|
||||
\end{center}
|
||||
\end{figure}
|
||||
|
||||
|
||||
Collaboration diagram for core\+:\+:Timer\+:
|
||||
\nopagebreak
|
||||
\begin{figure}[H]
|
||||
\begin{center}
|
||||
\leavevmode
|
||||
\includegraphics[width=302pt]{classcore_1_1_timer__coll__graph}
|
||||
\end{center}
|
||||
\end{figure}
|
||||
\subsection*{Public Member Functions}
|
||||
\begin{DoxyCompactItemize}
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_timer_aa12f319bab9c7a350244c4d47fe59de9}\label{classcore_1_1_timer_aa12f319bab9c7a350244c4d47fe59de9}}
|
||||
{\bfseries Timer} (\hyperlink{classcore_1_1_e_poll}{E\+Poll} \&e\+Poll)
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_timer_a6ba8de81f8e3b26fd132e29230646024}\label{classcore_1_1_timer_a6ba8de81f8e3b26fd132e29230646024}}
|
||||
{\bfseries Timer} (\hyperlink{classcore_1_1_e_poll}{E\+Poll} \&e\+Poll, double delay)
|
||||
\item
|
||||
void \hyperlink{classcore_1_1_timer_ac0a642cdcb76b7f995137162050d3d0b}{set\+Timer} (double delay)
|
||||
\item
|
||||
void \hyperlink{classcore_1_1_timer_a8e063f46e89dac04364871e909ab940a}{clear\+Timer} ()
|
||||
\item
|
||||
double \hyperlink{classcore_1_1_timer_a0df7f1ffc05529b45d6e13713bbc0209}{get\+Elapsed} ()
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_timer_afee1c871ce74e6b594bd6e64ad3cb576}\label{classcore_1_1_timer_afee1c871ce74e6b594bd6e64ad3cb576}}
|
||||
double {\bfseries get\+Epoch} ()
|
||||
\end{DoxyCompactItemize}
|
||||
\subsection*{Protected Member Functions}
|
||||
\begin{DoxyCompactItemize}
|
||||
\item
|
||||
virtual void \hyperlink{classcore_1_1_timer_ae51704ff08d985bbc30e3ff4c9b3c6ca}{on\+Timeout} ()=0
|
||||
\end{DoxyCompactItemize}
|
||||
|
||||
|
||||
\subsection{Detailed Description}
|
||||
\hyperlink{classcore_1_1_timer}{Timer}
|
||||
|
||||
Set and trigger callback upon specified timeout.
|
||||
|
||||
The \hyperlink{classcore_1_1_timer}{Timer} is used to establish a timer using the timer socket interface. It cannot be instantiated directly but must be extended.
|
||||
|
||||
\subsection{Member Function Documentation}
|
||||
\mbox{\Hypertarget{classcore_1_1_timer_a8e063f46e89dac04364871e909ab940a}\label{classcore_1_1_timer_a8e063f46e89dac04364871e909ab940a}}
|
||||
\index{core\+::\+Timer@{core\+::\+Timer}!clear\+Timer@{clear\+Timer}}
|
||||
\index{clear\+Timer@{clear\+Timer}!core\+::\+Timer@{core\+::\+Timer}}
|
||||
\subsubsection{\texorpdfstring{clear\+Timer()}{clearTimer()}}
|
||||
{\footnotesize\ttfamily void core\+::\+Timer\+::clear\+Timer (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}
|
||||
|
||||
Use the \hyperlink{classcore_1_1_timer_a8e063f46e89dac04364871e909ab940a}{clear\+Timer()} to unset the timer and return the timer to an idle state. \mbox{\Hypertarget{classcore_1_1_timer_a0df7f1ffc05529b45d6e13713bbc0209}\label{classcore_1_1_timer_a0df7f1ffc05529b45d6e13713bbc0209}}
|
||||
\index{core\+::\+Timer@{core\+::\+Timer}!get\+Elapsed@{get\+Elapsed}}
|
||||
\index{get\+Elapsed@{get\+Elapsed}!core\+::\+Timer@{core\+::\+Timer}}
|
||||
\subsubsection{\texorpdfstring{get\+Elapsed()}{getElapsed()}}
|
||||
{\footnotesize\ttfamily double core\+::\+Timer\+::get\+Elapsed (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}
|
||||
|
||||
Use the \hyperlink{classcore_1_1_timer_a0df7f1ffc05529b45d6e13713bbc0209}{get\+Elapsed()} method to obtain the amount of time that has elapsed since the timer was set. \mbox{\Hypertarget{classcore_1_1_timer_ae51704ff08d985bbc30e3ff4c9b3c6ca}\label{classcore_1_1_timer_ae51704ff08d985bbc30e3ff4c9b3c6ca}}
|
||||
\index{core\+::\+Timer@{core\+::\+Timer}!on\+Timeout@{on\+Timeout}}
|
||||
\index{on\+Timeout@{on\+Timeout}!core\+::\+Timer@{core\+::\+Timer}}
|
||||
\subsubsection{\texorpdfstring{on\+Timeout()}{onTimeout()}}
|
||||
{\footnotesize\ttfamily virtual void core\+::\+Timer\+::on\+Timeout (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [protected]}, {\ttfamily [pure virtual]}}
|
||||
|
||||
This method is called when the time out occurs. \mbox{\Hypertarget{classcore_1_1_timer_ac0a642cdcb76b7f995137162050d3d0b}\label{classcore_1_1_timer_ac0a642cdcb76b7f995137162050d3d0b}}
|
||||
\index{core\+::\+Timer@{core\+::\+Timer}!set\+Timer@{set\+Timer}}
|
||||
\index{set\+Timer@{set\+Timer}!core\+::\+Timer@{core\+::\+Timer}}
|
||||
\subsubsection{\texorpdfstring{set\+Timer()}{setTimer()}}
|
||||
{\footnotesize\ttfamily void core\+::\+Timer\+::set\+Timer (\begin{DoxyParamCaption}\item[{double}]{delay }\end{DoxyParamCaption})}
|
||||
|
||||
Use the \hyperlink{classcore_1_1_timer_ac0a642cdcb76b7f995137162050d3d0b}{set\+Timer()} method to set the time out value for timer. Setting the timer also starts the timer countdown. The \hyperlink{classcore_1_1_timer_a8e063f46e89dac04364871e909ab940a}{clear\+Timer()} method can be used to reset the timer without triggering the \hyperlink{classcore_1_1_timer_ae51704ff08d985bbc30e3ff4c9b3c6ca}{on\+Timeout()} callback.
|
||||
|
||||
|
||||
\begin{DoxyParams}{Parameters}
|
||||
{\em delay} & the amount of time in seconds to wait before trigering the on\+Timeout function. \\
|
||||
\hline
|
||||
\end{DoxyParams}
|
||||
|
||||
|
||||
The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
|
||||
\item
|
||||
Timer.\+h\item
|
||||
Timer.\+cpp\end{DoxyCompactItemize}
|
||||
@@ -1 +0,0 @@
|
||||
a057ab1f1029fc9c45fe24c230b6eede
|
||||
Binary file not shown.
@@ -1 +0,0 @@
|
||||
45f8efac6284b415e53d20ee17b968ae
|
||||
Binary file not shown.
@@ -1,82 +0,0 @@
|
||||
\hypertarget{classcore_1_1_u_d_p_server_socket}{}\section{core\+:\+:U\+D\+P\+Server\+Socket Class Reference}
|
||||
\label{classcore_1_1_u_d_p_server_socket}\index{core\+::\+U\+D\+P\+Server\+Socket@{core\+::\+U\+D\+P\+Server\+Socket}}
|
||||
|
||||
|
||||
{\ttfamily \#include $<$U\+D\+P\+Server\+Socket.\+h$>$}
|
||||
|
||||
|
||||
|
||||
Inheritance diagram for core\+:\+:U\+D\+P\+Server\+Socket\+:
|
||||
\nopagebreak
|
||||
\begin{figure}[H]
|
||||
\begin{center}
|
||||
\leavevmode
|
||||
\includegraphics[width=278pt]{classcore_1_1_u_d_p_server_socket__inherit__graph}
|
||||
\end{center}
|
||||
\end{figure}
|
||||
|
||||
|
||||
Collaboration diagram for core\+:\+:U\+D\+P\+Server\+Socket\+:
|
||||
\nopagebreak
|
||||
\begin{figure}[H]
|
||||
\begin{center}
|
||||
\leavevmode
|
||||
\includegraphics[width=333pt]{classcore_1_1_u_d_p_server_socket__coll__graph}
|
||||
\end{center}
|
||||
\end{figure}
|
||||
\subsection*{Public Member Functions}
|
||||
\begin{DoxyCompactItemize}
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_u_d_p_server_socket_a6fee7bc6dc2f94d48734c07cbc918734}\label{classcore_1_1_u_d_p_server_socket_a6fee7bc6dc2f94d48734c07cbc918734}}
|
||||
{\bfseries U\+D\+P\+Server\+Socket} (\hyperlink{classcore_1_1_e_poll}{E\+Poll} \&e\+Poll, std\+::string url, short int port, std\+::string command\+Name)
|
||||
\end{DoxyCompactItemize}
|
||||
\subsection*{Protected Member Functions}
|
||||
\begin{DoxyCompactItemize}
|
||||
\item
|
||||
void \hyperlink{classcore_1_1_u_d_p_server_socket_a41933ca153c854a800e3d047ab18313e}{on\+Data\+Received} (std\+::string data) override
|
||||
\begin{DoxyCompactList}\small\item\em Called when data is received from the socket. \end{DoxyCompactList}\item
|
||||
\mbox{\Hypertarget{classcore_1_1_u_d_p_server_socket_aef32dee99a40a8951a708e99776539d4}\label{classcore_1_1_u_d_p_server_socket_aef32dee99a40a8951a708e99776539d4}}
|
||||
int {\bfseries process\+Command} (std\+::string request, std\+::stringstream \&data)
|
||||
\end{DoxyCompactItemize}
|
||||
\subsection*{Protected Attributes}
|
||||
\begin{DoxyCompactItemize}
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_u_d_p_server_socket_a83362532c66271699c4e60d1da2a41bc}\label{classcore_1_1_u_d_p_server_socket_a83362532c66271699c4e60d1da2a41bc}}
|
||||
std\+::vector$<$ Session $\ast$ $>$ {\bfseries sessions}
|
||||
\end{DoxyCompactItemize}
|
||||
\subsection*{Additional Inherited Members}
|
||||
|
||||
|
||||
\subsection{Detailed Description}
|
||||
\hyperlink{classcore_1_1_u_d_p_socket}{U\+D\+P\+Socket}
|
||||
|
||||
Manage a socket connection as a U\+DP server type. Connections to the socket are processed through the session list functionality. A list of sessions is maintained in a vector object.
|
||||
|
||||
\subsection{Member Function Documentation}
|
||||
\mbox{\Hypertarget{classcore_1_1_u_d_p_server_socket_a41933ca153c854a800e3d047ab18313e}\label{classcore_1_1_u_d_p_server_socket_a41933ca153c854a800e3d047ab18313e}}
|
||||
\index{core\+::\+U\+D\+P\+Server\+Socket@{core\+::\+U\+D\+P\+Server\+Socket}!on\+Data\+Received@{on\+Data\+Received}}
|
||||
\index{on\+Data\+Received@{on\+Data\+Received}!core\+::\+U\+D\+P\+Server\+Socket@{core\+::\+U\+D\+P\+Server\+Socket}}
|
||||
\subsubsection{\texorpdfstring{on\+Data\+Received()}{onDataReceived()}}
|
||||
{\footnotesize\ttfamily void core\+::\+U\+D\+P\+Server\+Socket\+::on\+Data\+Received (\begin{DoxyParamCaption}\item[{std\+::string}]{data }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [protected]}, {\ttfamily [virtual]}}
|
||||
|
||||
|
||||
|
||||
Called when data is received from the socket.
|
||||
|
||||
The on\+Data\+Received method is called when the socket has received an event from epoll and there is data ready to be read from the socket. The default handler will pull the data and put it into the streambuf for the socket. E\+P\+O\+L\+L\+IN
|
||||
|
||||
|
||||
\begin{DoxyParams}{Parameters}
|
||||
{\em data} & the data that has been received from the socket. \\
|
||||
\hline
|
||||
\end{DoxyParams}
|
||||
|
||||
|
||||
Implements \hyperlink{classcore_1_1_socket_add22bdee877319a372db2fd707dc5a1c}{core\+::\+Socket}.
|
||||
|
||||
|
||||
|
||||
The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
|
||||
\item
|
||||
U\+D\+P\+Server\+Socket.\+h\item
|
||||
U\+D\+P\+Server\+Socket.\+cpp\end{DoxyCompactItemize}
|
||||
@@ -1 +0,0 @@
|
||||
e9e030f16cea4fd69ad27931d3b9f40e
|
||||
Binary file not shown.
@@ -1 +0,0 @@
|
||||
63429a41344d60ba111a0cbc3d9d3928
|
||||
Binary file not shown.
@@ -1,35 +0,0 @@
|
||||
\hypertarget{classcore_1_1_u_d_p_socket}{}\section{core\+:\+:U\+D\+P\+Socket Class Reference}
|
||||
\label{classcore_1_1_u_d_p_socket}\index{core\+::\+U\+D\+P\+Socket@{core\+::\+U\+D\+P\+Socket}}
|
||||
|
||||
|
||||
Inheritance diagram for core\+:\+:U\+D\+P\+Socket\+:
|
||||
\nopagebreak
|
||||
\begin{figure}[H]
|
||||
\begin{center}
|
||||
\leavevmode
|
||||
\includegraphics[width=248pt]{classcore_1_1_u_d_p_socket__inherit__graph}
|
||||
\end{center}
|
||||
\end{figure}
|
||||
|
||||
|
||||
Collaboration diagram for core\+:\+:U\+D\+P\+Socket\+:
|
||||
\nopagebreak
|
||||
\begin{figure}[H]
|
||||
\begin{center}
|
||||
\leavevmode
|
||||
\includegraphics[width=302pt]{classcore_1_1_u_d_p_socket__coll__graph}
|
||||
\end{center}
|
||||
\end{figure}
|
||||
\subsection*{Public Member Functions}
|
||||
\begin{DoxyCompactItemize}
|
||||
\item
|
||||
\mbox{\Hypertarget{classcore_1_1_u_d_p_socket_a9dcbe1203fea9c25400a391d3430e976}\label{classcore_1_1_u_d_p_socket_a9dcbe1203fea9c25400a391d3430e976}}
|
||||
{\bfseries U\+D\+P\+Socket} (\hyperlink{classcore_1_1_e_poll}{E\+Poll} \&e\+Poll)
|
||||
\end{DoxyCompactItemize}
|
||||
\subsection*{Additional Inherited Members}
|
||||
|
||||
|
||||
The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
|
||||
\item
|
||||
U\+D\+P\+Socket.\+h\item
|
||||
U\+D\+P\+Socket.\+cpp\end{DoxyCompactItemize}
|
||||
@@ -1 +0,0 @@
|
||||
8d99de66c44249c2ba29c06812850450
|
||||
Binary file not shown.
@@ -1 +0,0 @@
|
||||
2485181c1b143b49bad42229464ac18c
|
||||
Binary file not shown.
@@ -1,503 +0,0 @@
|
||||
\NeedsTeXFormat{LaTeX2e}
|
||||
\ProvidesPackage{doxygen}
|
||||
|
||||
% Packages used by this style file
|
||||
\RequirePackage{alltt}
|
||||
\RequirePackage{array}
|
||||
\RequirePackage{calc}
|
||||
\RequirePackage{float}
|
||||
\RequirePackage{ifthen}
|
||||
\RequirePackage{verbatim}
|
||||
\RequirePackage[table]{xcolor}
|
||||
\RequirePackage{longtable}
|
||||
\RequirePackage{tabu}
|
||||
\RequirePackage{tabularx}
|
||||
\RequirePackage{multirow}
|
||||
|
||||
%---------- Internal commands used in this style file ----------------
|
||||
|
||||
\newcommand{\ensurespace}[1]{%
|
||||
\begingroup%
|
||||
\setlength{\dimen@}{#1}%
|
||||
\vskip\z@\@plus\dimen@%
|
||||
\penalty -100\vskip\z@\@plus -\dimen@%
|
||||
\vskip\dimen@%
|
||||
\penalty 9999%
|
||||
\vskip -\dimen@%
|
||||
\vskip\z@skip% hide the previous |\vskip| from |\addvspace|
|
||||
\endgroup%
|
||||
}
|
||||
|
||||
\newcommand{\DoxyLabelFont}{}
|
||||
\newcommand{\entrylabel}[1]{%
|
||||
{%
|
||||
\parbox[b]{\labelwidth-4pt}{%
|
||||
\makebox[0pt][l]{\DoxyLabelFont#1}%
|
||||
\vspace{1.5\baselineskip}%
|
||||
}%
|
||||
}%
|
||||
}
|
||||
|
||||
\newenvironment{DoxyDesc}[1]{%
|
||||
\ensurespace{4\baselineskip}%
|
||||
\begin{list}{}{%
|
||||
\settowidth{\labelwidth}{20pt}%
|
||||
\setlength{\parsep}{0pt}%
|
||||
\setlength{\itemsep}{0pt}%
|
||||
\setlength{\leftmargin}{\labelwidth+\labelsep}%
|
||||
\renewcommand{\makelabel}{\entrylabel}%
|
||||
}%
|
||||
\item[#1]%
|
||||
}{%
|
||||
\end{list}%
|
||||
}
|
||||
|
||||
\newsavebox{\xrefbox}
|
||||
\newlength{\xreflength}
|
||||
\newcommand{\xreflabel}[1]{%
|
||||
\sbox{\xrefbox}{#1}%
|
||||
\setlength{\xreflength}{\wd\xrefbox}%
|
||||
\ifthenelse{\xreflength>\labelwidth}{%
|
||||
\begin{minipage}{\textwidth}%
|
||||
\setlength{\parindent}{0pt}%
|
||||
\hangindent=15pt\bfseries #1\vspace{1.2\itemsep}%
|
||||
\end{minipage}%
|
||||
}{%
|
||||
\parbox[b]{\labelwidth}{\makebox[0pt][l]{\textbf{#1}}}%
|
||||
}%
|
||||
}
|
||||
|
||||
%---------- Commands used by doxygen LaTeX output generator ----------
|
||||
|
||||
% Used by <pre> ... </pre>
|
||||
\newenvironment{DoxyPre}{%
|
||||
\small%
|
||||
\begin{alltt}%
|
||||
}{%
|
||||
\end{alltt}%
|
||||
\normalsize%
|
||||
}
|
||||
|
||||
% Used by @code ... @endcode
|
||||
\newenvironment{DoxyCode}{%
|
||||
\par%
|
||||
\scriptsize%
|
||||
\begin{alltt}%
|
||||
}{%
|
||||
\end{alltt}%
|
||||
\normalsize%
|
||||
}
|
||||
|
||||
% Used by @example, @include, @includelineno and @dontinclude
|
||||
\newenvironment{DoxyCodeInclude}{%
|
||||
\DoxyCode%
|
||||
}{%
|
||||
\endDoxyCode%
|
||||
}
|
||||
|
||||
% Used by @verbatim ... @endverbatim
|
||||
\newenvironment{DoxyVerb}{%
|
||||
\footnotesize%
|
||||
\verbatim%
|
||||
}{%
|
||||
\endverbatim%
|
||||
\normalsize%
|
||||
}
|
||||
|
||||
% Used by @verbinclude
|
||||
\newenvironment{DoxyVerbInclude}{%
|
||||
\DoxyVerb%
|
||||
}{%
|
||||
\endDoxyVerb%
|
||||
}
|
||||
|
||||
% Used by numbered lists (using '-#' or <ol> ... </ol>)
|
||||
\newenvironment{DoxyEnumerate}{%
|
||||
\enumerate%
|
||||
}{%
|
||||
\endenumerate%
|
||||
}
|
||||
|
||||
% Used by bullet lists (using '-', @li, @arg, or <ul> ... </ul>)
|
||||
\newenvironment{DoxyItemize}{%
|
||||
\itemize%
|
||||
}{%
|
||||
\enditemize%
|
||||
}
|
||||
|
||||
% Used by description lists (using <dl> ... </dl>)
|
||||
\newenvironment{DoxyDescription}{%
|
||||
\description%
|
||||
}{%
|
||||
\enddescription%
|
||||
}
|
||||
|
||||
% Used by @image, @dotfile, @dot ... @enddot, and @msc ... @endmsc
|
||||
% (only if caption is specified)
|
||||
\newenvironment{DoxyImage}{%
|
||||
\begin{figure}[H]%
|
||||
\begin{center}%
|
||||
}{%
|
||||
\end{center}%
|
||||
\end{figure}%
|
||||
}
|
||||
|
||||
% Used by @image, @dotfile, @dot ... @enddot, and @msc ... @endmsc
|
||||
% (only if no caption is specified)
|
||||
\newenvironment{DoxyImageNoCaption}{%
|
||||
\begin{center}%
|
||||
}{%
|
||||
\end{center}%
|
||||
}
|
||||
|
||||
% Used by @attention
|
||||
\newenvironment{DoxyAttention}[1]{%
|
||||
\begin{DoxyDesc}{#1}%
|
||||
}{%
|
||||
\end{DoxyDesc}%
|
||||
}
|
||||
|
||||
% Used by @author and @authors
|
||||
\newenvironment{DoxyAuthor}[1]{%
|
||||
\begin{DoxyDesc}{#1}%
|
||||
}{%
|
||||
\end{DoxyDesc}%
|
||||
}
|
||||
|
||||
% Used by @date
|
||||
\newenvironment{DoxyDate}[1]{%
|
||||
\begin{DoxyDesc}{#1}%
|
||||
}{%
|
||||
\end{DoxyDesc}%
|
||||
}
|
||||
|
||||
% Used by @invariant
|
||||
\newenvironment{DoxyInvariant}[1]{%
|
||||
\begin{DoxyDesc}{#1}%
|
||||
}{%
|
||||
\end{DoxyDesc}%
|
||||
}
|
||||
|
||||
% Used by @note
|
||||
\newenvironment{DoxyNote}[1]{%
|
||||
\begin{DoxyDesc}{#1}%
|
||||
}{%
|
||||
\end{DoxyDesc}%
|
||||
}
|
||||
|
||||
% Used by @post
|
||||
\newenvironment{DoxyPostcond}[1]{%
|
||||
\begin{DoxyDesc}{#1}%
|
||||
}{%
|
||||
\end{DoxyDesc}%
|
||||
}
|
||||
|
||||
% Used by @pre
|
||||
\newenvironment{DoxyPrecond}[1]{%
|
||||
\begin{DoxyDesc}{#1}%
|
||||
}{%
|
||||
\end{DoxyDesc}%
|
||||
}
|
||||
|
||||
% Used by @copyright
|
||||
\newenvironment{DoxyCopyright}[1]{%
|
||||
\begin{DoxyDesc}{#1}%
|
||||
}{%
|
||||
\end{DoxyDesc}%
|
||||
}
|
||||
|
||||
% Used by @remark
|
||||
\newenvironment{DoxyRemark}[1]{%
|
||||
\begin{DoxyDesc}{#1}%
|
||||
}{%
|
||||
\end{DoxyDesc}%
|
||||
}
|
||||
|
||||
% Used by @return and @returns
|
||||
\newenvironment{DoxyReturn}[1]{%
|
||||
\begin{DoxyDesc}{#1}%
|
||||
}{%
|
||||
\end{DoxyDesc}%
|
||||
}
|
||||
|
||||
% Used by @since
|
||||
\newenvironment{DoxySince}[1]{%
|
||||
\begin{DoxyDesc}{#1}%
|
||||
}{%
|
||||
\end{DoxyDesc}%
|
||||
}
|
||||
|
||||
% Used by @see
|
||||
\newenvironment{DoxySeeAlso}[1]{%
|
||||
\begin{DoxyDesc}{#1}%
|
||||
}{%
|
||||
\end{DoxyDesc}%
|
||||
}
|
||||
|
||||
% Used by @version
|
||||
\newenvironment{DoxyVersion}[1]{%
|
||||
\begin{DoxyDesc}{#1}%
|
||||
}{%
|
||||
\end{DoxyDesc}%
|
||||
}
|
||||
|
||||
% Used by @warning
|
||||
\newenvironment{DoxyWarning}[1]{%
|
||||
\begin{DoxyDesc}{#1}%
|
||||
}{%
|
||||
\end{DoxyDesc}%
|
||||
}
|
||||
|
||||
% Used by @internal
|
||||
\newenvironment{DoxyInternal}[1]{%
|
||||
\paragraph*{#1}%
|
||||
}{%
|
||||
}
|
||||
|
||||
% Used by @par and @paragraph
|
||||
\newenvironment{DoxyParagraph}[1]{%
|
||||
\begin{list}{}{%
|
||||
\settowidth{\labelwidth}{40pt}%
|
||||
\setlength{\leftmargin}{\labelwidth}%
|
||||
\setlength{\parsep}{0pt}%
|
||||
\setlength{\itemsep}{-4pt}%
|
||||
\renewcommand{\makelabel}{\entrylabel}%
|
||||
}%
|
||||
\item[#1]%
|
||||
}{%
|
||||
\end{list}%
|
||||
}
|
||||
|
||||
% Used by parameter lists
|
||||
\newenvironment{DoxyParams}[2][]{%
|
||||
\tabulinesep=1mm%
|
||||
\par%
|
||||
\ifthenelse{\equal{#1}{}}%
|
||||
{\begin{longtabu} spread 0pt [l]{|X[-1,l]|X[-1,l]|}}% name + description
|
||||
{\ifthenelse{\equal{#1}{1}}%
|
||||
{\begin{longtabu} spread 0pt [l]{|X[-1,l]|X[-1,l]|X[-1,l]|}}% in/out + name + desc
|
||||
{\begin{longtabu} spread 0pt [l]{|X[-1,l]|X[-1,l]|X[-1,l]|X[-1,l]|}}% in/out + type + name + desc
|
||||
}
|
||||
\multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #2}\\[1ex]%
|
||||
\hline%
|
||||
\endfirsthead%
|
||||
\multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #2}\\[1ex]%
|
||||
\hline%
|
||||
\endhead%
|
||||
}{%
|
||||
\end{longtabu}%
|
||||
\vspace{6pt}%
|
||||
}
|
||||
|
||||
% Used for fields of simple structs
|
||||
\newenvironment{DoxyFields}[1]{%
|
||||
\tabulinesep=1mm%
|
||||
\par%
|
||||
\begin{longtabu} spread 0pt [l]{|X[-1,r]|X[-1,l]|X[-1,l]|}%
|
||||
\multicolumn{3}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
|
||||
\hline%
|
||||
\endfirsthead%
|
||||
\multicolumn{3}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
|
||||
\hline%
|
||||
\endhead%
|
||||
}{%
|
||||
\end{longtabu}%
|
||||
\vspace{6pt}%
|
||||
}
|
||||
|
||||
% Used for fields simple class style enums
|
||||
\newenvironment{DoxyEnumFields}[1]{%
|
||||
\tabulinesep=1mm%
|
||||
\par%
|
||||
\begin{longtabu} spread 0pt [l]{|X[-1,r]|X[-1,l]|}%
|
||||
\multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
|
||||
\hline%
|
||||
\endfirsthead%
|
||||
\multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
|
||||
\hline%
|
||||
\endhead%
|
||||
}{%
|
||||
\end{longtabu}%
|
||||
\vspace{6pt}%
|
||||
}
|
||||
|
||||
% Used for parameters within a detailed function description
|
||||
\newenvironment{DoxyParamCaption}{%
|
||||
\renewcommand{\item}[2][]{\\ \hspace*{2.0cm} ##1 {\em ##2}}%
|
||||
}{%
|
||||
}
|
||||
|
||||
% Used by return value lists
|
||||
\newenvironment{DoxyRetVals}[1]{%
|
||||
\tabulinesep=1mm%
|
||||
\par%
|
||||
\begin{longtabu} spread 0pt [l]{|X[-1,r]|X[-1,l]|}%
|
||||
\multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
|
||||
\hline%
|
||||
\endfirsthead%
|
||||
\multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
|
||||
\hline%
|
||||
\endhead%
|
||||
}{%
|
||||
\end{longtabu}%
|
||||
\vspace{6pt}%
|
||||
}
|
||||
|
||||
% Used by exception lists
|
||||
\newenvironment{DoxyExceptions}[1]{%
|
||||
\tabulinesep=1mm%
|
||||
\par%
|
||||
\begin{longtabu} spread 0pt [l]{|X[-1,r]|X[-1,l]|}%
|
||||
\multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
|
||||
\hline%
|
||||
\endfirsthead%
|
||||
\multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
|
||||
\hline%
|
||||
\endhead%
|
||||
}{%
|
||||
\end{longtabu}%
|
||||
\vspace{6pt}%
|
||||
}
|
||||
|
||||
% Used by template parameter lists
|
||||
\newenvironment{DoxyTemplParams}[1]{%
|
||||
\tabulinesep=1mm%
|
||||
\par%
|
||||
\begin{longtabu} spread 0pt [l]{|X[-1,r]|X[-1,l]|}%
|
||||
\multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
|
||||
\hline%
|
||||
\endfirsthead%
|
||||
\multicolumn{2}{l}{\hspace{-6pt}\bfseries\fontseries{bc}\selectfont\color{darkgray} #1}\\[1ex]%
|
||||
\hline%
|
||||
\endhead%
|
||||
}{%
|
||||
\end{longtabu}%
|
||||
\vspace{6pt}%
|
||||
}
|
||||
|
||||
% Used for member lists
|
||||
\newenvironment{DoxyCompactItemize}{%
|
||||
\begin{itemize}%
|
||||
\setlength{\itemsep}{-3pt}%
|
||||
\setlength{\parsep}{0pt}%
|
||||
\setlength{\topsep}{0pt}%
|
||||
\setlength{\partopsep}{0pt}%
|
||||
}{%
|
||||
\end{itemize}%
|
||||
}
|
||||
|
||||
% Used for member descriptions
|
||||
\newenvironment{DoxyCompactList}{%
|
||||
\begin{list}{}{%
|
||||
\setlength{\leftmargin}{0.5cm}%
|
||||
\setlength{\itemsep}{0pt}%
|
||||
\setlength{\parsep}{0pt}%
|
||||
\setlength{\topsep}{0pt}%
|
||||
\renewcommand{\makelabel}{\hfill}%
|
||||
}%
|
||||
}{%
|
||||
\end{list}%
|
||||
}
|
||||
|
||||
% Used for reference lists (@bug, @deprecated, @todo, etc.)
|
||||
\newenvironment{DoxyRefList}{%
|
||||
\begin{list}{}{%
|
||||
\setlength{\labelwidth}{10pt}%
|
||||
\setlength{\leftmargin}{\labelwidth}%
|
||||
\addtolength{\leftmargin}{\labelsep}%
|
||||
\renewcommand{\makelabel}{\xreflabel}%
|
||||
}%
|
||||
}{%
|
||||
\end{list}%
|
||||
}
|
||||
|
||||
% Used by @bug, @deprecated, @todo, etc.
|
||||
\newenvironment{DoxyRefDesc}[1]{%
|
||||
\begin{list}{}{%
|
||||
\renewcommand\makelabel[1]{\textbf{##1}}%
|
||||
\settowidth\labelwidth{\makelabel{#1}}%
|
||||
\setlength\leftmargin{\labelwidth+\labelsep}%
|
||||
}%
|
||||
}{%
|
||||
\end{list}%
|
||||
}
|
||||
|
||||
% Used by parameter lists and simple sections
|
||||
\newenvironment{Desc}
|
||||
{\begin{list}{}{%
|
||||
\settowidth{\labelwidth}{20pt}%
|
||||
\setlength{\parsep}{0pt}%
|
||||
\setlength{\itemsep}{0pt}%
|
||||
\setlength{\leftmargin}{\labelwidth+\labelsep}%
|
||||
\renewcommand{\makelabel}{\entrylabel}%
|
||||
}
|
||||
}{%
|
||||
\end{list}%
|
||||
}
|
||||
|
||||
% Used by tables
|
||||
\newcommand{\PBS}[1]{\let\temp=\\#1\let\\=\temp}%
|
||||
\newenvironment{TabularC}[1]%
|
||||
{\tabulinesep=1mm
|
||||
\begin{longtabu} spread 0pt [c]{*#1{|X[-1]}|}}%
|
||||
{\end{longtabu}\par}%
|
||||
|
||||
\newenvironment{TabularNC}[1]%
|
||||
{\begin{tabu} spread 0pt [l]{*#1{|X[-1]}|}}%
|
||||
{\end{tabu}\par}%
|
||||
|
||||
% Used for member group headers
|
||||
\newenvironment{Indent}{%
|
||||
\begin{list}{}{%
|
||||
\setlength{\leftmargin}{0.5cm}%
|
||||
}%
|
||||
\item[]\ignorespaces%
|
||||
}{%
|
||||
\unskip%
|
||||
\end{list}%
|
||||
}
|
||||
|
||||
% Used when hyperlinks are turned off
|
||||
\newcommand{\doxyref}[3]{%
|
||||
\textbf{#1} (\textnormal{#2}\,\pageref{#3})%
|
||||
}
|
||||
|
||||
% Used to link to a table when hyperlinks are turned on
|
||||
\newcommand{\doxytablelink}[2]{%
|
||||
\ref{#1}%
|
||||
}
|
||||
|
||||
% Used to link to a table when hyperlinks are turned off
|
||||
\newcommand{\doxytableref}[3]{%
|
||||
\ref{#3}%
|
||||
}
|
||||
|
||||
% Used by @addindex
|
||||
\newcommand{\lcurly}{\{}
|
||||
\newcommand{\rcurly}{\}}
|
||||
|
||||
% Colors used for syntax highlighting
|
||||
\definecolor{comment}{rgb}{0.5,0.0,0.0}
|
||||
\definecolor{keyword}{rgb}{0.0,0.5,0.0}
|
||||
\definecolor{keywordtype}{rgb}{0.38,0.25,0.125}
|
||||
\definecolor{keywordflow}{rgb}{0.88,0.5,0.0}
|
||||
\definecolor{preprocessor}{rgb}{0.5,0.38,0.125}
|
||||
\definecolor{stringliteral}{rgb}{0.0,0.125,0.25}
|
||||
\definecolor{charliteral}{rgb}{0.0,0.5,0.5}
|
||||
\definecolor{vhdldigit}{rgb}{1.0,0.0,1.0}
|
||||
\definecolor{vhdlkeyword}{rgb}{0.43,0.0,0.43}
|
||||
\definecolor{vhdllogic}{rgb}{1.0,0.0,0.0}
|
||||
\definecolor{vhdlchar}{rgb}{0.0,0.0,0.0}
|
||||
|
||||
% Color used for table heading
|
||||
\newcommand{\tableheadbgcolor}{lightgray}%
|
||||
|
||||
% Version of hypertarget with correct landing location
|
||||
\newcommand{\Hypertarget}[1]{\Hy@raisedlink{\hypertarget{#1}{}}}
|
||||
|
||||
% Define caption that is also suitable in a table
|
||||
\makeatletter
|
||||
\def\doxyfigcaption{%
|
||||
\refstepcounter{figure}%
|
||||
\@dblarg{\@caption{figure}}}
|
||||
\makeatother
|
||||
@@ -1,47 +0,0 @@
|
||||
\section{Class Hierarchy}
|
||||
This inheritance list is sorted roughly, but not completely, alphabetically\+:\begin{DoxyCompactList}
|
||||
\item \contentsline{section}{core\+:\+:I\+P\+Address\+List}{\pageref{classcore_1_1_i_p_address_list}}{}
|
||||
\item Log\+Listener\begin{DoxyCompactList}
|
||||
\item \contentsline{section}{core\+:\+:Console\+Server}{\pageref{classcore_1_1_console_server}}{}
|
||||
\end{DoxyCompactList}
|
||||
\item \contentsline{section}{core\+:\+:Object}{\pageref{classcore_1_1_object}}{}
|
||||
\begin{DoxyCompactList}
|
||||
\item \contentsline{section}{core\+:\+:Command}{\pageref{classcore_1_1_command}}{}
|
||||
\begin{DoxyCompactList}
|
||||
\item \contentsline{section}{core\+:\+:Command\+List}{\pageref{classcore_1_1_command_list}}{}
|
||||
\item \contentsline{section}{core\+:\+:E\+Poll}{\pageref{classcore_1_1_e_poll}}{}
|
||||
\item \contentsline{section}{core\+:\+:T\+C\+P\+Server}{\pageref{classcore_1_1_t_c_p_server}}{}
|
||||
\begin{DoxyCompactList}
|
||||
\item \contentsline{section}{core\+:\+:Console\+Server}{\pageref{classcore_1_1_console_server}}{}
|
||||
\item \contentsline{section}{core\+:\+:T\+L\+S\+Server}{\pageref{classcore_1_1_t_l_s_server}}{}
|
||||
\end{DoxyCompactList}
|
||||
\item \contentsline{section}{core\+:\+:U\+D\+P\+Server\+Socket}{\pageref{classcore_1_1_u_d_p_server_socket}}{}
|
||||
\end{DoxyCompactList}
|
||||
\item \contentsline{section}{core\+:\+:I\+P\+Address}{\pageref{classcore_1_1_i_p_address}}{}
|
||||
\item \contentsline{section}{core\+:\+:Session\+Filter}{\pageref{classcore_1_1_session_filter}}{}
|
||||
\item \contentsline{section}{core\+:\+:Socket}{\pageref{classcore_1_1_socket}}{}
|
||||
\begin{DoxyCompactList}
|
||||
\item \contentsline{section}{core\+:\+:T\+C\+P\+Socket}{\pageref{classcore_1_1_t_c_p_socket}}{}
|
||||
\begin{DoxyCompactList}
|
||||
\item \contentsline{section}{core\+:\+:T\+C\+P\+Server}{\pageref{classcore_1_1_t_c_p_server}}{}
|
||||
\item \contentsline{section}{core\+:\+:T\+C\+P\+Session}{\pageref{classcore_1_1_t_c_p_session}}{}
|
||||
\begin{DoxyCompactList}
|
||||
\item \contentsline{section}{core\+:\+:Terminal\+Session}{\pageref{classcore_1_1_terminal_session}}{}
|
||||
\begin{DoxyCompactList}
|
||||
\item \contentsline{section}{core\+:\+:Console\+Session}{\pageref{classcore_1_1_console_session}}{}
|
||||
\end{DoxyCompactList}
|
||||
\item \contentsline{section}{core\+:\+:T\+L\+S\+Session}{\pageref{classcore_1_1_t_l_s_session}}{}
|
||||
\end{DoxyCompactList}
|
||||
\end{DoxyCompactList}
|
||||
\item \contentsline{section}{core\+:\+:Timer}{\pageref{classcore_1_1_timer}}{}
|
||||
\item \contentsline{section}{core\+:\+:U\+D\+P\+Socket}{\pageref{classcore_1_1_u_d_p_socket}}{}
|
||||
\begin{DoxyCompactList}
|
||||
\item \contentsline{section}{core\+:\+:U\+D\+P\+Server\+Socket}{\pageref{classcore_1_1_u_d_p_server_socket}}{}
|
||||
\end{DoxyCompactList}
|
||||
\end{DoxyCompactList}
|
||||
\item \contentsline{section}{core\+:\+:Thread}{\pageref{classcore_1_1_thread}}{}
|
||||
\end{DoxyCompactList}
|
||||
\item streambuf\begin{DoxyCompactList}
|
||||
\item \contentsline{section}{core\+:\+:Socket}{\pageref{classcore_1_1_socket}}{}
|
||||
\end{DoxyCompactList}
|
||||
\end{DoxyCompactList}
|
||||
@@ -1,176 +0,0 @@
|
||||
\documentclass[twoside]{book}
|
||||
|
||||
% Packages required by doxygen
|
||||
\usepackage{fixltx2e}
|
||||
\usepackage{calc}
|
||||
\usepackage{doxygen}
|
||||
\usepackage[export]{adjustbox} % also loads graphicx
|
||||
\usepackage{graphicx}
|
||||
\usepackage[utf8]{inputenc}
|
||||
\usepackage{makeidx}
|
||||
\usepackage{multicol}
|
||||
\usepackage{multirow}
|
||||
\PassOptionsToPackage{warn}{textcomp}
|
||||
\usepackage{textcomp}
|
||||
\usepackage[nointegrals]{wasysym}
|
||||
\usepackage[table]{xcolor}
|
||||
|
||||
% Font selection
|
||||
\usepackage[T1]{fontenc}
|
||||
\usepackage[scaled=.90]{helvet}
|
||||
\usepackage{courier}
|
||||
\usepackage{amssymb}
|
||||
\usepackage{sectsty}
|
||||
\renewcommand{\familydefault}{\sfdefault}
|
||||
\allsectionsfont{%
|
||||
\fontseries{bc}\selectfont%
|
||||
\color{darkgray}%
|
||||
}
|
||||
\renewcommand{\DoxyLabelFont}{%
|
||||
\fontseries{bc}\selectfont%
|
||||
\color{darkgray}%
|
||||
}
|
||||
\newcommand{\+}{\discretionary{\mbox{\scriptsize$\hookleftarrow$}}{}{}}
|
||||
|
||||
% Page & text layout
|
||||
\usepackage{geometry}
|
||||
\geometry{%
|
||||
a4paper,%
|
||||
top=2.5cm,%
|
||||
bottom=2.5cm,%
|
||||
left=2.5cm,%
|
||||
right=2.5cm%
|
||||
}
|
||||
\tolerance=750
|
||||
\hfuzz=15pt
|
||||
\hbadness=750
|
||||
\setlength{\emergencystretch}{15pt}
|
||||
\setlength{\parindent}{0cm}
|
||||
\setlength{\parskip}{3ex plus 2ex minus 2ex}
|
||||
\makeatletter
|
||||
\renewcommand{\paragraph}{%
|
||||
\@startsection{paragraph}{4}{0ex}{-1.0ex}{1.0ex}{%
|
||||
\normalfont\normalsize\bfseries\SS@parafont%
|
||||
}%
|
||||
}
|
||||
\renewcommand{\subparagraph}{%
|
||||
\@startsection{subparagraph}{5}{0ex}{-1.0ex}{1.0ex}{%
|
||||
\normalfont\normalsize\bfseries\SS@subparafont%
|
||||
}%
|
||||
}
|
||||
\makeatother
|
||||
|
||||
% Headers & footers
|
||||
\usepackage{fancyhdr}
|
||||
\pagestyle{fancyplain}
|
||||
\fancyhead[LE]{\fancyplain{}{\bfseries\thepage}}
|
||||
\fancyhead[CE]{\fancyplain{}{}}
|
||||
\fancyhead[RE]{\fancyplain{}{\bfseries\leftmark}}
|
||||
\fancyhead[LO]{\fancyplain{}{\bfseries\rightmark}}
|
||||
\fancyhead[CO]{\fancyplain{}{}}
|
||||
\fancyhead[RO]{\fancyplain{}{\bfseries\thepage}}
|
||||
\fancyfoot[LE]{\fancyplain{}{}}
|
||||
\fancyfoot[CE]{\fancyplain{}{}}
|
||||
\fancyfoot[RE]{\fancyplain{}{\bfseries\scriptsize Generated by Doxygen }}
|
||||
\fancyfoot[LO]{\fancyplain{}{\bfseries\scriptsize Generated by Doxygen }}
|
||||
\fancyfoot[CO]{\fancyplain{}{}}
|
||||
\fancyfoot[RO]{\fancyplain{}{}}
|
||||
\renewcommand{\footrulewidth}{0.4pt}
|
||||
\renewcommand{\chaptermark}[1]{%
|
||||
\markboth{#1}{}%
|
||||
}
|
||||
\renewcommand{\sectionmark}[1]{%
|
||||
\markright{\thesection\ #1}%
|
||||
}
|
||||
|
||||
% Indices & bibliography
|
||||
\usepackage{natbib}
|
||||
\usepackage[titles]{tocloft}
|
||||
\setcounter{tocdepth}{3}
|
||||
\setcounter{secnumdepth}{5}
|
||||
\makeindex
|
||||
|
||||
% Hyperlinks (required, but should be loaded last)
|
||||
\usepackage{ifpdf}
|
||||
\ifpdf
|
||||
\usepackage[pdftex,pagebackref=true]{hyperref}
|
||||
\else
|
||||
\usepackage[ps2pdf,pagebackref=true]{hyperref}
|
||||
\fi
|
||||
\hypersetup{%
|
||||
colorlinks=true,%
|
||||
linkcolor=blue,%
|
||||
citecolor=blue,%
|
||||
unicode%
|
||||
}
|
||||
|
||||
% Custom commands
|
||||
\newcommand{\clearemptydoublepage}{%
|
||||
\newpage{\pagestyle{empty}\cleardoublepage}%
|
||||
}
|
||||
|
||||
\usepackage{caption}
|
||||
\captionsetup{labelsep=space,justification=centering,font={bf},singlelinecheck=off,skip=4pt,position=top}
|
||||
|
||||
%===== C O N T E N T S =====
|
||||
|
||||
\begin{document}
|
||||
|
||||
% Titlepage & ToC
|
||||
\hypersetup{pageanchor=false,
|
||||
bookmarksnumbered=true,
|
||||
pdfencoding=unicode
|
||||
}
|
||||
\pagenumbering{alph}
|
||||
\begin{titlepage}
|
||||
\vspace*{7cm}
|
||||
\begin{center}%
|
||||
{\Large My Project }\\
|
||||
\vspace*{1cm}
|
||||
{\large Generated by Doxygen 1.8.13}\\
|
||||
\end{center}
|
||||
\end{titlepage}
|
||||
\clearemptydoublepage
|
||||
\pagenumbering{roman}
|
||||
\tableofcontents
|
||||
\clearemptydoublepage
|
||||
\pagenumbering{arabic}
|
||||
\hypersetup{pageanchor=true}
|
||||
|
||||
%--- Begin generated contents ---
|
||||
\chapter{Hierarchical Index}
|
||||
\input{hierarchy}
|
||||
\chapter{Class Index}
|
||||
\input{annotated}
|
||||
\chapter{Class Documentation}
|
||||
\input{classcore_1_1_command}
|
||||
\input{classcore_1_1_command_list}
|
||||
\input{classcore_1_1_console_server}
|
||||
\input{classcore_1_1_console_session}
|
||||
\input{classcore_1_1_e_poll}
|
||||
\input{classcore_1_1_i_p_address}
|
||||
\input{classcore_1_1_i_p_address_list}
|
||||
\input{classcore_1_1_object}
|
||||
\input{classcore_1_1_session_filter}
|
||||
\input{classcore_1_1_socket}
|
||||
\input{classcore_1_1_t_c_p_server}
|
||||
\input{classcore_1_1_t_c_p_session}
|
||||
\input{classcore_1_1_t_c_p_socket}
|
||||
\input{classcore_1_1_terminal_session}
|
||||
\input{classcore_1_1_thread}
|
||||
\input{classcore_1_1_timer}
|
||||
\input{classcore_1_1_t_l_s_server}
|
||||
\input{classcore_1_1_t_l_s_session}
|
||||
\input{classcore_1_1_u_d_p_server_socket}
|
||||
\input{classcore_1_1_u_d_p_socket}
|
||||
%--- End generated contents ---
|
||||
|
||||
% Index
|
||||
\backmatter
|
||||
\newpage
|
||||
\phantomsection
|
||||
\clearemptydoublepage
|
||||
\addcontentsline{toc}{chapter}{Index}
|
||||
\printindex
|
||||
|
||||
\end{document}
|
||||
Reference in new issue
Block a user