GNU Radio's GSM Package
gsm0503_interleaving.h
Go to the documentation of this file.
1 /*! \file gsm0503_interleaving.h
2  * GSM TS 05.03 interleaving.
3  */
4 
5 #pragma once
6 
7 #include <osmocom/core/bits.h>
8 
9 /*! \addtogroup interleaving
10  * @{
11  * \file gsm0503_interleaving.h */
12 
14 void gsm0503_xcch_interleave(const ubit_t *cB, ubit_t *iB);
15 
18 
21 
24  const ubit_t *dc, ubit_t *iB);
25 
27  sbit_t *dc, const sbit_t *iB);
28 void gsm0503_mcs1_dl_interleave(const ubit_t *up, const ubit_t *hc,
29  const ubit_t *dc, ubit_t *iB);
30 
32  const sbit_t *hi, const sbit_t *di);
33 void gsm0503_mcs5_ul_interleave(const ubit_t *hc, const ubit_t *dc,
34  ubit_t *hi, ubit_t *di);
35 
37  const sbit_t *hi, const sbit_t *di);
38 void gsm0503_mcs5_dl_interleave(const ubit_t *hc, const ubit_t *dc,
39  ubit_t *hi, ubit_t *di);
40 
42  const sbit_t *hi, const sbit_t *di);
43 void gsm0503_mcs7_ul_interleave(const ubit_t *hc, const ubit_t *c1,
44  const ubit_t *c2, ubit_t *hi, ubit_t *di);
45 
47  const sbit_t *hi, const sbit_t *di);
48 void gsm0503_mcs7_dl_interleave(const ubit_t *hc, const ubit_t *c1,
49  const ubit_t *c2, ubit_t *hi, ubit_t *di);
50 
52  const sbit_t *hi, const sbit_t *di);
53 void gsm0503_mcs8_ul_interleave(const ubit_t *hc, const ubit_t *c1,
54  const ubit_t *c2, ubit_t *hi, ubit_t *di);
55 
57  const sbit_t *hi, const sbit_t *di);
58 void gsm0503_mcs8_dl_interleave(const ubit_t *hc, const ubit_t *c1,
59  const ubit_t *c2, ubit_t *hi, ubit_t *di);
60 
61 /*! @} */
gsm0503_xcch_deinterleave
void gsm0503_xcch_deinterleave(sbit_t *cB, const sbit_t *iB)
gsm0503_mcs8_ul_deinterleave
void gsm0503_mcs8_ul_deinterleave(sbit_t *hc, sbit_t *c1, sbit_t *c2, const sbit_t *hi, const sbit_t *di)
gsm0503_mcs5_dl_interleave
void gsm0503_mcs5_dl_interleave(const ubit_t *hc, const ubit_t *dc, ubit_t *hi, ubit_t *di)
gsm0503_mcs1_ul_deinterleave
void gsm0503_mcs1_ul_deinterleave(sbit_t *hc, sbit_t *dc, const sbit_t *iB)
gsm0503_tch_fr_interleave
void gsm0503_tch_fr_interleave(const ubit_t *cB, ubit_t *iB)
gsm0503_mcs5_ul_deinterleave
void gsm0503_mcs5_ul_deinterleave(sbit_t *hc, sbit_t *dc, const sbit_t *hi, const sbit_t *di)
gsm0503_mcs1_dl_deinterleave
void gsm0503_mcs1_dl_deinterleave(sbit_t *u, sbit_t *hc, sbit_t *dc, const sbit_t *iB)
gsm0503_mcs8_ul_interleave
void gsm0503_mcs8_ul_interleave(const ubit_t *hc, const ubit_t *c1, const ubit_t *c2, ubit_t *hi, ubit_t *di)
gsm0503_tch_hr_deinterleave
void gsm0503_tch_hr_deinterleave(sbit_t *cB, const sbit_t *iB)
sbit_t
int8_t sbit_t
Definition: bits.h:21
gsm0503_tch_fr_deinterleave
void gsm0503_tch_fr_deinterleave(sbit_t *cB, const sbit_t *iB)
bits.h
gsm0503_xcch_interleave
void gsm0503_xcch_interleave(const ubit_t *cB, ubit_t *iB)
gsm0503_mcs7_dl_interleave
void gsm0503_mcs7_dl_interleave(const ubit_t *hc, const ubit_t *c1, const ubit_t *c2, ubit_t *hi, ubit_t *di)
gsm0503_mcs1_ul_interleave
void gsm0503_mcs1_ul_interleave(const ubit_t *hc, const ubit_t *dc, ubit_t *iB)
gsm0503_mcs7_ul_deinterleave
void gsm0503_mcs7_ul_deinterleave(sbit_t *hc, sbit_t *c1, sbit_t *c2, const sbit_t *hi, const sbit_t *di)
ubit_t
uint8_t ubit_t
Definition: bits.h:24
gsm0503_mcs7_ul_interleave
void gsm0503_mcs7_ul_interleave(const ubit_t *hc, const ubit_t *c1, const ubit_t *c2, ubit_t *hi, ubit_t *di)
gsm0503_mcs8_dl_deinterleave
void gsm0503_mcs8_dl_deinterleave(sbit_t *hc, sbit_t *c1, sbit_t *c2, const sbit_t *hi, const sbit_t *di)
gsm0503_mcs8_dl_interleave
void gsm0503_mcs8_dl_interleave(const ubit_t *hc, const ubit_t *c1, const ubit_t *c2, ubit_t *hi, ubit_t *di)
gsm0503_mcs1_dl_interleave
void gsm0503_mcs1_dl_interleave(const ubit_t *up, const ubit_t *hc, const ubit_t *dc, ubit_t *iB)
gsm0503_tch_hr_interleave
void gsm0503_tch_hr_interleave(const ubit_t *cB, ubit_t *iB)
gsm0503_mcs5_ul_interleave
void gsm0503_mcs5_ul_interleave(const ubit_t *hc, const ubit_t *dc, ubit_t *hi, ubit_t *di)
gsm0503_mcs7_dl_deinterleave
void gsm0503_mcs7_dl_deinterleave(sbit_t *hc, sbit_t *c1, sbit_t *c2, const sbit_t *hi, const sbit_t *di)
gsm0503_mcs5_dl_deinterleave
void gsm0503_mcs5_dl_deinterleave(sbit_t *hc, sbit_t *dc, const sbit_t *hi, const sbit_t *di)