\doxysection{include/osmocom/core/it\+\_\+q.h File Reference}
\label{it__q_8h}\index{include/osmocom/core/it\_q.h@{include/osmocom/core/it\_q.h}}
{\ttfamily \#include $<$osmocom/core/linuxlist.\+h$>$}\newline
{\ttfamily \#include $<$osmocom/core/select.\+h$>$}\newline
{\ttfamily \#include $<$pthread.\+h$>$}\newline
\doxysubsection*{Data Structures}
\begin{DoxyCompactItemize}
\item 
struct \textbf{ osmo\+\_\+it\+\_\+q}
\begin{DoxyCompactList}\small\item\em One instance of an inter-\/thread queue. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection*{Macros}
\begin{DoxyCompactItemize}
\item 
\#define \textbf{ osmo\+\_\+it\+\_\+q\+\_\+enqueue}(queue,  item,  member)~ \textbf{ \+\_\+osmo\+\_\+it\+\_\+q\+\_\+enqueue}(queue, \&(item)-\/$>$member)
\item 
\#define \textbf{ osmo\+\_\+it\+\_\+q\+\_\+dequeue}(queue,  item,  member)
\end{DoxyCompactItemize}
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
\item 
struct \textbf{ osmo\+\_\+it\+\_\+q} $\ast$ \textbf{ osmo\+\_\+it\+\_\+q\+\_\+by\+\_\+name} (const char $\ast$\textbf{ name})
\item 
int \textbf{ \+\_\+osmo\+\_\+it\+\_\+q\+\_\+enqueue} (struct \textbf{ osmo\+\_\+it\+\_\+q} $\ast$queue, struct \textbf{ llist\+\_\+head} $\ast$item)
\item 
struct \textbf{ llist\+\_\+head} $\ast$ \textbf{ \+\_\+osmo\+\_\+it\+\_\+q\+\_\+dequeue} (struct \textbf{ osmo\+\_\+it\+\_\+q} $\ast$queue)
\item 
struct \textbf{ osmo\+\_\+it\+\_\+q} $\ast$ \textbf{ osmo\+\_\+it\+\_\+q\+\_\+alloc} (void $\ast$ctx, const char $\ast$\textbf{ name}, unsigned int max\+\_\+length, void($\ast$read\+\_\+cb)(struct \textbf{ osmo\+\_\+it\+\_\+q} $\ast$q, struct \textbf{ llist\+\_\+head} $\ast$item), void $\ast$\textbf{ data})
\item 
void \textbf{ osmo\+\_\+it\+\_\+q\+\_\+destroy} (struct \textbf{ osmo\+\_\+it\+\_\+q} $\ast$q)
\item 
void \textbf{ osmo\+\_\+it\+\_\+q\+\_\+flush} (struct \textbf{ osmo\+\_\+it\+\_\+q} $\ast$q)
\end{DoxyCompactItemize}
