<?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="fastdecider_8h" kind="file" language="C++">
    <compoundname>fastdecider.h</compoundname>
    <includes refid="global_8h" local="yes">../global.h</includes>
    <includes local="yes">../util/serialization/basics.h</includes>
    <includes local="no">limits</includes>
    <includes local="no">typeinfo</includes>
    <includes local="no">utility</includes>
    <includes local="no">vector</includes>
    <includes refid="types_8h" local="yes">../types.h</includes>
    <includes refid="desk_8h" local="yes">../util/desk.h</includes>
    <includes refid="storage_8h" local="yes">../util/storage.h</includes>
    <includes refid="idecider_8h" local="yes">./idecider.h</includes>
    <includedby refid="deciders_8h" local="yes">/Users/classner/git/forpy/include/forpy/deciders/deciders.h</includedby>
    <includedby refid="forest_8h" local="yes">/Users/classner/git/forpy/include/forpy/forest.h</includedby>
    <incdepgraph>
      <node id="180">
        <label>functional</label>
      </node>
      <node id="156">
        <label>iomanip</label>
      </node>
      <node id="163">
        <label>limits</label>
      </node>
      <node id="181">
        <label>../threshold_optimizers/ithreshopt.h</label>
        <link refid="ithreshopt_8h"/>
        <childnode refid="154" relation="include">
        </childnode>
        <childnode refid="162" relation="include">
        </childnode>
        <childnode refid="179" relation="include">
        </childnode>
        <childnode refid="167" relation="include">
        </childnode>
        <childnode refid="177" relation="include">
        </childnode>
      </node>
      <node id="175">
        <label>mapbox/variant_cast.hpp</label>
      </node>
      <node id="155">
        <label>glog/logging.h</label>
      </node>
      <node id="178">
        <label>./idecider.h</label>
        <link refid="idecider_8h"/>
        <childnode refid="154" relation="include">
        </childnode>
        <childnode refid="162" relation="include">
        </childnode>
        <childnode refid="163" relation="include">
        </childnode>
        <childnode refid="165" relation="include">
        </childnode>
        <childnode refid="166" relation="include">
        </childnode>
        <childnode refid="179" relation="include">
        </childnode>
        <childnode refid="181" relation="include">
        </childnode>
        <childnode refid="167" relation="include">
        </childnode>
        <childnode refid="177" relation="include">
        </childnode>
      </node>
      <node id="171">
        <label>numeric</label>
      </node>
      <node id="160">
        <label>string</label>
      </node>
      <node id="159">
        <label>./version.h</label>
        <link refid="version_8h"/>
      </node>
      <node id="169">
        <label>map</label>
      </node>
      <node id="177">
        <label>../util/desk.h</label>
        <link refid="desk_8h"/>
        <childnode refid="154" relation="include">
        </childnode>
        <childnode refid="167" relation="include">
        </childnode>
      </node>
      <node id="172">
        <label>./util/hash.h</label>
        <link refid="hash_8h"/>
        <childnode refid="173" relation="include">
        </childnode>
        <childnode refid="166" relation="include">
        </childnode>
      </node>
      <node id="168">
        <label>Eigen/Dense</label>
      </node>
      <node id="164">
        <label>typeinfo</label>
      </node>
      <node id="179">
        <label>../data_providers/idataprovider.h</label>
        <link refid="idataprovider_8h"/>
        <childnode refid="154" relation="include">
        </childnode>
        <childnode refid="162" relation="include">
        </childnode>
        <childnode refid="180" relation="include">
        </childnode>
        <childnode refid="166" relation="include">
        </childnode>
        <childnode refid="167" relation="include">
        </childnode>
        <childnode refid="174" relation="include">
        </childnode>
      </node>
      <node id="174">
        <label>./util/storage.h</label>
        <link refid="storage_8h"/>
        <childnode refid="175" relation="include">
        </childnode>
        <childnode refid="176" relation="include">
        </childnode>
      </node>
      <node id="166">
        <label>vector</label>
      </node>
      <node id="165">
        <label>utility</label>
      </node>
      <node id="162">
        <label>../util/serialization/basics.h</label>
      </node>
      <node id="157">
        <label>iostream</label>
      </node>
      <node id="154">
        <label>../global.h</label>
        <link refid="global_8h"/>
        <childnode refid="155" relation="include">
        </childnode>
        <childnode refid="156" relation="include">
        </childnode>
        <childnode refid="157" relation="include">
        </childnode>
        <childnode refid="158" relation="include">
        </childnode>
        <childnode refid="159" relation="include">
        </childnode>
        <childnode refid="160" relation="include">
        </childnode>
        <childnode refid="161" relation="include">
        </childnode>
      </node>
      <node id="173">
        <label>cstddef</label>
      </node>
      <node id="161">
        <label>csignal</label>
      </node>
      <node id="158">
        <label>thread</label>
      </node>
      <node id="167">
        <label>../types.h</label>
        <link refid="types_8h"/>
        <childnode refid="168" relation="include">
        </childnode>
        <childnode refid="169" relation="include">
        </childnode>
        <childnode refid="170" relation="include">
        </childnode>
        <childnode refid="171" relation="include">
        </childnode>
        <childnode refid="165" relation="include">
        </childnode>
        <childnode refid="166" relation="include">
        </childnode>
        <childnode refid="172" relation="include">
        </childnode>
        <childnode refid="174" relation="include">
        </childnode>
      </node>
      <node id="176">
        <label>./serialization/variant.h</label>
      </node>
      <node id="153">
        <label>/Users/classner/git/forpy/include/forpy/deciders/fastdecider.h</label>
        <link refid="fastdecider_8h"/>
        <childnode refid="154" relation="include">
        </childnode>
        <childnode refid="162" relation="include">
        </childnode>
        <childnode refid="163" relation="include">
        </childnode>
        <childnode refid="164" relation="include">
        </childnode>
        <childnode refid="165" relation="include">
        </childnode>
        <childnode refid="166" relation="include">
        </childnode>
        <childnode refid="167" relation="include">
        </childnode>
        <childnode refid="177" relation="include">
        </childnode>
        <childnode refid="174" relation="include">
        </childnode>
        <childnode refid="178" relation="include">
        </childnode>
      </node>
      <node id="170">
        <label>memory</label>
      </node>
    </incdepgraph>
    <invincdepgraph>
      <node id="184">
        <label>/Users/classner/git/forpy/include/forpy/forpy.h</label>
        <link refid="forpy_8h"/>
      </node>
      <node id="183">
        <label>/Users/classner/git/forpy/include/forpy/deciders/deciders.h</label>
        <link refid="deciders_8h"/>
        <childnode refid="184" relation="include">
        </childnode>
      </node>
      <node id="185">
        <label>/Users/classner/git/forpy/include/forpy/forest.h</label>
        <link refid="forest_8h"/>
        <childnode refid="184" relation="include">
        </childnode>
      </node>
      <node id="182">
        <label>/Users/classner/git/forpy/include/forpy/deciders/fastdecider.h</label>
        <link refid="fastdecider_8h"/>
        <childnode refid="183" relation="include">
        </childnode>
        <childnode refid="185" relation="include">
        </childnode>
      </node>
    </invincdepgraph>
    <innerclass refid="classforpy_1_1_fast_decider" prot="public">forpy::FastDecider</innerclass>
    <innernamespace refid="namespaceforpy">forpy</innernamespace>
      <sectiondef kind="define">
      <memberdef kind="define" id="fastdecider_8h_1a5e698a31cb688e97be5f1d184e1b88b8" prot="public" static="no">
        <name>FORPY_DECIDERS_FASTDECIDER_H_</name>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/Users/classner/git/forpy/include/forpy/deciders/fastdecider.h" line="4" column="9" bodyfile="/Users/classner/git/forpy/include/forpy/deciders/fastdecider.h" bodystart="4" bodyend="-1"/>
      </memberdef>
      </sectiondef>
      <sectiondef kind="func">
      <memberdef kind="function" id="fastdecider_8h_1a5e45c5d05100e5b924029ba2bc0d59e0" prot="public" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
        <type></type>
        <definition>CEREAL_REGISTER_TYPE</definition>
        <argsstring>(forpy::FastDecider)</argsstring>
        <name>CEREAL_REGISTER_TYPE</name>
        <param>
          <type><ref refid="classforpy_1_1_fast_decider" kindref="compound">forpy::FastDecider</ref></type>
        </param>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/Users/classner/git/forpy/include/forpy/deciders/fastdecider.h" line="177" column="1"/>
      </memberdef>
      </sectiondef>
    <briefdescription>
    </briefdescription>
    <detaileddescription>
    </detaileddescription>
    <programlisting>
<codeline lineno="1"><highlight class="comment">/*<sp/>Author:<sp/>Christoph<sp/>Lassner.<sp/>*/</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="2"><highlight class="normal"></highlight><highlight class="preprocessor">#pragma<sp/>once</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="3"><highlight class="normal"></highlight><highlight class="preprocessor">#ifndef<sp/>FORPY_DECIDERS_FASTDECIDER_H_</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="4" refid="fastdecider_8h_1a5e698a31cb688e97be5f1d184e1b88b8" refkind="member"><highlight class="normal"></highlight><highlight class="preprocessor">#define<sp/>FORPY_DECIDERS_FASTDECIDER_H_</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="5"><highlight class="normal"></highlight></codeline>
<codeline lineno="6"><highlight class="normal"></highlight><highlight class="preprocessor">#include<sp/>&quot;../global.h&quot;</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="7"><highlight class="normal"></highlight></codeline>
<codeline lineno="8"><highlight class="normal"></highlight><highlight class="preprocessor">#include<sp/>&quot;../util/serialization/basics.h&quot;</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="9"><highlight class="normal"></highlight></codeline>
<codeline lineno="10"><highlight class="normal"></highlight><highlight class="preprocessor">#include<sp/>&lt;limits&gt;</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="11"><highlight class="normal"></highlight><highlight class="preprocessor">#include<sp/>&lt;typeinfo&gt;</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="12"><highlight class="normal"></highlight><highlight class="preprocessor">#include<sp/>&lt;utility&gt;</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="13"><highlight class="normal"></highlight><highlight class="preprocessor">#include<sp/>&lt;vector&gt;</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="14"><highlight class="normal"></highlight></codeline>
<codeline lineno="15"><highlight class="normal"></highlight><highlight class="preprocessor">#include<sp/>&quot;../types.h&quot;</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="16"><highlight class="normal"></highlight><highlight class="preprocessor">#include<sp/>&quot;../util/desk.h&quot;</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="17"><highlight class="normal"></highlight><highlight class="preprocessor">#include<sp/>&quot;../util/storage.h&quot;</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="18"><highlight class="normal"></highlight><highlight class="preprocessor">#include<sp/>&quot;<ref refid="idecider_8h" kindref="compound">./idecider.h</ref>&quot;</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="19"><highlight class="normal"></highlight></codeline>
<codeline lineno="20"><highlight class="normal"></highlight><highlight class="keyword">namespace<sp/></highlight><highlight class="normal"><ref refid="namespaceforpy" kindref="compound">forpy</ref><sp/>{</highlight></codeline>
<codeline lineno="21"><highlight class="normal"></highlight></codeline>
<codeline lineno="22"><highlight class="normal"></highlight><highlight class="preprocessor">#pragma<sp/>clang<sp/>diagnostic<sp/>push</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="23"><highlight class="normal"></highlight><highlight class="preprocessor">#pragma<sp/>clang<sp/>diagnostic<sp/>ignored<sp/>&quot;-Wunused-variable&quot;</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="24" refid="namespaceforpy_1a622967ce332bc66a209593e463a75a8f" refkind="member"><highlight class="normal"></highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">int</highlight><highlight class="normal"><sp/><ref refid="namespaceforpy_1a622967ce332bc66a209593e463a75a8f" kindref="member">DLOG_FD_V</ref><sp/>=<sp/>100;</highlight></codeline>
<codeline lineno="25" refid="namespaceforpy_1a0be9f05ba7f81a8d4bb60db8dea16b9b" refkind="member"><highlight class="normal"></highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">size_t</highlight><highlight class="normal"><sp/><ref refid="namespaceforpy_1a0be9f05ba7f81a8d4bb60db8dea16b9b" kindref="member">LOG_FD_NID</ref><sp/>=<sp/>12043;</highlight></codeline>
<codeline lineno="26" refid="namespaceforpy_1ad4fa807b399f8b5f78ac83ae7719f873" refkind="member"><highlight class="normal"></highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">bool</highlight><highlight class="normal"><sp/><ref refid="namespaceforpy_1ad4fa807b399f8b5f78ac83ae7719f873" kindref="member">LOG_FD_ALLN</ref><sp/>=<sp/></highlight><highlight class="keyword">true</highlight><highlight class="normal">;</highlight></codeline>
<codeline lineno="27"><highlight class="normal"></highlight><highlight class="preprocessor">#pragma<sp/>clang<sp/>diagnostic<sp/>pop</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="28"><highlight class="normal"></highlight></codeline>
<codeline lineno="45" refid="classforpy_1_1_fast_decider" refkind="compound"><highlight class="keyword">class<sp/></highlight><highlight class="normal"><ref refid="classforpy_1_1_fast_decider" kindref="compound">FastDecider</ref><sp/>:<sp/></highlight><highlight class="keyword">public</highlight><highlight class="normal"><sp/><ref refid="classforpy_1_1_i_decider" kindref="compound">IDecider</ref><sp/>{</highlight></codeline>
<codeline lineno="46"><highlight class="normal"><sp/></highlight><highlight class="keyword">public</highlight><highlight class="normal">:</highlight></codeline>
<codeline lineno="64"><highlight class="normal"><sp/><sp/><ref refid="classforpy_1_1_fast_decider_1a404f95badda573334cffc28476b206d2" kindref="member">FastDecider</ref>(</highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/>std::shared_ptr&lt;IThreshOpt&gt;<sp/>&amp;<ref refid="classforpy_1_1_fast_decider_1a89eb585603d4c365bfe82330e8d8810f" kindref="member">threshold_optimizer</ref><sp/>=<sp/></highlight><highlight class="keyword">nullptr</highlight><highlight class="normal">,</highlight></codeline>
<codeline lineno="65"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/></highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">size_t</highlight><highlight class="normal"><sp/>&amp;n_valid_features_to_use<sp/>=<sp/>0,</highlight></codeline>
<codeline lineno="66"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/></highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">bool</highlight><highlight class="normal"><sp/>&amp;<ref refid="classforpy_1_1_fast_decider_1a684d1db73cb2528e2bd111cd83a1aff0" kindref="member">autoscale_valid_features</ref><sp/>=<sp/></highlight><highlight class="keyword">false</highlight><highlight class="normal">);</highlight></codeline>
<codeline lineno="67"><highlight class="normal"></highlight></codeline>
<codeline lineno="68" refid="classforpy_1_1_fast_decider_1a67e51e5b1c29fbf60860faa9b8c8ec68" refkind="member"><highlight class="normal"><sp/><sp/></highlight><highlight class="keyword">virtual</highlight><highlight class="normal"><sp/>std::shared_ptr&lt;IDecider&gt;<sp/><ref refid="classforpy_1_1_fast_decider_1a67e51e5b1c29fbf60860faa9b8c8ec68" kindref="member">create_duplicate</ref>(</highlight></codeline>
<codeline lineno="69"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/></highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/><ref refid="namespaceforpy_1ad05e34c62859518b61b76b5085e913d8" kindref="member">uint</ref><sp/>&amp;random_seed)</highlight><highlight class="keyword"><sp/>const<sp/></highlight><highlight class="normal">{</highlight></codeline>
<codeline lineno="70"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordflow">return</highlight><highlight class="normal"><sp/>std::make_shared&lt;FastDecider&gt;(</highlight></codeline>
<codeline lineno="71"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><ref refid="classforpy_1_1_fast_decider_1a89eb585603d4c365bfe82330e8d8810f" kindref="member">threshold_optimizer</ref>-&gt;create_duplicate(random_seed),</highlight></codeline>
<codeline lineno="72"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><ref refid="classforpy_1_1_fast_decider_1ac39412abc6a5bcd1182443e715a28c3f" kindref="member">n_valids_to_use</ref><sp/>!=<sp/><ref refid="classforpy_1_1_fast_decider_1a55b1e97048a19a0c7d35130dc36fb525" kindref="member">data_dim</ref><sp/>&amp;&amp;<sp/>!<ref refid="classforpy_1_1_fast_decider_1a684d1db73cb2528e2bd111cd83a1aff0" kindref="member">autoscale_valid_features</ref></highlight></codeline>
<codeline lineno="73"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>?<sp/><ref refid="classforpy_1_1_fast_decider_1ac39412abc6a5bcd1182443e715a28c3f" kindref="member">n_valids_to_use</ref></highlight></codeline>
<codeline lineno="74"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>:<sp/>0,</highlight></codeline>
<codeline lineno="75"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><ref refid="classforpy_1_1_fast_decider_1a684d1db73cb2528e2bd111cd83a1aff0" kindref="member">autoscale_valid_features</ref>);</highlight></codeline>
<codeline lineno="76"><highlight class="normal"><sp/><sp/>}</highlight></codeline>
<codeline lineno="77"><highlight class="normal"></highlight></codeline>
<codeline lineno="78" refid="classforpy_1_1_fast_decider_1aa86d9abb1b2702291fc5555fd539ff1c" refkind="member"><highlight class="normal"><sp/><sp/></highlight><highlight class="keyword">inline</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">bool</highlight><highlight class="normal"><sp/><ref refid="classforpy_1_1_fast_decider_1aa86d9abb1b2702291fc5555fd539ff1c" kindref="member">is_compatible_with</ref>(</highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/><ref refid="classforpy_1_1_i_data_provider" kindref="compound">IDataProvider</ref><sp/>&amp;dprov)<sp/>{</highlight></codeline>
<codeline lineno="79"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordflow">if</highlight><highlight class="normal"><sp/>(<ref refid="classforpy_1_1_fast_decider_1ac39412abc6a5bcd1182443e715a28c3f" kindref="member">n_valids_to_use</ref><sp/>&gt;<sp/>dprov.<ref refid="classforpy_1_1_i_data_provider_1af577bc7a37986b19108c38291056bb9d" kindref="member">get_feat_vec_dim</ref>())<sp/>{</highlight></codeline>
<codeline lineno="80"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/>LOG(WARNING)<sp/>&lt;&lt;<sp/></highlight><highlight class="stringliteral">&quot;`n_valid_features_to_use`<sp/>is<sp/>greater<sp/>than<sp/>the<sp/>number<sp/>of<sp/>&quot;</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="81"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>&lt;&lt;<sp/></highlight><highlight class="stringliteral">&quot;features<sp/>(&quot;</highlight><highlight class="normal"><sp/>&lt;&lt;<sp/><ref refid="classforpy_1_1_fast_decider_1ac39412abc6a5bcd1182443e715a28c3f" kindref="member">n_valids_to_use</ref><sp/>&lt;&lt;<sp/></highlight><highlight class="stringliteral">&quot;&gt;&quot;</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="82"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>&lt;&lt;<sp/>dprov.<ref refid="classforpy_1_1_i_data_provider_1af577bc7a37986b19108c38291056bb9d" kindref="member">get_feat_vec_dim</ref>()<sp/>&lt;&lt;<sp/></highlight><highlight class="stringliteral">&quot;)!<sp/>I&apos;m<sp/>reducing<sp/>&quot;</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="83"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>&lt;&lt;<sp/></highlight><highlight class="stringliteral">&quot;the<sp/>number<sp/>accordingly.&quot;</highlight><highlight class="normal">;</highlight></codeline>
<codeline lineno="84"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><ref refid="classforpy_1_1_fast_decider_1ac39412abc6a5bcd1182443e715a28c3f" kindref="member">n_valids_to_use</ref><sp/>=<sp/>dprov.<ref refid="classforpy_1_1_i_data_provider_1af577bc7a37986b19108c38291056bb9d" kindref="member">get_feat_vec_dim</ref>();</highlight></codeline>
<codeline lineno="85"><highlight class="normal"><sp/><sp/><sp/><sp/>}</highlight></codeline>
<codeline lineno="86"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordflow">if</highlight><highlight class="normal"><sp/>(<ref refid="classforpy_1_1_fast_decider_1ac39412abc6a5bcd1182443e715a28c3f" kindref="member">n_valids_to_use</ref><sp/>==<sp/>0)<sp/>{</highlight></codeline>
<codeline lineno="87"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/></highlight><highlight class="keywordflow">if</highlight><highlight class="normal"><sp/>(<ref refid="classforpy_1_1_fast_decider_1a684d1db73cb2528e2bd111cd83a1aff0" kindref="member">autoscale_valid_features</ref>)<sp/>{</highlight></codeline>
<codeline lineno="88"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><ref refid="classforpy_1_1_fast_decider_1ac39412abc6a5bcd1182443e715a28c3f" kindref="member">n_valids_to_use</ref><sp/>=<sp/>std::round(std::sqrt(dprov.<ref refid="classforpy_1_1_i_data_provider_1af577bc7a37986b19108c38291056bb9d" kindref="member">get_feat_vec_dim</ref>()));</highlight></codeline>
<codeline lineno="89"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/>}<sp/></highlight><highlight class="keywordflow">else</highlight><highlight class="normal"><sp/>{</highlight></codeline>
<codeline lineno="90"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><ref refid="classforpy_1_1_fast_decider_1ac39412abc6a5bcd1182443e715a28c3f" kindref="member">n_valids_to_use</ref><sp/>=<sp/>dprov.<ref refid="classforpy_1_1_i_data_provider_1af577bc7a37986b19108c38291056bb9d" kindref="member">get_feat_vec_dim</ref>();</highlight></codeline>
<codeline lineno="91"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/>}</highlight></codeline>
<codeline lineno="92"><highlight class="normal"><sp/><sp/><sp/><sp/>}</highlight></codeline>
<codeline lineno="93"><highlight class="normal"></highlight></codeline>
<codeline lineno="94"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordflow">if</highlight><highlight class="normal"><sp/>(dprov.<ref refid="classforpy_1_1_i_data_provider_1af577bc7a37986b19108c38291056bb9d" kindref="member">get_feat_vec_dim</ref>()<sp/>!=<sp/><ref refid="classforpy_1_1_fast_decider_1a55b1e97048a19a0c7d35130dc36fb525" kindref="member">data_dim</ref>)</highlight></codeline>
<codeline lineno="95"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/></highlight><highlight class="keywordflow">throw</highlight><highlight class="normal"><sp/><ref refid="classforpy_1_1_forpy_exception" kindref="compound">ForpyException</ref>(</highlight><highlight class="stringliteral">&quot;Incompatible<sp/>data<sp/>provider<sp/>detected!&quot;</highlight><highlight class="normal">);</highlight></codeline>
<codeline lineno="96"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordflow">return</highlight><highlight class="normal"><sp/></highlight><highlight class="keyword">true</highlight><highlight class="normal">;</highlight></codeline>
<codeline lineno="97"><highlight class="normal"><sp/><sp/>}</highlight></codeline>
<codeline lineno="98"><highlight class="normal"></highlight></codeline>
<codeline lineno="99" refid="classforpy_1_1_fast_decider_1acc93b80b57c9fe93b66b8c0949f1c33d" refkind="member"><highlight class="normal"><sp/><sp/></highlight><highlight class="keyword">inline</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">void</highlight><highlight class="normal"><sp/><ref refid="classforpy_1_1_fast_decider_1acc93b80b57c9fe93b66b8c0949f1c33d" kindref="member">transfer_or_run_check</ref>(</highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/>std::shared_ptr&lt;IDecider&gt;<sp/>&amp;other,</highlight></codeline>
<codeline lineno="100"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><ref refid="classforpy_1_1_i_data_provider" kindref="compound">IDataProvider</ref><sp/>*dprov)<sp/>{</highlight></codeline>
<codeline lineno="101"><highlight class="normal"><sp/><sp/><sp/><sp/><ref refid="classforpy_1_1_fast_decider_1a89eb585603d4c365bfe82330e8d8810f" kindref="member">threshold_optimizer</ref>-&gt;transfer_or_run_check(other-&gt;get_threshopt().get(),</highlight></codeline>
<codeline lineno="102"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>dprov);</highlight></codeline>
<codeline lineno="103"><highlight class="normal"><sp/><sp/><sp/><sp/>other-&gt;set_data_dim(<ref refid="classforpy_1_1_fast_decider_1a55b1e97048a19a0c7d35130dc36fb525" kindref="member">data_dim</ref>);</highlight></codeline>
<codeline lineno="104"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keyword">auto</highlight><highlight class="normal"><sp/>*ot_fd<sp/>=<sp/></highlight><highlight class="keyword">dynamic_cast&lt;</highlight><highlight class="normal"><ref refid="classforpy_1_1_fast_decider" kindref="compound">FastDecider</ref><sp/>*</highlight><highlight class="keyword">&gt;</highlight><highlight class="normal">(other.get());</highlight></codeline>
<codeline lineno="105"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordflow">if</highlight><highlight class="normal"><sp/>(ot_fd<sp/>==<sp/></highlight><highlight class="keyword">nullptr</highlight><highlight class="normal">)</highlight></codeline>
<codeline lineno="106"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/>other-&gt;<ref refid="classforpy_1_1_fast_decider_1aa86d9abb1b2702291fc5555fd539ff1c" kindref="member">is_compatible_with</ref>(*dprov);</highlight></codeline>
<codeline lineno="107"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordflow">else</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="108"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/>ot_fd-&gt;n_valids_to_use<sp/>=<sp/><ref refid="classforpy_1_1_fast_decider_1ac39412abc6a5bcd1182443e715a28c3f" kindref="member">n_valids_to_use</ref>;</highlight></codeline>
<codeline lineno="109"><highlight class="normal"><sp/><sp/>}</highlight></codeline>
<codeline lineno="110"><highlight class="normal"></highlight></codeline>
<codeline lineno="111" refid="classforpy_1_1_fast_decider_1a73c104731adf64816cdfa32d78f153b5" refkind="member"><highlight class="normal"><sp/><sp/></highlight><highlight class="keyword">inline</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">void</highlight><highlight class="normal"><sp/><ref refid="classforpy_1_1_fast_decider_1a73c104731adf64816cdfa32d78f153b5" kindref="member">set_data_dim</ref>(</highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">size_t</highlight><highlight class="normal"><sp/>&amp;val)<sp/>{<sp/><ref refid="classforpy_1_1_fast_decider_1a55b1e97048a19a0c7d35130dc36fb525" kindref="member">data_dim</ref><sp/>=<sp/>val;<sp/>};</highlight></codeline>
<codeline lineno="112"><highlight class="normal"></highlight></codeline>
<codeline lineno="113" refid="classforpy_1_1_fast_decider_1ae63a08fe363546bd5b660c480e58b2fc" refkind="member"><highlight class="normal"><sp/><sp/></highlight><highlight class="keyword">inline</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">void</highlight><highlight class="normal"><sp/><ref refid="classforpy_1_1_fast_decider_1ae63a08fe363546bd5b660c480e58b2fc" kindref="member">ensure_capacity</ref>(</highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">size_t</highlight><highlight class="normal"><sp/>&amp;n_samples)<sp/>{</highlight></codeline>
<codeline lineno="114"><highlight class="normal"><sp/><sp/><sp/><sp/><ref refid="classforpy_1_1_fast_decider_1a33acfa7d12a826914428686a558d3fb4" kindref="member">node_to_featsel</ref>.resize(n_samples);</highlight></codeline>
<codeline lineno="115"><highlight class="normal"><sp/><sp/><sp/><sp/><ref refid="classforpy_1_1_fast_decider_1a53b6529e0743d6adbf12442c822c57a9" kindref="member">node_to_thresh_v</ref>.match([&amp;n_samples](</highlight><highlight class="keyword">auto</highlight><highlight class="normal"><sp/>&amp;vec)<sp/>{<sp/>vec.resize(n_samples);<sp/>});</highlight></codeline>
<codeline lineno="116"><highlight class="normal"><sp/><sp/>};</highlight></codeline>
<codeline lineno="117"><highlight class="normal"></highlight></codeline>
<codeline lineno="118" refid="classforpy_1_1_fast_decider_1ae525593966b44964aa0690aad90cf62d" refkind="member"><highlight class="normal"><sp/><sp/></highlight><highlight class="keyword">inline</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">void</highlight><highlight class="normal"><sp/><ref refid="classforpy_1_1_fast_decider_1ae525593966b44964aa0690aad90cf62d" kindref="member">finalize_capacity</ref>(</highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/></highlight><highlight class="keywordtype">size_t</highlight><highlight class="normal"><sp/>&amp;size)<sp/>{<sp/><ref refid="classforpy_1_1_fast_decider_1ae63a08fe363546bd5b660c480e58b2fc" kindref="member">ensure_capacity</ref>(size);<sp/>};</highlight></codeline>
<codeline lineno="119"><highlight class="normal"></highlight></codeline>
<codeline lineno="120"><highlight class="normal"><sp/><sp/></highlight><highlight class="keywordtype">void</highlight><highlight class="normal"><sp/><ref refid="classforpy_1_1_fast_decider_1a3d05e3fd5701735e77efb65e2481dce1" kindref="member">make_node</ref>(</highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/><ref refid="structforpy_1_1_todo_mark" kindref="compound">TodoMark</ref><sp/>&amp;todo_info,<sp/></highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/><ref refid="namespaceforpy_1ad05e34c62859518b61b76b5085e913d8" kindref="member">uint</ref><sp/>&amp;min_samples_at_leaf,</highlight></codeline>
<codeline lineno="121"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/></highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/><ref refid="classforpy_1_1_i_data_provider" kindref="compound">IDataProvider</ref><sp/>&amp;data_provider,<sp/><ref refid="structforpy_1_1_desk" kindref="compound">Desk</ref><sp/>*d)<sp/></highlight><highlight class="keyword">const</highlight><highlight class="normal">;</highlight></codeline>
<codeline lineno="122"><highlight class="normal"></highlight></codeline>
<codeline lineno="123"><highlight class="normal"><sp/><sp/></highlight><highlight class="keywordtype">bool</highlight><highlight class="normal"><sp/><ref refid="classforpy_1_1_fast_decider_1a1f3ad502d63b3ff3764826ac0590289b" kindref="member">decide</ref>(</highlight></codeline>
<codeline lineno="124"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/></highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/><ref refid="namespaceforpy_1a324c9643e02b76477c3a99a48773be8c" kindref="member">id_t</ref><sp/>&amp;node_id,<sp/></highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/><ref refid="namespaceforpy_1a724d37691de11a57b50b9935b5550a89" kindref="member">Data&lt;MatCRef&gt;</ref><sp/>&amp;data_v,</highlight></codeline>
<codeline lineno="125"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/></highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/>std::function&lt;</highlight><highlight class="keywordtype">void</highlight><highlight class="normal">(</highlight><highlight class="keywordtype">void</highlight><highlight class="normal"><sp/>*)&gt;<sp/>&amp;decision_param_transf<sp/>=<sp/></highlight><highlight class="keyword">nullptr</highlight><highlight class="normal">)<sp/></highlight><highlight class="keyword">const</highlight><highlight class="normal">;</highlight></codeline>
<codeline lineno="126"><highlight class="normal"></highlight></codeline>
<codeline lineno="127"><highlight class="normal"><sp/><sp/></highlight><highlight class="keywordtype">bool</highlight><highlight class="normal"><sp/><ref refid="classforpy_1_1_fast_decider_1a1ee1ea0966f7839935d837d04aa9ac6e" kindref="member">supports_weights</ref>()<sp/></highlight><highlight class="keyword">const</highlight><highlight class="normal">;</highlight></codeline>
<codeline lineno="128"><highlight class="normal"></highlight></codeline>
<codeline lineno="129"><highlight class="normal"><sp/><sp/></highlight><highlight class="keywordtype">size_t</highlight><highlight class="normal"><sp/><ref refid="classforpy_1_1_fast_decider_1a94866bb04b4e741c86e269573a29beb4" kindref="member">get_data_dim</ref>()<sp/></highlight><highlight class="keyword">const</highlight><highlight class="normal">;</highlight></codeline>
<codeline lineno="130"><highlight class="normal"></highlight></codeline>
<codeline lineno="131"><highlight class="normal"><sp/><sp/>std::shared_ptr&lt;IThreshOpt&gt;<sp/><ref refid="classforpy_1_1_fast_decider_1a1f479e3186a72c7b0da12f6ce6bb651e" kindref="member">get_threshopt</ref>()<sp/></highlight><highlight class="keyword">const</highlight><highlight class="normal">;</highlight></codeline>
<codeline lineno="132"><highlight class="normal"></highlight></codeline>
<codeline lineno="133"><highlight class="normal"><sp/><sp/></highlight><highlight class="keywordtype">bool</highlight><highlight class="normal"><sp/><ref refid="classforpy_1_1_fast_decider_1a2ec7bb7c730aa188f168f9a5c16b54a0" kindref="member">operator==</ref>(</highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/><ref refid="classforpy_1_1_i_decider" kindref="compound">IDecider</ref><sp/>&amp;rhs)<sp/></highlight><highlight class="keyword">const</highlight><highlight class="normal">;</highlight></codeline>
<codeline lineno="134"><highlight class="normal"></highlight></codeline>
<codeline lineno="135" refid="classforpy_1_1_fast_decider_1a9875350500652a92da033255f97d60b8" refkind="member"><highlight class="normal"><sp/><sp/></highlight><highlight class="keyword">inline</highlight><highlight class="normal"><sp/></highlight><highlight class="keyword">friend</highlight><highlight class="normal"><sp/>std::ostream<sp/>&amp;<ref refid="classforpy_1_1_fast_decider_1a9875350500652a92da033255f97d60b8" kindref="member">operator&lt;&lt;</ref>(std::ostream<sp/>&amp;stream,</highlight></codeline>
<codeline lineno="136"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/></highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/><ref refid="classforpy_1_1_fast_decider" kindref="compound">FastDecider</ref><sp/>&amp;</highlight><highlight class="keyword">self</highlight><highlight class="normal">)<sp/>{</highlight></codeline>
<codeline lineno="137"><highlight class="normal"><sp/><sp/><sp/><sp/>stream<sp/>&lt;&lt;<sp/></highlight><highlight class="stringliteral">&quot;forpy::FastDecider[&quot;</highlight><highlight class="normal"><sp/>&lt;&lt;<sp/></highlight><highlight class="keyword">self</highlight><highlight class="normal">.node_to_featsel.size()</highlight></codeline>
<codeline lineno="138"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>&lt;&lt;<sp/></highlight><highlight class="stringliteral">&quot;<sp/>stored]&quot;</highlight><highlight class="normal">;</highlight></codeline>
<codeline lineno="139"><highlight class="normal"><sp/><sp/><sp/><sp/></highlight><highlight class="keywordflow">return</highlight><highlight class="normal"><sp/>stream;</highlight></codeline>
<codeline lineno="140"><highlight class="normal"><sp/><sp/>};</highlight></codeline>
<codeline lineno="141"><highlight class="normal"><sp/><sp/>std::pair&lt;const<sp/>std::vector&lt;size_t&gt;<sp/>*,</highlight></codeline>
<codeline lineno="142"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/></highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/>mu::variant&lt;std::vector&lt;float&gt;,<sp/>std::vector&lt;double&gt;,</highlight></codeline>
<codeline lineno="143"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>std::vector&lt;uint32_t&gt;,<sp/>std::vector&lt;uint8_t&gt;&gt;<sp/>*&gt;</highlight></codeline>
<codeline lineno="144"><highlight class="normal"><sp/><sp/><ref refid="classforpy_1_1_fast_decider_1a2242294fea19611e426f208deb02932c" kindref="member">get_maps</ref>()<sp/></highlight><highlight class="keyword">const</highlight><highlight class="normal">;</highlight></codeline>
<codeline lineno="145"><highlight class="normal"></highlight></codeline>
<codeline lineno="146"><highlight class="normal"><sp/></highlight><highlight class="keyword">private</highlight><highlight class="normal">:</highlight></codeline>
<codeline lineno="147" refid="classforpy_1_1_fast_decider_1ab2f44cbb59a08132f4c843e5225bba0e" refkind="member"><highlight class="normal"><sp/><sp/></highlight><highlight class="keyword">friend</highlight><highlight class="normal"><sp/></highlight><highlight class="keyword">class<sp/></highlight><highlight class="normal"><ref refid="classforpy_1_1_fast_decider_1ab2f44cbb59a08132f4c843e5225bba0e" kindref="member">cereal::access</ref>;</highlight></codeline>
<codeline lineno="148"><highlight class="normal"><sp/><sp/></highlight><highlight class="keyword">template</highlight><highlight class="normal"><sp/>&lt;</highlight><highlight class="keyword">class</highlight><highlight class="normal"><sp/>Archive&gt;</highlight></codeline>
<codeline lineno="149" refid="classforpy_1_1_fast_decider_1abd9c04dd50cd0eace733eeaf28f20584" refkind="member"><highlight class="normal"><sp/><sp/></highlight><highlight class="keywordtype">void</highlight><highlight class="normal"><sp/><ref refid="classforpy_1_1_fast_decider_1abd9c04dd50cd0eace733eeaf28f20584" kindref="member">serialize</ref>(Archive<sp/>&amp;ar,<sp/></highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/><ref refid="namespaceforpy_1ad05e34c62859518b61b76b5085e913d8" kindref="member">uint</ref><sp/>&amp;)<sp/>{</highlight></codeline>
<codeline lineno="150"><highlight class="normal"><sp/><sp/><sp/><sp/>ar(cereal::make_nvp(</highlight><highlight class="stringliteral">&quot;base&quot;</highlight><highlight class="normal">,<sp/>cereal::base_class&lt;IDecider&gt;(</highlight><highlight class="keyword">this</highlight><highlight class="normal">)),</highlight></codeline>
<codeline lineno="151"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/>CEREAL_NVP(<ref refid="classforpy_1_1_fast_decider_1a89eb585603d4c365bfe82330e8d8810f" kindref="member">threshold_optimizer</ref>),<sp/>CEREAL_NVP(<ref refid="classforpy_1_1_fast_decider_1ac39412abc6a5bcd1182443e715a28c3f" kindref="member">n_valids_to_use</ref>),</highlight></codeline>
<codeline lineno="152"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/>CEREAL_NVP(<ref refid="classforpy_1_1_fast_decider_1a684d1db73cb2528e2bd111cd83a1aff0" kindref="member">autoscale_valid_features</ref>),<sp/>CEREAL_NVP(<ref refid="classforpy_1_1_fast_decider_1a33acfa7d12a826914428686a558d3fb4" kindref="member">node_to_featsel</ref>),</highlight></codeline>
<codeline lineno="153"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/>CEREAL_NVP(<ref refid="classforpy_1_1_fast_decider_1a53b6529e0743d6adbf12442c822c57a9" kindref="member">node_to_thresh_v</ref>),<sp/>CEREAL_NVP(<ref refid="classforpy_1_1_fast_decider_1a55b1e97048a19a0c7d35130dc36fb525" kindref="member">data_dim</ref>));</highlight></codeline>
<codeline lineno="154"><highlight class="normal"><sp/><sp/>}</highlight></codeline>
<codeline lineno="155"><highlight class="normal"></highlight></codeline>
<codeline lineno="157"><highlight class="normal"><sp/><sp/></highlight><highlight class="keywordtype">void</highlight><highlight class="normal"><sp/><ref refid="classforpy_1_1_fast_decider_1ab2fc803be31a793c919bd32164e34e59" kindref="member">_make_node__checks</ref>(</highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/><ref refid="structforpy_1_1_todo_mark" kindref="compound">TodoMark</ref><sp/>&amp;todo_info,</highlight></codeline>
<codeline lineno="158"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/></highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/><ref refid="classforpy_1_1_i_data_provider" kindref="compound">IDataProvider</ref><sp/>&amp;data_provider,</highlight></codeline>
<codeline lineno="159"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/></highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/><ref refid="namespaceforpy_1ad05e34c62859518b61b76b5085e913d8" kindref="member">uint</ref><sp/>&amp;min_samples_at_leaf,<sp/><ref refid="structforpy_1_1_desk" kindref="compound">Desk</ref><sp/>*d)<sp/></highlight><highlight class="keyword">const</highlight><highlight class="normal">;</highlight></codeline>
<codeline lineno="160"><highlight class="normal"></highlight></codeline>
<codeline lineno="161"><highlight class="normal"><sp/><sp/></highlight><highlight class="keywordtype">void</highlight><highlight class="normal"><sp/><ref refid="classforpy_1_1_fast_decider_1a4532a4d89401d820046757a4f3297b14" kindref="member">_make_node__opt</ref>(</highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/><ref refid="classforpy_1_1_i_data_provider" kindref="compound">IDataProvider</ref><sp/>&amp;dprov,<sp/><ref refid="structforpy_1_1_desk" kindref="compound">Desk</ref><sp/>*d)<sp/></highlight><highlight class="keyword">const</highlight><highlight class="normal">;</highlight></codeline>
<codeline lineno="162"><highlight class="normal"></highlight></codeline>
<codeline lineno="163"><highlight class="normal"><sp/><sp/></highlight><highlight class="keywordtype">void</highlight><highlight class="normal"><sp/><ref refid="classforpy_1_1_fast_decider_1ab3aa16331610cf3d388b62f8c913d495" kindref="member">_make_node__postprocess</ref>(</highlight><highlight class="keyword">const</highlight><highlight class="normal"><sp/><ref refid="classforpy_1_1_i_data_provider" kindref="compound">IDataProvider</ref><sp/>&amp;dprov,<sp/><ref refid="structforpy_1_1_desk" kindref="compound">Desk</ref><sp/>*d)<sp/></highlight><highlight class="keyword">const</highlight><highlight class="normal">;</highlight></codeline>
<codeline lineno="164"><highlight class="normal"></highlight></codeline>
<codeline lineno="165"><highlight class="normal"><sp/><sp/></highlight><highlight class="comment">//<sp/>Fields.</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="166" refid="classforpy_1_1_fast_decider_1a89eb585603d4c365bfe82330e8d8810f" refkind="member"><highlight class="normal"><sp/><sp/>std::shared_ptr&lt;IThreshOpt&gt;<sp/><ref refid="classforpy_1_1_fast_decider_1a89eb585603d4c365bfe82330e8d8810f" kindref="member">threshold_optimizer</ref>;</highlight></codeline>
<codeline lineno="167" refid="classforpy_1_1_fast_decider_1ac39412abc6a5bcd1182443e715a28c3f" refkind="member"><highlight class="normal"><sp/><sp/></highlight><highlight class="keywordtype">size_t</highlight><highlight class="normal"><sp/><ref refid="classforpy_1_1_fast_decider_1ac39412abc6a5bcd1182443e715a28c3f" kindref="member">n_valids_to_use</ref>;</highlight></codeline>
<codeline lineno="168" refid="classforpy_1_1_fast_decider_1a684d1db73cb2528e2bd111cd83a1aff0" refkind="member"><highlight class="normal"><sp/><sp/></highlight><highlight class="keywordtype">bool</highlight><highlight class="normal"><sp/><ref refid="classforpy_1_1_fast_decider_1a684d1db73cb2528e2bd111cd83a1aff0" kindref="member">autoscale_valid_features</ref>;</highlight></codeline>
<codeline lineno="169" refid="classforpy_1_1_fast_decider_1a33acfa7d12a826914428686a558d3fb4" refkind="member"><highlight class="normal"><sp/><sp/>std::vector&lt;size_t&gt;<sp/><ref refid="classforpy_1_1_fast_decider_1a33acfa7d12a826914428686a558d3fb4" kindref="member">node_to_featsel</ref>;</highlight></codeline>
<codeline lineno="170"><highlight class="normal"><sp/><sp/>mu::variant&lt;std::vector&lt;float&gt;,<sp/>std::vector&lt;double&gt;,<sp/>std::vector&lt;uint32_t&gt;,</highlight></codeline>
<codeline lineno="171"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/><sp/>std::vector&lt;uint8_t&gt;&gt;</highlight></codeline>
<codeline lineno="172" refid="classforpy_1_1_fast_decider_1a53b6529e0743d6adbf12442c822c57a9" refkind="member"><highlight class="normal"><sp/><sp/><sp/><sp/><sp/><sp/><ref refid="classforpy_1_1_fast_decider_1a53b6529e0743d6adbf12442c822c57a9" kindref="member">node_to_thresh_v</ref>;</highlight></codeline>
<codeline lineno="173" refid="classforpy_1_1_fast_decider_1a55b1e97048a19a0c7d35130dc36fb525" refkind="member"><highlight class="normal"><sp/><sp/></highlight><highlight class="keywordtype">size_t</highlight><highlight class="normal"><sp/><ref refid="classforpy_1_1_fast_decider_1a55b1e97048a19a0c7d35130dc36fb525" kindref="member">data_dim</ref>;</highlight></codeline>
<codeline lineno="174"><highlight class="normal">};</highlight></codeline>
<codeline lineno="175"><highlight class="normal">};<sp/><sp/></highlight><highlight class="comment">//<sp/>namespace<sp/>forpy</highlight><highlight class="normal"></highlight></codeline>
<codeline lineno="176"><highlight class="normal"></highlight></codeline>
<codeline lineno="177"><highlight class="normal"><ref refid="fastdecider_8h_1a5e45c5d05100e5b924029ba2bc0d59e0" kindref="member">CEREAL_REGISTER_TYPE</ref>(<ref refid="classforpy_1_1_fast_decider" kindref="compound">forpy::FastDecider</ref>);</highlight></codeline>
<codeline lineno="178"><highlight class="normal"></highlight><highlight class="preprocessor">#endif<sp/><sp/>//<sp/>FORPY_DECIDERS_FASTDECIDER_H_</highlight></codeline>
    </programlisting>
    <location file="/Users/classner/git/forpy/include/forpy/deciders/fastdecider.h"/>
  </compounddef>
</doxygen>
