GNU Radio Manual and C++ API Reference 3.7.14.0
The Free & Open Software Radio Ecosystem
filter_delay_fc.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#ifndef INCLUDED_FILTER_FILTER_DELAY_FC_H
24#define INCLUDED_FILTER_FILTER_DELAY_FC_H
25
26#include <gnuradio/filter/api.h>
27#include <gnuradio/sync_block.h>
28
29namespace gr {
30namespace filter {
31
32/*!
33 * \brief Filter-Delay Combination Block.
34 * \ingroup filter_blk
35 *
36 * \details
37 * The block takes one or two float stream and outputs a complex
38 * stream.
39 *
40 * If only one float stream is input, the real output is a delayed
41 * version of this input and the imaginary output is the filtered
42 * output.
43 *
44 * If two floats are connected to the input, then the real output
45 * is the delayed version of the first input, and the imaginary
46 * output is the filtered output.
47 *
48 * The delay in the real path accounts for the group delay
49 * introduced by the filter in the imaginary path. The filter taps
50 * needs to be calculated before initializing this block.
51 */
53{
54public:
55 // gr::filter::filter_delay_fc::sptr
56 typedef boost::shared_ptr<filter_delay_fc> sptr;
57
58 /*!
59 * Build a filter with delay block.
60 */
61 static sptr make(const std::vector<float>& taps);
62};
63
64} /* namespace filter */
65} /* namespace gr */
66
67#endif /* INCLUDED_FILTER_FILTER_DELAY_FC_H */
Filter-Delay Combination Block.
Definition: filter_delay_fc.h:53
boost::shared_ptr< filter_delay_fc > sptr
Definition: filter_delay_fc.h:56
static sptr make(const std::vector< float > &taps)
synchronous 1:1 input to output with history
Definition: sync_block.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