\hypertarget{class_odin_a_i_1_1_base_goal}{\section{Odin\-A\-I\-:\-:Base\-Goal Class Reference}
\label{class_odin_a_i_1_1_base_goal}\index{Odin\-A\-I\-::\-Base\-Goal@{Odin\-A\-I\-::\-Base\-Goal}}
}


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

Inheritance diagram for Odin\-A\-I\-:\-:Base\-Goal\-:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=2.000000cm]{class_odin_a_i_1_1_base_goal}
\end{center}
\end{figure}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
virtual void \hyperlink{class_odin_a_i_1_1_base_goal_a749862b4ab94d3f26d5bf095639cefaf}{Add\-Goal} (\hyperlink{class_odin_a_i_1_1_base_goal}{Base\-Goal} $\ast$goal)
\item 
virtual void \hyperlink{class_odin_a_i_1_1_base_goal_aa3c366e69d3983205ff27f04a63a2305}{Activate} ()
\item 
virtual int \hyperlink{class_odin_a_i_1_1_base_goal_a36daaafa49916b7ff21ab5c701ae63ac}{Process} ()
\item 
virtual void \hyperlink{class_odin_a_i_1_1_base_goal_a3755cffe0653bd7a11f514ae155ee53b}{End} ()
\item 
bool \hyperlink{class_odin_a_i_1_1_base_goal_a7d733e138161d2d8370c3d3e3dfd737b}{Is\-Active} () const 
\item 
void \hyperlink{class_odin_a_i_1_1_base_goal_a5b6b87a408cfe82fa6f5ff2d2e9a077f}{Activate\-If\-Inactive} ()
\item 
bool \hyperlink{class_odin_a_i_1_1_base_goal_a5c556a526ce42660bea7dc116a191e08}{Is\-Complete} () const 
\item 
bool \hyperlink{class_odin_a_i_1_1_base_goal_a26ba2eff270d79c21c8b1ad45efb4f27}{Has\-Failed} () const 
\item 
int \hyperlink{class_odin_a_i_1_1_base_goal_a1fc2ec07399bb8ede531ad73e7df6931}{Get\-Status} () const 
\end{DoxyCompactItemize}
\subsection*{Protected Attributes}
\begin{DoxyCompactItemize}
\item 
\hypertarget{class_odin_a_i_1_1_base_goal_acaac7e465b6d5c209e52672a248918f9}{int \hyperlink{class_odin_a_i_1_1_base_goal_acaac7e465b6d5c209e52672a248918f9}{m\-\_\-status}}\label{class_odin_a_i_1_1_base_goal_acaac7e465b6d5c209e52672a248918f9}

\begin{DoxyCompactList}\small\item\em The status of the goal. \end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}
Abstract class for a A\-I goal. 

\subsection{Member Function Documentation}
\hypertarget{class_odin_a_i_1_1_base_goal_aa3c366e69d3983205ff27f04a63a2305}{\index{Odin\-A\-I\-::\-Base\-Goal@{Odin\-A\-I\-::\-Base\-Goal}!Activate@{Activate}}
\index{Activate@{Activate}!OdinAI::BaseGoal@{Odin\-A\-I\-::\-Base\-Goal}}
\subsubsection[{Activate}]{\setlength{\rightskip}{0pt plus 5cm}virtual void Odin\-A\-I\-::\-Base\-Goal\-::\-Activate (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{class_odin_a_i_1_1_base_goal_aa3c366e69d3983205ff27f04a63a2305}
Function called before a goal is processed. 

Reimplemented in \hyperlink{class_odin_a_i_1_1_composite_goal_a2bd7c230d2bc233af1d295a454019069}{Odin\-A\-I\-::\-Composite\-Goal}, and \hyperlink{class_odin_a_i_1_1_atomic_goal_a1f2357342bda11b655d10a162ca7113c}{Odin\-A\-I\-::\-Atomic\-Goal}.

\hypertarget{class_odin_a_i_1_1_base_goal_a5b6b87a408cfe82fa6f5ff2d2e9a077f}{\index{Odin\-A\-I\-::\-Base\-Goal@{Odin\-A\-I\-::\-Base\-Goal}!Activate\-If\-Inactive@{Activate\-If\-Inactive}}
\index{Activate\-If\-Inactive@{Activate\-If\-Inactive}!OdinAI::BaseGoal@{Odin\-A\-I\-::\-Base\-Goal}}
\subsubsection[{Activate\-If\-Inactive}]{\setlength{\rightskip}{0pt plus 5cm}void Odin\-A\-I\-::\-Base\-Goal\-::\-Activate\-If\-Inactive (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}}}\label{class_odin_a_i_1_1_base_goal_a5b6b87a408cfe82fa6f5ff2d2e9a077f}
Activate goal if inactive. It will also activate the goal if the status is ready or failed. \hypertarget{class_odin_a_i_1_1_base_goal_a749862b4ab94d3f26d5bf095639cefaf}{\index{Odin\-A\-I\-::\-Base\-Goal@{Odin\-A\-I\-::\-Base\-Goal}!Add\-Goal@{Add\-Goal}}
\index{Add\-Goal@{Add\-Goal}!OdinAI::BaseGoal@{Odin\-A\-I\-::\-Base\-Goal}}
\subsubsection[{Add\-Goal}]{\setlength{\rightskip}{0pt plus 5cm}virtual void Odin\-A\-I\-::\-Base\-Goal\-::\-Add\-Goal (
\begin{DoxyParamCaption}
\item[{{\bf Base\-Goal} $\ast$}]{goal}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{class_odin_a_i_1_1_base_goal_a749862b4ab94d3f26d5bf095639cefaf}
Adds a goal to a composite goal. If this function is called on a atomic goal, it will cause an assertion. 

Reimplemented in \hyperlink{class_odin_a_i_1_1_composite_goal_a59c397c838ca3bdad84e6466a6d466c9}{Odin\-A\-I\-::\-Composite\-Goal}, and \hyperlink{class_odin_a_i_1_1_atomic_goal_a48c4889bc4f539430d7586c658abdae7}{Odin\-A\-I\-::\-Atomic\-Goal}.

\hypertarget{class_odin_a_i_1_1_base_goal_a3755cffe0653bd7a11f514ae155ee53b}{\index{Odin\-A\-I\-::\-Base\-Goal@{Odin\-A\-I\-::\-Base\-Goal}!End@{End}}
\index{End@{End}!OdinAI::BaseGoal@{Odin\-A\-I\-::\-Base\-Goal}}
\subsubsection[{End}]{\setlength{\rightskip}{0pt plus 5cm}virtual void Odin\-A\-I\-::\-Base\-Goal\-::\-End (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{class_odin_a_i_1_1_base_goal_a3755cffe0653bd7a11f514ae155ee53b}
Function used to clean up an goal. 

Reimplemented in \hyperlink{class_odin_a_i_1_1_composite_goal_abf00a5d6ab0037d6b7baab2852666cab}{Odin\-A\-I\-::\-Composite\-Goal}, and \hyperlink{class_odin_a_i_1_1_atomic_goal_a720a9dd17eeb21514bf903f9be76f781}{Odin\-A\-I\-::\-Atomic\-Goal}.

\hypertarget{class_odin_a_i_1_1_base_goal_a1fc2ec07399bb8ede531ad73e7df6931}{\index{Odin\-A\-I\-::\-Base\-Goal@{Odin\-A\-I\-::\-Base\-Goal}!Get\-Status@{Get\-Status}}
\index{Get\-Status@{Get\-Status}!OdinAI::BaseGoal@{Odin\-A\-I\-::\-Base\-Goal}}
\subsubsection[{Get\-Status}]{\setlength{\rightskip}{0pt plus 5cm}int Odin\-A\-I\-::\-Base\-Goal\-::\-Get\-Status (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [inline]}}}\label{class_odin_a_i_1_1_base_goal_a1fc2ec07399bb8ede531ad73e7df6931}
Returns the status of the goal. \hypertarget{class_odin_a_i_1_1_base_goal_a26ba2eff270d79c21c8b1ad45efb4f27}{\index{Odin\-A\-I\-::\-Base\-Goal@{Odin\-A\-I\-::\-Base\-Goal}!Has\-Failed@{Has\-Failed}}
\index{Has\-Failed@{Has\-Failed}!OdinAI::BaseGoal@{Odin\-A\-I\-::\-Base\-Goal}}
\subsubsection[{Has\-Failed}]{\setlength{\rightskip}{0pt plus 5cm}bool Odin\-A\-I\-::\-Base\-Goal\-::\-Has\-Failed (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [inline]}}}\label{class_odin_a_i_1_1_base_goal_a26ba2eff270d79c21c8b1ad45efb4f27}
Returns true if goal has failed. \hypertarget{class_odin_a_i_1_1_base_goal_a7d733e138161d2d8370c3d3e3dfd737b}{\index{Odin\-A\-I\-::\-Base\-Goal@{Odin\-A\-I\-::\-Base\-Goal}!Is\-Active@{Is\-Active}}
\index{Is\-Active@{Is\-Active}!OdinAI::BaseGoal@{Odin\-A\-I\-::\-Base\-Goal}}
\subsubsection[{Is\-Active}]{\setlength{\rightskip}{0pt plus 5cm}bool Odin\-A\-I\-::\-Base\-Goal\-::\-Is\-Active (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [inline]}}}\label{class_odin_a_i_1_1_base_goal_a7d733e138161d2d8370c3d3e3dfd737b}
Is goal active? \hypertarget{class_odin_a_i_1_1_base_goal_a5c556a526ce42660bea7dc116a191e08}{\index{Odin\-A\-I\-::\-Base\-Goal@{Odin\-A\-I\-::\-Base\-Goal}!Is\-Complete@{Is\-Complete}}
\index{Is\-Complete@{Is\-Complete}!OdinAI::BaseGoal@{Odin\-A\-I\-::\-Base\-Goal}}
\subsubsection[{Is\-Complete}]{\setlength{\rightskip}{0pt plus 5cm}bool Odin\-A\-I\-::\-Base\-Goal\-::\-Is\-Complete (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [inline]}}}\label{class_odin_a_i_1_1_base_goal_a5c556a526ce42660bea7dc116a191e08}
Returns true if goal is complete. \hypertarget{class_odin_a_i_1_1_base_goal_a36daaafa49916b7ff21ab5c701ae63ac}{\index{Odin\-A\-I\-::\-Base\-Goal@{Odin\-A\-I\-::\-Base\-Goal}!Process@{Process}}
\index{Process@{Process}!OdinAI::BaseGoal@{Odin\-A\-I\-::\-Base\-Goal}}
\subsubsection[{Process}]{\setlength{\rightskip}{0pt plus 5cm}virtual int Odin\-A\-I\-::\-Base\-Goal\-::\-Process (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [virtual]}}}\label{class_odin_a_i_1_1_base_goal_a36daaafa49916b7ff21ab5c701ae63ac}
Function used to process an goal. 

Reimplemented in \hyperlink{class_odin_a_i_1_1_composite_goal_aaaafbd526d5377455b08263c25c145e0}{Odin\-A\-I\-::\-Composite\-Goal}, and \hyperlink{class_odin_a_i_1_1_atomic_goal_a7ec66100118270a2fdeb0c480021877e}{Odin\-A\-I\-::\-Atomic\-Goal}.



The documentation for this class was generated from the following file\-:\begin{DoxyCompactItemize}
\item 
E\-:/\-Development/\-Projects/\-Odin\-A\-I/\-Include/\-Odin\-A\-I/Goals.\-h\end{DoxyCompactItemize}
