GNU Radio 3.6.5 C++ API
freq_xlating_fir_filter_fcc.h
Go to the documentation of this file.
1
/* -*- c++ -*- */
2
/*
3
* Copyright 2002,2004,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
/*
24
* WARNING: This file is automatically generated by cmake.
25
* Any changes made to this file will be overwritten.
26
*/
27
28
#ifndef INCLUDED_FILTER_FREQ_XLATING_FIR_FILTER_FCC_H
29
#define INCLUDED_FILTER_FREQ_XLATING_FIR_FILTER_FCC_H
30
31
#include <
filter/api.h
>
32
#include <
gr_sync_decimator.h
>
33
#include <
gr_rotator.h
>
34
35
namespace
gr {
36
namespace
filter {
37
38
39
/*!
40
* \brief FIR filter combined with frequency translation with
41
* float input, gr_complex output and gr_complex taps
42
*
43
* \ingroup channelizers_blk
44
*
45
* This class efficiently combines a frequency translation
46
* (typically "down conversion") with a FIR filter (typically
47
* low-pass) and decimation. It is ideally suited for a "channel
48
* selection filter" and can be efficiently used to select and
49
* decimate a narrow band signal out of wide bandwidth input.
50
*
51
* Uses a single input array to produce a single output array.
52
* Additional inputs and/or outputs are ignored.
53
*/
54
class
FILTER_API
freq_xlating_fir_filter_fcc
:
virtual
public
gr_sync_decimator
55
{
56
public
:
57
// gr::filter::freq_xlating_fir_filter_fcc::sptr
58
typedef
boost::shared_ptr<freq_xlating_fir_filter_fcc>
sptr
;
59
60
/*!
61
* \brief FIR filter with float input, gr_complex output, and
62
* gr_complex taps that also frequency translates a signal from
63
* \p center_freq.
64
*
65
* Construct a FIR filter with the given taps and a composite
66
* frequency translation that shifts center_freq down to zero
67
* Hz. The frequency translation logically comes before the
68
* filtering operation.
69
*
70
* \param decimation set the integer decimation rate
71
* \param taps a vector/list of taps of type gr_complex
72
* \param center_freq Center frequency of signal to down convert from (Hz)
73
* \param sampling_freq Sampling rate of signal (in Hz)
74
*/
75
static
sptr
make(
int
decimation,
76
const
std::vector<gr_complex> &
taps
,
77
double
center_freq,
78
double
sampling_freq);
79
80
virtual
void
set_center_freq(
double
center_freq) = 0;
81
virtual
double
center_freq()
const
= 0;
82
83
virtual
void
set_taps(
const
std::vector<gr_complex> &
taps
) = 0;
84
virtual
std::vector<gr_complex>
taps
()
const
= 0;
85
};
86
87
}
/* namespace filter */
88
}
/* namespace gr */
89
90
#endif
/* INCLUDED_FILTER_FREQ_XLATING_FIR_FILTER_FCC_H */
gr-filter
include
filter
freq_xlating_fir_filter_fcc.h
Generated by
1.8.3.1