GNU Radio Manual and C++ API Reference  3.10.9.1
The Free & Open Software Radio Ecosystem
dvbt_bit_inner_interleaver.h
Go to the documentation of this file.
1 /* -*- c++ -*- */
2 /*
3  * Copyright 2015 Free Software Foundation, Inc.
4  *
5  * SPDX-License-Identifier: GPL-3.0-or-later
6  *
7  */
8 
9 #ifndef INCLUDED_DTV_DVBT_BIT_INNER_INTERLEAVER_H
10 #define INCLUDED_DTV_DVBT_BIT_INNER_INTERLEAVER_H
11 
12 #include <gnuradio/block.h>
13 #include <gnuradio/dtv/api.h>
16 
17 namespace gr {
18 namespace dtv {
19 
20 /*!
21  * \brief Bit Inner interleaver.
22  * \ingroup dtv
23  *
24  * ETSI EN 300 744 Clause 4.3.4.1 \n
25  * Data Input format: \n
26  * 000000X0X1 - QPSK. \n
27  * 0000X0X1X2X3 - 16QAM. \n
28  * 00X0X1X2X3X4X5 - 64QAM. \n
29  * Data Output format: \n
30  * 000000B0B1 - QPSK. \n
31  * 0000B0B1B2B3 - 16QAM. \n
32  * 00B0B1B2B3B4B5 - 64QAM. \n
33  * bit interleaver block size is 126.
34  */
36 {
37 public:
38  typedef std::shared_ptr<dvbt_bit_inner_interleaver> sptr;
39 
40  /*!
41  * \brief Create a Bit Inner interleaver
42  *
43  * \param nsize length of input stream. \n
44  * \param constellation constellation used. \n
45  * \param hierarchy hierarchy used. \n
46  * \param transmission transmission mode used.
47  */
48  static sptr make(int nsize,
49  dvb_constellation_t constellation,
50  dvbt_hierarchy_t hierarchy,
51  dvbt_transmission_mode_t transmission);
52 };
53 
54 } // namespace dtv
55 } // namespace gr
56 
57 #endif /* INCLUDED_DTV_DVBT_BIT_INNER_INTERLEAVER_H */
The abstract base class for all 'terminal' processing blocks.
Definition: gnuradio-runtime/include/gnuradio/block.h:63
Bit Inner interleaver.
Definition: dvbt_bit_inner_interleaver.h:36
static sptr make(int nsize, dvb_constellation_t constellation, dvbt_hierarchy_t hierarchy, dvbt_transmission_mode_t transmission)
Create a Bit Inner interleaver.
std::shared_ptr< dvbt_bit_inner_interleaver > sptr
Definition: dvbt_bit_inner_interleaver.h:38
#define DTV_API
Definition: gr-dtv/include/gnuradio/dtv/api.h:18
dvbt_hierarchy_t
Definition: dvbt_config.h:14
dvbt_transmission_mode_t
Definition: dvbt_config.h:21
dvb_constellation_t
Definition: dvb_config.h:79
GNU Radio logging wrapper.
Definition: basic_block.h:29