<?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.16.1" xml:lang="en-US">
  <compounddef id="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc" kind="class" language="C++" prot="public">
    <compoundname>gr::filter::kernel::fft_filter_ccc</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__ccc_1a7a61171f4a1801939ae61fdb0d87cf50" prot="private" static="no" mutable="no">
        <type>int</type>
        <definition>int gr::filter::kernel::fft_filter_ccc::d_ntaps</definition>
        <argsstring></argsstring>
        <name>d_ntaps</name>
        <qualifiedname>gr::filter::kernel::fft_filter_ccc::d_ntaps</qualifiedname>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="gr-filter/include/gnuradio/filter/fft_filter.h" line="173" column="9" bodyfile="gr-filter/include/gnuradio/filter/fft_filter.h" bodystart="173" bodyend="-1"/>
      </memberdef>
      <memberdef kind="variable" id="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1a6f43b7be46fe504413ae09aa2478c707" prot="private" static="no" mutable="no">
        <type>int</type>
        <definition>int gr::filter::kernel::fft_filter_ccc::d_nsamples</definition>
        <argsstring></argsstring>
        <name>d_nsamples</name>
        <qualifiedname>gr::filter::kernel::fft_filter_ccc::d_nsamples</qualifiedname>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="gr-filter/include/gnuradio/filter/fft_filter.h" line="174" column="9" bodyfile="gr-filter/include/gnuradio/filter/fft_filter.h" bodystart="174" bodyend="-1"/>
      </memberdef>
      <memberdef kind="variable" id="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1aadfd0c7df6a29cbb5683af821e1338c3" prot="private" static="no" mutable="no">
        <type>int</type>
        <definition>int gr::filter::kernel::fft_filter_ccc::d_fftsize</definition>
        <argsstring></argsstring>
        <name>d_fftsize</name>
        <qualifiedname>gr::filter::kernel::fft_filter_ccc::d_fftsize</qualifiedname>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="gr-filter/include/gnuradio/filter/fft_filter.h" line="175" column="9" bodyfile="gr-filter/include/gnuradio/filter/fft_filter.h" bodystart="175" bodyend="-1"/>
      </memberdef>
      <memberdef kind="variable" id="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1a0c11e7b42e7287f43a2cf558bc41b056" prot="private" static="no" mutable="no">
        <type>int</type>
        <definition>int gr::filter::kernel::fft_filter_ccc::d_decimation</definition>
        <argsstring></argsstring>
        <name>d_decimation</name>
        <qualifiedname>gr::filter::kernel::fft_filter_ccc::d_decimation</qualifiedname>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="gr-filter/include/gnuradio/filter/fft_filter.h" line="176" column="9" bodyfile="gr-filter/include/gnuradio/filter/fft_filter.h" bodystart="176" bodyend="-1"/>
      </memberdef>
      <memberdef kind="variable" id="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1a76ca27a1a43d2fb21fba93166e660afa" prot="private" static="no" mutable="no">
        <type>std::unique_ptr&lt; <ref refid="namespacegr_1_1fft_1a45e3e3e0bf83d265500887e196676f41" kindref="member">fft::fft_complex_fwd</ref> &gt;</type>
        <definition>std::unique_ptr&lt;fft::fft_complex_fwd&gt; gr::filter::kernel::fft_filter_ccc::d_fwdfft</definition>
        <argsstring></argsstring>
        <name>d_fwdfft</name>
        <qualifiedname>gr::filter::kernel::fft_filter_ccc::d_fwdfft</qualifiedname>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="gr-filter/include/gnuradio/filter/fft_filter.h" line="177" column="21" bodyfile="gr-filter/include/gnuradio/filter/fft_filter.h" bodystart="177" bodyend="-1"/>
      </memberdef>
      <memberdef kind="variable" id="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1a05f168beb12102adaa20c4d1815a2331" prot="private" static="no" mutable="no">
        <type>std::unique_ptr&lt; <ref refid="namespacegr_1_1fft_1a7e779fa5016644765e5f7c0ab1b2136b" kindref="member">fft::fft_complex_rev</ref> &gt;</type>
        <definition>std::unique_ptr&lt;fft::fft_complex_rev&gt; gr::filter::kernel::fft_filter_ccc::d_invfft</definition>
        <argsstring></argsstring>
        <name>d_invfft</name>
        <qualifiedname>gr::filter::kernel::fft_filter_ccc::d_invfft</qualifiedname>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="gr-filter/include/gnuradio/filter/fft_filter.h" line="178" column="21" bodyfile="gr-filter/include/gnuradio/filter/fft_filter.h" bodystart="178" bodyend="-1"/>
      </memberdef>
      <memberdef kind="variable" id="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1a880199a172cda15797536b52ab190009" prot="private" static="no" mutable="no">
        <type>int</type>
        <definition>int gr::filter::kernel::fft_filter_ccc::d_nthreads</definition>
        <argsstring></argsstring>
        <name>d_nthreads</name>
        <qualifiedname>gr::filter::kernel::fft_filter_ccc::d_nthreads</qualifiedname>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="gr-filter/include/gnuradio/filter/fft_filter.h" line="179" column="9" bodyfile="gr-filter/include/gnuradio/filter/fft_filter.h" bodystart="179" bodyend="-1"/>
      </memberdef>
      <memberdef kind="variable" id="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1ad0ea3724e09e6c4fb7d777fe6268b811" prot="private" static="no" mutable="no">
        <type>std::vector&lt; <ref refid="gr__complex_8h_1aec4bfe41433369afae9327f1b0bc9109" kindref="member">gr_complex</ref> &gt;</type>
        <definition>std::vector&lt;gr_complex&gt; gr::filter::kernel::fft_filter_ccc::d_tail</definition>
        <argsstring></argsstring>
        <name>d_tail</name>
        <qualifiedname>gr::filter::kernel::fft_filter_ccc::d_tail</qualifiedname>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="gr-filter/include/gnuradio/filter/fft_filter.h" line="180" column="17" bodyfile="gr-filter/include/gnuradio/filter/fft_filter.h" bodystart="180" bodyend="-1"/>
      </memberdef>
      <memberdef kind="variable" id="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1a975a91e65d802202d8a67a565c6b953d" prot="private" static="no" mutable="no">
        <type>std::vector&lt; <ref refid="gr__complex_8h_1aec4bfe41433369afae9327f1b0bc9109" kindref="member">gr_complex</ref> &gt;</type>
        <definition>std::vector&lt;gr_complex&gt; gr::filter::kernel::fft_filter_ccc::d_taps</definition>
        <argsstring></argsstring>
        <name>d_taps</name>
        <qualifiedname>gr::filter::kernel::fft_filter_ccc::d_taps</qualifiedname>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="gr-filter/include/gnuradio/filter/fft_filter.h" line="181" column="17" bodyfile="gr-filter/include/gnuradio/filter/fft_filter.h" bodystart="181" bodyend="-1"/>
      </memberdef>
      <memberdef kind="variable" id="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1a37d62d283ccf0d8d57fd8e1dc1d37f64" 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_ccc::d_xformed_taps</definition>
        <argsstring></argsstring>
        <name>d_xformed_taps</name>
        <qualifiedname>gr::filter::kernel::fft_filter_ccc::d_xformed_taps</qualifiedname>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="gr-filter/include/gnuradio/filter/fft_filter.h" line="182" column="18" bodyfile="gr-filter/include/gnuradio/filter/fft_filter.h" bodystart="182" bodyend="-1"/>
      </memberdef>
      <memberdef kind="variable" id="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1aed22b16a415ff42687a52b89181d572d" 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_ccc::d_logger</definition>
        <argsstring></argsstring>
        <name>d_logger</name>
        <qualifiedname>gr::filter::kernel::fft_filter_ccc::d_logger</qualifiedname>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="gr-filter/include/gnuradio/filter/fft_filter.h" line="187" column="20" bodyfile="gr-filter/include/gnuradio/filter/fft_filter.h" bodystart="187" bodyend="-1"/>
      </memberdef>
      <memberdef kind="variable" id="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1a0c38be0d0335571d7ae9fce7be44c767" 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_ccc::d_debug_logger</definition>
        <argsstring></argsstring>
        <name>d_debug_logger</name>
        <qualifiedname>gr::filter::kernel::fft_filter_ccc::d_debug_logger</qualifiedname>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="gr-filter/include/gnuradio/filter/fft_filter.h" line="187" column="29" bodyfile="gr-filter/include/gnuradio/filter/fft_filter.h" bodystart="187" bodyend="-1"/>
      </memberdef>
    </sectiondef>
    <sectiondef kind="private-func">
      <memberdef kind="function" id="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1a965493ee2a4e11daff0e9854cfab3259" prot="private" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>void</type>
        <definition>void gr::filter::kernel::fft_filter_ccc::compute_sizes</definition>
        <argsstring>(int ntaps)</argsstring>
        <name>compute_sizes</name>
        <qualifiedname>gr::filter::kernel::fft_filter_ccc::compute_sizes</qualifiedname>
        <param>
          <type>int</type>
          <declname>ntaps</declname>
        </param>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="gr-filter/include/gnuradio/filter/fft_filter.h" line="184" column="10"/>
      </memberdef>
      <memberdef kind="function" id="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1ac7b2d0adc0168609e9acc6a314c47847" prot="private" static="no" const="yes" explicit="no" inline="yes" virt="non-virtual">
        <type>int</type>
        <definition>int gr::filter::kernel::fft_filter_ccc::tailsize</definition>
        <argsstring>() const</argsstring>
        <name>tailsize</name>
        <qualifiedname>gr::filter::kernel::fft_filter_ccc::tailsize</qualifiedname>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="gr-filter/include/gnuradio/filter/fft_filter.h" line="185" column="9" bodyfile="gr-filter/include/gnuradio/filter/fft_filter.h" bodystart="185" bodyend="185"/>
      </memberdef>
    </sectiondef>
    <sectiondef kind="public-func">
      <memberdef kind="function" id="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1a2f688f70eb7172439389e3f1d1fefae3" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type></type>
        <definition>gr::filter::kernel::fft_filter_ccc::fft_filter_ccc</definition>
        <argsstring>(int decimation, const std::vector&lt; gr_complex &gt; &amp;taps, int nthreads=1)</argsstring>
        <name>fft_filter_ccc</name>
        <qualifiedname>gr::filter::kernel::fft_filter_ccc::fft_filter_ccc</qualifiedname>
        <param>
          <type>int</type>
          <declname>decimation</declname>
        </param>
        <param>
          <type>const std::vector&lt; <ref refid="gr__complex_8h_1aec4bfe41433369afae9327f1b0bc9109" kindref="member">gr_complex</ref> &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 complex 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__ccc" kindref="compound">gr::filter::fft_filter_ccc</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><ref refid="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1ab287a387dd51fd26d67a52bc94cf9513" kindref="member">taps</ref></parametername>
</parameternamelist>
<parameterdescription>
<para>The filter taps (vector of complex) </para>
</parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername><ref refid="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1ad841510667c20372a99fe0526928652f" kindref="member">nthreads</ref></parametername>
</parameternamelist>
<parameterdescription>
<para>The number of threads for the FFT to use (int) </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="gr-filter/include/gnuradio/filter/fft_filter.h" line="201" column="5"/>
        <references refid="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1ad841510667c20372a99fe0526928652f">nthreads</references>
        <references refid="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1ab287a387dd51fd26d67a52bc94cf9513">taps</references>
        <referencedby refid="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1a0de30ad374508081e193c8c3c0d85934">fft_filter_ccc</referencedby>
        <referencedby refid="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1a475d9e3f259a24f99df9ab3bfd6400c0">fft_filter_ccc</referencedby>
        <referencedby refid="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1a7400cd817d01bda1b7a2ca8004c4a5a4">operator=</referencedby>
        <referencedby refid="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1a6190d827551668e802bdd11befd8de39">operator=</referencedby>
      </memberdef>
      <memberdef kind="function" id="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1a0de30ad374508081e193c8c3c0d85934" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type></type>
        <definition>gr::filter::kernel::fft_filter_ccc::fft_filter_ccc</definition>
        <argsstring>(const fft_filter_ccc &amp;)=delete</argsstring>
        <name>fft_filter_ccc</name>
        <qualifiedname>gr::filter::kernel::fft_filter_ccc::fft_filter_ccc</qualifiedname>
        <param>
          <type>const fft_filter_ccc &amp;</type>
        </param>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="gr-filter/include/gnuradio/filter/fft_filter.h" line="207" column="5"/>
        <references refid="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1a2f688f70eb7172439389e3f1d1fefae3">fft_filter_ccc</references>
      </memberdef>
      <memberdef kind="function" id="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1a7400cd817d01bda1b7a2ca8004c4a5a4" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1a2f688f70eb7172439389e3f1d1fefae3" kindref="member">fft_filter_ccc</ref> &amp;</type>
        <definition>fft_filter_ccc &amp; gr::filter::kernel::fft_filter_ccc::operator=</definition>
        <argsstring>(const fft_filter_ccc &amp;)=delete</argsstring>
        <name>operator=</name>
        <qualifiedname>gr::filter::kernel::fft_filter_ccc::operator=</qualifiedname>
        <param>
          <type>const <ref refid="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1a2f688f70eb7172439389e3f1d1fefae3" kindref="member">fft_filter_ccc</ref> &amp;</type>
        </param>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="gr-filter/include/gnuradio/filter/fft_filter.h" line="208" column="20"/>
        <references refid="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1a2f688f70eb7172439389e3f1d1fefae3">fft_filter_ccc</references>
      </memberdef>
      <memberdef kind="function" id="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1a475d9e3f259a24f99df9ab3bfd6400c0" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type></type>
        <definition>gr::filter::kernel::fft_filter_ccc::fft_filter_ccc</definition>
        <argsstring>(fft_filter_ccc &amp;&amp;)=default</argsstring>
        <name>fft_filter_ccc</name>
        <qualifiedname>gr::filter::kernel::fft_filter_ccc::fft_filter_ccc</qualifiedname>
        <param>
          <type>fft_filter_ccc &amp;&amp;</type>
        </param>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="gr-filter/include/gnuradio/filter/fft_filter.h" line="209" column="5"/>
        <references refid="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1a2f688f70eb7172439389e3f1d1fefae3">fft_filter_ccc</references>
      </memberdef>
      <memberdef kind="function" id="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1a6190d827551668e802bdd11befd8de39" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type><ref refid="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1a2f688f70eb7172439389e3f1d1fefae3" kindref="member">fft_filter_ccc</ref> &amp;</type>
        <definition>fft_filter_ccc &amp; gr::filter::kernel::fft_filter_ccc::operator=</definition>
        <argsstring>(fft_filter_ccc &amp;&amp;)=default</argsstring>
        <name>operator=</name>
        <qualifiedname>gr::filter::kernel::fft_filter_ccc::operator=</qualifiedname>
        <param>
          <type><ref refid="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1a2f688f70eb7172439389e3f1d1fefae3" kindref="member">fft_filter_ccc</ref> &amp;&amp;</type>
        </param>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="gr-filter/include/gnuradio/filter/fft_filter.h" line="210" column="20"/>
        <references refid="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1a2f688f70eb7172439389e3f1d1fefae3">fft_filter_ccc</references>
      </memberdef>
      <memberdef kind="function" id="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1aae56e8fc2e64ccafebf4d9de7f7ccf1e" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>int</type>
        <definition>int gr::filter::kernel::fft_filter_ccc::set_taps</definition>
        <argsstring>(const std::vector&lt; gr_complex &gt; &amp;taps)</argsstring>
        <name>set_taps</name>
        <qualifiedname>gr::filter::kernel::fft_filter_ccc::set_taps</qualifiedname>
        <param>
          <type>const std::vector&lt; <ref refid="gr__complex_8h_1aec4bfe41433369afae9327f1b0bc9109" kindref="member">gr_complex</ref> &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><ref refid="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1ab287a387dd51fd26d67a52bc94cf9513" kindref="member">taps</ref></parametername>
</parameternamelist>
<parameterdescription>
<para>The filter taps (complex) </para>
</parameterdescription>
</parameteritem>
</parameterlist>
</para>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="gr-filter/include/gnuradio/filter/fft_filter.h" line="218" column="9"/>
        <references refid="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1ab287a387dd51fd26d67a52bc94cf9513">taps</references>
      </memberdef>
      <memberdef kind="function" id="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1a24990f4eb540bbdd7f0f15c19d3b70f7" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>void</type>
        <definition>void gr::filter::kernel::fft_filter_ccc::set_nthreads</definition>
        <argsstring>(int n)</argsstring>
        <name>set_nthreads</name>
        <qualifiedname>gr::filter::kernel::fft_filter_ccc::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="gr-filter/include/gnuradio/filter/fft_filter.h" line="223" column="10"/>
      </memberdef>
      <memberdef kind="function" id="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1ab287a387dd51fd26d67a52bc94cf9513" prot="public" static="no" const="yes" explicit="no" inline="no" virt="non-virtual">
        <type>std::vector&lt; <ref refid="gr__complex_8h_1aec4bfe41433369afae9327f1b0bc9109" kindref="member">gr_complex</ref> &gt;</type>
        <definition>std::vector&lt; gr_complex &gt; gr::filter::kernel::fft_filter_ccc::taps</definition>
        <argsstring>() const</argsstring>
        <name>taps</name>
        <qualifiedname>gr::filter::kernel::fft_filter_ccc::taps</qualifiedname>
        <briefdescription>
<para>Returns the taps. </para>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="gr-filter/include/gnuradio/filter/fft_filter.h" line="228" column="17"/>
        <referencedby refid="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1a2f688f70eb7172439389e3f1d1fefae3">fft_filter_ccc</referencedby>
        <referencedby refid="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1aae56e8fc2e64ccafebf4d9de7f7ccf1e">set_taps</referencedby>
      </memberdef>
      <memberdef kind="function" id="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1a1302742ba9b8c74f326bc5fbb42c4e22" 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_ccc::ntaps</definition>
        <argsstring>() const</argsstring>
        <name>ntaps</name>
        <qualifiedname>gr::filter::kernel::fft_filter_ccc::ntaps</qualifiedname>
        <briefdescription>
<para>Returns the number of taps in the filter. </para>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="gr-filter/include/gnuradio/filter/fft_filter.h" line="233" column="18"/>
      </memberdef>
      <memberdef kind="function" id="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1ad841510667c20372a99fe0526928652f" prot="public" static="no" const="yes" explicit="no" inline="no" virt="non-virtual">
        <type>int</type>
        <definition>int gr::filter::kernel::fft_filter_ccc::nthreads</definition>
        <argsstring>() const</argsstring>
        <name>nthreads</name>
        <qualifiedname>gr::filter::kernel::fft_filter_ccc::nthreads</qualifiedname>
        <briefdescription>
<para>Get number of threads being used. </para>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="gr-filter/include/gnuradio/filter/fft_filter.h" line="238" column="9"/>
        <referencedby refid="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1a2f688f70eb7172439389e3f1d1fefae3">fft_filter_ccc</referencedby>
      </memberdef>
      <memberdef kind="function" id="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1aa6260658e0eab6bd51fba467049872c7" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>int</type>
        <definition>int gr::filter::kernel::fft_filter_ccc::filter</definition>
        <argsstring>(int nitems, const gr_complex *input, gr_complex *output)</argsstring>
        <name>filter</name>
        <qualifiedname>gr::filter::kernel::fft_filter_ccc::filter</qualifiedname>
        <param>
          <type>int</type>
          <declname>nitems</declname>
        </param>
        <param>
          <type>const <ref refid="gr__complex_8h_1aec4bfe41433369afae9327f1b0bc9109" kindref="member">gr_complex</ref> *</type>
          <declname>input</declname>
        </param>
        <param>
          <type><ref refid="gr__complex_8h_1aec4bfe41433369afae9327f1b0bc9109" kindref="member">gr_complex</ref> *</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="gr-filter/include/gnuradio/filter/fft_filter.h" line="247" column="9"/>
      </memberdef>
    </sectiondef>
    <briefdescription>
<para>Fast FFT filter with <ref refid="gr__complex_8h_1aec4bfe41433369afae9327f1b0bc9109" kindref="member">gr_complex</ref> input, <ref refid="gr__complex_8h_1aec4bfe41433369afae9327f1b0bc9109" kindref="member">gr_complex</ref> output and <ref refid="gr__complex_8h_1aec4bfe41433369afae9327f1b0bc9109" kindref="member">gr_complex</ref> 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_1a27b343419254f9698b6243950bd1285c" kindref="member">gr::filter::kernel::fir_filter_ccc</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__ccc" kindref="compound">gr::filter::fft_filter_ccc</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="gr-filter/include/gnuradio/filter/fft_filter.h" line="170" column="1" bodyfile="gr-filter/include/gnuradio/filter/fft_filter.h" bodystart="171" bodyend="248"/>
    <listofallmembers>
      <member refid="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1a965493ee2a4e11daff0e9854cfab3259" prot="private" virt="non-virtual"><scope>gr::filter::kernel::fft_filter_ccc</scope><name>compute_sizes</name></member>
      <member refid="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1a0c38be0d0335571d7ae9fce7be44c767" prot="private" virt="non-virtual"><scope>gr::filter::kernel::fft_filter_ccc</scope><name>d_debug_logger</name></member>
      <member refid="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1a0c11e7b42e7287f43a2cf558bc41b056" prot="private" virt="non-virtual"><scope>gr::filter::kernel::fft_filter_ccc</scope><name>d_decimation</name></member>
      <member refid="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1aadfd0c7df6a29cbb5683af821e1338c3" prot="private" virt="non-virtual"><scope>gr::filter::kernel::fft_filter_ccc</scope><name>d_fftsize</name></member>
      <member refid="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1a76ca27a1a43d2fb21fba93166e660afa" prot="private" virt="non-virtual"><scope>gr::filter::kernel::fft_filter_ccc</scope><name>d_fwdfft</name></member>
      <member refid="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1a05f168beb12102adaa20c4d1815a2331" prot="private" virt="non-virtual"><scope>gr::filter::kernel::fft_filter_ccc</scope><name>d_invfft</name></member>
      <member refid="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1aed22b16a415ff42687a52b89181d572d" prot="private" virt="non-virtual"><scope>gr::filter::kernel::fft_filter_ccc</scope><name>d_logger</name></member>
      <member refid="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1a6f43b7be46fe504413ae09aa2478c707" prot="private" virt="non-virtual"><scope>gr::filter::kernel::fft_filter_ccc</scope><name>d_nsamples</name></member>
      <member refid="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1a7a61171f4a1801939ae61fdb0d87cf50" prot="private" virt="non-virtual"><scope>gr::filter::kernel::fft_filter_ccc</scope><name>d_ntaps</name></member>
      <member refid="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1a880199a172cda15797536b52ab190009" prot="private" virt="non-virtual"><scope>gr::filter::kernel::fft_filter_ccc</scope><name>d_nthreads</name></member>
      <member refid="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1ad0ea3724e09e6c4fb7d777fe6268b811" prot="private" virt="non-virtual"><scope>gr::filter::kernel::fft_filter_ccc</scope><name>d_tail</name></member>
      <member refid="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1a975a91e65d802202d8a67a565c6b953d" prot="private" virt="non-virtual"><scope>gr::filter::kernel::fft_filter_ccc</scope><name>d_taps</name></member>
      <member refid="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1a37d62d283ccf0d8d57fd8e1dc1d37f64" prot="private" virt="non-virtual"><scope>gr::filter::kernel::fft_filter_ccc</scope><name>d_xformed_taps</name></member>
      <member refid="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1a2f688f70eb7172439389e3f1d1fefae3" prot="public" virt="non-virtual"><scope>gr::filter::kernel::fft_filter_ccc</scope><name>fft_filter_ccc</name></member>
      <member refid="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1a0de30ad374508081e193c8c3c0d85934" prot="public" virt="non-virtual"><scope>gr::filter::kernel::fft_filter_ccc</scope><name>fft_filter_ccc</name></member>
      <member refid="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1a475d9e3f259a24f99df9ab3bfd6400c0" prot="public" virt="non-virtual"><scope>gr::filter::kernel::fft_filter_ccc</scope><name>fft_filter_ccc</name></member>
      <member refid="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1aa6260658e0eab6bd51fba467049872c7" prot="public" virt="non-virtual"><scope>gr::filter::kernel::fft_filter_ccc</scope><name>filter</name></member>
      <member refid="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1a1302742ba9b8c74f326bc5fbb42c4e22" prot="public" virt="non-virtual"><scope>gr::filter::kernel::fft_filter_ccc</scope><name>ntaps</name></member>
      <member refid="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1ad841510667c20372a99fe0526928652f" prot="public" virt="non-virtual"><scope>gr::filter::kernel::fft_filter_ccc</scope><name>nthreads</name></member>
      <member refid="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1a7400cd817d01bda1b7a2ca8004c4a5a4" prot="public" virt="non-virtual"><scope>gr::filter::kernel::fft_filter_ccc</scope><name>operator=</name></member>
      <member refid="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1a6190d827551668e802bdd11befd8de39" prot="public" virt="non-virtual"><scope>gr::filter::kernel::fft_filter_ccc</scope><name>operator=</name></member>
      <member refid="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1a24990f4eb540bbdd7f0f15c19d3b70f7" prot="public" virt="non-virtual"><scope>gr::filter::kernel::fft_filter_ccc</scope><name>set_nthreads</name></member>
      <member refid="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1aae56e8fc2e64ccafebf4d9de7f7ccf1e" prot="public" virt="non-virtual"><scope>gr::filter::kernel::fft_filter_ccc</scope><name>set_taps</name></member>
      <member refid="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1ac7b2d0adc0168609e9acc6a314c47847" prot="private" virt="non-virtual"><scope>gr::filter::kernel::fft_filter_ccc</scope><name>tailsize</name></member>
      <member refid="classgr_1_1filter_1_1kernel_1_1fft__filter__ccc_1ab287a387dd51fd26d67a52bc94cf9513" prot="public" virt="non-virtual"><scope>gr::filter::kernel::fft_filter_ccc</scope><name>taps</name></member>
    </listofallmembers>
  </compounddef>
</doxygen>
