\doxysection{osmo\+\_\+timer\+\_\+list Struct Reference}
\label{structosmo__timer__list}\index{osmo\_timer\_list@{osmo\_timer\_list}}


A structure representing a single instance of a timer.  




{\ttfamily \#include $<$timer.\+h$>$}

\doxysubsection*{Data Fields}
\begin{DoxyCompactItemize}
\item 
struct \textbf{ rb\+\_\+node} \textbf{ node}
\begin{DoxyCompactList}\small\item\em rb-\/tree node header \end{DoxyCompactList}\item 
struct \textbf{ llist\+\_\+head} \textbf{ list}
\begin{DoxyCompactList}\small\item\em internal list header \end{DoxyCompactList}\item 
struct timeval \textbf{ timeout}
\begin{DoxyCompactList}\small\item\em expiration time \end{DoxyCompactList}\item 
unsigned int \textbf{ active}\+: 1
\begin{DoxyCompactList}\small\item\em is it active? \end{DoxyCompactList}\item 
void($\ast$ \textbf{ cb} )(void $\ast$)
\begin{DoxyCompactList}\small\item\em call-\/back called at timeout \end{DoxyCompactList}\item 
void $\ast$ \textbf{ data}
\begin{DoxyCompactList}\small\item\em user data for callback \end{DoxyCompactList}\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
A structure representing a single instance of a timer. 

\doxysubsection{Field Documentation}
\mbox{\label{structosmo__timer__list_a6f1145859e880c7ec66059cdb3654c7e}} 
\index{osmo\_timer\_list@{osmo\_timer\_list}!active@{active}}
\index{active@{active}!osmo\_timer\_list@{osmo\_timer\_list}}
\doxysubsubsection{active}
{\footnotesize\ttfamily unsigned int osmo\+\_\+timer\+\_\+list\+::active}



is it active? 



Referenced by \textbf{ osmo\+\_\+timer\+\_\+add()}, \textbf{ osmo\+\_\+timer\+\_\+del()}, \textbf{ osmo\+\_\+timer\+\_\+pending()}, and \textbf{ state\+\_\+chg()}.

\mbox{\label{structosmo__timer__list_ab079ec5ef59f6f394b94cd46088ec6f6}} 
\index{osmo\_timer\_list@{osmo\_timer\_list}!cb@{cb}}
\index{cb@{cb}!osmo\_timer\_list@{osmo\_timer\_list}}
\doxysubsubsection{cb}
{\footnotesize\ttfamily void($\ast$ osmo\+\_\+timer\+\_\+list\+::cb) (void $\ast$)}



call-\/back called at timeout 



Referenced by \textbf{ osmo\+\_\+timer\+\_\+setup()}, and \textbf{ osmo\+\_\+timers\+\_\+update()}.

\mbox{\label{structosmo__timer__list_ab18c20ea7adeb5e6761db0d3ea7d9e7e}} 
\index{osmo\_timer\_list@{osmo\_timer\_list}!data@{data}}
\index{data@{data}!osmo\_timer\_list@{osmo\_timer\_list}}
\doxysubsubsection{data}
{\footnotesize\ttfamily void$\ast$ osmo\+\_\+timer\+\_\+list\+::data}



user data for callback 



Referenced by \textbf{ osmo\+\_\+timer\+\_\+setup()}.

\mbox{\label{structosmo__timer__list_a3d224b460d85ec877b42f3a9dc66686a}} 
\index{osmo\_timer\_list@{osmo\_timer\_list}!list@{list}}
\index{list@{list}!osmo\_timer\_list@{osmo\_timer\_list}}
\doxysubsubsection{list}
{\footnotesize\ttfamily struct \textbf{ llist\+\_\+head} osmo\+\_\+timer\+\_\+list\+::list}



internal list header 



Referenced by \textbf{ osmo\+\_\+timer\+\_\+add()}, and \textbf{ osmo\+\_\+timer\+\_\+del()}.

\mbox{\label{structosmo__timer__list_aab2a7671fc03859801d79cb02210d93a}} 
\index{osmo\_timer\_list@{osmo\_timer\_list}!node@{node}}
\index{node@{node}!osmo\_timer\_list@{osmo\_timer\_list}}
\doxysubsubsection{node}
{\footnotesize\ttfamily struct \textbf{ rb\+\_\+node} osmo\+\_\+timer\+\_\+list\+::node}



rb-\/tree node header 



Referenced by \textbf{ \+\_\+\+\_\+add\+\_\+timer()}, and \textbf{ osmo\+\_\+timer\+\_\+del()}.

\mbox{\label{structosmo__timer__list_ab260b34f66b5a12a0059eda6c729379b}} 
\index{osmo\_timer\_list@{osmo\_timer\_list}!timeout@{timeout}}
\index{timeout@{timeout}!osmo\_timer\_list@{osmo\_timer\_list}}
\doxysubsubsection{timeout}
{\footnotesize\ttfamily struct timeval osmo\+\_\+timer\+\_\+list\+::timeout}



expiration time 



Referenced by \textbf{ \+\_\+\+\_\+add\+\_\+timer()}, \textbf{ osmo\+\_\+timer\+\_\+remaining()}, \textbf{ osmo\+\_\+timer\+\_\+schedule()}, \textbf{ osmo\+\_\+timers\+\_\+prepare()}, and \textbf{ osmo\+\_\+timers\+\_\+update()}.



The documentation for this struct was generated from the following file\+:\begin{DoxyCompactItemize}
\item 
include/osmocom/core/\textbf{ timer.\+h}\end{DoxyCompactItemize}
