\hypertarget{classObjective}{\section{\-Objective \-Class \-Reference}
\label{classObjective}\index{\-Objective@{\-Objective}}
}


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



\-Inheritance diagram for \-Objective\-:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=184pt]{classObjective__inherit__graph}
\end{center}
\end{figure}
\subsection*{\-Public \-Member \-Functions}
\begin{DoxyCompactItemize}
\item 
\hyperlink{classObjective_aadaa202961d23b2a6b36217104b79993}{\-Objective} ()
\begin{DoxyCompactList}\small\item\em default constructor \-Default objective is not defined \end{DoxyCompactList}\item 
virtual \hyperlink{classObjective_a9bec8782490cf04d33ab40454a14f5e2}{$\sim$\-Objective} ()
\begin{DoxyCompactList}\small\item\em destructor \end{DoxyCompactList}\item 
\hyperlink{Objective_8h_a43fc04afd00efaf79da2ed9d9ab32101}{objective\-\_\-t} \hyperlink{classObjective_a76a1cdf34d8360c3d41c338a08c69a5c}{type} ()
\begin{DoxyCompactList}\small\item\em return the objective type \end{DoxyCompactList}\item 
\hyperlink{Objective_8h_ac3ba6cbb159cbcc2cb00ce3a66944205}{objective\-Status\-\_\-t} \hyperlink{classObjective_af31baee5773f4e9b2ff836955702d33f}{status} ()
\begin{DoxyCompactList}\small\item\em return the objective status \end{DoxyCompactList}\item 
double \hyperlink{classObjective_ab508150885166a04fc3ee60fca0555d0}{req\-Power} ()
\begin{DoxyCompactList}\small\item\em return the required power needed to ensure the objective \end{DoxyCompactList}\item 
\-B\-W\-T\-A\-::\-Base\-Location $\ast$ \hyperlink{classObjective_a0052e4da5b1e980b3f440b55db3630e8}{base\-Loc} ()
\begin{DoxyCompactList}\small\item\em return the base location associated to the objective \end{DoxyCompactList}\item 
\-B\-W\-A\-P\-I\-::\-Position $\ast$ \hyperlink{classObjective_a747ddd7100b213daa19529cdbba5f05f}{pos} ()
\begin{DoxyCompactList}\small\item\em return the position associated to the objective \end{DoxyCompactList}\item 
virtual void \hyperlink{classObjective_a61f02076d7e5ecb67d497311e3a4a26d}{start} ()=0
\begin{DoxyCompactList}\small\item\em start the objective execution \end{DoxyCompactList}\item 
virtual void \hyperlink{classObjective_a702ba099e098c35b120d6220ae0d866c}{stop} ()=0
\begin{DoxyCompactList}\small\item\em stop the objective execution \end{DoxyCompactList}\item 
void \hyperlink{classObjective_a04c32bc713c8adb17ebe7c3e1290787d}{assign\-Group} (\hyperlink{classUnitGroup}{\-Unit\-Group} $\ast$group)
\begin{DoxyCompactList}\small\item\em assign a group to the current objective \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{\-Protected \-Attributes}
\begin{DoxyCompactItemize}
\item 
\hyperlink{Objective_8h_a43fc04afd00efaf79da2ed9d9ab32101}{objective\-\_\-t} \hyperlink{classObjective_ac54ab8706e0a0dc5fad1a8215d4b4d2c}{type\-\_\-}
\item 
\hyperlink{Objective_8h_ac3ba6cbb159cbcc2cb00ce3a66944205}{objective\-Status\-\_\-t} \hyperlink{classObjective_a76da23e71bc42d144c69da1461a2459c}{status\-\_\-}
\item 
double \hyperlink{classObjective_a8423fd3c2ddd9e0cfbd4083919737fc3}{req\-Power\-\_\-}
\item 
double \hyperlink{classObjective_a46953336f66ef1a443dd0229258a710d}{min\-Req\-Power\-\_\-}
\item 
\-B\-W\-T\-A\-::\-Base\-Location $\ast$ \hyperlink{classObjective_a6125d0237bb18b432a17ba3ad240e9a4}{base\-Loc\-\_\-}
\item 
\-B\-W\-A\-P\-I\-::\-Position $\ast$ \hyperlink{classObjective_a433942a9b9b7f6e6ae757c353a8894b4}{pos\-\_\-}
\item 
std\-::list$<$ \hyperlink{classUnitGroup}{\-Unit\-Group} $\ast$ $>$ \hyperlink{classObjective_a253328cb572d2942d5a4079a73a3ecf7}{l\-Group\-\_\-}
\end{DoxyCompactItemize}


\subsection{\-Constructor \& \-Destructor \-Documentation}
\hypertarget{classObjective_aadaa202961d23b2a6b36217104b79993}{\index{\-Objective@{\-Objective}!\-Objective@{\-Objective}}
\index{\-Objective@{\-Objective}!Objective@{\-Objective}}
\subsubsection[{\-Objective}]{\setlength{\rightskip}{0pt plus 5cm}{\bf \-Objective\-::\-Objective} (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}}\label{classObjective_aadaa202961d23b2a6b36217104b79993}


default constructor \-Default objective is not defined 

\hypertarget{classObjective_a9bec8782490cf04d33ab40454a14f5e2}{\index{\-Objective@{\-Objective}!$\sim$\-Objective@{$\sim$\-Objective}}
\index{$\sim$\-Objective@{$\sim$\-Objective}!Objective@{\-Objective}}
\subsubsection[{$\sim$\-Objective}]{\setlength{\rightskip}{0pt plus 5cm}{\bf \-Objective\-::$\sim$\-Objective} (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}\label{classObjective_a9bec8782490cf04d33ab40454a14f5e2}


destructor 



\subsection{\-Member \-Function \-Documentation}
\hypertarget{classObjective_a04c32bc713c8adb17ebe7c3e1290787d}{\index{\-Objective@{\-Objective}!assign\-Group@{assign\-Group}}
\index{assign\-Group@{assign\-Group}!Objective@{\-Objective}}
\subsubsection[{assign\-Group}]{\setlength{\rightskip}{0pt plus 5cm}void {\bf \-Objective\-::assign\-Group} (
\begin{DoxyParamCaption}
\item[{{\bf \-Unit\-Group} $\ast$}]{group}
\end{DoxyParamCaption}
)}}\label{classObjective_a04c32bc713c8adb17ebe7c3e1290787d}


assign a group to the current objective 


\begin{DoxyParams}{\-Parameters}
{\em group} & \-: the group to assign \\
\hline
\end{DoxyParams}


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


\hypertarget{classObjective_a0052e4da5b1e980b3f440b55db3630e8}{\index{\-Objective@{\-Objective}!base\-Loc@{base\-Loc}}
\index{base\-Loc@{base\-Loc}!Objective@{\-Objective}}
\subsubsection[{base\-Loc}]{\setlength{\rightskip}{0pt plus 5cm}\-B\-W\-T\-A\-::\-Base\-Location$\ast$ {\bf \-Objective\-::base\-Loc} (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}\label{classObjective_a0052e4da5b1e980b3f440b55db3630e8}


return the base location associated to the objective 

\begin{DoxyReturn}{\-Returns}
the base location associated to the objective 
\end{DoxyReturn}


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


\hypertarget{classObjective_a747ddd7100b213daa19529cdbba5f05f}{\index{\-Objective@{\-Objective}!pos@{pos}}
\index{pos@{pos}!Objective@{\-Objective}}
\subsubsection[{pos}]{\setlength{\rightskip}{0pt plus 5cm}\-B\-W\-A\-P\-I\-::\-Position$\ast$ {\bf \-Objective\-::pos} (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}\label{classObjective_a747ddd7100b213daa19529cdbba5f05f}


return the position associated to the objective 

\begin{DoxyReturn}{\-Returns}
the position associated to the objective 
\end{DoxyReturn}
\hypertarget{classObjective_ab508150885166a04fc3ee60fca0555d0}{\index{\-Objective@{\-Objective}!req\-Power@{req\-Power}}
\index{req\-Power@{req\-Power}!Objective@{\-Objective}}
\subsubsection[{req\-Power}]{\setlength{\rightskip}{0pt plus 5cm}double {\bf \-Objective\-::req\-Power} (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}\label{classObjective_ab508150885166a04fc3ee60fca0555d0}


return the required power needed to ensure the objective 

\begin{DoxyReturn}{\-Returns}
the required power needed to ensure the objective 
\end{DoxyReturn}


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


\hypertarget{classObjective_a61f02076d7e5ecb67d497311e3a4a26d}{\index{\-Objective@{\-Objective}!start@{start}}
\index{start@{start}!Objective@{\-Objective}}
\subsubsection[{start}]{\setlength{\rightskip}{0pt plus 5cm}virtual void {\bf \-Objective\-::start} (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}pure virtual\mbox{]}}}}\label{classObjective_a61f02076d7e5ecb67d497311e3a4a26d}


start the objective execution 



\-Implemented in \hyperlink{classAttackBaseObj_a02d03be282105995ae6e6b5b68b90212}{\-Attack\-Base\-Obj}.

\hypertarget{classObjective_af31baee5773f4e9b2ff836955702d33f}{\index{\-Objective@{\-Objective}!status@{status}}
\index{status@{status}!Objective@{\-Objective}}
\subsubsection[{status}]{\setlength{\rightskip}{0pt plus 5cm}{\bf objective\-Status\-\_\-t} {\bf \-Objective\-::status} (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}\label{classObjective_af31baee5773f4e9b2ff836955702d33f}


return the objective status 

\begin{DoxyReturn}{\-Returns}
the objective status 
\end{DoxyReturn}
\hypertarget{classObjective_a702ba099e098c35b120d6220ae0d866c}{\index{\-Objective@{\-Objective}!stop@{stop}}
\index{stop@{stop}!Objective@{\-Objective}}
\subsubsection[{stop}]{\setlength{\rightskip}{0pt plus 5cm}virtual void {\bf \-Objective\-::stop} (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}pure virtual\mbox{]}}}}\label{classObjective_a702ba099e098c35b120d6220ae0d866c}


stop the objective execution 



\-Implemented in \hyperlink{classAttackBaseObj_a504b6c4a6a9e6e7ca7120f48e3fa1435}{\-Attack\-Base\-Obj}.

\hypertarget{classObjective_a76a1cdf34d8360c3d41c338a08c69a5c}{\index{\-Objective@{\-Objective}!type@{type}}
\index{type@{type}!Objective@{\-Objective}}
\subsubsection[{type}]{\setlength{\rightskip}{0pt plus 5cm}{\bf objective\-\_\-t} {\bf \-Objective\-::type} (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}inline\mbox{]}}}}\label{classObjective_a76a1cdf34d8360c3d41c338a08c69a5c}


return the objective type 

\begin{DoxyReturn}{\-Returns}
the objective type 
\end{DoxyReturn}


\subsection{\-Member \-Data \-Documentation}
\hypertarget{classObjective_a6125d0237bb18b432a17ba3ad240e9a4}{\index{\-Objective@{\-Objective}!base\-Loc\-\_\-@{base\-Loc\-\_\-}}
\index{base\-Loc\-\_\-@{base\-Loc\-\_\-}!Objective@{\-Objective}}
\subsubsection[{base\-Loc\-\_\-}]{\setlength{\rightskip}{0pt plus 5cm}\-B\-W\-T\-A\-::\-Base\-Location$\ast$ {\bf \-Objective\-::base\-Loc\-\_\-}\hspace{0.3cm}{\ttfamily  \mbox{[}protected\mbox{]}}}}\label{classObjective_a6125d0237bb18b432a17ba3ad240e9a4}
the base location associated to the objective \hypertarget{classObjective_a253328cb572d2942d5a4079a73a3ecf7}{\index{\-Objective@{\-Objective}!l\-Group\-\_\-@{l\-Group\-\_\-}}
\index{l\-Group\-\_\-@{l\-Group\-\_\-}!Objective@{\-Objective}}
\subsubsection[{l\-Group\-\_\-}]{\setlength{\rightskip}{0pt plus 5cm}std\-::list$<${\bf \-Unit\-Group}$\ast$$>$ {\bf \-Objective\-::l\-Group\-\_\-}\hspace{0.3cm}{\ttfamily  \mbox{[}protected\mbox{]}}}}\label{classObjective_a253328cb572d2942d5a4079a73a3ecf7}
list of the groups used to fulfill the objective \hypertarget{classObjective_a46953336f66ef1a443dd0229258a710d}{\index{\-Objective@{\-Objective}!min\-Req\-Power\-\_\-@{min\-Req\-Power\-\_\-}}
\index{min\-Req\-Power\-\_\-@{min\-Req\-Power\-\_\-}!Objective@{\-Objective}}
\subsubsection[{min\-Req\-Power\-\_\-}]{\setlength{\rightskip}{0pt plus 5cm}double {\bf \-Objective\-::min\-Req\-Power\-\_\-}\hspace{0.3cm}{\ttfamily  \mbox{[}protected\mbox{]}}}}\label{classObjective_a46953336f66ef1a443dd0229258a710d}
minimal required power of the group to not abort the objective \hypertarget{classObjective_a433942a9b9b7f6e6ae757c353a8894b4}{\index{\-Objective@{\-Objective}!pos\-\_\-@{pos\-\_\-}}
\index{pos\-\_\-@{pos\-\_\-}!Objective@{\-Objective}}
\subsubsection[{pos\-\_\-}]{\setlength{\rightskip}{0pt plus 5cm}\-B\-W\-A\-P\-I\-::\-Position$\ast$ {\bf \-Objective\-::pos\-\_\-}\hspace{0.3cm}{\ttfamily  \mbox{[}protected\mbox{]}}}}\label{classObjective_a433942a9b9b7f6e6ae757c353a8894b4}
the position associated to the objective \hypertarget{classObjective_a8423fd3c2ddd9e0cfbd4083919737fc3}{\index{\-Objective@{\-Objective}!req\-Power\-\_\-@{req\-Power\-\_\-}}
\index{req\-Power\-\_\-@{req\-Power\-\_\-}!Objective@{\-Objective}}
\subsubsection[{req\-Power\-\_\-}]{\setlength{\rightskip}{0pt plus 5cm}double {\bf \-Objective\-::req\-Power\-\_\-}\hspace{0.3cm}{\ttfamily  \mbox{[}protected\mbox{]}}}}\label{classObjective_a8423fd3c2ddd9e0cfbd4083919737fc3}
required power of the group to start the objective \hypertarget{classObjective_a76da23e71bc42d144c69da1461a2459c}{\index{\-Objective@{\-Objective}!status\-\_\-@{status\-\_\-}}
\index{status\-\_\-@{status\-\_\-}!Objective@{\-Objective}}
\subsubsection[{status\-\_\-}]{\setlength{\rightskip}{0pt plus 5cm}{\bf objective\-Status\-\_\-t} {\bf \-Objective\-::status\-\_\-}\hspace{0.3cm}{\ttfamily  \mbox{[}protected\mbox{]}}}}\label{classObjective_a76da23e71bc42d144c69da1461a2459c}
status of the objective \hypertarget{classObjective_ac54ab8706e0a0dc5fad1a8215d4b4d2c}{\index{\-Objective@{\-Objective}!type\-\_\-@{type\-\_\-}}
\index{type\-\_\-@{type\-\_\-}!Objective@{\-Objective}}
\subsubsection[{type\-\_\-}]{\setlength{\rightskip}{0pt plus 5cm}{\bf objective\-\_\-t} {\bf \-Objective\-::type\-\_\-}\hspace{0.3cm}{\ttfamily  \mbox{[}protected\mbox{]}}}}\label{classObjective_ac54ab8706e0a0dc5fad1a8215d4b4d2c}
type of the objective 

\-The documentation for this class was generated from the following files\-:\begin{DoxyCompactItemize}
\item 
\-Snippy\-Hollo\-W-\/\-Broodwar\-Bot\-Q-\/f01ab56/src/\-Micro/\-Unit\-Manager/\hyperlink{Objective_8h}{\-Objective.\-h}\item 
\-Snippy\-Hollo\-W-\/\-Broodwar\-Bot\-Q-\/f01ab56/src/\-Micro/\-Unit\-Manager/\hyperlink{Objective_8cpp}{\-Objective.\-cpp}\end{DoxyCompactItemize}
