GNU Radio Manual and C++ API Reference  3.10.9.1
The Free & Open Software Radio Ecosystem
dvbt_convolutional_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_CONVOLUTIONAL_INTERLEAVER_H
10 #define INCLUDED_DTV_DVBT_CONVOLUTIONAL_INTERLEAVER_H
11 
12 #include <gnuradio/dtv/api.h>
14 
15 namespace gr {
16 namespace dtv {
17 
18 /*!
19  * \brief Convolutional interleaver.
20  * \ingroup dtv
21  *
22  * ETSI EN 300 744 Clause 4.3.1 \n
23  * Forney (Ramsey type III) convolutional interleaver. \n
24  * Input: Blocks of I bytes size. \n
25  * Output: Stream of 1 byte elements.
26  */
28 {
29 public:
30  typedef std::shared_ptr<dvbt_convolutional_interleaver> sptr;
31 
32  /*!
33  * \brief Create a DVB-T convolutional interleaver.
34  *
35  * \param nsize number of blocks to process. \n
36  * \param I size of a block. \n
37  * \param M depth length for each element in shift registers.
38  */
39  static sptr make(int nsize, int I, int M);
40 };
41 
42 } // namespace dtv
43 } // namespace gr
44 
45 #endif /* INCLUDED_DTV_DVBT_CONVOLUTIONAL_INTERLEAVER_H */
Convolutional interleaver.
Definition: dvbt_convolutional_interleaver.h:28
std::shared_ptr< dvbt_convolutional_interleaver > sptr
Definition: dvbt_convolutional_interleaver.h:30
static sptr make(int nsize, int I, int M)
Create a DVB-T convolutional interleaver.
synchronous 1:N input to output with history
Definition: sync_interpolator.h:26
#define DTV_API
Definition: gr-dtv/include/gnuradio/dtv/api.h:18
GNU Radio logging wrapper.
Definition: basic_block.h:29