<?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.18.0" xml:lang="en-US">
  <compounddef id="structgr_1_1buftype" kind="struct" language="C++" prot="public">
    <compoundname>gr::buftype</compoundname>
    <basecompoundref refid="classgr_1_1buffer__type__base" prot="public" virt="non-virtual">gr::buffer_type_base</basecompoundref>
    <includes refid="buffer__type_8h" local="no">gnuradio/buffer_type.h</includes>
    <templateparamlist>
      <param>
        <type>typename classname</type>
      </param>
      <param>
        <type>typename factory_class</type>
      </param>
    </templateparamlist>
    <sectiondef kind="public-type">
      <memberdef kind="typedef" id="structgr_1_1buftype_1afb112c6639fdf2d1f4429607e63a63c2" prot="public" static="no">
        <type>factory_class</type>
        <definition>using gr::buftype&lt; classname, factory_class &gt;::factory = factory_class</definition>
        <argsstring></argsstring>
        <name>factory</name>
        <qualifiedname>gr::buftype::factory</qualifiedname>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="gnuradio-runtime/include/gnuradio/buffer_type.h" line="96" column="5" bodyfile="gnuradio-runtime/include/gnuradio/buffer_type.h" bodystart="96" bodyend="-1"/>
      </memberdef>
    </sectiondef>
    <sectiondef kind="public-func">
      <memberdef kind="function" id="structgr_1_1buftype_1a239fa49d0b42ac297a445d2c054f4e52" prot="public" static="no" const="yes" explicit="no" inline="yes" virt="virtual">
        <type>buffer_sptr</type>
        <definition>buffer_sptr gr::buftype&lt; classname, factory_class &gt;::make_buffer</definition>
        <argsstring>(int nitems, size_t sizeof_item, uint64_t downstream_lcm_nitems, uint32_t downstream_max_out_mult, block_sptr link=block_sptr(), block_sptr buf_owner=block_sptr()) const override</argsstring>
        <name>make_buffer</name>
        <qualifiedname>gr::buftype::make_buffer</qualifiedname>
        <reimplements refid="classgr_1_1buffer__type__base_1a09bcb7c87443c9be4c9a0e82ce5c2095">make_buffer</reimplements>
        <param>
          <type>int</type>
          <declname>nitems</declname>
        </param>
        <param>
          <type>size_t</type>
          <declname>sizeof_item</declname>
        </param>
        <param>
          <type>uint64_t</type>
          <declname>downstream_lcm_nitems</declname>
        </param>
        <param>
          <type>uint32_t</type>
          <declname>downstream_max_out_mult</declname>
        </param>
        <param>
          <type>block_sptr</type>
          <declname>link</declname>
          <defval>block_sptr()</defval>
        </param>
        <param>
          <type>block_sptr</type>
          <declname>buf_owner</declname>
          <defval>block_sptr()</defval>
        </param>
        <briefdescription>
<para>Make and return a buffer subclass of the corresponding type. </para>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="gnuradio-runtime/include/gnuradio/buffer_type.h" line="97" column="17" bodyfile="gnuradio-runtime/include/gnuradio/buffer_type.h" bodystart="97" bodyend="110"/>
      </memberdef>
      <memberdef kind="function" id="structgr_1_1buftype_1a638753d68fd395a668667f47a4e2b739" prot="public" static="no" const="no" explicit="no" inline="yes" virt="non-virtual">
        <type></type>
        <definition>gr::buftype&lt; classname, factory_class &gt;::buftype</definition>
        <argsstring>()</argsstring>
        <name>buftype</name>
        <qualifiedname>gr::buftype::buftype</qualifiedname>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="gnuradio-runtime/include/gnuradio/buffer_type.h" line="112" column="5" bodyfile="gnuradio-runtime/include/gnuradio/buffer_type.h" bodystart="112" bodyend="112"/>
        <references refid="classgr_1_1buffer__type__base_1ad0db69313a18c047b6efc2de235fb5e2" compoundref="buffer__type_8h" startline="37" endline="37">gr::buffer_type_base::buffer_type_base</references>
        <references refid="classgr_1_1buffer__type__base_1a81bbcdec91d35295a7e35cecb6c5cce5" compoundref="buffer__type_8h" startline="60" endline="60">gr::buffer_type_base::name</references>
      </memberdef>
    </sectiondef>
    <briefdescription>
<para>Template used to create buffer types. Note that the factory_class parameter must contain a static function <ref refid="structgr_1_1buftype_1a239fa49d0b42ac297a445d2c054f4e52" kindref="member">make_buffer()</ref> that matches the signature below and will be used to create instances of the corresponding buffer type. </para>
    </briefdescription>
    <detaileddescription>
    </detaileddescription>
    <inheritancegraph>
      <node id="2">
        <label>gr::buffer_type_base</label>
        <link refid="classgr_1_1buffer__type__base"/>
      </node>
      <node id="1">
        <label>gr::buftype&lt; classname, factory_class &gt;</label>
        <link refid="structgr_1_1buftype"/>
        <childnode refid="2" relation="public-inheritance">
        </childnode>
      </node>
    </inheritancegraph>
    <collaborationgraph>
      <node id="2">
        <label>gr::buffer_type_base</label>
        <link refid="classgr_1_1buffer__type__base"/>
        <childnode refid="3" relation="usage">
          <edgelabel>d_name</edgelabel>
        </childnode>
      </node>
      <node id="1">
        <label>gr::buftype&lt; classname, factory_class &gt;</label>
        <link refid="structgr_1_1buftype"/>
        <childnode refid="2" relation="public-inheritance">
        </childnode>
      </node>
      <node id="4">
        <label>std::basic_string&lt; Char &gt;</label>
      </node>
      <node id="3">
        <label>std::string</label>
        <childnode refid="4" relation="public-inheritance">
        </childnode>
      </node>
    </collaborationgraph>
    <location file="gnuradio-runtime/include/gnuradio/buffer_type.h" line="94" column="1" bodyfile="gnuradio-runtime/include/gnuradio/buffer_type.h" bodystart="94" bodyend="113"/>
    <listofallmembers>
      <member refid="classgr_1_1buffer__type__base_1ad0db69313a18c047b6efc2de235fb5e2" prot="public" virt="non-virtual"><scope>gr::buftype</scope><name>buffer_type_base</name></member>
      <member refid="classgr_1_1buffer__type__base_1a6300757c88f61b84a37d3b5c69f5de0f" prot="protected" virt="non-virtual"><scope>gr::buftype</scope><name>buffer_type_base</name></member>
      <member refid="structgr_1_1buftype_1a638753d68fd395a668667f47a4e2b739" prot="public" virt="non-virtual"><scope>gr::buftype</scope><name>buftype</name></member>
      <member refid="classgr_1_1buffer__type__base_1a1ea44b95f0c66af30d974fdd01b87240" prot="protected" virt="non-virtual"><scope>gr::buftype</scope><name>d_name</name></member>
      <member refid="structgr_1_1buftype_1afb112c6639fdf2d1f4429607e63a63c2" prot="public" virt="non-virtual"><scope>gr::buftype</scope><name>factory</name></member>
      <member refid="structgr_1_1buftype_1a239fa49d0b42ac297a445d2c054f4e52" prot="public" virt="virtual"><scope>gr::buftype</scope><name>make_buffer</name></member>
      <member refid="classgr_1_1buffer__type__base_1a81bbcdec91d35295a7e35cecb6c5cce5" prot="public" virt="non-virtual"><scope>gr::buftype</scope><name>name</name></member>
      <member refid="classgr_1_1buffer__type__base_1a51088119434e0ed799e3a2e4d9aa51eb" prot="public" virt="non-virtual"><scope>gr::buftype</scope><name>operator!=</name></member>
      <member refid="classgr_1_1buffer__type__base_1abc6340575b5ecf6f9e8ef71bbca9a40c" prot="public" virt="non-virtual"><scope>gr::buftype</scope><name>operator&lt;</name></member>
      <member refid="classgr_1_1buffer__type__base_1a49752b06265c6cbfa4f0328def602e2c" prot="public" virt="non-virtual"><scope>gr::buftype</scope><name>operator&lt;=</name></member>
      <member refid="classgr_1_1buffer__type__base_1af6808dc24226aca5dc8bf719093ba9be" prot="public" virt="non-virtual"><scope>gr::buftype</scope><name>operator=</name></member>
      <member refid="classgr_1_1buffer__type__base_1afe953b2c3664bd6e1dd7c9e027f5ec50" prot="public" virt="non-virtual"><scope>gr::buftype</scope><name>operator==</name></member>
      <member refid="classgr_1_1buffer__type__base_1ae2ca834856e2347d3c3a2ad240e6678c" prot="public" virt="non-virtual"><scope>gr::buftype</scope><name>operator&gt;</name></member>
      <member refid="classgr_1_1buffer__type__base_1a3b6f4ef420dc2ed00cca2c36e0ef912b" prot="public" virt="non-virtual"><scope>gr::buftype</scope><name>operator&gt;=</name></member>
      <member refid="classgr_1_1buffer__type__base_1ad8aad554fb5adc3ac4979ce335791717" prot="public" virt="virtual"><scope>gr::buftype</scope><name>~buffer_type_base</name></member>
    </listofallmembers>
  </compounddef>
</doxygen>
