<?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.8.14">
  <compounddef id="classforpy_1_1_i_entropy_function" kind="class" language="C++" prot="public">
    <compoundname>forpy::IEntropyFunction</compoundname>
    <derivedcompoundref refid="classforpy_1_1_classification_error" prot="public" virt="non-virtual">forpy::ClassificationError</derivedcompoundref>
    <derivedcompoundref refid="classforpy_1_1_induced_entropy" prot="public" virt="non-virtual">forpy::InducedEntropy</derivedcompoundref>
    <derivedcompoundref refid="classforpy_1_1_renyi_entropy" prot="public" virt="non-virtual">forpy::RenyiEntropy</derivedcompoundref>
    <derivedcompoundref refid="classforpy_1_1_shannon_entropy" prot="public" virt="non-virtual">forpy::ShannonEntropy</derivedcompoundref>
    <derivedcompoundref refid="classforpy_1_1_tsallis_entropy" prot="public" virt="non-virtual">forpy::TsallisEntropy</derivedcompoundref>
    <includes refid="ientropyfunction_8h" local="no">ientropyfunction.h</includes>
      <sectiondef kind="friend">
      <memberdef kind="friend" id="classforpy_1_1_i_entropy_function_1ab2f44cbb59a08132f4c843e5225bba0e" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type>friend class</type>
        <definition>friend class cereal::access</definition>
        <argsstring></argsstring>
        <name>cereal::access</name>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/Users/classner/git/forpy/include/forpy/impurities/ientropyfunction.h" line="71" column="1" bodyfile="/Users/classner/git/forpy/include/forpy/impurities/ientropyfunction.h" bodystart="71" bodyend="-1"/>
      </memberdef>
      </sectiondef>
      <sectiondef kind="public-func">
      <memberdef kind="function" id="classforpy_1_1_i_entropy_function_1a763fc026d02d50934931e690761beecf" prot="public" static="no" const="no" explicit="no" inline="no" virt="virtual">
        <type></type>
        <definition>virtual forpy::IEntropyFunction::~IEntropyFunction</definition>
        <argsstring>()</argsstring>
        <name>~IEntropyFunction</name>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/Users/classner/git/forpy/include/forpy/impurities/ientropyfunction.h" line="28" column="1"/>
      </memberdef>
      <memberdef kind="function" id="classforpy_1_1_i_entropy_function_1a993c16c7cf4f90b21dcd10bc4c29d01a" prot="public" static="no" const="yes" explicit="no" inline="yes" virt="virtual">
        <type>float</type>
        <definition>virtual float forpy::IEntropyFunction::operator()</definition>
        <argsstring>(const std::vector&lt; float &gt; &amp;class_members_numbers, const float &amp;fsum) const</argsstring>
        <name>operator()</name>
        <param>
          <type>const std::vector&lt; float &gt; &amp;</type>
          <declname>class_members_numbers</declname>
        </param>
        <param>
          <type>const float &amp;</type>
          <declname>fsum</declname>
        </param>
        <briefdescription>
<para>The interface function that must be implemented. </para>        </briefdescription>
        <detaileddescription>
<para>Calculates the entropy from a given class distribution. For maximum efficiency, the total weight of samples may be provided as float.</para><para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>class_members_numbers</parametername>
</parameternamelist>
<parameterdescription>
<para>Class distribution histogram. </para></parameterdescription>
</parameteritem>
<parameteritem>
<parameternamelist>
<parametername>fsum</parametername>
</parameternamelist>
<parameterdescription>
<para>The total number/weight of samples. </para></parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>The calculated entropy value. </para></simplesect>
</para>        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/Users/classner/git/forpy/include/forpy/impurities/ientropyfunction.h" line="40" column="1" bodyfile="/Users/classner/git/forpy/include/forpy/impurities/ientropyfunction.h" bodystart="40" bodyend="44"/>
      </memberdef>
      <memberdef kind="function" id="classforpy_1_1_i_entropy_function_1a5ce363a6a07f37355cafe18cc946745b" prot="public" static="no" const="yes" explicit="no" inline="no" virt="virtual">
        <type>float</type>
        <definition>virtual float forpy::IEntropyFunction::operator()</definition>
        <argsstring>(const float *class_members_numbers, const size_t &amp;n, const float &amp;fsum) const VIRTUAL(float)</argsstring>
        <name>operator()</name>
        <reimplementedby refid="classforpy_1_1_classification_error_1a92e9e34e4d7cf1f0ee0f3de2c0da2c5a">operator()</reimplementedby>
        <reimplementedby refid="classforpy_1_1_shannon_entropy_1a54efad66920205c2e2e81ec76f0a5da8">operator()</reimplementedby>
        <reimplementedby refid="classforpy_1_1_renyi_entropy_1ad4c96374febb4af75a8178fadfa80e2c">operator()</reimplementedby>
        <reimplementedby refid="classforpy_1_1_tsallis_entropy_1a166675686252188d14e9e3efadc0bf25">operator()</reimplementedby>
        <reimplementedby refid="classforpy_1_1_induced_entropy_1a8706f92dca8bd8c210e20902e5a1a29f">operator()</reimplementedby>
        <param>
          <type>const float *</type>
          <declname>class_members_numbers</declname>
        </param>
        <param>
          <type>const size_t &amp;</type>
          <declname>n</declname>
        </param>
        <param>
          <type>const float &amp;</type>
          <declname>fsum</declname>
        </param>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/Users/classner/git/forpy/include/forpy/impurities/ientropyfunction.h" line="46" column="1"/>
      </memberdef>
      <memberdef kind="function" id="classforpy_1_1_i_entropy_function_1a2f12be4c28fe3ea10e85ff0f62d8ed91" prot="public" static="no" const="yes" explicit="no" inline="no" virt="virtual">
        <type>float</type>
        <definition>virtual float forpy::IEntropyFunction::operator()</definition>
        <argsstring>(const std::vector&lt; float &gt; &amp;class_members_numbers) const</argsstring>
        <name>operator()</name>
        <param>
          <type>const std::vector&lt; float &gt; &amp;</type>
          <declname>class_members_numbers</declname>
        </param>
        <briefdescription>
<para>Classical entropy calculation function. </para>        </briefdescription>
        <detaileddescription>
<para>Is implemented already and provides a shortcut for for the standard function by calculating the sum of the class distribution.</para><para><parameterlist kind="param"><parameteritem>
<parameternamelist>
<parametername>class_members_numbers</parametername>
</parameternamelist>
<parameterdescription>
<para>Class distribution histogram. </para></parameterdescription>
</parameteritem>
</parameterlist>
<simplesect kind="return"><para>The calculated entropy value. </para></simplesect>
</para>        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/Users/classner/git/forpy/include/forpy/impurities/ientropyfunction.h" line="59" column="1"/>
      </memberdef>
      <memberdef kind="function" id="classforpy_1_1_i_entropy_function_1a97e275c34b5a0df4d9293755563bad12" prot="public" static="no" const="yes" explicit="no" inline="no" virt="virtual">
        <type>bool</type>
        <definition>virtual bool forpy::IEntropyFunction::operator==</definition>
        <argsstring>(const IEntropyFunction &amp;rhs) const VIRTUAL(bool)</argsstring>
        <name>operator==</name>
        <reimplementedby refid="classforpy_1_1_classification_error_1af5e797f69ea710bfaef396c308d81b4b">operator==</reimplementedby>
        <reimplementedby refid="classforpy_1_1_shannon_entropy_1a13036a52825a272848b9eb4c4fdba7d1">operator==</reimplementedby>
        <reimplementedby refid="classforpy_1_1_tsallis_entropy_1a8ae1562b65bea792d6669a93e83c9b2a">operator==</reimplementedby>
        <reimplementedby refid="classforpy_1_1_renyi_entropy_1add765381c1128b2288f42d4e4117e8fa">operator==</reimplementedby>
        <reimplementedby refid="classforpy_1_1_induced_entropy_1a4930fd1c89013462ed0cfb56a5aff842">operator==</reimplementedby>
        <param>
          <type>const <ref refid="classforpy_1_1_i_entropy_function" kindref="compound">IEntropyFunction</ref> &amp;</type>
          <declname>rhs</declname>
        </param>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
<para>Deep equality comparison. </para>        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/Users/classner/git/forpy/include/forpy/impurities/ientropyfunction.h" line="65" column="1"/>
      </memberdef>
      </sectiondef>
      <sectiondef kind="protected-func">
      <memberdef kind="function" id="classforpy_1_1_i_entropy_function_1a70fe1569ee2a5cab7c0b155631a4dea9" prot="protected" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type></type>
        <definition>forpy::IEntropyFunction::IEntropyFunction</definition>
        <argsstring>()</argsstring>
        <name>IEntropyFunction</name>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/Users/classner/git/forpy/include/forpy/impurities/ientropyfunction.h" line="68" column="1"/>
      </memberdef>
      </sectiondef>
      <sectiondef kind="private-func">
      <memberdef kind="function" id="classforpy_1_1_i_entropy_function_1a2b18592a03237e28ba519b39ca8851ea" prot="private" static="no" const="no" explicit="no" inline="yes" virt="non-virtual">
        <templateparamlist>
          <param>
            <type>class Archive</type>
          </param>
        </templateparamlist>
        <type>void</type>
        <definition>void forpy::IEntropyFunction::serialize</definition>
        <argsstring>(Archive &amp;, const uint &amp;)</argsstring>
        <name>serialize</name>
        <param>
          <type>Archive &amp;</type>
        </param>
        <param>
          <type>const <ref refid="namespaceforpy_1ad05e34c62859518b61b76b5085e913d8" kindref="member">uint</ref> &amp;</type>
        </param>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/Users/classner/git/forpy/include/forpy/impurities/ientropyfunction.h" line="73" column="1" bodyfile="/Users/classner/git/forpy/include/forpy/impurities/ientropyfunction.h" bodystart="73" bodyend="73"/>
      </memberdef>
      <memberdef kind="function" id="classforpy_1_1_i_entropy_function_1a87e8dece40ac0249a23b0ea6614bc993" prot="private" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type></type>
        <definition>forpy::IEntropyFunction::DISALLOW_COPY_AND_ASSIGN</definition>
        <argsstring>(IEntropyFunction)</argsstring>
        <name>DISALLOW_COPY_AND_ASSIGN</name>
        <param>
          <type><ref refid="classforpy_1_1_i_entropy_function" kindref="compound">IEntropyFunction</ref></type>
        </param>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/Users/classner/git/forpy/include/forpy/impurities/ientropyfunction.h" line="75" column="1"/>
      </memberdef>
      </sectiondef>
    <briefdescription>
<para>Interface for an entropy calculation functor. </para>    </briefdescription>
    <detaileddescription>
    </detaileddescription>
    <inheritancegraph>
      <node id="102">
        <label>forpy::ClassificationError</label>
        <link refid="classforpy_1_1_classification_error"/>
        <childnode refid="101" relation="public-inheritance">
        </childnode>
      </node>
      <node id="105">
        <label>forpy::ShannonEntropy</label>
        <link refid="classforpy_1_1_shannon_entropy"/>
        <childnode refid="101" relation="public-inheritance">
        </childnode>
      </node>
      <node id="104">
        <label>forpy::RenyiEntropy</label>
        <link refid="classforpy_1_1_renyi_entropy"/>
        <childnode refid="101" relation="public-inheritance">
        </childnode>
      </node>
      <node id="101">
        <label>forpy::IEntropyFunction</label>
        <link refid="classforpy_1_1_i_entropy_function"/>
      </node>
      <node id="103">
        <label>forpy::InducedEntropy</label>
        <link refid="classforpy_1_1_induced_entropy"/>
        <childnode refid="101" relation="public-inheritance">
        </childnode>
      </node>
      <node id="106">
        <label>forpy::TsallisEntropy</label>
        <link refid="classforpy_1_1_tsallis_entropy"/>
        <childnode refid="101" relation="public-inheritance">
        </childnode>
      </node>
    </inheritancegraph>
    <location file="/Users/classner/git/forpy/include/forpy/impurities/ientropyfunction.h" line="26" column="1" bodyfile="/Users/classner/git/forpy/include/forpy/impurities/ientropyfunction.h" bodystart="26" bodyend="76"/>
    <listofallmembers>
      <member refid="classforpy_1_1_i_entropy_function_1ab2f44cbb59a08132f4c843e5225bba0e" prot="public" virt="non-virtual"><scope>forpy::IEntropyFunction</scope><name>cereal::access</name></member>
      <member refid="classforpy_1_1_i_entropy_function_1a87e8dece40ac0249a23b0ea6614bc993" prot="private" virt="non-virtual"><scope>forpy::IEntropyFunction</scope><name>DISALLOW_COPY_AND_ASSIGN</name></member>
      <member refid="classforpy_1_1_i_entropy_function_1a70fe1569ee2a5cab7c0b155631a4dea9" prot="protected" virt="non-virtual"><scope>forpy::IEntropyFunction</scope><name>IEntropyFunction</name></member>
      <member refid="classforpy_1_1_i_entropy_function_1a993c16c7cf4f90b21dcd10bc4c29d01a" prot="public" virt="virtual"><scope>forpy::IEntropyFunction</scope><name>operator()</name></member>
      <member refid="classforpy_1_1_i_entropy_function_1a5ce363a6a07f37355cafe18cc946745b" prot="public" virt="virtual"><scope>forpy::IEntropyFunction</scope><name>operator()</name></member>
      <member refid="classforpy_1_1_i_entropy_function_1a2f12be4c28fe3ea10e85ff0f62d8ed91" prot="public" virt="virtual"><scope>forpy::IEntropyFunction</scope><name>operator()</name></member>
      <member refid="classforpy_1_1_i_entropy_function_1a97e275c34b5a0df4d9293755563bad12" prot="public" virt="virtual"><scope>forpy::IEntropyFunction</scope><name>operator==</name></member>
      <member refid="classforpy_1_1_i_entropy_function_1a2b18592a03237e28ba519b39ca8851ea" prot="private" virt="non-virtual"><scope>forpy::IEntropyFunction</scope><name>serialize</name></member>
      <member refid="classforpy_1_1_i_entropy_function_1a763fc026d02d50934931e690761beecf" prot="public" virt="virtual"><scope>forpy::IEntropyFunction</scope><name>~IEntropyFunction</name></member>
    </listofallmembers>
  </compounddef>
</doxygen>
