GNU Radio Manual and C++ API Reference 3.10.5.1
The Free & Open Software Radio Ecosystem
conv_bit_corr_bb.h
Go to the documentation of this file.
1/* -*- c++ -*- */
2/*
3 * Copyright 2013-2014 Free Software Foundation, Inc.
4 *
5 * This file is part of GNU Radio
6 *
7 * SPDX-License-Identifier: GPL-3.0-or-later
8 *
9 */
10
11#ifndef INCLUDED_FEC_CONV_BIT_CORR_BB_H
12#define INCLUDED_FEC_CONV_BIT_CORR_BB_H
13
14#include <gnuradio/block.h>
15#include <gnuradio/fec/api.h>
16#include <vector>
17
18namespace gr {
19namespace fec {
20
21/*!
22 * \brief Correlate block in FECAPI
23 * \ingroup error_coding_blk
24 *
25 * \details
26 *
27 * What does this block do?
28 */
29class FEC_API conv_bit_corr_bb : virtual public block
30{
31public:
32 // gr::fec::conv_bit_corr_bb::sptr
33 typedef std::shared_ptr<conv_bit_corr_bb> sptr;
34
35 static sptr make(std::vector<unsigned long long> correlator,
36 int corr_sym,
37 int corr_len,
38 int cut,
39 int flush,
40 float thresh);
41
42 /*!
43 * This subroutine will find the encoded data garble rate
44 * corresponding to a syndrome density of `target', that is created
45 * with an annihilating polynomial with 'taps' number of taps.
46 */
47 virtual float data_garble_rate(int taps, float syn_density) = 0;
48};
49
50} /* namespace fec */
51} /* namespace gr */
52
53#endif /* INCLUDED_FEC_CONV_BIT_CORR_BB_H */
The abstract base class for all 'terminal' processing blocks.
Definition: gnuradio-runtime/include/gnuradio/block.h:63
Correlate block in FECAPI.
Definition: conv_bit_corr_bb.h:30
static sptr make(std::vector< unsigned long long > correlator, int corr_sym, int corr_len, int cut, int flush, float thresh)
virtual float data_garble_rate(int taps, float syn_density)=0
std::shared_ptr< conv_bit_corr_bb > sptr
Definition: conv_bit_corr_bb.h:33
#define FEC_API
Definition: gr-fec/include/gnuradio/fec/api.h:18
static constexpr float taps[NSTEPS+1][NTAPS]
Definition: interpolator_taps.h:9
GNU Radio logging wrapper.
Definition: basic_block.h:29