GNU Radio Manual and C++ API Reference  3.9.1.0
The Free & Open Software Radio Ecosystem
dvbt2_pilotgenerator_cc.h
Go to the documentation of this file.
1 /* -*- c++ -*- */
2 /*
3  * Copyright 2015,2017 Free Software Foundation, Inc.
4  *
5  * SPDX-License-Identifier: GPL-3.0-or-later
6  *
7  */
8 
9 #ifndef INCLUDED_DTV_DVBT2_PILOTGENERATOR_CC_H
10 #define INCLUDED_DTV_DVBT2_PILOTGENERATOR_CC_H
11 
12 #include <gnuradio/block.h>
13 #include <gnuradio/dtv/api.h>
16 
17 namespace gr {
18 namespace dtv {
19 
20 /*!
21  * \brief Adds pilots to T2 frames.
22  * \ingroup dtv
23  *
24  * Input: Frequency interleaved T2 frame. \n
25  * Output: T2 frame with pilots (in time domain).
26  */
28 {
29 public:
30  typedef std::shared_ptr<dvbt2_pilotgenerator_cc> sptr;
31 
32  /*!
33  * \brief Create a DVB-T2 pilot generator.
34  *
35  * \param carriermode number of carriers (normal or extended).
36  * \param fftsize OFDM IFFT size.
37  * \param pilotpattern DVB-T2 pilot pattern (PP1 - PP8).
38  * \param guardinterval OFDM ISI guard interval.
39  * \param numdatasyms number of OFDM symbols in a T2 frame.
40  * \param paprmode PAPR reduction mode.
41  * \param version DVB-T2 specification version.
42  * \param preamble P1 symbol preamble format.
43  * \param misogroup MISO transmitter ID.
44  * \param equalization sin(x)/x DAC equalization (on or off).
45  * \param bandwidth sin(x)/x equalization bandwidth.
46  * \param vlength output vector length.
47  */
48  static sptr make(dvbt2_extended_carrier_t carriermode,
49  dvbt2_fftsize_t fftsize,
50  dvbt2_pilotpattern_t pilotpattern,
51  dvb_guardinterval_t guardinterval,
52  int numdatasyms,
53  dvbt2_papr_t paprmode,
55  dvbt2_preamble_t preamble,
56  dvbt2_misogroup_t misogroup,
57  dvbt2_equalization_t equalization,
58  dvbt2_bandwidth_t bandwidth,
59  unsigned int vlength);
60 };
61 
62 } // namespace dtv
63 } // namespace gr
64 
65 #endif /* INCLUDED_DTV_DVBT2_PILOTGENERATOR_CC_H */
gr::dtv::dvbt2_papr_t
dvbt2_papr_t
Definition: dvbt2_config.h:55
gr::dtv::dvbt2_preamble_t
dvbt2_preamble_t
Definition: dvbt2_config.h:35
block.h
gr::dtv::dvbt2_fftsize_t
dvbt2_fftsize_t
Definition: dvbt2_config.h:43
gr::dtv::dvbt2_pilotgenerator_cc::sptr
std::shared_ptr< dvbt2_pilotgenerator_cc > sptr
Definition: dvbt2_pilotgenerator_cc.h:30
gr::dtv::dvbt2_misogroup_t
dvbt2_misogroup_t
Definition: dvbt2_config.h:96
DTV_API
#define DTV_API
Definition: gr-dtv/include/gnuradio/dtv/api.h:18
dvbt2_config.h
gr::version
const GR_RUNTIME_API std::string version()
return version string defined by cmake (GrVersion.cmake)
gr::dtv::dvbt2_equalization_t
dvbt2_equalization_t
Definition: dvbt2_config.h:111
api.h
gr::dtv::dvbt2_extended_carrier_t
dvbt2_extended_carrier_t
Definition: dvbt2_config.h:30
gr::dtv::dvbt2_pilotgenerator_cc
Adds pilots to T2 frames.
Definition: dvbt2_pilotgenerator_cc.h:27
gr::block
The abstract base class for all 'terminal' processing blocks.
Definition: block.h:59
gr::dtv::dvbt2_pilotpattern_t
dvbt2_pilotpattern_t
Definition: dvbt2_config.h:69
gr::dtv::dvbt2_version_t
dvbt2_version_t
Definition: dvbt2_config.h:80
dvb_config.h
gr
GNU Radio logging wrapper for log4cpp library (C++ port of log4j)
Definition: basic_block.h:29
gr::dtv::dvbt2_bandwidth_t
dvbt2_bandwidth_t
Definition: dvbt2_config.h:116
gr::dtv::dvb_guardinterval_t
dvb_guardinterval_t
Definition: dvb_config.h:102