\hypertarget{class_odin_a_i_1_1_event_manager}{\section{Odin\-A\-I\-:\-:Event\-Manager Class Reference}
\label{class_odin_a_i_1_1_event_manager}\index{Odin\-A\-I\-::\-Event\-Manager@{Odin\-A\-I\-::\-Event\-Manager}}
}


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

\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
void \hyperlink{class_odin_a_i_1_1_event_manager_a67eb5ef88bdbecd97959229e4e34189a}{Add\-Event\-Listener} (const char $\ast$event\-Name, Event\-Callback call\-Backfunction)
\item 
void \hyperlink{class_odin_a_i_1_1_event_manager_a563af7e014fce597fd8b0369711d2700}{Fire\-Event} (std\-::shared\-\_\-ptr$<$ \hyperlink{class_odin_a_i_1_1_event}{Event} $>$ event, uint delay=0)
\item 
void \hyperlink{class_odin_a_i_1_1_event_manager_ab12186ce8ea68262a46793a1f637ddb9}{Update} ()
\item 
void \hyperlink{class_odin_a_i_1_1_event_manager_ac055ff6402c5ed5b6d0b78c5aa830315}{Release} ()
\end{DoxyCompactItemize}


\subsection{Detailed Description}
\hyperlink{class_odin_a_i_1_1_event}{Event} manager class manages events that are fired by different sub systems. 

\subsection{Member Function Documentation}
\hypertarget{class_odin_a_i_1_1_event_manager_a67eb5ef88bdbecd97959229e4e34189a}{\index{Odin\-A\-I\-::\-Event\-Manager@{Odin\-A\-I\-::\-Event\-Manager}!Add\-Event\-Listener@{Add\-Event\-Listener}}
\index{Add\-Event\-Listener@{Add\-Event\-Listener}!OdinAI::EventManager@{Odin\-A\-I\-::\-Event\-Manager}}
\subsubsection[{Add\-Event\-Listener}]{\setlength{\rightskip}{0pt plus 5cm}void Odin\-A\-I\-::\-Event\-Manager\-::\-Add\-Event\-Listener (
\begin{DoxyParamCaption}
\item[{const char $\ast$}]{event\-Name, }
\item[{Event\-Callback}]{call\-Backfunction}
\end{DoxyParamCaption}
)}}\label{class_odin_a_i_1_1_event_manager_a67eb5ef88bdbecd97959229e4e34189a}
Binds a callback function with a specific event. 
\begin{DoxyParams}{Parameters}
{\em event\-Name} & The name of the event \\
\hline
{\em callback} & Points to a callback function, which is called when the specific event fired. \\
\hline
\end{DoxyParams}
\hypertarget{class_odin_a_i_1_1_event_manager_a563af7e014fce597fd8b0369711d2700}{\index{Odin\-A\-I\-::\-Event\-Manager@{Odin\-A\-I\-::\-Event\-Manager}!Fire\-Event@{Fire\-Event}}
\index{Fire\-Event@{Fire\-Event}!OdinAI::EventManager@{Odin\-A\-I\-::\-Event\-Manager}}
\subsubsection[{Fire\-Event}]{\setlength{\rightskip}{0pt plus 5cm}void Odin\-A\-I\-::\-Event\-Manager\-::\-Fire\-Event (
\begin{DoxyParamCaption}
\item[{std\-::shared\-\_\-ptr$<$ {\bf Event} $>$}]{event, }
\item[{uint}]{delay = {\ttfamily 0}}
\end{DoxyParamCaption}
)}}\label{class_odin_a_i_1_1_event_manager_a563af7e014fce597fd8b0369711d2700}
Fire an event. 
\begin{DoxyParams}{Parameters}
{\em event} & The event object that are sent to all listeners \\
\hline
{\em delay} & Wait delay ms before sending out the event \\
\hline
\end{DoxyParams}
\hypertarget{class_odin_a_i_1_1_event_manager_ac055ff6402c5ed5b6d0b78c5aa830315}{\index{Odin\-A\-I\-::\-Event\-Manager@{Odin\-A\-I\-::\-Event\-Manager}!Release@{Release}}
\index{Release@{Release}!OdinAI::EventManager@{Odin\-A\-I\-::\-Event\-Manager}}
\subsubsection[{Release}]{\setlength{\rightskip}{0pt plus 5cm}void Odin\-A\-I\-::\-Event\-Manager\-::\-Release (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}}\label{class_odin_a_i_1_1_event_manager_ac055ff6402c5ed5b6d0b78c5aa830315}
Release all dynamic memory. \hypertarget{class_odin_a_i_1_1_event_manager_ab12186ce8ea68262a46793a1f637ddb9}{\index{Odin\-A\-I\-::\-Event\-Manager@{Odin\-A\-I\-::\-Event\-Manager}!Update@{Update}}
\index{Update@{Update}!OdinAI::EventManager@{Odin\-A\-I\-::\-Event\-Manager}}
\subsubsection[{Update}]{\setlength{\rightskip}{0pt plus 5cm}void Odin\-A\-I\-::\-Event\-Manager\-::\-Update (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}}\label{class_odin_a_i_1_1_event_manager_ab12186ce8ea68262a46793a1f637ddb9}
Update the event manager, note it should only be done once. 

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