GNU Radio Manual and C++ API Reference  3.9.1.0
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 */
block.h
gr::dtv::dvb_bbheader_bb::sptr
std::shared_ptr< dvb_bbheader_bb > sptr
Definition: dvb_bbheader_bb.h:34
gr::dtv::dvb_standard_t
dvb_standard_t
Definition: dvb_config.h:14
dvbs2_config.h
DTV_API
#define DTV_API
Definition: gr-dtv/include/gnuradio/dtv/api.h:18
gr::dtv::dvbs2_rolloff_factor_t
dvbs2_rolloff_factor_t
Definition: dvbs2_config.h:14
dvbt2_config.h
gr::dtv::dvb_framesize_t
dvb_framesize_t
Definition: dvb_config.h:73
gr::dtv::dvbt2_inband_t
dvbt2_inband_t
Definition: dvbt2_config.h:106
gr::dtv::dvb_code_rate_t
dvb_code_rate_t
Definition: dvb_config.h:19
gr::dtv::dvbt2_inputmode_t
dvbt2_inputmode_t
Definition: dvbt2_config.h:25
api.h
gr::block
The abstract base class for all 'terminal' processing blocks.
Definition: block.h:59
gr::dtv::dvb_bbheader_bb
Formats MPEG-2 Transport Stream packets into FEC baseband frames and adds a 10-byte header.
Definition: dvb_bbheader_bb.h:31
dvb_config.h
gr
GNU Radio logging wrapper for log4cpp library (C++ port of log4j)
Definition: basic_block.h:29