\doxysection{3GPP TS 29.205}
\label{group__gsm29205}\index{3GPP TS 29.205@{3GPP TS 29.205}}
\doxysubsection*{Files}
\begin{DoxyCompactItemize}
\item 
file \textbf{ gsm29205.\+h}
\item 
file \textbf{ gsm29205.\+c}
\begin{DoxyCompactList}\small\item\em Functions related to 3GPP TS 29.\+205, primarily message generation/encoding. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection*{Data Structures}
\begin{DoxyCompactItemize}
\item 
struct \textbf{ osmo\+\_\+gcr\+\_\+parsed}
\begin{DoxyCompactList}\small\item\em Parsed representation of Global Call Reference, 3GPP TS 29.\+205 Table B 2.\+1.\+9.\+1. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection*{Macros}
\begin{DoxyCompactItemize}
\item 
\#define \textbf{ OSMO\+\_\+\+GCR\+\_\+\+MIN\+\_\+\+LEN}~13
\end{DoxyCompactItemize}
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
\item 
uint8\+\_\+t \textbf{ osmo\+\_\+enc\+\_\+gcr} (struct \textbf{ msgb} $\ast$\textbf{ msg}, const struct \textbf{ osmo\+\_\+gcr\+\_\+parsed} $\ast$\textbf{ g})
\begin{DoxyCompactList}\small\item\em Create Global Call Reference. \end{DoxyCompactList}\item 
int \textbf{ osmo\+\_\+dec\+\_\+gcr} (struct \textbf{ osmo\+\_\+gcr\+\_\+parsed} $\ast$gcr, const uint8\+\_\+t $\ast$elem, uint8\+\_\+t \textbf{ len})
\begin{DoxyCompactList}\small\item\em Decode Global Call Reference, 3GPP TS 29.\+205 Table B 2.\+1.\+9.\+1. \end{DoxyCompactList}\item 
bool \textbf{ osmo\+\_\+gcr\+\_\+eq} (const struct \textbf{ osmo\+\_\+gcr\+\_\+parsed} $\ast$gcr1, const struct \textbf{ osmo\+\_\+gcr\+\_\+parsed} $\ast$gcr2)
\begin{DoxyCompactList}\small\item\em Compare two GCR structs. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection*{Variables}
\begin{DoxyCompactItemize}
\item 
uint8\+\_\+t \textbf{ osmo\+\_\+gcr\+\_\+parsed\+::net} [5]
\item 
uint8\+\_\+t \textbf{ osmo\+\_\+gcr\+\_\+parsed\+::net\+\_\+len}
\begin{DoxyCompactList}\small\item\em Network ID, ITU-\/T Q.\+1902.\+3. \end{DoxyCompactList}\item 
uint16\+\_\+t \textbf{ osmo\+\_\+gcr\+\_\+parsed\+::node}
\begin{DoxyCompactList}\small\item\em length (3-\/5 octets) of gsm29205\+\_\+gcr\+::net \end{DoxyCompactList}\item 
uint8\+\_\+t \textbf{ osmo\+\_\+gcr\+\_\+parsed\+::cr} [5]
\begin{DoxyCompactList}\small\item\em Node ID. \end{DoxyCompactList}\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}


\doxysubsection{Macro Definition Documentation}
\mbox{\label{group__gsm29205_gaca9fada0867882e65ce3165e5d463cd1}} 
\index{3GPP TS 29.205@{3GPP TS 29.205}!OSMO\_GCR\_MIN\_LEN@{OSMO\_GCR\_MIN\_LEN}}
\index{OSMO\_GCR\_MIN\_LEN@{OSMO\_GCR\_MIN\_LEN}!3GPP TS 29.205@{3GPP TS 29.205}}
\doxysubsubsection{OSMO\_GCR\_MIN\_LEN}
{\footnotesize\ttfamily \#define OSMO\+\_\+\+GCR\+\_\+\+MIN\+\_\+\+LEN~13}



\doxysubsection{Function Documentation}
\mbox{\label{group__gsm29205_ga41e5de0228f66e7ea43b253af26efef0}} 
\index{3GPP TS 29.205@{3GPP TS 29.205}!osmo\_dec\_gcr@{osmo\_dec\_gcr}}
\index{osmo\_dec\_gcr@{osmo\_dec\_gcr}!3GPP TS 29.205@{3GPP TS 29.205}}
\doxysubsubsection{osmo\_dec\_gcr()}
{\footnotesize\ttfamily int osmo\+\_\+dec\+\_\+gcr (\begin{DoxyParamCaption}\item[{struct \textbf{ osmo\+\_\+gcr\+\_\+parsed} $\ast$}]{gcr,  }\item[{const uint8\+\_\+t $\ast$}]{elem,  }\item[{uint8\+\_\+t}]{len }\end{DoxyParamCaption})}



Decode Global Call Reference, 3GPP TS 29.\+205 Table B 2.\+1.\+9.\+1. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ out}}  & {\em gcr} & Caller-\/provided memory to store Global Call Reference \\
\hline
\mbox{\texttt{ in}}  & {\em elem} & IE value to be decoded \\
\hline
\mbox{\texttt{ in}}  & {\em len} & Length of {\itshape elem} in bytes \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
number of bytes parsed; negative on error 
\end{DoxyReturn}


References \textbf{ osmo\+\_\+gcr\+\_\+parsed\+::cr}, \textbf{ len}, \textbf{ osmo\+\_\+gcr\+\_\+parsed\+::net}, \textbf{ osmo\+\_\+gcr\+\_\+parsed\+::net\+\_\+len}, and \textbf{ osmo\+\_\+gcr\+\_\+parsed\+::node}.



Referenced by \textbf{ gsm0808\+\_\+dec\+\_\+gcr()}.

\mbox{\label{group__gsm29205_ga1387d926bea7cb69ca41814bf20f6b29}} 
\index{3GPP TS 29.205@{3GPP TS 29.205}!osmo\_enc\_gcr@{osmo\_enc\_gcr}}
\index{osmo\_enc\_gcr@{osmo\_enc\_gcr}!3GPP TS 29.205@{3GPP TS 29.205}}
\doxysubsubsection{osmo\_enc\_gcr()}
{\footnotesize\ttfamily uint8\+\_\+t osmo\+\_\+enc\+\_\+gcr (\begin{DoxyParamCaption}\item[{struct \textbf{ msgb} $\ast$}]{msg,  }\item[{const struct \textbf{ osmo\+\_\+gcr\+\_\+parsed} $\ast$}]{g }\end{DoxyParamCaption})}



Create Global Call Reference. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ out}}  & {\em msg} & Message Buffer for appending IE \\
\hline
\mbox{\texttt{ in}}  & {\em g} & Global Call Reference, 3GPP TS 29.\+205 Table B 2.\+1.\+9.\+1 \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
number of bytes added to {\itshape msg} 
\end{DoxyReturn}


References \textbf{ g}, \textbf{ msg}, and \textbf{ msgb\+\_\+lv\+\_\+put()}.



Referenced by \textbf{ gsm0808\+\_\+enc\+\_\+gcr()}.

\mbox{\label{group__gsm29205_ga9a29f24e0da01e4894097fef93c0c6d9}} 
\index{3GPP TS 29.205@{3GPP TS 29.205}!osmo\_gcr\_eq@{osmo\_gcr\_eq}}
\index{osmo\_gcr\_eq@{osmo\_gcr\_eq}!3GPP TS 29.205@{3GPP TS 29.205}}
\doxysubsubsection{osmo\_gcr\_eq()}
{\footnotesize\ttfamily bool osmo\+\_\+gcr\+\_\+eq (\begin{DoxyParamCaption}\item[{const struct \textbf{ osmo\+\_\+gcr\+\_\+parsed} $\ast$}]{gcr1,  }\item[{const struct \textbf{ osmo\+\_\+gcr\+\_\+parsed} $\ast$}]{gcr2 }\end{DoxyParamCaption})}



Compare two GCR structs. 


\begin{DoxyParams}[1]{Parameters}
\mbox{\texttt{ in}}  & {\em gcr1} & pointer to the GCR struct \\
\hline
\mbox{\texttt{ in}}  & {\em gcr2} & pointer to the GCR struct \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
true if GCRs are equal, false otherwise 
\end{DoxyReturn}


References \textbf{ osmo\+\_\+gcr\+\_\+parsed\+::cr}, \textbf{ osmo\+\_\+gcr\+\_\+parsed\+::net}, \textbf{ osmo\+\_\+gcr\+\_\+parsed\+::net\+\_\+len}, and \textbf{ osmo\+\_\+gcr\+\_\+parsed\+::node}.



\doxysubsection{Variable Documentation}
\mbox{\label{group__gsm29205_ga198d8498401b81d3a8403ae618502a9f}} 
\index{3GPP TS 29.205@{3GPP TS 29.205}!cr@{cr}}
\index{cr@{cr}!3GPP TS 29.205@{3GPP TS 29.205}}
\doxysubsubsection{cr}
{\footnotesize\ttfamily uint8\+\_\+t osmo\+\_\+gcr\+\_\+parsed\+::cr[5]}



Node ID. 



Referenced by \textbf{ osmo\+\_\+dec\+\_\+gcr()}, \textbf{ osmo\+\_\+gcr\+\_\+dump\+\_\+buf()}, and \textbf{ osmo\+\_\+gcr\+\_\+eq()}.

\mbox{\label{group__gsm29205_gaf8cc803881155e730cd3dee0e03395b1}} 
\index{3GPP TS 29.205@{3GPP TS 29.205}!net@{net}}
\index{net@{net}!3GPP TS 29.205@{3GPP TS 29.205}}
\doxysubsubsection{net}
{\footnotesize\ttfamily uint8\+\_\+t osmo\+\_\+gcr\+\_\+parsed\+::net[5]}



Referenced by \textbf{ osmo\+\_\+dec\+\_\+gcr()}, \textbf{ osmo\+\_\+gcr\+\_\+dump\+\_\+buf()}, and \textbf{ osmo\+\_\+gcr\+\_\+eq()}.

\mbox{\label{group__gsm29205_gaaee6729627e9f5a416f8129de6430d43}} 
\index{3GPP TS 29.205@{3GPP TS 29.205}!net\_len@{net\_len}}
\index{net\_len@{net\_len}!3GPP TS 29.205@{3GPP TS 29.205}}
\doxysubsubsection{net\_len}
{\footnotesize\ttfamily uint8\+\_\+t osmo\+\_\+gcr\+\_\+parsed\+::net\+\_\+len}



Network ID, ITU-\/T Q.\+1902.\+3. 



Referenced by \textbf{ osmo\+\_\+dec\+\_\+gcr()}, \textbf{ osmo\+\_\+gcr\+\_\+dump\+\_\+buf()}, and \textbf{ osmo\+\_\+gcr\+\_\+eq()}.

\mbox{\label{group__gsm29205_gac2362d86dddc8167f66fac38eec3247a}} 
\index{3GPP TS 29.205@{3GPP TS 29.205}!node@{node}}
\index{node@{node}!3GPP TS 29.205@{3GPP TS 29.205}}
\doxysubsubsection{node}
{\footnotesize\ttfamily uint16\+\_\+t osmo\+\_\+gcr\+\_\+parsed\+::node}



length (3-\/5 octets) of gsm29205\+\_\+gcr\+::net 



Referenced by \textbf{ osmo\+\_\+dec\+\_\+gcr()}, \textbf{ osmo\+\_\+gcr\+\_\+dump\+\_\+buf()}, and \textbf{ osmo\+\_\+gcr\+\_\+eq()}.

