\doxysection{SUSUI Class Reference}
\hypertarget{class_s_u_s_u_i}{}\label{class_s_u_s_u_i}\index{SUSUI@{SUSUI}}


{\ttfamily \#include $<$SUSUI.\+h$>$}

Inheritance diagram for SUSUI\+:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=2.000000cm]{class_s_u_s_u_i}
\end{center}
\end{figure}
\doxysubsubsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{class_s_u_s_u_i_a4bd9e43af7d35a88814bfaeb9f215c3e}{SUSUI}} ()
\item 
\mbox{\hyperlink{class_move}{Move}}$<$ char $>$ \texorpdfstring{$\ast$}{*} \mbox{\hyperlink{class_s_u_s_u_i_ac91226ae211f9d4ca587570b16738286}{get\+\_\+move}} (\mbox{\hyperlink{class_player}{Player}}$<$ char $>$ \texorpdfstring{$\ast$}{*}p) override
\begin{DoxyCompactList}\small\item\em Ask the user (or AI) to make a move. \end{DoxyCompactList}\item 
\mbox{\hyperlink{class_player}{Player}}$<$ char $>$ \texorpdfstring{$\ast$}{*} \mbox{\hyperlink{class_s_u_s_u_i_ab2c309f6c5943ea834b84e687555b9ec}{create\+\_\+player}} (string \&name, char symbol, \mbox{\hyperlink{_board_game___classes_8h_abe590f3c9109f404f003d5d7e4f0fccf}{Player\+Type}} type) override
\begin{DoxyCompactList}\small\item\em Create a player object based on input name, symbol, and type. \end{DoxyCompactList}\item 
void \mbox{\hyperlink{class_s_u_s_u_i_acaa663874791a8249be1f841f8d2fc65}{display\+\_\+message}} (string s)
\end{DoxyCompactItemize}
\doxysubsection*{Public Member Functions inherited from \mbox{\hyperlink{class_u_i}{UI$<$ char $>$}}}
\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{class_u_i_ae50eed41905ca2f8dc103d9bef427fe6}{UI}} (string message, int cell\+\_\+display\+\_\+width)
\begin{DoxyCompactList}\small\item\em Construct the \doxylink{class_u_i}{UI} and display a welcome message. \end{DoxyCompactList}\item 
virtual \mbox{\hyperlink{class_u_i_a1012e508ff7df030714c62ddf6b261a7}{\texorpdfstring{$\sim$}{\string~}\+UI}} ()
\item 
void \mbox{\hyperlink{class_u_i_a1eead148ee8726b8ea329c2cd8841d18}{display\+\_\+message}} (string message)
\begin{DoxyCompactList}\small\item\em Display any message to the user. \end{DoxyCompactList}\item 
virtual \mbox{\hyperlink{class_player}{Player}}$<$ char $>$ \texorpdfstring{$\ast$}{*}\texorpdfstring{$\ast$}{*} \mbox{\hyperlink{class_u_i_a6966a040c995b2292e5edddaa94f889a}{setup\+\_\+players}} ()
\begin{DoxyCompactList}\small\item\em Set up players for the game. \end{DoxyCompactList}\item 
void \mbox{\hyperlink{class_u_i_a5d4655d5ff273e284fd68b8547483a23}{display\+\_\+board\+\_\+matrix}} (const vector$<$ vector$<$ char $>$ $>$ \&matrix) const
\begin{DoxyCompactList}\small\item\em Display the current board matrix in formatted form. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsubsection*{Additional Inherited Members}
\doxysubsection*{Protected Member Functions inherited from \mbox{\hyperlink{class_u_i}{UI$<$ char $>$}}}
\begin{DoxyCompactItemize}
\item 
string \mbox{\hyperlink{class_u_i_a8617bbf64a9ddf11ea6231912044805d}{get\+\_\+player\+\_\+name}} (string player\+\_\+label)
\begin{DoxyCompactList}\small\item\em Ask the user for the player\textquotesingle{}s name. \end{DoxyCompactList}\item 
\mbox{\hyperlink{_board_game___classes_8h_abe590f3c9109f404f003d5d7e4f0fccf}{Player\+Type}} \mbox{\hyperlink{class_u_i_ae62d61367ea51a5d7532db3b830c6445}{get\+\_\+player\+\_\+type\+\_\+choice}} (string player\+\_\+label, const vector$<$ string $>$ \&options)
\begin{DoxyCompactList}\small\item\em Ask the user to choose the player type from a list. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection*{Protected Attributes inherited from \mbox{\hyperlink{class_u_i}{UI$<$ char $>$}}}
\begin{DoxyCompactItemize}
\item 
int \mbox{\hyperlink{class_u_i_a6c79c489ae9aa3a7860fb58e5a14ddfe}{cell\+\_\+width}}
\begin{DoxyCompactList}\small\item\em Width of each displayed board cell. \end{DoxyCompactList}\end{DoxyCompactItemize}


\label{doc-constructors}
\Hypertarget{class_s_u_s_u_i_doc-constructors}
\doxysubsection{Constructor \& Destructor Documentation}
\Hypertarget{class_s_u_s_u_i_a4bd9e43af7d35a88814bfaeb9f215c3e}\index{SUSUI@{SUSUI}!SUSUI@{SUSUI}}
\index{SUSUI@{SUSUI}!SUSUI@{SUSUI}}
\doxysubsubsection{\texorpdfstring{SUSUI()}{SUSUI()}}
{\footnotesize\ttfamily \label{class_s_u_s_u_i_a4bd9e43af7d35a88814bfaeb9f215c3e} 
SUSUI\+::\+SUSUI (\begin{DoxyParamCaption}{}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}



\label{doc-func-members}
\Hypertarget{class_s_u_s_u_i_doc-func-members}
\doxysubsection{Member Function Documentation}
\Hypertarget{class_s_u_s_u_i_ab2c309f6c5943ea834b84e687555b9ec}\index{SUSUI@{SUSUI}!create\_player@{create\_player}}
\index{create\_player@{create\_player}!SUSUI@{SUSUI}}
\doxysubsubsection{\texorpdfstring{create\_player()}{create\_player()}}
{\footnotesize\ttfamily \label{class_s_u_s_u_i_ab2c309f6c5943ea834b84e687555b9ec} 
\mbox{\hyperlink{class_player}{Player}}$<$ char $>$ \texorpdfstring{$\ast$}{*} SUSUI\+::create\+\_\+player (\begin{DoxyParamCaption}\item[{string \&}]{name}{, }\item[{char}]{symbol}{, }\item[{\mbox{\hyperlink{_board_game___classes_8h_abe590f3c9109f404f003d5d7e4f0fccf}{Player\+Type}}}]{type}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [override]}, {\ttfamily [virtual]}}



Create a player object based on input name, symbol, and type. 



Implements \mbox{\hyperlink{class_u_i_af9f043033208286cd56240a1f060dd7b}{UI$<$ char $>$}}.

\Hypertarget{class_s_u_s_u_i_acaa663874791a8249be1f841f8d2fc65}\index{SUSUI@{SUSUI}!display\_message@{display\_message}}
\index{display\_message@{display\_message}!SUSUI@{SUSUI}}
\doxysubsubsection{\texorpdfstring{display\_message()}{display\_message()}}
{\footnotesize\ttfamily \label{class_s_u_s_u_i_acaa663874791a8249be1f841f8d2fc65} 
void SUSUI\+::display\+\_\+message (\begin{DoxyParamCaption}\item[{string}]{s}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}

\Hypertarget{class_s_u_s_u_i_ac91226ae211f9d4ca587570b16738286}\index{SUSUI@{SUSUI}!get\_move@{get\_move}}
\index{get\_move@{get\_move}!SUSUI@{SUSUI}}
\doxysubsubsection{\texorpdfstring{get\_move()}{get\_move()}}
{\footnotesize\ttfamily \label{class_s_u_s_u_i_ac91226ae211f9d4ca587570b16738286} 
\mbox{\hyperlink{class_move}{Move}}$<$ char $>$ \texorpdfstring{$\ast$}{*} SUSUI\+::get\+\_\+move (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{class_player}{Player}}$<$ char $>$ \texorpdfstring{$\ast$}{*}}]{}{}\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [override]}, {\ttfamily [virtual]}}



Ask the user (or AI) to make a move. 



Implements \mbox{\hyperlink{class_u_i_a8befa259c38c57e6ae2e8ed81c476337}{UI$<$ char $>$}}.



The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{_s_u_s_u_i_8h}{SUSUI.\+h}}\end{DoxyCompactItemize}
