\doxysection{include/osmocom/gsm/protocol/gsm\+\_\+04\+\_\+12.h File Reference}
\label{gsm__04__12_8h}\index{include/osmocom/gsm/protocol/gsm\_04\_12.h@{include/osmocom/gsm/protocol/gsm\_04\_12.h}}


GSM TS 04.\+12 definitions for Short Message Service Cell Broadcast.  


{\ttfamily \#include $<$stdint.\+h$>$}\newline
{\ttfamily \#include $<$osmocom/core/endian.\+h$>$}\newline
\doxysubsection*{Data Structures}
\begin{DoxyCompactItemize}
\item 
struct \textbf{ gsm412\+\_\+block\+\_\+type}
\item 
struct \textbf{ gsm412\+\_\+sched\+\_\+msg}
\end{DoxyCompactItemize}
\doxysubsection*{Macros}
\begin{DoxyCompactItemize}
\item 
\#define \textbf{ GSM412\+\_\+\+MSG\+\_\+\+LEN}~88 /$\ast$ TS 04.\+12 Section 3.\+1 $\ast$/
\item 
\#define \textbf{ GSM412\+\_\+\+BLOCK\+\_\+\+LEN}~22 /$\ast$ TS 04.\+12 Section 3.\+1 $\ast$/
\item 
\#define \textbf{ GSM412\+\_\+\+SEQ\+\_\+\+FST\+\_\+\+BLOCK}~0x0
\item 
\#define \textbf{ GSM412\+\_\+\+SEQ\+\_\+\+SND\+\_\+\+BLOCK}~0x1
\item 
\#define \textbf{ GSM412\+\_\+\+SEQ\+\_\+\+TRD\+\_\+\+BLOCK}~0x2
\item 
\#define \textbf{ GSM412\+\_\+\+SEQ\+\_\+\+FTH\+\_\+\+BLOCK}~0x3
\item 
\#define \textbf{ GSM412\+\_\+\+SEQ\+\_\+\+FST\+\_\+\+SCHED\+\_\+\+BLOCK}~0x8
\item 
\#define \textbf{ GSM412\+\_\+\+SEQ\+\_\+\+NULL\+\_\+\+MSG}~0xf
\end{DoxyCompactItemize}
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
\item 
struct \textbf{ gsm412\+\_\+block\+\_\+type} \textbf{ \+\_\+\+\_\+attribute\+\_\+\+\_\+} ((packed))
\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
GSM TS 04.\+12 definitions for Short Message Service Cell Broadcast. 



\doxysubsection{Macro Definition Documentation}
\mbox{\label{gsm__04__12_8h_a3bb7f25d9feba1de275e4682a2cd1e5c}} 
\index{gsm\_04\_12.h@{gsm\_04\_12.h}!GSM412\_BLOCK\_LEN@{GSM412\_BLOCK\_LEN}}
\index{GSM412\_BLOCK\_LEN@{GSM412\_BLOCK\_LEN}!gsm\_04\_12.h@{gsm\_04\_12.h}}
\doxysubsubsection{GSM412\_BLOCK\_LEN}
{\footnotesize\ttfamily \#define GSM412\+\_\+\+BLOCK\+\_\+\+LEN~22 /$\ast$ TS 04.\+12 Section 3.\+1 $\ast$/}

\mbox{\label{gsm__04__12_8h_ac8c17102e0b83e64cd3cd7fac522ae03}} 
\index{gsm\_04\_12.h@{gsm\_04\_12.h}!GSM412\_MSG\_LEN@{GSM412\_MSG\_LEN}}
\index{GSM412\_MSG\_LEN@{GSM412\_MSG\_LEN}!gsm\_04\_12.h@{gsm\_04\_12.h}}
\doxysubsubsection{GSM412\_MSG\_LEN}
{\footnotesize\ttfamily \#define GSM412\+\_\+\+MSG\+\_\+\+LEN~88 /$\ast$ TS 04.\+12 Section 3.\+1 $\ast$/}

\mbox{\label{gsm__04__12_8h_ae105487a5689e15be1eff50cff8e967f}} 
\index{gsm\_04\_12.h@{gsm\_04\_12.h}!GSM412\_SEQ\_FST\_BLOCK@{GSM412\_SEQ\_FST\_BLOCK}}
\index{GSM412\_SEQ\_FST\_BLOCK@{GSM412\_SEQ\_FST\_BLOCK}!gsm\_04\_12.h@{gsm\_04\_12.h}}
\doxysubsubsection{GSM412\_SEQ\_FST\_BLOCK}
{\footnotesize\ttfamily \#define GSM412\+\_\+\+SEQ\+\_\+\+FST\+\_\+\+BLOCK~0x0}

\mbox{\label{gsm__04__12_8h_a004d5a28da23b304875a8e4721ffe252}} 
\index{gsm\_04\_12.h@{gsm\_04\_12.h}!GSM412\_SEQ\_FST\_SCHED\_BLOCK@{GSM412\_SEQ\_FST\_SCHED\_BLOCK}}
\index{GSM412\_SEQ\_FST\_SCHED\_BLOCK@{GSM412\_SEQ\_FST\_SCHED\_BLOCK}!gsm\_04\_12.h@{gsm\_04\_12.h}}
\doxysubsubsection{GSM412\_SEQ\_FST\_SCHED\_BLOCK}
{\footnotesize\ttfamily \#define GSM412\+\_\+\+SEQ\+\_\+\+FST\+\_\+\+SCHED\+\_\+\+BLOCK~0x8}

\mbox{\label{gsm__04__12_8h_a0303a9c6a9c5560868f718bfa4d98c66}} 
\index{gsm\_04\_12.h@{gsm\_04\_12.h}!GSM412\_SEQ\_FTH\_BLOCK@{GSM412\_SEQ\_FTH\_BLOCK}}
\index{GSM412\_SEQ\_FTH\_BLOCK@{GSM412\_SEQ\_FTH\_BLOCK}!gsm\_04\_12.h@{gsm\_04\_12.h}}
\doxysubsubsection{GSM412\_SEQ\_FTH\_BLOCK}
{\footnotesize\ttfamily \#define GSM412\+\_\+\+SEQ\+\_\+\+FTH\+\_\+\+BLOCK~0x3}

\mbox{\label{gsm__04__12_8h_a898992c2ef60fe374aa080373ab2cd84}} 
\index{gsm\_04\_12.h@{gsm\_04\_12.h}!GSM412\_SEQ\_NULL\_MSG@{GSM412\_SEQ\_NULL\_MSG}}
\index{GSM412\_SEQ\_NULL\_MSG@{GSM412\_SEQ\_NULL\_MSG}!gsm\_04\_12.h@{gsm\_04\_12.h}}
\doxysubsubsection{GSM412\_SEQ\_NULL\_MSG}
{\footnotesize\ttfamily \#define GSM412\+\_\+\+SEQ\+\_\+\+NULL\+\_\+\+MSG~0xf}

\mbox{\label{gsm__04__12_8h_a20e85a794005fc5cf592bfc3fc299f3c}} 
\index{gsm\_04\_12.h@{gsm\_04\_12.h}!GSM412\_SEQ\_SND\_BLOCK@{GSM412\_SEQ\_SND\_BLOCK}}
\index{GSM412\_SEQ\_SND\_BLOCK@{GSM412\_SEQ\_SND\_BLOCK}!gsm\_04\_12.h@{gsm\_04\_12.h}}
\doxysubsubsection{GSM412\_SEQ\_SND\_BLOCK}
{\footnotesize\ttfamily \#define GSM412\+\_\+\+SEQ\+\_\+\+SND\+\_\+\+BLOCK~0x1}

\mbox{\label{gsm__04__12_8h_a6a3957b8c1305be9daafd17bf18a24dd}} 
\index{gsm\_04\_12.h@{gsm\_04\_12.h}!GSM412\_SEQ\_TRD\_BLOCK@{GSM412\_SEQ\_TRD\_BLOCK}}
\index{GSM412\_SEQ\_TRD\_BLOCK@{GSM412\_SEQ\_TRD\_BLOCK}!gsm\_04\_12.h@{gsm\_04\_12.h}}
\doxysubsubsection{GSM412\_SEQ\_TRD\_BLOCK}
{\footnotesize\ttfamily \#define GSM412\+\_\+\+SEQ\+\_\+\+TRD\+\_\+\+BLOCK~0x2}

