GNU Radio 3.7.2.1 C++ API
kurtotic_equalizer_cc.h
Go to the documentation of this file.
1
/* -*- c++ -*- */
2
/*
3
* Copyright 2011,2012 Free Software Foundation, Inc.
4
*
5
* This file is part of GNU Radio
6
*
7
* GNU Radio is free software; you can redistribute it and/or modify
8
* it under the terms of the GNU General Public License as published by
9
* the Free Software Foundation; either version 3, or (at your option)
10
* any later version.
11
*
12
* GNU Radio is distributed in the hope that it will be useful,
13
* but WITHOUT ANY WARRANTY; without even the implied warranty of
14
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15
* GNU General Public License for more details.
16
*
17
* You should have received a copy of the GNU General Public License
18
* along with GNU Radio; see the file COPYING. If not, write to
19
* the Free Software Foundation, Inc., 51 Franklin Street,
20
* Boston, MA 02110-1301, USA.
21
*/
22
23
#ifndef INCLUDED_DIGITAL_KURTOTIC_EQUALIZER_CC_H
24
#define INCLUDED_DIGITAL_KURTOTIC_EQUALIZER_CC_H
25
26
#include <
gnuradio/digital/api.h
>
27
#include <
gnuradio/sync_decimator.h
>
28
29
namespace
gr {
30
namespace
digital {
31
32
/*!
33
* \brief Implements a kurtosis-based adaptive equalizer on complex stream
34
* \ingroup equalizers_blk
35
*
36
* \details
37
* Warning: This block does not yet work.
38
*
39
* "Y. Guo, J. Zhao, Y. Sun, "Sign kurtosis maximization based blind
40
* equalization algorithm," IEEE Conf. on Control, Automation,
41
* Robotics and Vision, Vol. 3, Dec. 2004, pp. 2052 - 2057."
42
*/
43
class
DIGITAL_API
kurtotic_equalizer_cc
:
44
virtual
public
sync_decimator
45
{
46
protected
:
47
virtual
gr_complex
error(
const
gr_complex
&out) = 0;
48
virtual
void
update_tap(
gr_complex
&tap,
const
gr_complex
&in) = 0;
49
50
public
:
51
// gr::digital::kurtotic_equalizer_cc::sptr
52
typedef
boost::shared_ptr<kurtotic_equalizer_cc>
sptr
;
53
54
static
sptr
make(
int
num_taps,
float
mu);
55
56
virtual
float
gain()
const
= 0;
57
virtual
void
set_gain(
float
mu) = 0;
58
};
59
60
}
/* namespace digital */
61
}
/* namespace gr */
62
63
#endif
/* INCLUDED_DIGITAL_KURTOTIC_EQUALIZER_CC_H */
gnuradio
gr-digital
include
gnuradio
digital
kurtotic_equalizer_cc.h
Generated by
1.8.3.1