GNU Radio C++ API Reference: filterbank_vcvcf.h Source File

| GNU Radio C++ API Reference 3.10.12.0 The Free & Open Software Radio Ecosystem |

Loading...
Searching...
No Matches
filterbank_vcvcf.h
Go to the documentation of this file.
1/* -*- c++ -*- */
2/*
3 * Copyright 2009,2010,2012,2014 Free Software Foundation, Inc.
4 *
5 * This file is part of GNU Radio
6 *
7 * SPDX-License-Identifier: GPL-3.0-or-later
8 *
9 */
10
11
12#ifndef INCLUDED_FILTER_FILTERBANK_CHANNELIZER_VCVCF_H
13#define INCLUDED_FILTER_FILTERBANK_CHANNELIZER_VCVCF_H
14
15#include <gnuradio/block.h>
16#include <gnuradio/filter/api.h>
17
18namespace gr {
19namespace filter {
20
21/*!
22 * \brief Filterbank with vector of gr_complex input,
23 * vector of gr_complex output and float taps
24 * \ingroup filter_blk
25 *
26 * \details
27 * This block takes in complex vectors and outputs complex vectors of the same
28 * size. Vectors of length N, rather than N normal streams are used to reduce
29 * overhead.
30 */
31 class FILTER_API filterbank_vcvcf : virtual public block
32{
33public:
34 typedef std::shared_ptr<filterbank_vcvcf> sptr;
35
36 /*!
37 * Build the filterbank.
38 * \param taps (vector of vector of floats/list of list of floats)
39 * Used to populate the filters.
40 */
41 static sptr make(const std::vector<std::vector<float>>& taps);
42
43 /*!
44 * Resets the filterbank's filter taps with the new prototype filter
45 * \param taps (vector/list of floats) The prototype filter to populate the
46 * filterbank.
47 */
48 virtual void set_taps(const std::vector<std::vector<float>>& taps) = 0;
49
50 /*!
51 * Print all of the filterbank taps to screen.
52 */
53 virtual void print_taps() = 0;
54
55 /*!
56 * Return a vector<vector<>> of the filterbank taps
57 */
58 virtual std::vector<std::vector<float>> taps() const = 0;
59};
60
61} /* namespace filter */
62} /* namespace gr */
63
64#endif /* INCLUDED_FILTER_PFB_CHANNELIZER_VCVCF_H */
gr::block::block
block(void)
Definition gnuradio-runtime/include/gnuradio/block.h:806
gr::filter::filterbank_vcvcf
Filterbank with vector of gr_complex input, vector of gr_complex output and float taps.
Definition filterbank_vcvcf.h:32
gr::filter::filterbank_vcvcf::make
static sptr make(const std::vector< std::vector< float > > &taps)
gr::filter::filterbank_vcvcf::print_taps
virtual void print_taps()=0
gr::filter::filterbank_vcvcf::taps
virtual std::vector< std::vector< float > > taps() const =0
gr::filter::filterbank_vcvcf::sptr
std::shared_ptr< filterbank_vcvcf > sptr
Definition filterbank_vcvcf.h:34
gr::filter::filterbank_vcvcf::set_taps
virtual void set_taps(const std::vector< std::vector< float > > &taps)=0
block.h
api.h
FILTER_API
#define FILTER_API
Definition gr-filter/include/gnuradio/filter/api.h:18
gr::filter
Definition dc_blocker_cc.h:18
gr
GNU Radio logging wrapper.
Definition basic_block.h:29