\hypertarget{classDelayQueue}{
\section{DelayQueue$<$ \_\-Entry $>$ Class Template Reference}
\label{classDelayQueue}\index{DelayQueue@{DelayQueue}}
}


Entries can be added to \hyperlink{protocolthe-p}{the} queue at any rate.  




{\ttfamily \#include $<$delay\_\-queue.hh$>$}

\subsection*{Public Types}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classDelayQueue_a067f84d2ac31738d40e5b18083ea9bee}{
typedef XorpCallback1$<$ void, \_\-Entry $>$::RefPtr {\bfseries DelayCallback}}
\label{classDelayQueue_a067f84d2ac31738d40e5b18083ea9bee}

\end{DoxyCompactItemize}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classDelayQueue_ae180088b0e0b846b19676f441de83996}{
{\bfseries DelayQueue} (\hyperlink{classEventLoop}{EventLoop} \&eventloop, uint32\_\-t delay, DelayCallback forward)}
\label{classDelayQueue_ae180088b0e0b846b19676f441de83996}

\item 
void \hyperlink{classDelayQueue_a90521c4758862a4ce76d30a53a997c03}{add} (\_\-Entry entry)
\begin{DoxyCompactList}\small\item\em Add an entry to \hyperlink{protocolthe-p}{the} queue. \item\end{DoxyCompactList}\item 
\hypertarget{classDelayQueue_a740dcaeee120c398a5da3cf3595b9d70}{
void \hyperlink{classDelayQueue_a740dcaeee120c398a5da3cf3595b9d70}{fire} ()}
\label{classDelayQueue_a740dcaeee120c398a5da3cf3595b9d70}

\begin{DoxyCompactList}\small\item\em Start \hyperlink{protocolthe-p}{the} timer running but don't add anything to \hyperlink{protocolthe-p}{the} queue. \item\end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Private Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classDelayQueue_a7241d7a55614b7371061ea72452352f6}{
void \hyperlink{classDelayQueue_a7241d7a55614b7371061ea72452352f6}{next} ()}
\label{classDelayQueue_a7241d7a55614b7371061ea72452352f6}

\begin{DoxyCompactList}\small\item\em Invoked from \hyperlink{protocolthe-p}{the} timer to take \hyperlink{protocolthe-p}{the} next entry from \hyperlink{protocolthe-p}{the} queue. \item\end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Private Attributes}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classDelayQueue_ae6895352827ef1394e33b140aa27a390}{
\hyperlink{classEventLoop}{EventLoop} \& {\bfseries \_\-eventloop}}
\label{classDelayQueue_ae6895352827ef1394e33b140aa27a390}

\item 
\hypertarget{classDelayQueue_a1e2ea719005980e41a7a22770f46f985}{
deque$<$ \_\-Entry $>$ {\bfseries \_\-queue}}
\label{classDelayQueue_a1e2ea719005980e41a7a22770f46f985}

\item 
\hypertarget{classDelayQueue_a06053ffc4c09b906f524c290f6f63ead}{
const uint32\_\-t {\bfseries \_\-delay}}
\label{classDelayQueue_a06053ffc4c09b906f524c290f6f63ead}

\item 
\hypertarget{classDelayQueue_ab9478508ebf4fa9a5304858ada8b5843}{
DelayCallback {\bfseries \_\-forward}}
\label{classDelayQueue_ab9478508ebf4fa9a5304858ada8b5843}

\item 
\hypertarget{classDelayQueue_abb04cfeaef2adfe8a778628a518baf18}{
\hyperlink{classXorpTimer}{XorpTimer} {\bfseries \_\-timer}}
\label{classDelayQueue_abb04cfeaef2adfe8a778628a518baf18}

\end{DoxyCompactItemize}


\subsection{Detailed Description}
\subsubsection*{template$<$typename \_\-Entry$>$ class DelayQueue$<$ \_\-Entry $>$}

Entries can be added to \hyperlink{protocolthe-p}{the} queue at any rate. The callback is invoked at \hyperlink{protocolthe-p}{the} specified period to remove an entry from \hyperlink{protocolthe-p}{the} queue. 

\subsection{Member Function Documentation}
\hypertarget{classDelayQueue_a90521c4758862a4ce76d30a53a997c03}{
\index{DelayQueue@{DelayQueue}!add@{add}}
\index{add@{add}!DelayQueue@{DelayQueue}}
\subsubsection[{add}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename \_\-Entry$>$ void {\bf DelayQueue}$<$ \_\-Entry $>$::add (
\begin{DoxyParamCaption}
\item[{\_\-Entry}]{entry}
\end{DoxyParamCaption}
)}}
\label{classDelayQueue_a90521c4758862a4ce76d30a53a997c03}


Add an entry to \hyperlink{protocolthe-p}{the} queue. 

If \hyperlink{protocolthe-p}{the} entry is already on \hyperlink{protocolthe-p}{the} queue it is not added again. 

The documentation for this class was generated from the following file:\begin{DoxyCompactItemize}
\item 
/home/greearb/git/xorp.ct.github/xorp/ospf/delay\_\-queue.hh\end{DoxyCompactItemize}
