\hypertarget{classIdleTask}{\section{\-Idle\-Task \-Class \-Reference}
\label{classIdleTask}\index{\-Idle\-Task@{\-Idle\-Task}}
}


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



\-Inheritance diagram for \-Idle\-Task\-:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=550pt]{classIdleTask__inherit__graph}
\end{center}
\end{figure}


\-Collaboration diagram for \-Idle\-Task\-:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=550pt]{classIdleTask__coll__graph}
\end{center}
\end{figure}
\subsection*{\-Public \-Member \-Functions}
\begin{DoxyCompactItemize}
\item 
\hyperlink{classIdleTask_a73b3269995471ab48f1ef717e358079f}{\-Idle\-Task} (\hyperlink{Task_8h_a7b31e3712710b22657fc622787547497}{\-Task\-Type} priority)
\item 
virtual int \hyperlink{classIdleTask_a56b9c3b6a067362ef222743463cb8cf2}{get\-End\-Time} () const 
\item 
virtual int \hyperlink{classIdleTask_ae4567519fb101b48d6b8ffa26fedac61}{get\-End\-Time} (\hyperlink{Interface_8h_ab8fbb9e601c27f783b69f16c5a1fd40a}{\-Unit} unit) const 
\item 
virtual int \hyperlink{classIdleTask_a74b691944f046fcfe3bb856b57418e92}{get\-Priority} (\hyperlink{Interface_8h_ab8fbb9e601c27f783b69f16c5a1fd40a}{\-Unit} unit) const 
\item 
virtual \hyperlink{Interface_8h_a7ae5d695cf6b7c013c5ad30d124278e0}{\-Position} \hyperlink{classIdleTask_ad6f022dadc8b7e9e1a76cc135ee62bf9}{get\-Start\-Location} (\hyperlink{Interface_8h_ab8fbb9e601c27f783b69f16c5a1fd40a}{\-Unit} unit) const 
\item 
virtual \hyperlink{Interface_8h_a7ae5d695cf6b7c013c5ad30d124278e0}{\-Position} \hyperlink{classIdleTask_abcdf0bfa38e0c426626fbe69717c8022}{get\-End\-Location} (\hyperlink{Interface_8h_ab8fbb9e601c27f783b69f16c5a1fd40a}{\-Unit} unit) const 
\item 
virtual bool \hyperlink{classIdleTask_ac2c2e11d409f4ae2aefb89bce5c76270}{pre\-Update} ()
\item 
virtual bool \hyperlink{classIdleTask_a723e5505b123bf6f703f203f2ae47c7a}{update} ()
\item 
virtual bool \hyperlink{classIdleTask_a6f56216fd393a0ebdc30b34b7f3ef5b3}{waiting\-For\-Unit} (\hyperlink{Interface_8h_ab8fbb9e601c27f783b69f16c5a1fd40a}{\-Unit} unit) const 
\item 
virtual void \hyperlink{classIdleTask_aaddcda00aab7a5f7bb9104ca86cb0c1e}{give\-Unit} (\hyperlink{Interface_8h_ab8fbb9e601c27f783b69f16c5a1fd40a}{\-Unit} unit)
\item 
virtual void \hyperlink{classIdleTask_a0663f62a05b1ea31b79d5a3a6b5ce86f}{return\-Unit} (\hyperlink{Interface_8h_ab8fbb9e601c27f783b69f16c5a1fd40a}{\-Unit} unit)
\item 
virtual bool \hyperlink{classIdleTask_a1faa652bc745793f8fbcc2724203c738}{morph} (\hyperlink{Interface_8h_ab8fbb9e601c27f783b69f16c5a1fd40a}{\-Unit} unit, \hyperlink{classBWAPI_1_1UnitType}{\-B\-W\-A\-P\-I\-::\-Unit\-Type} previous\-Type)
\item 
virtual \hyperlink{classUnitGroup}{\-Unit\-Group} \hyperlink{classIdleTask_a2cb9a8169d2ed77a747511feb189dd42}{get\-Finished\-Units} ()
\item 
virtual std\-::string \hyperlink{classIdleTask_af56285cc8bbd74c46382fd265537a25a}{get\-Task\-Name} () const 
\item 
virtual std\-::string \hyperlink{classIdleTask_a3575284c376bc18c9d5a691e572b97bf}{get\-Output\-Name} () const 
\end{DoxyCompactItemize}
\subsection*{\-Private \-Attributes}
\begin{DoxyCompactItemize}
\item 
\hyperlink{Interface_8h_ab8fbb9e601c27f783b69f16c5a1fd40a}{\-Unit} \hyperlink{classIdleTask_a48cb07f57938dfc6ebac2a48dc03edc4}{m\-Unit}
\end{DoxyCompactItemize}


\subsection{\-Detailed \-Description}


\-Definition at line 7 of file \-Idle\-Task.\-h.



\subsection{\-Constructor \& \-Destructor \-Documentation}
\hypertarget{classIdleTask_a73b3269995471ab48f1ef717e358079f}{\index{\-Idle\-Task@{\-Idle\-Task}!\-Idle\-Task@{\-Idle\-Task}}
\index{\-Idle\-Task@{\-Idle\-Task}!IdleTask@{\-Idle\-Task}}
\subsubsection[{\-Idle\-Task}]{\setlength{\rightskip}{0pt plus 5cm}{\bf \-Idle\-Task\-::\-Idle\-Task} (
\begin{DoxyParamCaption}
\item[{{\bf \-Task\-Type}}]{priority}
\end{DoxyParamCaption}
)}}\label{classIdleTask_a73b3269995471ab48f1ef717e358079f}


\-Definition at line 3 of file \-Idle\-Task.\-cpp.


\begin{DoxyCode}
: Task(priority)
{
}
\end{DoxyCode}


\subsection{\-Member \-Function \-Documentation}
\hypertarget{classIdleTask_abcdf0bfa38e0c426626fbe69717c8022}{\index{\-Idle\-Task@{\-Idle\-Task}!get\-End\-Location@{get\-End\-Location}}
\index{get\-End\-Location@{get\-End\-Location}!IdleTask@{\-Idle\-Task}}
\subsubsection[{get\-End\-Location}]{\setlength{\rightskip}{0pt plus 5cm}{\bf \-Position} {\bf \-Idle\-Task\-::get\-End\-Location} (
\begin{DoxyParamCaption}
\item[{{\bf \-Unit}}]{unit}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}\label{classIdleTask_abcdf0bfa38e0c426626fbe69717c8022}


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



\-Definition at line 23 of file \-Idle\-Task.\-cpp.


\begin{DoxyCode}
{
        return unit->getPosition();
}
\end{DoxyCode}
\hypertarget{classIdleTask_a56b9c3b6a067362ef222743463cb8cf2}{\index{\-Idle\-Task@{\-Idle\-Task}!get\-End\-Time@{get\-End\-Time}}
\index{get\-End\-Time@{get\-End\-Time}!IdleTask@{\-Idle\-Task}}
\subsubsection[{get\-End\-Time}]{\setlength{\rightskip}{0pt plus 5cm}int {\bf \-Idle\-Task\-::get\-End\-Time} (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}\label{classIdleTask_a56b9c3b6a067362ef222743463cb8cf2}


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



\-Definition at line 8 of file \-Idle\-Task.\-cpp.



\-References \-Requirement\-::max\-Time.



\-Referenced by get\-End\-Time().


\begin{DoxyCode}
{
        return Requirement::maxTime;
}
\end{DoxyCode}


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


\hypertarget{classIdleTask_ae4567519fb101b48d6b8ffa26fedac61}{\index{\-Idle\-Task@{\-Idle\-Task}!get\-End\-Time@{get\-End\-Time}}
\index{get\-End\-Time@{get\-End\-Time}!IdleTask@{\-Idle\-Task}}
\subsubsection[{get\-End\-Time}]{\setlength{\rightskip}{0pt plus 5cm}int {\bf \-Idle\-Task\-::get\-End\-Time} (
\begin{DoxyParamCaption}
\item[{{\bf \-Unit}}]{unit}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}\label{classIdleTask_ae4567519fb101b48d6b8ffa26fedac61}


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



\-Definition at line 13 of file \-Idle\-Task.\-cpp.



\-References get\-End\-Time().


\begin{DoxyCode}
{
        return getEndTime();
}
\end{DoxyCode}


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


\hypertarget{classIdleTask_a2cb9a8169d2ed77a747511feb189dd42}{\index{\-Idle\-Task@{\-Idle\-Task}!get\-Finished\-Units@{get\-Finished\-Units}}
\index{get\-Finished\-Units@{get\-Finished\-Units}!IdleTask@{\-Idle\-Task}}
\subsubsection[{get\-Finished\-Units}]{\setlength{\rightskip}{0pt plus 5cm}{\bf \-Unit\-Group} {\bf \-Idle\-Task\-::get\-Finished\-Units} (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}\label{classIdleTask_a2cb9a8169d2ed77a747511feb189dd42}


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



\-Definition at line 63 of file \-Idle\-Task.\-cpp.


\begin{DoxyCode}
{
        assert(false);
        return UnitGroup();
}
\end{DoxyCode}
\hypertarget{classIdleTask_a3575284c376bc18c9d5a691e572b97bf}{\index{\-Idle\-Task@{\-Idle\-Task}!get\-Output\-Name@{get\-Output\-Name}}
\index{get\-Output\-Name@{get\-Output\-Name}!IdleTask@{\-Idle\-Task}}
\subsubsection[{get\-Output\-Name}]{\setlength{\rightskip}{0pt plus 5cm}virtual std\-::string {\bf \-Idle\-Task\-::get\-Output\-Name} (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline, virtual\mbox{]}}}}\label{classIdleTask_a3575284c376bc18c9d5a691e572b97bf}


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



\-Definition at line 30 of file \-Idle\-Task.\-h.


\begin{DoxyCode}
{ return ""; }
\end{DoxyCode}
\hypertarget{classIdleTask_a74b691944f046fcfe3bb856b57418e92}{\index{\-Idle\-Task@{\-Idle\-Task}!get\-Priority@{get\-Priority}}
\index{get\-Priority@{get\-Priority}!IdleTask@{\-Idle\-Task}}
\subsubsection[{get\-Priority}]{\setlength{\rightskip}{0pt plus 5cm}int {\bf \-Idle\-Task\-::get\-Priority} (
\begin{DoxyParamCaption}
\item[{{\bf \-Unit}}]{unit}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}\label{classIdleTask_a74b691944f046fcfe3bb856b57418e92}


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



\-Definition at line 69 of file \-Idle\-Task.\-cpp.


\begin{DoxyCode}
{
        return 0;
}\end{DoxyCode}
\hypertarget{classIdleTask_ad6f022dadc8b7e9e1a76cc135ee62bf9}{\index{\-Idle\-Task@{\-Idle\-Task}!get\-Start\-Location@{get\-Start\-Location}}
\index{get\-Start\-Location@{get\-Start\-Location}!IdleTask@{\-Idle\-Task}}
\subsubsection[{get\-Start\-Location}]{\setlength{\rightskip}{0pt plus 5cm}{\bf \-Position} {\bf \-Idle\-Task\-::get\-Start\-Location} (
\begin{DoxyParamCaption}
\item[{{\bf \-Unit}}]{unit}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}\label{classIdleTask_ad6f022dadc8b7e9e1a76cc135ee62bf9}


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



\-Definition at line 18 of file \-Idle\-Task.\-cpp.


\begin{DoxyCode}
{
        return unit->getPosition();
}
\end{DoxyCode}
\hypertarget{classIdleTask_af56285cc8bbd74c46382fd265537a25a}{\index{\-Idle\-Task@{\-Idle\-Task}!get\-Task\-Name@{get\-Task\-Name}}
\index{get\-Task\-Name@{get\-Task\-Name}!IdleTask@{\-Idle\-Task}}
\subsubsection[{get\-Task\-Name}]{\setlength{\rightskip}{0pt plus 5cm}virtual std\-::string {\bf \-Idle\-Task\-::get\-Task\-Name} (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}inline, virtual\mbox{]}}}}\label{classIdleTask_af56285cc8bbd74c46382fd265537a25a}


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



\-Definition at line 29 of file \-Idle\-Task.\-h.


\begin{DoxyCode}
{ return "Idle"; }
\end{DoxyCode}
\hypertarget{classIdleTask_aaddcda00aab7a5f7bb9104ca86cb0c1e}{\index{\-Idle\-Task@{\-Idle\-Task}!give\-Unit@{give\-Unit}}
\index{give\-Unit@{give\-Unit}!IdleTask@{\-Idle\-Task}}
\subsubsection[{give\-Unit}]{\setlength{\rightskip}{0pt plus 5cm}void {\bf \-Idle\-Task\-::give\-Unit} (
\begin{DoxyParamCaption}
\item[{{\bf \-Unit}}]{unit}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}\label{classIdleTask_aaddcda00aab7a5f7bb9104ca86cb0c1e}


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



\-Definition at line 46 of file \-Idle\-Task.\-cpp.



\-References m\-Unit, and \-Static\-Units\-::nullunit.


\begin{DoxyCode}
{
        assert(mUnit == StaticUnits::nullunit);
        mUnit = unit;
}
\end{DoxyCode}
\hypertarget{classIdleTask_a1faa652bc745793f8fbcc2724203c738}{\index{\-Idle\-Task@{\-Idle\-Task}!morph@{morph}}
\index{morph@{morph}!IdleTask@{\-Idle\-Task}}
\subsubsection[{morph}]{\setlength{\rightskip}{0pt plus 5cm}bool {\bf \-Idle\-Task\-::morph} (
\begin{DoxyParamCaption}
\item[{{\bf \-Unit}}]{unit, }
\item[{{\bf \-B\-W\-A\-P\-I\-::\-Unit\-Type}}]{previous\-Type}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}\label{classIdleTask_a1faa652bc745793f8fbcc2724203c738}


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



\-Definition at line 58 of file \-Idle\-Task.\-cpp.


\begin{DoxyCode}
{
        return true;
}
\end{DoxyCode}
\hypertarget{classIdleTask_ac2c2e11d409f4ae2aefb89bce5c76270}{\index{\-Idle\-Task@{\-Idle\-Task}!pre\-Update@{pre\-Update}}
\index{pre\-Update@{pre\-Update}!IdleTask@{\-Idle\-Task}}
\subsubsection[{pre\-Update}]{\setlength{\rightskip}{0pt plus 5cm}bool {\bf \-Idle\-Task\-::pre\-Update} (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}\label{classIdleTask_ac2c2e11d409f4ae2aefb89bce5c76270}


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



\-Definition at line 28 of file \-Idle\-Task.\-cpp.



\-References \-Task\-::complete(), and m\-Unit.


\begin{DoxyCode}
{
        if(!mUnit)
                complete();

        return false;
}
\end{DoxyCode}


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


\hypertarget{classIdleTask_a0663f62a05b1ea31b79d5a3a6b5ce86f}{\index{\-Idle\-Task@{\-Idle\-Task}!return\-Unit@{return\-Unit}}
\index{return\-Unit@{return\-Unit}!IdleTask@{\-Idle\-Task}}
\subsubsection[{return\-Unit}]{\setlength{\rightskip}{0pt plus 5cm}void {\bf \-Idle\-Task\-::return\-Unit} (
\begin{DoxyParamCaption}
\item[{{\bf \-Unit}}]{unit}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}\label{classIdleTask_a0663f62a05b1ea31b79d5a3a6b5ce86f}


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



\-Definition at line 52 of file \-Idle\-Task.\-cpp.



\-References m\-Unit, and \-Static\-Units\-::nullunit.


\begin{DoxyCode}
{
        assert(mUnit == unit);
        mUnit = StaticUnits::nullunit;
}
\end{DoxyCode}
\hypertarget{classIdleTask_a723e5505b123bf6f703f203f2ae47c7a}{\index{\-Idle\-Task@{\-Idle\-Task}!update@{update}}
\index{update@{update}!IdleTask@{\-Idle\-Task}}
\subsubsection[{update}]{\setlength{\rightskip}{0pt plus 5cm}bool {\bf \-Idle\-Task\-::update} (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}\label{classIdleTask_a723e5505b123bf6f703f203f2ae47c7a}


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



\-Definition at line 36 of file \-Idle\-Task.\-cpp.



\-References \-Task\-::has\-Ended(), and m\-Unit.


\begin{DoxyCode}
{
        return hasEnded() && !mUnit;
}
\end{DoxyCode}


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


\hypertarget{classIdleTask_a6f56216fd393a0ebdc30b34b7f3ef5b3}{\index{\-Idle\-Task@{\-Idle\-Task}!waiting\-For\-Unit@{waiting\-For\-Unit}}
\index{waiting\-For\-Unit@{waiting\-For\-Unit}!IdleTask@{\-Idle\-Task}}
\subsubsection[{waiting\-For\-Unit}]{\setlength{\rightskip}{0pt plus 5cm}bool {\bf \-Idle\-Task\-::waiting\-For\-Unit} (
\begin{DoxyParamCaption}
\item[{{\bf \-Unit}}]{unit}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily  \mbox{[}virtual\mbox{]}}}}\label{classIdleTask_a6f56216fd393a0ebdc30b34b7f3ef5b3}


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



\-Definition at line 41 of file \-Idle\-Task.\-cpp.


\begin{DoxyCode}
{
        return false;
}
\end{DoxyCode}


\subsection{\-Member \-Data \-Documentation}
\hypertarget{classIdleTask_a48cb07f57938dfc6ebac2a48dc03edc4}{\index{\-Idle\-Task@{\-Idle\-Task}!m\-Unit@{m\-Unit}}
\index{m\-Unit@{m\-Unit}!IdleTask@{\-Idle\-Task}}
\subsubsection[{m\-Unit}]{\setlength{\rightskip}{0pt plus 5cm}{\bf \-Unit} {\bf \-Idle\-Task\-::m\-Unit}\hspace{0.3cm}{\ttfamily  \mbox{[}private\mbox{]}}}}\label{classIdleTask_a48cb07f57938dfc6ebac2a48dc03edc4}


\-Definition at line 33 of file \-Idle\-Task.\-h.



\-Referenced by give\-Unit(), pre\-Update(), return\-Unit(), and update().



\-The documentation for this class was generated from the following files\-:\begin{DoxyCompactItemize}
\item 
\-Skynet/\-Skynet/\hyperlink{IdleTask_8h}{\-Idle\-Task.\-h}\item 
\-Skynet/\-Skynet/\hyperlink{IdleTask_8cpp}{\-Idle\-Task.\-cpp}\end{DoxyCompactItemize}
