📄 gr_fir_ccc.h
字号:
/* -*- c++ -*- *//* * Copyright 2002,2003 Free Software Foundation, Inc. * * This file is part of GNU Radio * * GNU Radio is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2, or (at your option) * any later version. * * GNU Radio is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with GNU Radio; see the file COPYING. If not, write to * the Free Software Foundation, Inc., 59 Temple Place - Suite 330, * Boston, MA 02111-1307, USA. *//* * WARNING: This file is automatically generated by generate_gr_fir_XXX.py * Any changes made to this file will be overwritten. */#ifndef INCLUDED_GR_FIR_CCC_H#define INCLUDED_GR_FIR_CCC_H#include <vector>#include <gr_types.h>/*! * \brief Abstract class for FIR with gr_complex input, gr_complex output and gr_complex taps * \ingroup filter_primitive * * This is the abstract class for a Finite Impulse Response filter. * * The trailing suffix has the form _IOT where I codes the input type, * O codes the output type, and T codes the tap type. * I,O,T are elements of the set 's' (short), 'f' (float), 'c' (gr_complex), 'i' (int) */class gr_fir_ccc {protected: std::vector<gr_complex> d_taps;public: // CONSTRUCTORS /*! * \brief construct new FIR with given taps. * * Note that taps must be in backwards order, e.g., coefficient 0 is * stored in new_taps[N-1], coefficient 1 is stored in * new_taps[N-2], etc. */ gr_fir_ccc () {} gr_fir_ccc (const std::vector<gr_complex> &taps) : d_taps (taps) {} virtual ~gr_fir_ccc (); // MANIPULATORS /*! * \brief compute a single output value. * * \p input must have ntaps() valid entries. * input[0] .. input[ntaps() - 1] are referenced to compute the output value. * * \returns the filtered input value. */ virtual gr_complex filter (const gr_complex input[]) = 0; /*! * \brief compute an array of N output values. * * \p input must have (n - 1 + ntaps()) valid entries. * input[0] .. input[n - 1 + ntaps() - 1] are referenced to compute the output values. */ virtual void filterN (gr_complex output[], const gr_complex input[], unsigned long n) = 0; /*! * \brief compute an array of N output values, decimating the input * * \p input must have (decimate * (n - 1) + ntaps()) valid entries. * input[0] .. input[decimate * (n - 1) + ntaps() - 1] are referenced to * compute the output values. */ virtual void filterNdec (gr_complex output[], const gr_complex input[], unsigned long n, unsigned decimate) = 0; /*! * \brief install \p new_taps as the current taps. */ virtual void set_taps (const std::vector<gr_complex> &taps) { d_taps = taps; } // ACCESSORS /*! * \return number of taps in filter. */ unsigned ntaps () const { return d_taps.size (); } /*! * \return a reference to the current taps */ virtual const std::vector<gr_complex> &get_taps () const { return d_taps; }};#endif /* INCLUDED_GR_FIR_CCC_H */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -