\doxysection{osmo\+\_\+twjit\+\_\+stats Struct Reference}
\label{structosmo__twjit__stats}\index{osmo\_twjit\_stats@{osmo\_twjit\_stats}}


Stats collected during the lifetime of a twjit instance.  




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

\doxysubsubsection*{Data Fields}
\begin{DoxyCompactItemize}
\item 
\label{structosmo__twjit__stats_ad3a1942553951b2ee27bfc61a259f6f3} 
uint32\+\_\+t {\bfseries rx\+\_\+packets}
\item 
\label{structosmo__twjit__stats_ac869870f55f39de04de6a51bc6f41239} 
uint32\+\_\+t {\bfseries delivered\+\_\+pkt}
\item 
\label{structosmo__twjit__stats_a5b6d73297b3f5fe52c89d5e203b8ebb7} 
uint32\+\_\+t {\bfseries handovers\+\_\+in}
\item 
\label{structosmo__twjit__stats_a126ccbab6f2cb942784214bb89e2a5aa} 
uint32\+\_\+t {\bfseries handovers\+\_\+out}
\item 
\label{structosmo__twjit__stats_a17df191723556a6e173a3187c8c3ec35} 
uint32\+\_\+t {\bfseries marker\+\_\+resets}
\item 
\label{structosmo__twjit__stats_af34c526a4e1519d961535b3266a33d23} 
uint32\+\_\+t {\bfseries too\+\_\+old}
\item 
\label{structosmo__twjit__stats_a2fa5678f70d183262ca16e7159d12f32} 
uint32\+\_\+t {\bfseries underruns}
\item 
\label{structosmo__twjit__stats_aabc6d092d3ff4461d0f79daf9b52f262} 
uint32\+\_\+t {\bfseries ho\+\_\+underruns}
\item 
\label{structosmo__twjit__stats_af99983f904b9f3fe0eb8fba33641bea1} 
uint32\+\_\+t {\bfseries output\+\_\+gaps}
\item 
\label{structosmo__twjit__stats_a4fa546e41b87ea09f160c72268dbc995} 
uint32\+\_\+t {\bfseries thinning\+\_\+drops}
\item 
\label{structosmo__twjit__stats_aacdc86134fcb9e9a0e16ce37156a6eb8} 
uint32\+\_\+t {\bfseries bad\+\_\+packets}
\item 
\label{structosmo__twjit__stats_ad3f43569886cf0e9a73513daabb9b68b} 
uint32\+\_\+t {\bfseries duplicate\+\_\+ts}
\item 
\label{structosmo__twjit__stats_a82ef6faa18e15089e33616b910784264} 
uint32\+\_\+t {\bfseries ssrc\+\_\+changes}
\item 
\label{structosmo__twjit__stats_af799c7c5dd0bdf26c75b22dc8d155569} 
uint32\+\_\+t {\bfseries seq\+\_\+skips}
\item 
\label{structosmo__twjit__stats_ab7df5ec0bb820b5323abb319758a9b0a} 
uint32\+\_\+t {\bfseries seq\+\_\+backwards}
\item 
\label{structosmo__twjit__stats_a6d8e0db87933c4236e4df72ce5ebaecb} 
uint32\+\_\+t {\bfseries seq\+\_\+repeats}
\item 
\label{structosmo__twjit__stats_a36519fe2a5fc006ef94d16ea6b9d2f94} 
uint32\+\_\+t {\bfseries intentional\+\_\+gaps}
\item 
\label{structosmo__twjit__stats_a26b1c5e10eaf6eb0229f0ef914082218} 
uint32\+\_\+t {\bfseries ts\+\_\+resets}
\item 
\label{structosmo__twjit__stats_acc01e79b1d381f2887686414e5e29025} 
uint32\+\_\+t {\bfseries jitter\+\_\+max}
\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
Stats collected during the lifetime of a twjit instance. 

For a detailed description of each of these counters, see Chapter 3 of twrtp guide document.

This stats structure is never allocated or accessed in a writable manner by applications; instead it is allocated inside the library as part of opaque struct osmo\+\_\+twjit, while applications are given const pointers to these structs. 

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