\doxysection{include/osmocom/gsm/protocol/gsm\+\_\+23\+\_\+032.h File Reference}
\label{gsm__23__032_8h}\index{include/osmocom/gsm/protocol/gsm\_23\_032.h@{include/osmocom/gsm/protocol/gsm\_23\_032.h}}
{\ttfamily \#include $<$stdint.\+h$>$}\newline
{\ttfamily \#include $<$osmocom/core/endian.\+h$>$}\newline
\doxysubsection*{Data Structures}
\begin{DoxyCompactItemize}
\item 
struct \textbf{ gad\+\_\+raw\+\_\+head}
\item 
struct \textbf{ gad\+\_\+raw\+\_\+ell\+\_\+point}
\item 
struct \textbf{ gad\+\_\+raw\+\_\+ell\+\_\+point\+\_\+unc\+\_\+circle}
\item 
struct \textbf{ gad\+\_\+raw\+\_\+ell\+\_\+point\+\_\+unc\+\_\+ellipse}
\item 
struct \textbf{ gad\+\_\+raw\+\_\+polygon}
\item 
struct \textbf{ gad\+\_\+raw\+\_\+ell\+\_\+point\+\_\+alt}
\item 
struct \textbf{ gad\+\_\+raw\+\_\+ell\+\_\+point\+\_\+alt\+\_\+unc\+\_\+ell}
\item 
struct \textbf{ gad\+\_\+raw\+\_\+ell\+\_\+arc}
\item 
struct \textbf{ gad\+\_\+raw\+\_\+ha\+\_\+ell\+\_\+point\+\_\+unc\+\_\+ell}
\item 
struct \textbf{ gad\+\_\+raw\+\_\+ha\+\_\+ell\+\_\+point\+\_\+alt\+\_\+unc\+\_\+ell}
\item 
union \textbf{ gad\+\_\+raw}
\begin{DoxyCompactList}\small\item\em GAD PDU in network-\/byte-\/order according to 3GPP TS 23.\+032 GAD\+: Universal Geographical Area Description. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection*{Enumerations}
\begin{DoxyCompactItemize}
\item 
enum \textbf{ gad\+\_\+type} \{ \newline
\textbf{ GAD\+\_\+\+TYPE\+\_\+\+ELL\+\_\+\+POINT} = 0
, \newline
\textbf{ GAD\+\_\+\+TYPE\+\_\+\+ELL\+\_\+\+POINT\+\_\+\+UNC\+\_\+\+CIRCLE} = 1
, \newline
\textbf{ GAD\+\_\+\+TYPE\+\_\+\+ELL\+\_\+\+POINT\+\_\+\+UNC\+\_\+\+ELLIPSE} = 3
, \newline
\textbf{ GAD\+\_\+\+TYPE\+\_\+\+POLYGON} = 5
, \newline
\textbf{ GAD\+\_\+\+TYPE\+\_\+\+ELL\+\_\+\+POINT\+\_\+\+ALT} = 8
, \newline
\textbf{ GAD\+\_\+\+TYPE\+\_\+\+ELL\+\_\+\+POINT\+\_\+\+ALT\+\_\+\+UNC\+\_\+\+ELL} = 9
, \newline
\textbf{ GAD\+\_\+\+TYPE\+\_\+\+ELL\+\_\+\+ARC} = 10
, \newline
\textbf{ GAD\+\_\+\+TYPE\+\_\+\+HA\+\_\+\+ELL\+\_\+\+POINT\+\_\+\+UNC\+\_\+\+ELLIPSE} = 11
, \newline
\textbf{ GAD\+\_\+\+TYPE\+\_\+\+HA\+\_\+\+ELL\+\_\+\+POINT\+\_\+\+ALT\+\_\+\+UNC\+\_\+\+ELL} = 12
 \}
\end{DoxyCompactItemize}
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
\item 
struct \textbf{ gad\+\_\+raw\+\_\+head} \textbf{ \+\_\+\+\_\+attribute\+\_\+\+\_\+} ((packed))
\end{DoxyCompactItemize}
\doxysubsection*{Variables}
\begin{DoxyCompactItemize}
\item 
struct \textbf{ gad\+\_\+raw\+\_\+head} \textbf{ h}
\begin{DoxyCompactList}\small\item\em type = GAD\+\_\+\+TYPE\+\_\+\+ELL\+\_\+\+POINT \end{DoxyCompactList}\item 
uint8\+\_\+t \textbf{ lat} [3]
\item 
uint8\+\_\+t \textbf{ lon} [3]
\item 
\begin{tabbing}
xx\=xx\=xx\=xx\=xx\=xx\=xx\=xx\=xx\=\kill
struct \{\\
\>uint8\_t \textbf{ lat} [3]\\
\>uint8\_t \textbf{ lon} [3]\\
\} \textbf{ point} [15]\\

\end{tabbing}\item 
uint8\+\_\+t \textbf{ alt} [2]
\item 
struct \textbf{ gad\+\_\+raw\+\_\+ell\+\_\+point} \textbf{ ell\+\_\+point}
\item 
struct \textbf{ gad\+\_\+raw\+\_\+ell\+\_\+point\+\_\+unc\+\_\+circle} \textbf{ ell\+\_\+point\+\_\+unc\+\_\+circle}
\item 
struct \textbf{ gad\+\_\+raw\+\_\+ell\+\_\+point\+\_\+unc\+\_\+ellipse} \textbf{ ell\+\_\+point\+\_\+unc\+\_\+ellipse}
\item 
struct \textbf{ gad\+\_\+raw\+\_\+polygon} \textbf{ polygon}
\item 
struct \textbf{ gad\+\_\+raw\+\_\+ell\+\_\+point\+\_\+alt} \textbf{ ell\+\_\+point\+\_\+alt}
\item 
struct \textbf{ gad\+\_\+raw\+\_\+ell\+\_\+point\+\_\+alt\+\_\+unc\+\_\+ell} \textbf{ ell\+\_\+point\+\_\+alt\+\_\+unc\+\_\+ell}
\item 
struct \textbf{ gad\+\_\+raw\+\_\+ell\+\_\+arc} \textbf{ ell\+\_\+arc}
\item 
struct \textbf{ gad\+\_\+raw\+\_\+ha\+\_\+ell\+\_\+point\+\_\+unc\+\_\+ell} \textbf{ ha\+\_\+ell\+\_\+point\+\_\+unc\+\_\+ell}
\item 
struct \textbf{ gad\+\_\+raw\+\_\+ha\+\_\+ell\+\_\+point\+\_\+alt\+\_\+unc\+\_\+ell} \textbf{ ha\+\_\+ell\+\_\+point\+\_\+alt\+\_\+unc\+\_\+ell}
\end{DoxyCompactItemize}


\doxysubsection{Variable Documentation}
\mbox{\label{gsm__23__032_8h_adce9e8efbb03600c91fbad708dc25a71}} 
\index{gsm\_23\_032.h@{gsm\_23\_032.h}!alt@{alt}}
\index{alt@{alt}!gsm\_23\_032.h@{gsm\_23\_032.h}}
\doxysubsubsection{alt}
{\footnotesize\ttfamily uint8\+\_\+t alt[2]}

\mbox{\label{gsm__23__032_8h_a020a79d21835d330a14f6919c34b5f21}} 
\index{gsm\_23\_032.h@{gsm\_23\_032.h}!ell\_arc@{ell\_arc}}
\index{ell\_arc@{ell\_arc}!gsm\_23\_032.h@{gsm\_23\_032.h}}
\doxysubsubsection{ell\_arc}
{\footnotesize\ttfamily struct \textbf{ gad\+\_\+raw\+\_\+ell\+\_\+arc} ell\+\_\+arc}

\mbox{\label{gsm__23__032_8h_ac1fc900c687890fb1d49140e36795d86}} 
\index{gsm\_23\_032.h@{gsm\_23\_032.h}!ell\_point@{ell\_point}}
\index{ell\_point@{ell\_point}!gsm\_23\_032.h@{gsm\_23\_032.h}}
\doxysubsubsection{ell\_point}
{\footnotesize\ttfamily struct \textbf{ gad\+\_\+raw\+\_\+ell\+\_\+point} ell\+\_\+point}

\mbox{\label{gsm__23__032_8h_ab0a60907f49e3246859e433cd893f078}} 
\index{gsm\_23\_032.h@{gsm\_23\_032.h}!ell\_point\_alt@{ell\_point\_alt}}
\index{ell\_point\_alt@{ell\_point\_alt}!gsm\_23\_032.h@{gsm\_23\_032.h}}
\doxysubsubsection{ell\_point\_alt}
{\footnotesize\ttfamily struct \textbf{ gad\+\_\+raw\+\_\+ell\+\_\+point\+\_\+alt} ell\+\_\+point\+\_\+alt}

\mbox{\label{gsm__23__032_8h_a922b32e721261b3f2053bb2871e27bcb}} 
\index{gsm\_23\_032.h@{gsm\_23\_032.h}!ell\_point\_alt\_unc\_ell@{ell\_point\_alt\_unc\_ell}}
\index{ell\_point\_alt\_unc\_ell@{ell\_point\_alt\_unc\_ell}!gsm\_23\_032.h@{gsm\_23\_032.h}}
\doxysubsubsection{ell\_point\_alt\_unc\_ell}
{\footnotesize\ttfamily struct \textbf{ gad\+\_\+raw\+\_\+ell\+\_\+point\+\_\+alt\+\_\+unc\+\_\+ell} ell\+\_\+point\+\_\+alt\+\_\+unc\+\_\+ell}

\mbox{\label{gsm__23__032_8h_a32bde312c4dcb17c14d6f7fb217d22dc}} 
\index{gsm\_23\_032.h@{gsm\_23\_032.h}!ell\_point\_unc\_circle@{ell\_point\_unc\_circle}}
\index{ell\_point\_unc\_circle@{ell\_point\_unc\_circle}!gsm\_23\_032.h@{gsm\_23\_032.h}}
\doxysubsubsection{ell\_point\_unc\_circle}
{\footnotesize\ttfamily struct \textbf{ gad\+\_\+raw\+\_\+ell\+\_\+point\+\_\+unc\+\_\+circle} ell\+\_\+point\+\_\+unc\+\_\+circle}

\mbox{\label{gsm__23__032_8h_a9090d861473563dae81450acabfb8372}} 
\index{gsm\_23\_032.h@{gsm\_23\_032.h}!ell\_point\_unc\_ellipse@{ell\_point\_unc\_ellipse}}
\index{ell\_point\_unc\_ellipse@{ell\_point\_unc\_ellipse}!gsm\_23\_032.h@{gsm\_23\_032.h}}
\doxysubsubsection{ell\_point\_unc\_ellipse}
{\footnotesize\ttfamily struct \textbf{ gad\+\_\+raw\+\_\+ell\+\_\+point\+\_\+unc\+\_\+ellipse} ell\+\_\+point\+\_\+unc\+\_\+ellipse}

\mbox{\label{gsm__23__032_8h_aa387ee3b69ef1d5a33c4cfc588094ee9}} 
\index{gsm\_23\_032.h@{gsm\_23\_032.h}!h@{h}}
\index{h@{h}!gsm\_23\_032.h@{gsm\_23\_032.h}}
\doxysubsubsection{h}
{\footnotesize\ttfamily struct \textbf{ gad\+\_\+raw\+\_\+head} h}



type = GAD\+\_\+\+TYPE\+\_\+\+ELL\+\_\+\+POINT 

type = GAD\+\_\+\+TYPE\+\_\+\+ELL\+\_\+\+POINT\+\_\+\+ALT 

Referenced by \textbf{ gsm48\+\_\+chan\+\_\+desc\+::\+\_\+\+\_\+attribute\+\_\+\+\_\+()}, \textbf{ osmo\+\_\+bssap\+\_\+le\+\_\+dec()}, \textbf{ osmo\+\_\+bssmap\+\_\+le\+\_\+msgt()}, and \textbf{ osmo\+\_\+cbsp\+\_\+decode()}.

\mbox{\label{gsm__23__032_8h_ac4bdbe41349fe5b2b93f332009a3da90}} 
\index{gsm\_23\_032.h@{gsm\_23\_032.h}!ha\_ell\_point\_alt\_unc\_ell@{ha\_ell\_point\_alt\_unc\_ell}}
\index{ha\_ell\_point\_alt\_unc\_ell@{ha\_ell\_point\_alt\_unc\_ell}!gsm\_23\_032.h@{gsm\_23\_032.h}}
\doxysubsubsection{ha\_ell\_point\_alt\_unc\_ell}
{\footnotesize\ttfamily struct \textbf{ gad\+\_\+raw\+\_\+ha\+\_\+ell\+\_\+point\+\_\+alt\+\_\+unc\+\_\+ell} ha\+\_\+ell\+\_\+point\+\_\+alt\+\_\+unc\+\_\+ell}

\mbox{\label{gsm__23__032_8h_a77259fbb7b6dcc1175d75d333886d710}} 
\index{gsm\_23\_032.h@{gsm\_23\_032.h}!ha\_ell\_point\_unc\_ell@{ha\_ell\_point\_unc\_ell}}
\index{ha\_ell\_point\_unc\_ell@{ha\_ell\_point\_unc\_ell}!gsm\_23\_032.h@{gsm\_23\_032.h}}
\doxysubsubsection{ha\_ell\_point\_unc\_ell}
{\footnotesize\ttfamily struct \textbf{ gad\+\_\+raw\+\_\+ha\+\_\+ell\+\_\+point\+\_\+unc\+\_\+ell} ha\+\_\+ell\+\_\+point\+\_\+unc\+\_\+ell}

\mbox{\label{gsm__23__032_8h_a990f6838570a60410f25ae7ecf40cc50}} 
\index{gsm\_23\_032.h@{gsm\_23\_032.h}!lat@{lat}}
\index{lat@{lat}!gsm\_23\_032.h@{gsm\_23\_032.h}}
\doxysubsubsection{lat}
{\footnotesize\ttfamily uint8\+\_\+t lat}



Referenced by \textbf{ osmo\+\_\+gad\+\_\+dec\+\_\+lat()}.

\mbox{\label{gsm__23__032_8h_a6ef38f14013de4dad9a0cfe960038949}} 
\index{gsm\_23\_032.h@{gsm\_23\_032.h}!lon@{lon}}
\index{lon@{lon}!gsm\_23\_032.h@{gsm\_23\_032.h}}
\doxysubsubsection{lon}
{\footnotesize\ttfamily uint8\+\_\+t lon}



Referenced by \textbf{ osmo\+\_\+gad\+\_\+dec\+\_\+lon()}.

\mbox{\label{gsm__23__032_8h_a35392e8d624c585ff2eb2cecd34daceb}} 
\index{gsm\_23\_032.h@{gsm\_23\_032.h}!point@{point}}
\index{point@{point}!gsm\_23\_032.h@{gsm\_23\_032.h}}
\doxysubsubsection{}
{\footnotesize\ttfamily struct  \{ ... \}  point[15]}

\mbox{\label{gsm__23__032_8h_aefbc546ba2c9562d1299a39fc4d1eb11}} 
\index{gsm\_23\_032.h@{gsm\_23\_032.h}!polygon@{polygon}}
\index{polygon@{polygon}!gsm\_23\_032.h@{gsm\_23\_032.h}}
\doxysubsubsection{polygon}
{\footnotesize\ttfamily struct \textbf{ gad\+\_\+raw\+\_\+polygon} polygon}

