Loading...
Searching...
No Matches
dvbt2_paprtr_cc.h
Go to the documentation of this file.
/* -*- c++ -*- */
/*
* Copyright 2015,2017 Free Software Foundation, Inc.
*
* SPDX-License-Identifier: GPL-3.0-or-later
*
*/
#ifndef INCLUDED_DTV_DVBT2_PAPRTR_CC_H
#define INCLUDED_DTV_DVBT2_PAPRTR_CC_H
#include <gnuradio/dtv/api.h>
#include <gnuradio/dtv/dvb_config.h>
#include <gnuradio/dtv/dvbt2_config.h>
#include <gnuradio/sync_block.h>
namespace gr {
namespace dtv {
/*!
* \brief Peak to Average Power Ratio (PAPR) reduction.
* \ingroup dtv
*
* Input: A T2 frame of OFDM symbols. \n
* Output: A T2 frame of PAPR reduced OFDM symbols.
*/
class DTV_API dvbt2_paprtr_cc : virtual public gr::sync_block
{
public:
typedef std::shared_ptr<dvbt2_paprtr_cc> sptr;
/*!
* \brief Create a PAPR reducer.
*
* \param carriermode number of carriers (normal or extended).
* \param fftsize OFDM IFFT size.
* \param pilotpattern DVB-T2 pilot pattern (PP1 - PP8).
* \param guardinterval OFDM ISI guard interval.
* \param numdatasyms number of OFDM symbols in a T2 frame.
* \param paprmode PAPR reduction mode.
* \param version DVB-T2 specification version.
* \param vclip PAPR clipping level.
* \param iterations PAPR algorithm number of iterations.
* \param vlength input and output vector length.
*/
static sptr make(dvbt2_extended_carrier_t carriermode,
dvbt2_fftsize_t fftsize,
dvbt2_pilotpattern_t pilotpattern,
dvb_guardinterval_t guardinterval,
int numdatasyms,
dvbt2_papr_t paprmode,
dvbt2_version_t version,
float vclip,
int iterations,
unsigned int vlength);
};
} // namespace dtv
} // namespace gr
#endif /* INCLUDED_DTV_DVBT2_PAPRTR_CC_H */
gr::dtv::dvbt2_paprtr_cc
Peak to Average Power Ratio (PAPR) reduction.
Definition dvbt2_paprtr_cc.h:28
gr::dtv::dvbt2_paprtr_cc::make
static sptr make(dvbt2_extended_carrier_t carriermode, dvbt2_fftsize_t fftsize, dvbt2_pilotpattern_t pilotpattern, dvb_guardinterval_t guardinterval, int numdatasyms, dvbt2_papr_t paprmode, dvbt2_version_t version, float vclip, int iterations, unsigned int vlength)
Create a PAPR reducer.
gr::dtv::dvbt2_paprtr_cc::sptr
std::shared_ptr< dvbt2_paprtr_cc > sptr
Definition dvbt2_paprtr_cc.h:30
gr::sync_block
synchronous 1:1 input to output with history
Definition sync_block.h:26
dvb_config.h
dvbt2_config.h
api.h
DTV_API
#define DTV_API
Definition gr-dtv/include/gnuradio/dtv/api.h:18
gr::dtv
Definition atsc_consts.h:17
gr::dtv::dvbt2_fftsize_t
dvbt2_fftsize_t
Definition dvbt2_config.h:43
gr::dtv::dvbt2_version_t
dvbt2_version_t
Definition dvbt2_config.h:80
gr::dtv::dvb_guardinterval_t
dvb_guardinterval_t
Definition dvb_config.h:102
gr::dtv::dvbt2_pilotpattern_t
dvbt2_pilotpattern_t
Definition dvbt2_config.h:69
gr::dtv::dvbt2_extended_carrier_t
dvbt2_extended_carrier_t
Definition dvbt2_config.h:30
gr::dtv::dvbt2_papr_t
dvbt2_papr_t
Definition dvbt2_config.h:55
gr
GNU Radio logging wrapper.
Definition basic_block.h:29
gr::version
GR_RUNTIME_API const std::string version()
return version string defined by cmake (GrVersion.cmake)
sync_block.h