GNU Radio Manual and C++ API Reference 3.7.14.0
The Free & Open Software Radio Ecosystem
fir_filter_fsf.h
Go to the documentation of this file.
1/* -*- c++ -*- */
2/*
3 * Copyright 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/* WARNING: this file is machine generated. Edits will be overwritten */
24
25#ifndef INCLUDED_FILTER_FIR_FILTER_FSF_H
26#define INCLUDED_FILTER_FIR_FILTER_FSF_H
27
28#include <gnuradio/filter/api.h>
30
31namespace gr {
32 namespace filter {
33
34 /*!
35 * \brief FIR filter with float input, short output, and float taps
36 * \ingroup filter_blk
37 *
38 * \details
39 * The fir_filter_XXX blocks create finite impulse response
40 * (FIR) filters that perform the convolution in the time
41 * domain:
42 *
43 * \code
44 * out = 0
45 * for i in ntaps:
46 * out += input[n-i] * taps[i]
47 * \endcode
48 *
49 * The taps are a C++ vector (or Python list) of values of the
50 * type specified by the third letter in the block's suffix. For
51 * this block, the value is of type float. Taps can be
52 * created using the firdes or optfir tools.
53 *
54 * These versions of the filter can also act as down-samplers
55 * (or decimators) by specifying an integer value for \p
56 * decimation.
57 */
59 {
60 public:
61
62 // gr::filter::fir_filter_fsf::sptr
63 typedef boost::shared_ptr<fir_filter_fsf> sptr;
64
65 /*!
66 * \brief FIR filter with float input, short output, and float taps
67 *
68 * \param decimation set the integer decimation rate
69 * \param taps a vector/list of taps of type float
70 */
71 static sptr make(int decimation,
72 const std::vector<float> &taps);
73
74 virtual void set_taps(const std::vector<float> &taps) = 0;
75 virtual std::vector<float> taps() const = 0;
76 };
77
78 } /* namespace filter */
79} /* namespace gr */
80
81#endif /* INCLUDED_FILTER_FIR_FILTER_FSF_H */
FIR filter with float input, short output, and float taps.
Definition: fir_filter_fsf.h:59
virtual void set_taps(const std::vector< float > &taps)=0
boost::shared_ptr< fir_filter_fsf > sptr
Definition: fir_filter_fsf.h:63
static sptr make(int decimation, const std::vector< float > &taps)
FIR filter with float input, short output, and float taps.
virtual std::vector< float > taps() const =0
synchronous N:1 input to output with history
Definition: sync_decimator.h:38
#define FILTER_API
Definition: gr-filter/include/gnuradio/filter/api.h:30
static const float taps[NSTEPS+1][NTAPS]
Definition: interpolator_taps.h:9
Include this header to use the message passing features.
Definition: basic_block.h:45