GNU Radio's DAB Package
peak_detector_fb_impl.h
Go to the documentation of this file.
1/* -*- c++ -*- */
2/* This is a version of the GNU Radio peak_detector_fb block before commit 9d9ea63c45b5f314eb344a69340ef49e8edafdfa.
3 *
4 * Copyright 2007,2010,2013 Free Software Foundation, Inc.
5 *
6 * This file is part of GNU Radio
7 *
8 * GNU Radio is free software; you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License as published by
10 * the Free Software Foundation; either version 3, or (at your option)
11 * any later version.
12 *
13 * GNU Radio is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 * GNU General Public License for more details.
17 *
18 * You should have received a copy of the GNU General Public License
19 * along with GNU Radio; see the file COPYING. If not, write to
20 * the Free Software Foundation, Inc., 51 Franklin Street,
21 * Boston, MA 02110-1301, USA.
22 */
23
24#ifndef INCLUDED_DAB_PEAK_DETECTOR_FB_IMPL_H
25#define INCLUDED_DAB_PEAK_DETECTOR_FB_IMPL_H
26
28
29namespace gr {
30 namespace dab {
31
33 {
34 private:
35 float d_threshold_factor_rise;
36 float d_threshold_factor_fall;
37 int d_look_ahead;
38 float d_avg_alpha;
39 float d_avg;
40 unsigned char d_found;
41 unsigned char d_state;
42 float d_peak_val;
43
44 public:
47
48 void set_threshold_factor_rise(float thr) { d_threshold_factor_rise = thr; }
49 void set_threshold_factor_fall(float thr) { d_threshold_factor_fall = thr; }
50 void set_look_ahead(int look) { d_look_ahead = look; }
51 void set_alpha(float alpha) { d_avg_alpha = alpha; }
52 float threshold_factor_rise() { return d_threshold_factor_rise; }
53 float threshold_factor_fall() { return d_threshold_factor_fall; }
54 int look_ahead() { return d_look_ahead; }
55 float alpha() { return d_avg_alpha; }
56
57 // Where all the action really happens
58 int work(int noutput_items,
59 gr_vector_const_void_star &input_items,
60 gr_vector_void_star &output_items);
61 };
62
63 } // namespace dab
64} // namespace gr
65
66#endif /* INCLUDED_DAB_PEAK_DETECTOR_FB_IMPL_H */
67
Definition peak_detector_fb_impl.h:33
float alpha()
Get the alpha value of the running average.
Definition peak_detector_fb_impl.h:55
void set_look_ahead(int look)
Set the look-ahead factor.
Definition peak_detector_fb_impl.h:50
peak_detector_fb_impl(float threshold_factor_rise, float threshold_factor_fall, int look_ahead, float alpha)
void set_threshold_factor_rise(float thr)
Set the threshold factor value for the rise time.
Definition peak_detector_fb_impl.h:48
float threshold_factor_rise()
Get the threshold factor value for the rise time.
Definition peak_detector_fb_impl.h:52
void set_alpha(float alpha)
Set the running average alpha.
Definition peak_detector_fb_impl.h:51
float threshold_factor_fall()
Get the threshold factor value for the fall time.
Definition peak_detector_fb_impl.h:53
int look_ahead()
Get the look-ahead factor value.
Definition peak_detector_fb_impl.h:54
void set_threshold_factor_fall(float thr)
Set the threshold factor value for the fall time.
Definition peak_detector_fb_impl.h:49
int work(int noutput_items, gr_vector_const_void_star &input_items, gr_vector_void_star &output_items)
Detect the peak of a signal.
Definition peak_detector_fb.h:40
Definition complex_to_interleaved_float_vcf.h:28