GNU Radio Manual and C++ API Reference
3.9.1.0
The Free & Open Software Radio Ecosystem
dvbt_inner_coder.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_INNER_CODER_H
10
#define INCLUDED_DTV_DVBT_INNER_CODER_H
11
12
#include <
gnuradio/block.h
>
13
#include <
gnuradio/dtv/api.h
>
14
#include <
gnuradio/dtv/dvb_config.h
>
15
#include <
gnuradio/dtv/dvbt_config.h
>
16
17
namespace
gr
{
18
namespace
dtv {
19
20
/*!
21
* \brief Inner coder with Puncturing.
22
* \ingroup dtv
23
*
24
* ETSI EN 300 744 Clause 4.3.3 \n
25
* Mother convolutional code with rate 1/2. \n
26
* k=1, n=2, K=6. \n
27
* Generator polynomial G1=171(OCT), G2=133(OCT). \n
28
* Punctured to obtain rates of 2/3, 3/4, 5/6, 7/8. \n
29
* Data Input format: Packed bytes (each bit is data). \n
30
* MSB - first, LSB last. \n
31
* Data Output format: \n
32
* 000000X0X1 - QPSK. \n
33
* 0000X0X1X2X3 - 16QAM. \n
34
* 00X0X1X2X3X4X5 - 64QAM.
35
*/
36
class
DTV_API
dvbt_inner_coder
:
virtual
public
block
37
{
38
public
:
39
typedef
std::shared_ptr<dvbt_inner_coder>
sptr
;
40
41
/*!
42
* \brief Create an Inner coder with Puncturing.
43
*
44
* \param ninput length of input. \n
45
* \param noutput length of output. \n
46
* \param constellation type of constellation. \n
47
* \param hierarchy type of hierarchy used. \n
48
* \param coderate coderate used.
49
*/
50
static
sptr
make(
int
ninput,
51
int
noutput,
52
dvb_constellation_t
constellation,
53
dvbt_hierarchy_t
hierarchy,
54
dvb_code_rate_t
coderate);
55
};
56
57
}
// namespace dtv
58
}
// namespace gr
59
60
#endif
/* INCLUDED_DTV_DVBT_INNER_CODER_H */
dvbt_config.h
gr::dtv::dvbt_inner_coder::sptr
std::shared_ptr< dvbt_inner_coder > sptr
Definition:
dvbt_inner_coder.h:39
block.h
DTV_API
#define DTV_API
Definition:
gr-dtv/include/gnuradio/dtv/api.h:18
gr::dtv::dvbt_hierarchy_t
dvbt_hierarchy_t
Definition:
dvbt_config.h:14
gr::dtv::dvbt_inner_coder
Inner coder with Puncturing.
Definition:
dvbt_inner_coder.h:36
gr::dtv::dvb_code_rate_t
dvb_code_rate_t
Definition:
dvb_config.h:19
api.h
gr::dtv::dvb_constellation_t
dvb_constellation_t
Definition:
dvb_config.h:79
gr::block
The abstract base class for all 'terminal' processing blocks.
Definition:
block.h:59
dvb_config.h
gr
GNU Radio logging wrapper for log4cpp library (C++ port of log4j)
Definition:
basic_block.h:29
gr-dtv
include
gnuradio
dtv
dvbt_inner_coder.h
Generated by
1.8.17