<?xml version='1.0' encoding='UTF-8' standalone='no'?>
<doxygen xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="compound.xsd" version="1.17.0" xml:lang="en-US">
  <compounddef id="classgr_1_1filter_1_1kernel_1_1fft__filter__fff" kind="class" language="C++" prot="public">
    <compoundname>gr::filter::kernel::fft_filter_fff</compoundname>
    <includes refid="fft__filter_8h" local="no">gnuradio/filter/fft_filter.h</includes>
    <sectiondef kind="private-attrib">
      <memberdef kind="variable" id="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1a136cfda89acad3f50f27411d0845f213" prot="private" static="no" mutable="no">
        <type>int</type>
        <definition>int gr::filter::kernel::fft_filter_fff::d_ntaps</definition>
        <argsstring></argsstring>
        <name>d_ntaps</name>
        <qualifiedname>gr::filter::kernel::fft_filter_fff::d_ntaps</qualifiedname>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/pbulk/work/ham/gnuradio-doxygen/work/gnuradio-3.10.12.0/gr-filter/include/gnuradio/filter/fft_filter.h" line="60" column="9" bodyfile="/pbulk/work/ham/gnuradio-doxygen/work/gnuradio-3.10.12.0/gr-filter/include/gnuradio/filter/fft_filter.h" bodystart="60" bodyend="-1"/>
      </memberdef>
      <memberdef kind="variable" id="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1ada5a16bd35cf5c5585c5f162b513d108" prot="private" static="no" mutable="no">
        <type>int</type>
        <definition>int gr::filter::kernel::fft_filter_fff::d_nsamples</definition>
        <argsstring></argsstring>
        <name>d_nsamples</name>
        <qualifiedname>gr::filter::kernel::fft_filter_fff::d_nsamples</qualifiedname>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/pbulk/work/ham/gnuradio-doxygen/work/gnuradio-3.10.12.0/gr-filter/include/gnuradio/filter/fft_filter.h" line="61" column="9" bodyfile="/pbulk/work/ham/gnuradio-doxygen/work/gnuradio-3.10.12.0/gr-filter/include/gnuradio/filter/fft_filter.h" bodystart="61" bodyend="-1"/>
      </memberdef>
      <memberdef kind="variable" id="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1adc601826f606ae230cea86b34ce4f5ad" prot="private" static="no" mutable="no">
        <type>int</type>
        <definition>int gr::filter::kernel::fft_filter_fff::d_fftsize</definition>
        <argsstring></argsstring>
        <name>d_fftsize</name>
        <qualifiedname>gr::filter::kernel::fft_filter_fff::d_fftsize</qualifiedname>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/pbulk/work/ham/gnuradio-doxygen/work/gnuradio-3.10.12.0/gr-filter/include/gnuradio/filter/fft_filter.h" line="62" column="9" bodyfile="/pbulk/work/ham/gnuradio-doxygen/work/gnuradio-3.10.12.0/gr-filter/include/gnuradio/filter/fft_filter.h" bodystart="62" bodyend="-1"/>
      </memberdef>
      <memberdef kind="variable" id="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1aa15dda604ed517d9bed98759ae98b0b1" prot="private" static="no" mutable="no">
        <type>int</type>
        <definition>int gr::filter::kernel::fft_filter_fff::d_decimation</definition>
        <argsstring></argsstring>
        <name>d_decimation</name>
        <qualifiedname>gr::filter::kernel::fft_filter_fff::d_decimation</qualifiedname>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/pbulk/work/ham/gnuradio-doxygen/work/gnuradio-3.10.12.0/gr-filter/include/gnuradio/filter/fft_filter.h" line="63" column="9" bodyfile="/pbulk/work/ham/gnuradio-doxygen/work/gnuradio-3.10.12.0/gr-filter/include/gnuradio/filter/fft_filter.h" bodystart="63" bodyend="-1"/>
      </memberdef>
      <memberdef kind="variable" id="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1ab93b81e1ba1fdf07bb3bf6225c015367" prot="private" static="no" mutable="no">
        <type>std::unique_ptr&lt; <ref refid="namespacegr_1_1fft_1a45849c881120dd9bba22e0fb1261fb8d" kindref="member">fft::fft_real_fwd</ref> &gt;</type>
        <definition>std::unique_ptr&lt;fft::fft_real_fwd&gt; gr::filter::kernel::fft_filter_fff::d_fwdfft</definition>
        <argsstring></argsstring>
        <name>d_fwdfft</name>
        <qualifiedname>gr::filter::kernel::fft_filter_fff::d_fwdfft</qualifiedname>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/pbulk/work/ham/gnuradio-doxygen/work/gnuradio-3.10.12.0/gr-filter/include/gnuradio/filter/fft_filter.h" line="64" column="21" bodyfile="/pbulk/work/ham/gnuradio-doxygen/work/gnuradio-3.10.12.0/gr-filter/include/gnuradio/filter/fft_filter.h" bodystart="64" bodyend="-1"/>
      </memberdef>
      <memberdef kind="variable" id="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1a2a5e0c0e929e71cae8bc130d19dcfb9d" prot="private" static="no" mutable="no">
        <type>std::unique_ptr&lt; <ref refid="namespacegr_1_1fft_1af7673ec40e17a6e3881b3e75428f1dd9" kindref="member">fft::fft_real_rev</ref> &gt;</type>
        <definition>std::unique_ptr&lt;fft::fft_real_rev&gt; gr::filter::kernel::fft_filter_fff::d_invfft</definition>
        <argsstring></argsstring>
        <name>d_invfft</name>
        <qualifiedname>gr::filter::kernel::fft_filter_fff::d_invfft</qualifiedname>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/pbulk/work/ham/gnuradio-doxygen/work/gnuradio-3.10.12.0/gr-filter/include/gnuradio/filter/fft_filter.h" line="65" column="21" bodyfile="/pbulk/work/ham/gnuradio-doxygen/work/gnuradio-3.10.12.0/gr-filter/include/gnuradio/filter/fft_filter.h" bodystart="65" bodyend="-1"/>
      </memberdef>
      <memberdef kind="variable" id="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1a932a5c014ea783c40ec264b2d5b7126e" prot="private" static="no" mutable="no">
        <type>int</type>
        <definition>int gr::filter::kernel::fft_filter_fff::d_nthreads</definition>
        <argsstring></argsstring>
        <name>d_nthreads</name>
        <qualifiedname>gr::filter::kernel::fft_filter_fff::d_nthreads</qualifiedname>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/pbulk/work/ham/gnuradio-doxygen/work/gnuradio-3.10.12.0/gr-filter/include/gnuradio/filter/fft_filter.h" line="66" column="9" bodyfile="/pbulk/work/ham/gnuradio-doxygen/work/gnuradio-3.10.12.0/gr-filter/include/gnuradio/filter/fft_filter.h" bodystart="66" bodyend="-1"/>
      </memberdef>
      <memberdef kind="variable" id="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1a567da390c61ac797f23de1fe2294e77d" prot="private" static="no" mutable="no">
        <type>std::vector&lt; float &gt;</type>
        <definition>std::vector&lt;float&gt; gr::filter::kernel::fft_filter_fff::d_tail</definition>
        <argsstring></argsstring>
        <name>d_tail</name>
        <qualifiedname>gr::filter::kernel::fft_filter_fff::d_tail</qualifiedname>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/pbulk/work/ham/gnuradio-doxygen/work/gnuradio-3.10.12.0/gr-filter/include/gnuradio/filter/fft_filter.h" line="67" column="17" bodyfile="/pbulk/work/ham/gnuradio-doxygen/work/gnuradio-3.10.12.0/gr-filter/include/gnuradio/filter/fft_filter.h" bodystart="67" bodyend="-1"/>
      </memberdef>
      <memberdef kind="variable" id="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1ac45858d5b5e151dd27776045083cc7f6" prot="private" static="no" mutable="no">
        <type>std::vector&lt; float &gt;</type>
        <definition>std::vector&lt;float&gt; gr::filter::kernel::fft_filter_fff::d_taps</definition>
        <argsstring></argsstring>
        <name>d_taps</name>
        <qualifiedname>gr::filter::kernel::fft_filter_fff::d_taps</qualifiedname>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/pbulk/work/ham/gnuradio-doxygen/work/gnuradio-3.10.12.0/gr-filter/include/gnuradio/filter/fft_filter.h" line="68" column="17" bodyfile="/pbulk/work/ham/gnuradio-doxygen/work/gnuradio-3.10.12.0/gr-filter/include/gnuradio/filter/fft_filter.h" bodystart="68" bodyend="-1"/>
      </memberdef>
      <memberdef kind="variable" id="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1ab87e7019a4a7348f54c7e7673b934243" prot="private" static="no" mutable="no">
        <type>volk::vector&lt; <ref refid="gr__complex_8h_1aec4bfe41433369afae9327f1b0bc9109" kindref="member">gr_complex</ref> &gt;</type>
        <definition>volk::vector&lt;gr_complex&gt; gr::filter::kernel::fft_filter_fff::d_xformed_taps</definition>
        <argsstring></argsstring>
        <name>d_xformed_taps</name>
        <qualifiedname>gr::filter::kernel::fft_filter_fff::d_xformed_taps</qualifiedname>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/pbulk/work/ham/gnuradio-doxygen/work/gnuradio-3.10.12.0/gr-filter/include/gnuradio/filter/fft_filter.h" line="69" column="18" bodyfile="/pbulk/work/ham/gnuradio-doxygen/work/gnuradio-3.10.12.0/gr-filter/include/gnuradio/filter/fft_filter.h" bodystart="69" bodyend="-1"/>
      </memberdef>
      <memberdef kind="variable" id="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1ad205ce38301e7885d110b2e68a940efa" prot="private" static="no" mutable="no">
        <type><ref refid="namespacegr_1a5f54bf3c08623ce6dea7b1cdb2eeada7" kindref="member">gr::logger_ptr</ref></type>
        <definition>gr::logger_ptr gr::filter::kernel::fft_filter_fff::d_logger</definition>
        <argsstring></argsstring>
        <name>d_logger</name>
        <qualifiedname>gr::filter::kernel::fft_filter_fff::d_logger</qualifiedname>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/pbulk/work/ham/gnuradio-doxygen/work/gnuradio-3.10.12.0/gr-filter/include/gnuradio/filter/fft_filter.h" line="74" column="20" bodyfile="/pbulk/work/ham/gnuradio-doxygen/work/gnuradio-3.10.12.0/gr-filter/include/gnuradio/filter/fft_filter.h" bodystart="74" bodyend="-1"/>
      </memberdef>
      <memberdef kind="variable" id="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1a48607e96d601a1d941ffc31049a58814" prot="private" static="no" mutable="no">
        <type><ref refid="namespacegr_1a5f54bf3c08623ce6dea7b1cdb2eeada7" kindref="member">gr::logger_ptr</ref></type>
        <definition>gr::logger_ptr gr::filter::kernel::fft_filter_fff::d_debug_logger</definition>
        <argsstring></argsstring>
        <name>d_debug_logger</name>
        <qualifiedname>gr::filter::kernel::fft_filter_fff::d_debug_logger</qualifiedname>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/pbulk/work/ham/gnuradio-doxygen/work/gnuradio-3.10.12.0/gr-filter/include/gnuradio/filter/fft_filter.h" line="74" column="29" bodyfile="/pbulk/work/ham/gnuradio-doxygen/work/gnuradio-3.10.12.0/gr-filter/include/gnuradio/filter/fft_filter.h" bodystart="74" bodyend="-1"/>
      </memberdef>
    </sectiondef>
    <sectiondef kind="private-func">
      <memberdef kind="function" id="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1a76e4a735492cf2e805fbfc5a2f788559" prot="private" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>void</type>
        <definition>void gr::filter::kernel::fft_filter_fff::compute_sizes</definition>
        <argsstring>(int ntaps)</argsstring>
        <name>compute_sizes</name>
        <qualifiedname>gr::filter::kernel::fft_filter_fff::compute_sizes</qualifiedname>
        <param>
          <type>int</type>
          <declname>ntaps</declname>
        </param>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/pbulk/work/ham/gnuradio-doxygen/work/gnuradio-3.10.12.0/gr-filter/include/gnuradio/filter/fft_filter.h" line="71" column="10"/>
      </memberdef>
      <memberdef kind="function" id="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1a62a0b1e7b212805c574ee663ffde56dc" prot="private" static="no" const="yes" explicit="no" inline="yes" virt="non-virtual">
        <type>int</type>
        <definition>int gr::filter::kernel::fft_filter_fff::tailsize</definition>
        <argsstring>() const</argsstring>
        <name>tailsize</name>
        <qualifiedname>gr::filter::kernel::fft_filter_fff::tailsize</qualifiedname>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/pbulk/work/ham/gnuradio-doxygen/work/gnuradio-3.10.12.0/gr-filter/include/gnuradio/filter/fft_filter.h" line="72" column="9" bodyfile="/pbulk/work/ham/gnuradio-doxygen/work/gnuradio-3.10.12.0/gr-filter/include/gnuradio/filter/fft_filter.h" bodystart="72" bodyend="72"/>
      </memberdef>
    </sectiondef>
    <sectiondef kind="public-func">
      <memberdef kind="function" id="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1aa58bf40086260e68aa4665524f231795" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type></type>
        <definition>gr::filter::kernel::fft_filter_fff::fft_filter_fff</definition>
        <argsstring>(int decimation, const std::vector&lt; float &gt; &amp;taps, int nthreads=1)</argsstring>
        <name>fft_filter_fff</name>
        <qualifiedname>gr::filter::kernel::fft_filter_fff::fft_filter_fff</qualifiedname>
        <param>
          <type>int</type>
          <declname>decimation</declname>
        </param>
        <param>
          <type>const std::vector&lt; float &gt; &amp;</type>
          <declname>taps</declname>
        </param>
        <param>
          <type>int</type>
          <declname>nthreads</declname>
          <defval>1</defval>
        </param>
        <briefdescription>
<para>Construct an FFT filter for float vectors with the given taps and decimation rate. </para>
        </briefdescription>
        <detaileddescription>
<para>This is the basic implementation for performing FFT filter for fast convolution in other blocks (e.g., <ref refid="classgr_1_1filter_1_1fft__filter__fff" kindref="compound">gr::filter::fft_filter_fff</ref>).</para>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>decimation</parametername>
</parameternamelist>
<parameterdescription>
<para>The decimation rate of the filter (int) </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>taps</parametername>
</parameternamelist>
<parameterdescription>
<para>The filter taps (vector of float) </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>nthreads</parametername>
</parameternamelist>
<parameterdescription>
<para>The number of threads for the FFT to use (int) </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/pbulk/work/ham/gnuradio-doxygen/work/gnuradio-3.10.12.0/gr-filter/include/gnuradio/filter/fft_filter.h" line="88" column="5"/>
        <references refid="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1a1854f5f81100ce5a4858ab60a812a3b5">nthreads</references>
        <references refid="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1ad02ca3e5dd64d42308cf57069d0c96cf">taps</references>
        <referencedby refid="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1a363eaa74f71a811d95788c933d1babc1">fft_filter_fff</referencedby>
        <referencedby refid="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1a663d39905f2b6212894da362fb7d96cc">fft_filter_fff</referencedby>
        <referencedby refid="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1a8b0b013d27b6323d38f326e8adf20dd9">operator=</referencedby>
        <referencedby refid="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1a0be467a362c3eaac2b2c7c313d3ddc1d">operator=</referencedby>
      </memberdef>
      <memberdef kind="function" id="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1a363eaa74f71a811d95788c933d1babc1" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type></type>
        <definition>gr::filter::kernel::fft_filter_fff::fft_filter_fff</definition>
        <argsstring>(const fft_filter_fff &amp;)=delete</argsstring>
        <name>fft_filter_fff</name>
        <qualifiedname>gr::filter::kernel::fft_filter_fff::fft_filter_fff</qualifiedname>
        <param>
          <type>const fft_filter_fff &amp;</type>
        </param>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/pbulk/work/ham/gnuradio-doxygen/work/gnuradio-3.10.12.0/gr-filter/include/gnuradio/filter/fft_filter.h" line="94" column="5"/>
        <references refid="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1aa58bf40086260e68aa4665524f231795">fft_filter_fff</references>
      </memberdef>
      <memberdef kind="function" id="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1a8b0b013d27b6323d38f326e8adf20dd9" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1aa58bf40086260e68aa4665524f231795" kindref="member">fft_filter_fff</ref> &amp;</type>
        <definition>fft_filter_fff &amp; gr::filter::kernel::fft_filter_fff::operator=</definition>
        <argsstring>(const fft_filter_fff &amp;)=delete</argsstring>
        <name>operator=</name>
        <qualifiedname>gr::filter::kernel::fft_filter_fff::operator=</qualifiedname>
        <param>
          <type>const <ref refid="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1aa58bf40086260e68aa4665524f231795" kindref="member">fft_filter_fff</ref> &amp;</type>
        </param>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/pbulk/work/ham/gnuradio-doxygen/work/gnuradio-3.10.12.0/gr-filter/include/gnuradio/filter/fft_filter.h" line="95" column="20"/>
        <references refid="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1aa58bf40086260e68aa4665524f231795">fft_filter_fff</references>
      </memberdef>
      <memberdef kind="function" id="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1a663d39905f2b6212894da362fb7d96cc" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type></type>
        <definition>gr::filter::kernel::fft_filter_fff::fft_filter_fff</definition>
        <argsstring>(fft_filter_fff &amp;&amp;)=default</argsstring>
        <name>fft_filter_fff</name>
        <qualifiedname>gr::filter::kernel::fft_filter_fff::fft_filter_fff</qualifiedname>
        <param>
          <type>fft_filter_fff &amp;&amp;</type>
        </param>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/pbulk/work/ham/gnuradio-doxygen/work/gnuradio-3.10.12.0/gr-filter/include/gnuradio/filter/fft_filter.h" line="96" column="5"/>
        <references refid="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1aa58bf40086260e68aa4665524f231795">fft_filter_fff</references>
      </memberdef>
      <memberdef kind="function" id="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1a0be467a362c3eaac2b2c7c313d3ddc1d" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1aa58bf40086260e68aa4665524f231795" kindref="member">fft_filter_fff</ref> &amp;</type>
        <definition>fft_filter_fff &amp; gr::filter::kernel::fft_filter_fff::operator=</definition>
        <argsstring>(fft_filter_fff &amp;&amp;)=default</argsstring>
        <name>operator=</name>
        <qualifiedname>gr::filter::kernel::fft_filter_fff::operator=</qualifiedname>
        <param>
          <type><ref refid="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1aa58bf40086260e68aa4665524f231795" kindref="member">fft_filter_fff</ref> &amp;&amp;</type>
        </param>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/pbulk/work/ham/gnuradio-doxygen/work/gnuradio-3.10.12.0/gr-filter/include/gnuradio/filter/fft_filter.h" line="97" column="20"/>
        <references refid="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1aa58bf40086260e68aa4665524f231795">fft_filter_fff</references>
      </memberdef>
      <memberdef kind="function" id="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1ac1d0082c03beac912f06f8949ca90fc9" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>int</type>
        <definition>int gr::filter::kernel::fft_filter_fff::set_taps</definition>
        <argsstring>(const std::vector&lt; float &gt; &amp;taps)</argsstring>
        <name>set_taps</name>
        <qualifiedname>gr::filter::kernel::fft_filter_fff::set_taps</qualifiedname>
        <param>
          <type>const std::vector&lt; float &gt; &amp;</type>
          <declname>taps</declname>
        </param>
        <briefdescription>
<para>Set new taps for the filter. </para>
        </briefdescription>
        <detaileddescription>
<para>Sets new taps and resets the class properties to handle different sizes <parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>taps</parametername>
</parameternamelist>
<parameterdescription>
<para>The filter taps (complex) </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/pbulk/work/ham/gnuradio-doxygen/work/gnuradio-3.10.12.0/gr-filter/include/gnuradio/filter/fft_filter.h" line="105" column="9"/>
        <references refid="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1ad02ca3e5dd64d42308cf57069d0c96cf">taps</references>
      </memberdef>
      <memberdef kind="function" id="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1ab4941efadc7d7946231b2d7a2f9909c0" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>void</type>
        <definition>void gr::filter::kernel::fft_filter_fff::set_nthreads</definition>
        <argsstring>(int n)</argsstring>
        <name>set_nthreads</name>
        <qualifiedname>gr::filter::kernel::fft_filter_fff::set_nthreads</qualifiedname>
        <param>
          <type>int</type>
          <declname>n</declname>
        </param>
        <briefdescription>
<para>Set number of threads to use. </para>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/pbulk/work/ham/gnuradio-doxygen/work/gnuradio-3.10.12.0/gr-filter/include/gnuradio/filter/fft_filter.h" line="110" column="10"/>
      </memberdef>
      <memberdef kind="function" id="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1ad02ca3e5dd64d42308cf57069d0c96cf" prot="public" static="no" const="yes" explicit="no" inline="no" virt="non-virtual">
        <type>std::vector&lt; float &gt;</type>
        <definition>std::vector&lt; float &gt; gr::filter::kernel::fft_filter_fff::taps</definition>
        <argsstring>() const</argsstring>
        <name>taps</name>
        <qualifiedname>gr::filter::kernel::fft_filter_fff::taps</qualifiedname>
        <briefdescription>
<para>Returns the taps. </para>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/pbulk/work/ham/gnuradio-doxygen/work/gnuradio-3.10.12.0/gr-filter/include/gnuradio/filter/fft_filter.h" line="115" column="17"/>
        <referencedby refid="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1aa58bf40086260e68aa4665524f231795">fft_filter_fff</referencedby>
        <referencedby refid="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1ac1d0082c03beac912f06f8949ca90fc9">set_taps</referencedby>
      </memberdef>
      <memberdef kind="function" id="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1a3385eb93f71109d98c8892ae904f650f" prot="public" static="no" const="yes" explicit="no" inline="no" virt="non-virtual">
        <type>unsigned int</type>
        <definition>unsigned int gr::filter::kernel::fft_filter_fff::ntaps</definition>
        <argsstring>() const</argsstring>
        <name>ntaps</name>
        <qualifiedname>gr::filter::kernel::fft_filter_fff::ntaps</qualifiedname>
        <briefdescription>
<para>Returns the number of taps in the filter. </para>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/pbulk/work/ham/gnuradio-doxygen/work/gnuradio-3.10.12.0/gr-filter/include/gnuradio/filter/fft_filter.h" line="120" column="18"/>
      </memberdef>
      <memberdef kind="function" id="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1a1854f5f81100ce5a4858ab60a812a3b5" prot="public" static="no" const="yes" explicit="no" inline="no" virt="non-virtual">
        <type>int</type>
        <definition>int gr::filter::kernel::fft_filter_fff::nthreads</definition>
        <argsstring>() const</argsstring>
        <name>nthreads</name>
        <qualifiedname>gr::filter::kernel::fft_filter_fff::nthreads</qualifiedname>
        <briefdescription>
<para>Get number of threads being used. </para>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/pbulk/work/ham/gnuradio-doxygen/work/gnuradio-3.10.12.0/gr-filter/include/gnuradio/filter/fft_filter.h" line="125" column="9"/>
        <referencedby refid="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1aa58bf40086260e68aa4665524f231795">fft_filter_fff</referencedby>
      </memberdef>
      <memberdef kind="function" id="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1ae60c88dd24246165b98921903c039a31" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>int</type>
        <definition>int gr::filter::kernel::fft_filter_fff::filter</definition>
        <argsstring>(int nitems, const float *input, float *output)</argsstring>
        <name>filter</name>
        <qualifiedname>gr::filter::kernel::fft_filter_fff::filter</qualifiedname>
        <param>
          <type>int</type>
          <declname>nitems</declname>
        </param>
        <param>
          <type>const float *</type>
          <declname>input</declname>
        </param>
        <param>
          <type>float *</type>
          <declname>output</declname>
        </param>
        <briefdescription>
<para>Perform the filter operation. </para>
        </briefdescription>
        <detaileddescription>
<para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>nitems</parametername>
</parameternamelist>
<parameterdescription>
<para>The number of items to produce </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>input</parametername>
</parameternamelist>
<parameterdescription>
<para>The input vector to be filtered </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>output</parametername>
</parameternamelist>
<parameterdescription>
<para>The result of the filter operation </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/pbulk/work/ham/gnuradio-doxygen/work/gnuradio-3.10.12.0/gr-filter/include/gnuradio/filter/fft_filter.h" line="134" column="9"/>
      </memberdef>
    </sectiondef>
    <briefdescription>
<para>Fast FFT filter with float input, float output and float taps. </para>
    </briefdescription>
    <detaileddescription>
<para>This block performs fast convolution using the overlap-and-add algorithm. The filtering is performand in the frequency domain instead of the time domain (see <ref refid="namespacegr_1_1filter_1_1kernel_1a8639c99e2cfc3680b0fca192103e5c9b" kindref="member">gr::filter::kernel::fir_filter_fff</ref>). For an input signal x and filter coefficients (taps) t, we compute y as:</para>
<para><programlisting><codeline><highlight class="normal">y<sp/>=<sp/>ifft(fft(x)*fft(t))</highlight></codeline>
</programlisting></para>
<para>This kernel computes the FFT of the taps when they are set to only perform this operation once. The FFT of the input signal x is done every time.</para>
<para>Because this is designed as a very low-level kernel operation, it is designed for speed and avoids certain checks in the <ref refid="namespacegr_1_1filter" kindref="compound">filter()</ref> function itself. The filter function expects that the input signal is a multiple of d_nsamples in the class that&apos;s computed internally to be as fast as possible. The function set_taps will return the value of nsamples that can be used externally to check this boundary. Notice that all implementations of the fft_filter GNU Radio blocks (e.g., <ref refid="classgr_1_1filter_1_1fft__filter__fff" kindref="compound">gr::filter::fft_filter_fff</ref>) use this value of nsamples to compute the value to call <ref refid="classgr_1_1block_1a63d67fd758b70c6f2d7b7d4edcec53b3" kindref="member">gr::block::set_output_multiple</ref> that ensures the scheduler always passes this block the right number of samples. </para>
    </detaileddescription>
    <location file="/pbulk/work/ham/gnuradio-doxygen/work/gnuradio-3.10.12.0/gr-filter/include/gnuradio/filter/fft_filter.h" line="57" column="1" bodyfile="/pbulk/work/ham/gnuradio-doxygen/work/gnuradio-3.10.12.0/gr-filter/include/gnuradio/filter/fft_filter.h" bodystart="58" bodyend="135"/>
    <listofallmembers>
      <member refid="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1a76e4a735492cf2e805fbfc5a2f788559" prot="private" virt="non-virtual"><scope>gr::filter::kernel::fft_filter_fff</scope><name>compute_sizes</name></member>
      <member refid="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1a48607e96d601a1d941ffc31049a58814" prot="private" virt="non-virtual"><scope>gr::filter::kernel::fft_filter_fff</scope><name>d_debug_logger</name></member>
      <member refid="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1aa15dda604ed517d9bed98759ae98b0b1" prot="private" virt="non-virtual"><scope>gr::filter::kernel::fft_filter_fff</scope><name>d_decimation</name></member>
      <member refid="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1adc601826f606ae230cea86b34ce4f5ad" prot="private" virt="non-virtual"><scope>gr::filter::kernel::fft_filter_fff</scope><name>d_fftsize</name></member>
      <member refid="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1ab93b81e1ba1fdf07bb3bf6225c015367" prot="private" virt="non-virtual"><scope>gr::filter::kernel::fft_filter_fff</scope><name>d_fwdfft</name></member>
      <member refid="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1a2a5e0c0e929e71cae8bc130d19dcfb9d" prot="private" virt="non-virtual"><scope>gr::filter::kernel::fft_filter_fff</scope><name>d_invfft</name></member>
      <member refid="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1ad205ce38301e7885d110b2e68a940efa" prot="private" virt="non-virtual"><scope>gr::filter::kernel::fft_filter_fff</scope><name>d_logger</name></member>
      <member refid="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1ada5a16bd35cf5c5585c5f162b513d108" prot="private" virt="non-virtual"><scope>gr::filter::kernel::fft_filter_fff</scope><name>d_nsamples</name></member>
      <member refid="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1a136cfda89acad3f50f27411d0845f213" prot="private" virt="non-virtual"><scope>gr::filter::kernel::fft_filter_fff</scope><name>d_ntaps</name></member>
      <member refid="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1a932a5c014ea783c40ec264b2d5b7126e" prot="private" virt="non-virtual"><scope>gr::filter::kernel::fft_filter_fff</scope><name>d_nthreads</name></member>
      <member refid="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1a567da390c61ac797f23de1fe2294e77d" prot="private" virt="non-virtual"><scope>gr::filter::kernel::fft_filter_fff</scope><name>d_tail</name></member>
      <member refid="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1ac45858d5b5e151dd27776045083cc7f6" prot="private" virt="non-virtual"><scope>gr::filter::kernel::fft_filter_fff</scope><name>d_taps</name></member>
      <member refid="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1ab87e7019a4a7348f54c7e7673b934243" prot="private" virt="non-virtual"><scope>gr::filter::kernel::fft_filter_fff</scope><name>d_xformed_taps</name></member>
      <member refid="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1aa58bf40086260e68aa4665524f231795" prot="public" virt="non-virtual"><scope>gr::filter::kernel::fft_filter_fff</scope><name>fft_filter_fff</name></member>
      <member refid="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1a363eaa74f71a811d95788c933d1babc1" prot="public" virt="non-virtual"><scope>gr::filter::kernel::fft_filter_fff</scope><name>fft_filter_fff</name></member>
      <member refid="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1a663d39905f2b6212894da362fb7d96cc" prot="public" virt="non-virtual"><scope>gr::filter::kernel::fft_filter_fff</scope><name>fft_filter_fff</name></member>
      <member refid="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1ae60c88dd24246165b98921903c039a31" prot="public" virt="non-virtual"><scope>gr::filter::kernel::fft_filter_fff</scope><name>filter</name></member>
      <member refid="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1a3385eb93f71109d98c8892ae904f650f" prot="public" virt="non-virtual"><scope>gr::filter::kernel::fft_filter_fff</scope><name>ntaps</name></member>
      <member refid="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1a1854f5f81100ce5a4858ab60a812a3b5" prot="public" virt="non-virtual"><scope>gr::filter::kernel::fft_filter_fff</scope><name>nthreads</name></member>
      <member refid="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1a8b0b013d27b6323d38f326e8adf20dd9" prot="public" virt="non-virtual"><scope>gr::filter::kernel::fft_filter_fff</scope><name>operator=</name></member>
      <member refid="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1a0be467a362c3eaac2b2c7c313d3ddc1d" prot="public" virt="non-virtual"><scope>gr::filter::kernel::fft_filter_fff</scope><name>operator=</name></member>
      <member refid="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1ab4941efadc7d7946231b2d7a2f9909c0" prot="public" virt="non-virtual"><scope>gr::filter::kernel::fft_filter_fff</scope><name>set_nthreads</name></member>
      <member refid="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1ac1d0082c03beac912f06f8949ca90fc9" prot="public" virt="non-virtual"><scope>gr::filter::kernel::fft_filter_fff</scope><name>set_taps</name></member>
      <member refid="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1a62a0b1e7b212805c574ee663ffde56dc" prot="private" virt="non-virtual"><scope>gr::filter::kernel::fft_filter_fff</scope><name>tailsize</name></member>
      <member refid="classgr_1_1filter_1_1kernel_1_1fft__filter__fff_1ad02ca3e5dd64d42308cf57069d0c96cf" prot="public" virt="non-virtual"><scope>gr::filter::kernel::fft_filter_fff</scope><name>taps</name></member>
    </listofallmembers>
  </compounddef>
</doxygen>
