\hypertarget{classUpgradeManager}{\section{\-Upgrade\-Manager \-Class \-Reference}
\label{classUpgradeManager}\index{\-Upgrade\-Manager@{\-Upgrade\-Manager}}
}


{\ttfamily \#include $<$\-Upgrade\-Manager.\-h$>$}



\-Inheritance diagram for \-Upgrade\-Manager\-:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=300pt]{classUpgradeManager__inherit__graph}
\end{center}
\end{figure}


\-Collaboration diagram for \-Upgrade\-Manager\-:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=300pt]{classUpgradeManager__coll__graph}
\end{center}
\end{figure}
\subsection*{\-Classes}
\begin{DoxyCompactItemize}
\item 
class \hyperlink{classUpgradeManager_1_1Upgrade}{\-Upgrade}
\end{DoxyCompactItemize}
\subsection*{\-Public \-Member \-Functions}
\begin{DoxyCompactItemize}
\item 
\hyperlink{classUpgradeManager_a76d1bfadcdd4bb5efc8f0bba4a9f2938}{\-Upgrade\-Manager} (\hyperlink{classArbitrator_1_1Arbitrator}{\-Arbitrator\-::\-Arbitrator}$<$ \hyperlink{classBWAPI_1_1Unit}{\-B\-W\-A\-P\-I\-::\-Unit} $\ast$, double $>$ $\ast$arbitrator)
\item 
void \hyperlink{classUpgradeManager_a3da728a4ab681005c6a932ae60e2cf6c}{set\-Building\-Placer} (\hyperlink{classBuildingPlacer}{\-Building\-Placer} $\ast$placer)
\item 
virtual void \hyperlink{classUpgradeManager_afa9b32575a63c909637d70ca4acd98a7}{on\-Offer} (std\-::set$<$ \hyperlink{classBWAPI_1_1Unit}{\-B\-W\-A\-P\-I\-::\-Unit} $\ast$ $>$ units)
\item 
virtual void \hyperlink{classUpgradeManager_a92a6406cb4cc161f1ddb788662e6cfdd}{on\-Revoke} (\hyperlink{classBWAPI_1_1Unit}{\-B\-W\-A\-P\-I\-::\-Unit} $\ast$unit, double bid)
\item 
virtual void \hyperlink{classUpgradeManager_aeb9b67731093c560e171f43caf164c3d}{update} ()
\item 
virtual std\-::string \hyperlink{classUpgradeManager_aa92b2f76a0f168b80292b38f9dbb9c2d}{get\-Name} () const 
\item 
void \hyperlink{classUpgradeManager_af1e835ee692187f65e1ecf56e7d7aca1}{on\-Remove\-Unit} (\hyperlink{classBWAPI_1_1Unit}{\-B\-W\-A\-P\-I\-::\-Unit} $\ast$unit)
\item 
bool \hyperlink{classUpgradeManager_a0d74d8a2615aab3e5e2282c8ff8084c9}{upgrade} (\hyperlink{classBWAPI_1_1UpgradeType}{\-B\-W\-A\-P\-I\-::\-Upgrade\-Type} type, int level=-\/1)
\item 
int \hyperlink{classUpgradeManager_a4f5e05935d180e296de152a6c54e799f}{get\-Planned\-Level} (\hyperlink{classBWAPI_1_1UpgradeType}{\-B\-W\-A\-P\-I\-::\-Upgrade\-Type} type) const 
\item 
int \hyperlink{classUpgradeManager_a7a347f049305f16bb96f735e65591b43}{get\-Started\-Level} (\hyperlink{classBWAPI_1_1UpgradeType}{\-B\-W\-A\-P\-I\-::\-Upgrade\-Type} type) const 
\item 
int \hyperlink{classUpgradeManager_ae0850a6b417ac93fcf4b8bcb2ae09528}{get\-Completed\-Level} (\hyperlink{classBWAPI_1_1UpgradeType}{\-B\-W\-A\-P\-I\-::\-Upgrade\-Type} type) const 
\end{DoxyCompactItemize}


\subsection{\-Constructor \& \-Destructor \-Documentation}
\hypertarget{classUpgradeManager_a76d1bfadcdd4bb5efc8f0bba4a9f2938}{\index{\-Upgrade\-Manager@{\-Upgrade\-Manager}!\-Upgrade\-Manager@{\-Upgrade\-Manager}}
\index{\-Upgrade\-Manager@{\-Upgrade\-Manager}!UpgradeManager@{\-Upgrade\-Manager}}
\subsubsection[{\-Upgrade\-Manager}]{\setlength{\rightskip}{0pt plus 5cm}{\bf \-Upgrade\-Manager\-::\-Upgrade\-Manager} (
\begin{DoxyParamCaption}
\item[{{\bf \-Arbitrator\-::\-Arbitrator}$<$ {\bf \-B\-W\-A\-P\-I\-::\-Unit} $\ast$, double $>$ $\ast$}]{arbitrator}
\end{DoxyParamCaption}
)}}\label{classUpgradeManager_a76d1bfadcdd4bb5efc8f0bba4a9f2938}


\-Here is the call graph for this function\-:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{classUpgradeManager_a76d1bfadcdd4bb5efc8f0bba4a9f2938_cgraph}
\end{center}
\end{figure}




\subsection{\-Member \-Function \-Documentation}
\hypertarget{classUpgradeManager_ae0850a6b417ac93fcf4b8bcb2ae09528}{\index{\-Upgrade\-Manager@{\-Upgrade\-Manager}!get\-Completed\-Level@{get\-Completed\-Level}}
\index{get\-Completed\-Level@{get\-Completed\-Level}!UpgradeManager@{\-Upgrade\-Manager}}
\subsubsection[{get\-Completed\-Level}]{\setlength{\rightskip}{0pt plus 5cm}int {\bf \-Upgrade\-Manager\-::get\-Completed\-Level} (
\begin{DoxyParamCaption}
\item[{{\bf \-B\-W\-A\-P\-I\-::\-Upgrade\-Type}}]{type}
\end{DoxyParamCaption}
) const}}\label{classUpgradeManager_ae0850a6b417ac93fcf4b8bcb2ae09528}


\-Here is the call graph for this function\-:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{classUpgradeManager_ae0850a6b417ac93fcf4b8bcb2ae09528_cgraph}
\end{center}
\end{figure}


\hypertarget{classUpgradeManager_aa92b2f76a0f168b80292b38f9dbb9c2d}{\index{\-Upgrade\-Manager@{\-Upgrade\-Manager}!get\-Name@{get\-Name}}
\index{get\-Name@{get\-Name}!UpgradeManager@{\-Upgrade\-Manager}}
\subsubsection[{get\-Name}]{\setlength{\rightskip}{0pt plus 5cm}std\-::string {\bf \-Upgrade\-Manager\-::get\-Name} (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}\label{classUpgradeManager_aa92b2f76a0f168b80292b38f9dbb9c2d}


\-Implements \hyperlink{classArbitrator_1_1Controller_a45cc1be65d1072e55573f730f74ac57c}{\-Arbitrator\-::\-Controller$<$ B\-W\-A\-P\-I\-::\-Unit $\ast$, double $>$}.

\hypertarget{classUpgradeManager_a4f5e05935d180e296de152a6c54e799f}{\index{\-Upgrade\-Manager@{\-Upgrade\-Manager}!get\-Planned\-Level@{get\-Planned\-Level}}
\index{get\-Planned\-Level@{get\-Planned\-Level}!UpgradeManager@{\-Upgrade\-Manager}}
\subsubsection[{get\-Planned\-Level}]{\setlength{\rightskip}{0pt plus 5cm}int {\bf \-Upgrade\-Manager\-::get\-Planned\-Level} (
\begin{DoxyParamCaption}
\item[{{\bf \-B\-W\-A\-P\-I\-::\-Upgrade\-Type}}]{type}
\end{DoxyParamCaption}
) const}}\label{classUpgradeManager_a4f5e05935d180e296de152a6c54e799f}


\-Here is the caller graph for this function\-:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{classUpgradeManager_a4f5e05935d180e296de152a6c54e799f_icgraph}
\end{center}
\end{figure}


\hypertarget{classUpgradeManager_a7a347f049305f16bb96f735e65591b43}{\index{\-Upgrade\-Manager@{\-Upgrade\-Manager}!get\-Started\-Level@{get\-Started\-Level}}
\index{get\-Started\-Level@{get\-Started\-Level}!UpgradeManager@{\-Upgrade\-Manager}}
\subsubsection[{get\-Started\-Level}]{\setlength{\rightskip}{0pt plus 5cm}int {\bf \-Upgrade\-Manager\-::get\-Started\-Level} (
\begin{DoxyParamCaption}
\item[{{\bf \-B\-W\-A\-P\-I\-::\-Upgrade\-Type}}]{type}
\end{DoxyParamCaption}
) const}}\label{classUpgradeManager_a7a347f049305f16bb96f735e65591b43}
\hypertarget{classUpgradeManager_afa9b32575a63c909637d70ca4acd98a7}{\index{\-Upgrade\-Manager@{\-Upgrade\-Manager}!on\-Offer@{on\-Offer}}
\index{on\-Offer@{on\-Offer}!UpgradeManager@{\-Upgrade\-Manager}}
\subsubsection[{on\-Offer}]{\setlength{\rightskip}{0pt plus 5cm}void {\bf \-Upgrade\-Manager\-::on\-Offer} (
\begin{DoxyParamCaption}
\item[{std\-::set$<$ {\bf \-B\-W\-A\-P\-I\-::\-Unit} $\ast$ $>$}]{units}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}\label{classUpgradeManager_afa9b32575a63c909637d70ca4acd98a7}


\-Implements \hyperlink{classArbitrator_1_1Controller_ad2281de6abeee9baa641e32d9c679d75}{\-Arbitrator\-::\-Controller$<$ B\-W\-A\-P\-I\-::\-Unit $\ast$, double $>$}.



\-Here is the call graph for this function\-:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{classUpgradeManager_afa9b32575a63c909637d70ca4acd98a7_cgraph}
\end{center}
\end{figure}


\hypertarget{classUpgradeManager_af1e835ee692187f65e1ecf56e7d7aca1}{\index{\-Upgrade\-Manager@{\-Upgrade\-Manager}!on\-Remove\-Unit@{on\-Remove\-Unit}}
\index{on\-Remove\-Unit@{on\-Remove\-Unit}!UpgradeManager@{\-Upgrade\-Manager}}
\subsubsection[{on\-Remove\-Unit}]{\setlength{\rightskip}{0pt plus 5cm}void {\bf \-Upgrade\-Manager\-::on\-Remove\-Unit} (
\begin{DoxyParamCaption}
\item[{{\bf \-B\-W\-A\-P\-I\-::\-Unit} $\ast$}]{unit}
\end{DoxyParamCaption}
)}}\label{classUpgradeManager_af1e835ee692187f65e1ecf56e7d7aca1}


\-Here is the call graph for this function\-:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{classUpgradeManager_af1e835ee692187f65e1ecf56e7d7aca1_cgraph}
\end{center}
\end{figure}




\-Here is the caller graph for this function\-:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{classUpgradeManager_af1e835ee692187f65e1ecf56e7d7aca1_icgraph}
\end{center}
\end{figure}


\hypertarget{classUpgradeManager_a92a6406cb4cc161f1ddb788662e6cfdd}{\index{\-Upgrade\-Manager@{\-Upgrade\-Manager}!on\-Revoke@{on\-Revoke}}
\index{on\-Revoke@{on\-Revoke}!UpgradeManager@{\-Upgrade\-Manager}}
\subsubsection[{on\-Revoke}]{\setlength{\rightskip}{0pt plus 5cm}void {\bf \-Upgrade\-Manager\-::on\-Revoke} (
\begin{DoxyParamCaption}
\item[{{\bf \-B\-W\-A\-P\-I\-::\-Unit} $\ast$}]{unit, }
\item[{double}]{bid}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}\label{classUpgradeManager_a92a6406cb4cc161f1ddb788662e6cfdd}


\-Implements \hyperlink{classArbitrator_1_1Controller_ab501229508dba3084da78d656f40e174}{\-Arbitrator\-::\-Controller$<$ B\-W\-A\-P\-I\-::\-Unit $\ast$, double $>$}.



\-Here is the call graph for this function\-:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{classUpgradeManager_a92a6406cb4cc161f1ddb788662e6cfdd_cgraph}
\end{center}
\end{figure}


\hypertarget{classUpgradeManager_a3da728a4ab681005c6a932ae60e2cf6c}{\index{\-Upgrade\-Manager@{\-Upgrade\-Manager}!set\-Building\-Placer@{set\-Building\-Placer}}
\index{set\-Building\-Placer@{set\-Building\-Placer}!UpgradeManager@{\-Upgrade\-Manager}}
\subsubsection[{set\-Building\-Placer}]{\setlength{\rightskip}{0pt plus 5cm}void {\bf \-Upgrade\-Manager\-::set\-Building\-Placer} (
\begin{DoxyParamCaption}
\item[{{\bf \-Building\-Placer} $\ast$}]{placer}
\end{DoxyParamCaption}
)}}\label{classUpgradeManager_a3da728a4ab681005c6a932ae60e2cf6c}
\hypertarget{classUpgradeManager_aeb9b67731093c560e171f43caf164c3d}{\index{\-Upgrade\-Manager@{\-Upgrade\-Manager}!update@{update}}
\index{update@{update}!UpgradeManager@{\-Upgrade\-Manager}}
\subsubsection[{update}]{\setlength{\rightskip}{0pt plus 5cm}void {\bf \-Upgrade\-Manager\-::update} (
\begin{DoxyParamCaption}
\item[{void}]{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}\label{classUpgradeManager_aeb9b67731093c560e171f43caf164c3d}


\-Implements \hyperlink{classArbitrator_1_1Controller_a378f0df1a79b5287ee41026d9c77f866}{\-Arbitrator\-::\-Controller$<$ B\-W\-A\-P\-I\-::\-Unit $\ast$, double $>$}.



\-Here is the call graph for this function\-:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{classUpgradeManager_aeb9b67731093c560e171f43caf164c3d_cgraph}
\end{center}
\end{figure}


\hypertarget{classUpgradeManager_a0d74d8a2615aab3e5e2282c8ff8084c9}{\index{\-Upgrade\-Manager@{\-Upgrade\-Manager}!upgrade@{upgrade}}
\index{upgrade@{upgrade}!UpgradeManager@{\-Upgrade\-Manager}}
\subsubsection[{upgrade}]{\setlength{\rightskip}{0pt plus 5cm}bool {\bf \-Upgrade\-Manager\-::upgrade} (
\begin{DoxyParamCaption}
\item[{{\bf \-B\-W\-A\-P\-I\-::\-Upgrade\-Type}}]{type, }
\item[{int}]{level = {\ttfamily -\/1}}
\end{DoxyParamCaption}
)}}\label{classUpgradeManager_a0d74d8a2615aab3e5e2282c8ff8084c9}


\-Here is the call graph for this function\-:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{classUpgradeManager_a0d74d8a2615aab3e5e2282c8ff8084c9_cgraph}
\end{center}
\end{figure}




\-The documentation for this class was generated from the following files\-:\begin{DoxyCompactItemize}
\item 
\-Aiur/include/\hyperlink{UpgradeManager_8h}{\-Upgrade\-Manager.\-h}\item 
\-Aiur/src/\hyperlink{UpgradeManager_8cpp}{\-Upgrade\-Manager.\-cpp}\end{DoxyCompactItemize}
