GNU Radio Manual and C++ API Reference  3.10.9.1
The Free & Open Software Radio Ecosystem
dvb_bbheader_bb.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_DVB_BBHEADER_BB_H
10 #define INCLUDED_DTV_DVB_BBHEADER_BB_H
11 
12 #include <gnuradio/block.h>
13 #include <gnuradio/dtv/api.h>
17 
18 namespace gr {
19 namespace dtv {
20 
21 /*!
22  * \brief Formats MPEG-2 Transport Stream packets into FEC baseband frames
23  * and adds a 10-byte header.
24  * \ingroup dtv
25  *
26  * \details
27  * Input: 188-byte MPEG-2 Transport Stream packets. \n
28  * Output: Variable length FEC baseband frames (BBFRAME). The output frame
29  * length is based on the FEC rate.
30  */
31 class DTV_API dvb_bbheader_bb : virtual public gr::block
32 {
33 public:
34  typedef std::shared_ptr<dvb_bbheader_bb> sptr;
35 
36  /*!
37  * \brief Create a baseband header formatter.
38  *
39  * \param standard DVB standard (DVB-S2 or DVB-T2).
40  * \param framesize FEC frame size (normal, medium or short).
41  * \param rate FEC code rate.
42  * \param rolloff DVB-S2 root-raised-cosine filter roll-off.
43  * \param mode DVB-T2 input processing mode.
44  * \param inband DVB-T2 Type B in-band signalling.
45  * \param fecblocks DVB-T2 number of FEC block for in-band signalling.
46  * \param tsrate DVB-T2 Transport Stream rate for in-band signalling.
47  */
48  static sptr make(dvb_standard_t standard,
49  dvb_framesize_t framesize,
50  dvb_code_rate_t rate,
51  dvbs2_rolloff_factor_t rolloff,
52  dvbt2_inputmode_t mode,
53  dvbt2_inband_t inband,
54  int fecblocks,
55  int tsrate);
56 };
57 
58 } // namespace dtv
59 } // namespace gr
60 
61 #endif /* INCLUDED_DTV_DVB_BBHEADER_BB_H */
The abstract base class for all 'terminal' processing blocks.
Definition: gnuradio-runtime/include/gnuradio/block.h:63
Formats MPEG-2 Transport Stream packets into FEC baseband frames and adds a 10-byte header.
Definition: dvb_bbheader_bb.h:32
static sptr make(dvb_standard_t standard, dvb_framesize_t framesize, dvb_code_rate_t rate, dvbs2_rolloff_factor_t rolloff, dvbt2_inputmode_t mode, dvbt2_inband_t inband, int fecblocks, int tsrate)
Create a baseband header formatter.
std::shared_ptr< dvb_bbheader_bb > sptr
Definition: dvb_bbheader_bb.h:34
#define DTV_API
Definition: gr-dtv/include/gnuradio/dtv/api.h:18
dvb_code_rate_t
Definition: dvb_config.h:19
dvbt2_inputmode_t
Definition: dvbt2_config.h:25
dvb_framesize_t
Definition: dvb_config.h:73
dvbt2_inband_t
Definition: dvbt2_config.h:106
dvb_standard_t
Definition: dvb_config.h:14
dvbs2_rolloff_factor_t
Definition: dvbs2_config.h:14
GNU Radio logging wrapper.
Definition: basic_block.h:29