\hypertarget{classAddonBuildTask}{\section{\-Addon\-Build\-Task \-Class \-Reference}
\label{classAddonBuildTask}\index{\-Addon\-Build\-Task@{\-Addon\-Build\-Task}}
}


{\ttfamily \#include $<$\-Addon\-Build\-Task.\-h$>$}



\-Inheritance diagram for \-Addon\-Build\-Task\-:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{classAddonBuildTask__inherit__graph}
\end{center}
\end{figure}


\-Collaboration diagram for \-Addon\-Build\-Task\-:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=550pt]{classAddonBuildTask__coll__graph}
\end{center}
\end{figure}
\subsection*{\-Public \-Member \-Functions}
\begin{DoxyCompactItemize}
\item 
\hyperlink{classAddonBuildTask_a2e423a785bdb37884047445963aa6da7}{\-Addon\-Build\-Task} (\-Unit\-Type building\-Type, \hyperlink{classEnvironment}{\-Environment} $\ast$env)
\item 
virtual \hyperlink{classAddonBuildTask_a98f9c4ddf6ec98ff0b332a856cce50ce}{$\sim$\-Addon\-Build\-Task} (void)
\item 
virtual void \hyperlink{classAddonBuildTask_aa30429df6139ae65e69516f961d9fcb8}{add\-Agent} (\hyperlink{classAgent}{\-Agent} $\ast$agent)
\item 
virtual void \hyperlink{classAddonBuildTask_ab259716419e01955a76209dcffe5760f}{remove\-Agent} (\hyperlink{classAgent}{\-Agent} $\ast$agent)
\item 
virtual void \hyperlink{classAddonBuildTask_a4b5ac55ae64f6fa653c5bd2ffb36241d}{calculate\-Priority} ()=0
\item 
double \hyperlink{classAddonBuildTask_ab85082c4fa77557079507a7804ba3997}{evaluate\-Aptitude} (\hyperlink{classAgent}{\-Agent} $\ast$agent)
\item 
void \hyperlink{classAddonBuildTask_af6a7c55290736a08d3e5bc9ba793e4f3}{evaluate\-Status} ()
\item 
void \hyperlink{classAddonBuildTask_a51c588152be8eb9564cf4c3d58aae329}{evaluate\-Needed\-Units} ()
\item 
\-Unit\-Type \hyperlink{classAddonBuildTask_a623885142b1e90412e44420596ac91be}{get\-Building\-Type} ()
\item 
\-Unit $\ast$ \hyperlink{classAddonBuildTask_a5975faac02177509357256bfa46195f0}{get\-Building} ()
\item 
bool \hyperlink{classAddonBuildTask_acabdf3e221c13f869b9fa39595dcdf58}{execute} (\hyperlink{classAgent}{\-Agent} $\ast$agent)
\end{DoxyCompactItemize}
\subsection*{\-Protected \-Member \-Functions}
\begin{DoxyCompactItemize}
\item 
void \hyperlink{classAddonBuildTask_a61b27d53ac5844138fa8c2f67d7e4409}{initialize} ()
\end{DoxyCompactItemize}
\subsection*{\-Protected \-Attributes}
\begin{DoxyCompactItemize}
\item 
\-Unit\-Type \hyperlink{classAddonBuildTask_a9edf0da118a4fa4904112c9332cfe3bf}{\-\_\-source\-Building\-Type}
\item 
\-Unit\-Type \hyperlink{classAddonBuildTask_a564f3a03bca477c1bcadb59e1abf866a}{\-\_\-building\-Type}
\item 
bool \hyperlink{classAddonBuildTask_a1ee2467e9e61f36b99091d0028db6c56}{\-\_\-requires\-Units}
\item 
\-Unit $\ast$ \hyperlink{classAddonBuildTask_aacb5fc2b519f603bb2c5e6853a76fc85}{\-\_\-building}
\end{DoxyCompactItemize}


\subsection{\-Constructor \& \-Destructor \-Documentation}
\hypertarget{classAddonBuildTask_a2e423a785bdb37884047445963aa6da7}{\index{\-Addon\-Build\-Task@{\-Addon\-Build\-Task}!\-Addon\-Build\-Task@{\-Addon\-Build\-Task}}
\index{\-Addon\-Build\-Task@{\-Addon\-Build\-Task}!AddonBuildTask@{\-Addon\-Build\-Task}}
\subsubsection[{\-Addon\-Build\-Task}]{\setlength{\rightskip}{0pt plus 5cm}{\bf \-Addon\-Build\-Task\-::\-Addon\-Build\-Task} (
\begin{DoxyParamCaption}
\item[{\-Unit\-Type}]{building\-Type, }
\item[{{\bf \-Environment} $\ast$}]{env}
\end{DoxyParamCaption}
)}}\label{classAddonBuildTask_a2e423a785bdb37884047445963aa6da7}


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


\hypertarget{classAddonBuildTask_a98f9c4ddf6ec98ff0b332a856cce50ce}{\index{\-Addon\-Build\-Task@{\-Addon\-Build\-Task}!$\sim$\-Addon\-Build\-Task@{$\sim$\-Addon\-Build\-Task}}
\index{$\sim$\-Addon\-Build\-Task@{$\sim$\-Addon\-Build\-Task}!AddonBuildTask@{\-Addon\-Build\-Task}}
\subsubsection[{$\sim$\-Addon\-Build\-Task}]{\setlength{\rightskip}{0pt plus 5cm}{\bf \-Addon\-Build\-Task\-::$\sim$\-Addon\-Build\-Task} (
\begin{DoxyParamCaption}
\item[{void}]{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}\label{classAddonBuildTask_a98f9c4ddf6ec98ff0b332a856cce50ce}


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




\subsection{\-Member \-Function \-Documentation}
\hypertarget{classAddonBuildTask_aa30429df6139ae65e69516f961d9fcb8}{\index{\-Addon\-Build\-Task@{\-Addon\-Build\-Task}!add\-Agent@{add\-Agent}}
\index{add\-Agent@{add\-Agent}!AddonBuildTask@{\-Addon\-Build\-Task}}
\subsubsection[{add\-Agent}]{\setlength{\rightskip}{0pt plus 5cm}void {\bf \-Addon\-Build\-Task\-::add\-Agent} (
\begin{DoxyParamCaption}
\item[{{\bf \-Agent} $\ast$}]{agent}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}\label{classAddonBuildTask_aa30429df6139ae65e69516f961d9fcb8}


\-Reimplemented from \hyperlink{classTask_a04857726e29a5c20e7f76d925b52c79c}{\-Task}.



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


\hypertarget{classAddonBuildTask_a4b5ac55ae64f6fa653c5bd2ffb36241d}{\index{\-Addon\-Build\-Task@{\-Addon\-Build\-Task}!calculate\-Priority@{calculate\-Priority}}
\index{calculate\-Priority@{calculate\-Priority}!AddonBuildTask@{\-Addon\-Build\-Task}}
\subsubsection[{calculate\-Priority}]{\setlength{\rightskip}{0pt plus 5cm}virtual void {\bf \-Addon\-Build\-Task\-::calculate\-Priority} (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}pure virtual\mbox{]}}}}\label{classAddonBuildTask_a4b5ac55ae64f6fa653c5bd2ffb36241d}


\-Implements \hyperlink{classTask_aeaa337dce1c537422242cfb0838b47c2}{\-Task}.



\-Implemented in \hyperlink{classAddonBuildComSatTask_a63b3255a562d4d4f2f84c0742f4f6f14}{\-Addon\-Build\-Com\-Sat\-Task}, \hyperlink{classAddonBuildControlTowerTask_aaf966c2408e505213b4d888370dc615b}{\-Addon\-Build\-Control\-Tower\-Task}, and \hyperlink{classAddonBuildMachineShopTask_aa6d4119a0de816c78d1c2d94d567978b}{\-Addon\-Build\-Machine\-Shop\-Task}.

\hypertarget{classAddonBuildTask_ab85082c4fa77557079507a7804ba3997}{\index{\-Addon\-Build\-Task@{\-Addon\-Build\-Task}!evaluate\-Aptitude@{evaluate\-Aptitude}}
\index{evaluate\-Aptitude@{evaluate\-Aptitude}!AddonBuildTask@{\-Addon\-Build\-Task}}
\subsubsection[{evaluate\-Aptitude}]{\setlength{\rightskip}{0pt plus 5cm}double {\bf \-Addon\-Build\-Task\-::evaluate\-Aptitude} (
\begin{DoxyParamCaption}
\item[{{\bf \-Agent} $\ast$}]{agent}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}\label{classAddonBuildTask_ab85082c4fa77557079507a7804ba3997}


\-Implements \hyperlink{classTask_a52dcd78d317cb21b4deb7fc0bdcdc976}{\-Task}.



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


\hypertarget{classAddonBuildTask_a51c588152be8eb9564cf4c3d58aae329}{\index{\-Addon\-Build\-Task@{\-Addon\-Build\-Task}!evaluate\-Needed\-Units@{evaluate\-Needed\-Units}}
\index{evaluate\-Needed\-Units@{evaluate\-Needed\-Units}!AddonBuildTask@{\-Addon\-Build\-Task}}
\subsubsection[{evaluate\-Needed\-Units}]{\setlength{\rightskip}{0pt plus 5cm}void {\bf \-Addon\-Build\-Task\-::evaluate\-Needed\-Units} (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}\label{classAddonBuildTask_a51c588152be8eb9564cf4c3d58aae329}


\-Implements \hyperlink{classTask_a24042bca01a0a6b11f8df106a6fdbfde}{\-Task}.

\hypertarget{classAddonBuildTask_af6a7c55290736a08d3e5bc9ba793e4f3}{\index{\-Addon\-Build\-Task@{\-Addon\-Build\-Task}!evaluate\-Status@{evaluate\-Status}}
\index{evaluate\-Status@{evaluate\-Status}!AddonBuildTask@{\-Addon\-Build\-Task}}
\subsubsection[{evaluate\-Status}]{\setlength{\rightskip}{0pt plus 5cm}void {\bf \-Addon\-Build\-Task\-::evaluate\-Status} (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}\label{classAddonBuildTask_af6a7c55290736a08d3e5bc9ba793e4f3}


\-Implements \hyperlink{classTask_a174dedffa7cea9d7276d60d8333f12d4}{\-Task}.



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


\hypertarget{classAddonBuildTask_acabdf3e221c13f869b9fa39595dcdf58}{\index{\-Addon\-Build\-Task@{\-Addon\-Build\-Task}!execute@{execute}}
\index{execute@{execute}!AddonBuildTask@{\-Addon\-Build\-Task}}
\subsubsection[{execute}]{\setlength{\rightskip}{0pt plus 5cm}bool {\bf \-Addon\-Build\-Task\-::execute} (
\begin{DoxyParamCaption}
\item[{{\bf \-Agent} $\ast$}]{agent}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}\label{classAddonBuildTask_acabdf3e221c13f869b9fa39595dcdf58}


\-Implements \hyperlink{classTask_a58fe17b77f88f108f4a72d305b066c9f}{\-Task}.



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


\hypertarget{classAddonBuildTask_a5975faac02177509357256bfa46195f0}{\index{\-Addon\-Build\-Task@{\-Addon\-Build\-Task}!get\-Building@{get\-Building}}
\index{get\-Building@{get\-Building}!AddonBuildTask@{\-Addon\-Build\-Task}}
\subsubsection[{get\-Building}]{\setlength{\rightskip}{0pt plus 5cm}\-Unit $\ast$ {\bf \-Addon\-Build\-Task\-::get\-Building} (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}}\label{classAddonBuildTask_a5975faac02177509357256bfa46195f0}
\hypertarget{classAddonBuildTask_a623885142b1e90412e44420596ac91be}{\index{\-Addon\-Build\-Task@{\-Addon\-Build\-Task}!get\-Building\-Type@{get\-Building\-Type}}
\index{get\-Building\-Type@{get\-Building\-Type}!AddonBuildTask@{\-Addon\-Build\-Task}}
\subsubsection[{get\-Building\-Type}]{\setlength{\rightskip}{0pt plus 5cm}\-Unit\-Type {\bf \-Addon\-Build\-Task\-::get\-Building\-Type} (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}}\label{classAddonBuildTask_a623885142b1e90412e44420596ac91be}
\hypertarget{classAddonBuildTask_a61b27d53ac5844138fa8c2f67d7e4409}{\index{\-Addon\-Build\-Task@{\-Addon\-Build\-Task}!initialize@{initialize}}
\index{initialize@{initialize}!AddonBuildTask@{\-Addon\-Build\-Task}}
\subsubsection[{initialize}]{\setlength{\rightskip}{0pt plus 5cm}void {\bf \-Addon\-Build\-Task\-::initialize} (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}protected\mbox{]}}}}\label{classAddonBuildTask_a61b27d53ac5844138fa8c2f67d7e4409}


\-Reimplemented in \hyperlink{classAddonBuildComSatTask_a07161e800d290d4c00c13aa11f81859d}{\-Addon\-Build\-Com\-Sat\-Task}, \hyperlink{classAddonBuildControlTowerTask_ae10156fa3dfc5bf0f81df090c940bbbc}{\-Addon\-Build\-Control\-Tower\-Task}, and \hyperlink{classAddonBuildMachineShopTask_af7ff2ebe724bb5371456a6c10893b4d6}{\-Addon\-Build\-Machine\-Shop\-Task}.



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




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


\hypertarget{classAddonBuildTask_ab259716419e01955a76209dcffe5760f}{\index{\-Addon\-Build\-Task@{\-Addon\-Build\-Task}!remove\-Agent@{remove\-Agent}}
\index{remove\-Agent@{remove\-Agent}!AddonBuildTask@{\-Addon\-Build\-Task}}
\subsubsection[{remove\-Agent}]{\setlength{\rightskip}{0pt plus 5cm}void {\bf \-Addon\-Build\-Task\-::remove\-Agent} (
\begin{DoxyParamCaption}
\item[{{\bf \-Agent} $\ast$}]{agent}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}\label{classAddonBuildTask_ab259716419e01955a76209dcffe5760f}


\-Reimplemented from \hyperlink{classTask_a7af4b2dfcf677383eff7d0e5b7f73329}{\-Task}.



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




\subsection{\-Member \-Data \-Documentation}
\hypertarget{classAddonBuildTask_aacb5fc2b519f603bb2c5e6853a76fc85}{\index{\-Addon\-Build\-Task@{\-Addon\-Build\-Task}!\-\_\-building@{\-\_\-building}}
\index{\-\_\-building@{\-\_\-building}!AddonBuildTask@{\-Addon\-Build\-Task}}
\subsubsection[{\-\_\-building}]{\setlength{\rightskip}{0pt plus 5cm}\-Unit$\ast$ {\bf \-Addon\-Build\-Task\-::\-\_\-building}\hspace{0.3cm}{\ttfamily  \mbox{[}protected\mbox{]}}}}\label{classAddonBuildTask_aacb5fc2b519f603bb2c5e6853a76fc85}


\-Reimplemented in \hyperlink{classAddonBuildComSatTask_abedda01579d093530c2e9e393186d04c}{\-Addon\-Build\-Com\-Sat\-Task}, \hyperlink{classAddonBuildControlTowerTask_a1c02400b90d3bb8175d3c977bcddbef4}{\-Addon\-Build\-Control\-Tower\-Task}, and \hyperlink{classAddonBuildMachineShopTask_a931ffc48bd34b298d978b71b7d6701a2}{\-Addon\-Build\-Machine\-Shop\-Task}.

\hypertarget{classAddonBuildTask_a564f3a03bca477c1bcadb59e1abf866a}{\index{\-Addon\-Build\-Task@{\-Addon\-Build\-Task}!\-\_\-building\-Type@{\-\_\-building\-Type}}
\index{\-\_\-building\-Type@{\-\_\-building\-Type}!AddonBuildTask@{\-Addon\-Build\-Task}}
\subsubsection[{\-\_\-building\-Type}]{\setlength{\rightskip}{0pt plus 5cm}\-Unit\-Type {\bf \-Addon\-Build\-Task\-::\-\_\-building\-Type}\hspace{0.3cm}{\ttfamily  \mbox{[}protected\mbox{]}}}}\label{classAddonBuildTask_a564f3a03bca477c1bcadb59e1abf866a}


\-Reimplemented in \hyperlink{classAddonBuildComSatTask_a07f4858acf4d33bddbb75320a9ee2ab1}{\-Addon\-Build\-Com\-Sat\-Task}, \hyperlink{classAddonBuildControlTowerTask_abc6b8f77d2f313db596174d8518aaca3}{\-Addon\-Build\-Control\-Tower\-Task}, and \hyperlink{classAddonBuildMachineShopTask_abad2fe753ff78a9b073c49417044577e}{\-Addon\-Build\-Machine\-Shop\-Task}.

\hypertarget{classAddonBuildTask_a1ee2467e9e61f36b99091d0028db6c56}{\index{\-Addon\-Build\-Task@{\-Addon\-Build\-Task}!\-\_\-requires\-Units@{\-\_\-requires\-Units}}
\index{\-\_\-requires\-Units@{\-\_\-requires\-Units}!AddonBuildTask@{\-Addon\-Build\-Task}}
\subsubsection[{\-\_\-requires\-Units}]{\setlength{\rightskip}{0pt plus 5cm}bool {\bf \-Addon\-Build\-Task\-::\-\_\-requires\-Units}\hspace{0.3cm}{\ttfamily  \mbox{[}protected\mbox{]}}}}\label{classAddonBuildTask_a1ee2467e9e61f36b99091d0028db6c56}


\-Reimplemented in \hyperlink{classAddonBuildComSatTask_ac7b107a04df4d429a0619c88f7575279}{\-Addon\-Build\-Com\-Sat\-Task}, \hyperlink{classAddonBuildControlTowerTask_a37b6a57b70e461e5f74fa240b1a81a55}{\-Addon\-Build\-Control\-Tower\-Task}, and \hyperlink{classAddonBuildMachineShopTask_a34e99bb9ed5ee3ef39093d97c9825b2d}{\-Addon\-Build\-Machine\-Shop\-Task}.

\hypertarget{classAddonBuildTask_a9edf0da118a4fa4904112c9332cfe3bf}{\index{\-Addon\-Build\-Task@{\-Addon\-Build\-Task}!\-\_\-source\-Building\-Type@{\-\_\-source\-Building\-Type}}
\index{\-\_\-source\-Building\-Type@{\-\_\-source\-Building\-Type}!AddonBuildTask@{\-Addon\-Build\-Task}}
\subsubsection[{\-\_\-source\-Building\-Type}]{\setlength{\rightskip}{0pt plus 5cm}\-Unit\-Type {\bf \-Addon\-Build\-Task\-::\-\_\-source\-Building\-Type}\hspace{0.3cm}{\ttfamily  \mbox{[}protected\mbox{]}}}}\label{classAddonBuildTask_a9edf0da118a4fa4904112c9332cfe3bf}


\-Reimplemented in \hyperlink{classAddonBuildComSatTask_a99259242f9971f1ea19e126769f6325a}{\-Addon\-Build\-Com\-Sat\-Task}, \hyperlink{classAddonBuildControlTowerTask_a68a22409dc3754786be2ee427bd447a1}{\-Addon\-Build\-Control\-Tower\-Task}, and \hyperlink{classAddonBuildMachineShopTask_a0e176b014a9fc77b7eeb4af760b61f84}{\-Addon\-Build\-Machine\-Shop\-Task}.



\-The documentation for this class was generated from the following files\-:\begin{DoxyCompactItemize}
\item 
\-Tasks/\hyperlink{AddonBuildTask_8h}{\-Addon\-Build\-Task.\-h}\item 
\-Tasks/\hyperlink{AddonBuildTask_8cpp}{\-Addon\-Build\-Task.\-cpp}\end{DoxyCompactItemize}
