GNU Radio Manual and C++ API Reference
3.9.1.0
The Free & Open Software Radio Ecosystem
dvbt_viterbi_decoder.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_VITERBI_DECODER_H
10
#define INCLUDED_DTV_DVBT_VITERBI_DECODER_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 DVB-T Viterbi decoder.
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: \n
30
* 000000X0X1 - QPSK. \n
31
* 0000X0X1X2X3 - 16QAM. \n
32
* 00X0X1X2X3X4X5 - 64QAM. \n
33
* Data Output format: Packed bytes (each bit is data). \n
34
* MSB - first, LSB last.
35
*/
36
class
DTV_API
dvbt_viterbi_decoder
:
virtual
public
block
37
{
38
public
:
39
typedef
std::shared_ptr<dvbt_viterbi_decoder>
sptr
;
40
41
/*!
42
* \brief Create a DVB-T Viterbi decoder.
43
*
44
* \param constellation constellation used. \n
45
* \param hierarchy hierarchy used. \n
46
* \param coderate coderate used. \n
47
* \param bsize block size.
48
*/
49
static
sptr
make(
dvb_constellation_t
constellation,
50
dvbt_hierarchy_t
hierarchy,
51
dvb_code_rate_t
coderate,
52
int
bsize);
53
};
54
55
}
// namespace dtv
56
}
// namespace gr
57
58
#endif
/* INCLUDED_DTV_DVBT_VITERBI_DECODER_H */
dvbt_config.h
block.h
DTV_API
#define DTV_API
Definition:
gr-dtv/include/gnuradio/dtv/api.h:18
gr::dtv::dvbt_viterbi_decoder
DVB-T Viterbi decoder.
Definition:
dvbt_viterbi_decoder.h:36
gr::dtv::dvbt_hierarchy_t
dvbt_hierarchy_t
Definition:
dvbt_config.h:14
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
gr::dtv::dvbt_viterbi_decoder::sptr
std::shared_ptr< dvbt_viterbi_decoder > sptr
Definition:
dvbt_viterbi_decoder.h:39
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_viterbi_decoder.h
Generated by
1.8.17