\hypertarget{classKite_1_1RoutingEventHistory}{}\subsection{Routing\+Event\+History Class Reference}
\label{classKite_1_1RoutingEventHistory}\index{Routing\+Event\+History@{Routing\+Event\+History}}


History of \mbox{\hyperlink{classKite_1_1RoutingEvent}{Routing\+Event}}.  


\subsubsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{classKite_1_1RoutingEventHistory_af286a3887c4925a37eadc8018d584aa3}{Routing\+Event\+History}} ()
\item 
\mbox{\hyperlink{classKite_1_1RoutingEventHistory_a5a7671b3e27e93b018cf407a7eba9ce7}{$\sim$\+Routing\+Event\+History}} ()
\item 
bool \mbox{\hyperlink{classKite_1_1RoutingEventHistory_a644718bb2fb240de962dc3c9a1fdf0dc}{empty}} () const
\item 
size\+\_\+t \mbox{\hyperlink{classKite_1_1RoutingEventHistory_a259cb5a711406a8c3e5d937eb9350cca}{size}} () const
\item 
\mbox{\hyperlink{classKite_1_1RoutingEvent}{Routing\+Event}} $\ast$ \mbox{\hyperlink{classKite_1_1RoutingEventHistory_a81fbd6a845cb991db9f03f13edb14a50}{get\+Nth}} (size\+\_\+t) const
\item 
\mbox{\hyperlink{classKite_1_1RoutingEvent}{Routing\+Event}} $\ast$ \mbox{\hyperlink{classKite_1_1RoutingEventHistory_abf422c3119f0b121ce124aff979eafff}{get\+R\+Nth}} (size\+\_\+t) const
\item 
void \mbox{\hyperlink{classKite_1_1RoutingEventHistory_ac802427673567526d06af911e94f7216}{push}} (\mbox{\hyperlink{classKite_1_1RoutingEvent}{Routing\+Event}} $\ast$)
\item 
void \mbox{\hyperlink{classKite_1_1RoutingEventHistory_ac8bb3912a3ce86b15842e79d0b421204}{clear}} ()
\end{DoxyCompactItemize}


\subsubsection{Detailed Description}
History of \mbox{\hyperlink{classKite_1_1RoutingEvent}{Routing\+Event}}. 

An history of all the routing events. We can afford to keep an history because while one event is a relatively big object, there is not that much of them (their number is roughly proportional to the number of Track\+Segments).

One event is likely to appear more than one time in the history, in fact it will apprears each time it is ripped up.

Lastly, it is a way to keep track of all the allocated Routing\+Events. When history is deleted it will deleted all the events that it knows of. 

\subsubsection{Constructor \& Destructor Documentation}
\mbox{\Hypertarget{classKite_1_1RoutingEventHistory_af286a3887c4925a37eadc8018d584aa3}\label{classKite_1_1RoutingEventHistory_af286a3887c4925a37eadc8018d584aa3}} 
\index{Kite\+::\+Routing\+Event\+History@{Kite\+::\+Routing\+Event\+History}!Routing\+Event\+History@{Routing\+Event\+History}}
\index{Routing\+Event\+History@{Routing\+Event\+History}!Kite\+::\+Routing\+Event\+History@{Kite\+::\+Routing\+Event\+History}}
\paragraph{\texorpdfstring{Routing\+Event\+History()}{RoutingEventHistory()}}
{\footnotesize\ttfamily \mbox{\hyperlink{classKite_1_1RoutingEventHistory}{Routing\+Event\+History}} (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}

Construct an empty \mbox{\hyperlink{classKite_1_1RoutingEventHistory}{Routing\+Event\+History}}. \mbox{\Hypertarget{classKite_1_1RoutingEventHistory_a5a7671b3e27e93b018cf407a7eba9ce7}\label{classKite_1_1RoutingEventHistory_a5a7671b3e27e93b018cf407a7eba9ce7}} 
\index{Kite\+::\+Routing\+Event\+History@{Kite\+::\+Routing\+Event\+History}!````~Routing\+Event\+History@{$\sim$\+Routing\+Event\+History}}
\index{````~Routing\+Event\+History@{$\sim$\+Routing\+Event\+History}!Kite\+::\+Routing\+Event\+History@{Kite\+::\+Routing\+Event\+History}}
\paragraph{\texorpdfstring{$\sim$\+Routing\+Event\+History()}{~RoutingEventHistory()}}
{\footnotesize\ttfamily $\sim$\mbox{\hyperlink{classKite_1_1RoutingEventHistory}{Routing\+Event\+History}} (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}

Delete a \mbox{\hyperlink{classKite_1_1RoutingEventHistory}{Routing\+Event\+History}}.

\begin{DoxyParagraph}{Remark\+: The deletion of this object triggers the deletion of}
all the \mbox{\hyperlink{classKite_1_1RoutingEvent}{Routing\+Event}} that are referenced in it. 
\end{DoxyParagraph}


\subsubsection{Member Function Documentation}
\mbox{\Hypertarget{classKite_1_1RoutingEventHistory_a644718bb2fb240de962dc3c9a1fdf0dc}\label{classKite_1_1RoutingEventHistory_a644718bb2fb240de962dc3c9a1fdf0dc}} 
\index{Kite\+::\+Routing\+Event\+History@{Kite\+::\+Routing\+Event\+History}!empty@{empty}}
\index{empty@{empty}!Kite\+::\+Routing\+Event\+History@{Kite\+::\+Routing\+Event\+History}}
\paragraph{\texorpdfstring{empty()}{empty()}}
{\footnotesize\ttfamily bool empty (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}}

{\bfseries Returns\+:} {\bfseries true} if the history is empty. \mbox{\Hypertarget{classKite_1_1RoutingEventHistory_a259cb5a711406a8c3e5d937eb9350cca}\label{classKite_1_1RoutingEventHistory_a259cb5a711406a8c3e5d937eb9350cca}} 
\index{Kite\+::\+Routing\+Event\+History@{Kite\+::\+Routing\+Event\+History}!size@{size}}
\index{size@{size}!Kite\+::\+Routing\+Event\+History@{Kite\+::\+Routing\+Event\+History}}
\paragraph{\texorpdfstring{size()}{size()}}
{\footnotesize\ttfamily size\+\_\+t size (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const\hspace{0.3cm}{\ttfamily [inline]}}

{\bfseries Returns\+:} the number of events in the history. 

Referenced by Routing\+Event\+History\+::get\+Nth(), and Routing\+Event\+History\+::get\+R\+Nth().

\mbox{\Hypertarget{classKite_1_1RoutingEventHistory_a81fbd6a845cb991db9f03f13edb14a50}\label{classKite_1_1RoutingEventHistory_a81fbd6a845cb991db9f03f13edb14a50}} 
\index{Kite\+::\+Routing\+Event\+History@{Kite\+::\+Routing\+Event\+History}!get\+Nth@{get\+Nth}}
\index{get\+Nth@{get\+Nth}!Kite\+::\+Routing\+Event\+History@{Kite\+::\+Routing\+Event\+History}}
\paragraph{\texorpdfstring{get\+Nth()}{getNth()}}
{\footnotesize\ttfamily \mbox{\hyperlink{classKite_1_1RoutingEvent}{Routing\+Event}} $\ast$ get\+Nth (\begin{DoxyParamCaption}\item[{size\+\_\+t}]{pos }\end{DoxyParamCaption}) const}

{\bfseries Returns\+:} The event at index {\ttfamily pos} from the beginning of the history ({\ttfamily N\+U\+LL} if {\ttfamily pos} exeed the size). \mbox{\Hypertarget{classKite_1_1RoutingEventHistory_abf422c3119f0b121ce124aff979eafff}\label{classKite_1_1RoutingEventHistory_abf422c3119f0b121ce124aff979eafff}} 
\index{Kite\+::\+Routing\+Event\+History@{Kite\+::\+Routing\+Event\+History}!get\+R\+Nth@{get\+R\+Nth}}
\index{get\+R\+Nth@{get\+R\+Nth}!Kite\+::\+Routing\+Event\+History@{Kite\+::\+Routing\+Event\+History}}
\paragraph{\texorpdfstring{get\+R\+Nth()}{getRNth()}}
{\footnotesize\ttfamily \mbox{\hyperlink{classKite_1_1RoutingEvent}{Routing\+Event}} $\ast$ get\+R\+Nth (\begin{DoxyParamCaption}\item[{size\+\_\+t}]{pos }\end{DoxyParamCaption}) const}

{\bfseries Returns\+:} The event at index {\ttfamily pos} from the end of the history ({\ttfamily N\+U\+LL} if {\ttfamily pos} exeed the size). 

Referenced by Segment\+Fsm\+::conflict\+Solve\+By\+History().

\mbox{\Hypertarget{classKite_1_1RoutingEventHistory_ac802427673567526d06af911e94f7216}\label{classKite_1_1RoutingEventHistory_ac802427673567526d06af911e94f7216}} 
\index{Kite\+::\+Routing\+Event\+History@{Kite\+::\+Routing\+Event\+History}!push@{push}}
\index{push@{push}!Kite\+::\+Routing\+Event\+History@{Kite\+::\+Routing\+Event\+History}}
\paragraph{\texorpdfstring{push()}{push()}}
{\footnotesize\ttfamily void push (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classKite_1_1RoutingEvent}{Routing\+Event}} $\ast$}]{event }\end{DoxyParamCaption})}

Push a new \mbox{\hyperlink{classKite_1_1RoutingEvent}{Routing\+Event}} in the history. 

Referenced by Routing\+Event\+::process().

\mbox{\Hypertarget{classKite_1_1RoutingEventHistory_ac8bb3912a3ce86b15842e79d0b421204}\label{classKite_1_1RoutingEventHistory_ac8bb3912a3ce86b15842e79d0b421204}} 
\index{Kite\+::\+Routing\+Event\+History@{Kite\+::\+Routing\+Event\+History}!clear@{clear}}
\index{clear@{clear}!Kite\+::\+Routing\+Event\+History@{Kite\+::\+Routing\+Event\+History}}
\paragraph{\texorpdfstring{clear()}{clear()}}
{\footnotesize\ttfamily void clear (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}

Clear the history, also remove the \mbox{\hyperlink{classKite_1_1RoutingEvent}{Routing\+Event}} that are pointed to. 

Referenced by Routing\+Event\+History\+::$\sim$\+Routing\+Event\+History().



The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
\item 
Routing\+Event\+History.\+h\item 
Routing\+Event\+History.\+cpp\item 
Routing\+Event\+History.\+dox\end{DoxyCompactItemize}
