<?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="structforpy_1_1_tree_desk" kind="struct" language="C++" prot="public">
    <compoundname>forpy::TreeDesk</compoundname>
    <includes refid="desk_8h" local="no">desk.h</includes>
      <sectiondef kind="public-attrib">
      <memberdef kind="variable" id="structforpy_1_1_tree_desk_1a5812d7a6d8c7cd2891d5089ec06939b6" prot="public" static="no" mutable="no">
        <type>std::vector&lt; <ref refid="structforpy_1_1_todo_mark" kindref="compound">TodoMark</ref> &gt;</type>
        <definition>std::vector&lt;TodoMark&gt; forpy::TreeDesk::marks</definition>
        <argsstring></argsstring>
        <name>marks</name>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
<para>Storing marked nodes for DFS. (<computeroutput>std::stack</computeroutput> has no <computeroutput>clear()</computeroutput> method, that&apos;s why I gave preference to an <computeroutput>std::vector</computeroutput>.) </para>        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/Users/classner/git/forpy/include/forpy/util/desk.h" line="22" column="1" bodyfile="/Users/classner/git/forpy/include/forpy/util/desk.h" bodystart="22" bodyend="-1"/>
      </memberdef>
      <memberdef kind="variable" id="structforpy_1_1_tree_desk_1a8a307628cbb298e90f9e49abd80ff428" prot="public" static="no" mutable="no">
        <type>std::atomic&lt; size_t &gt; *</type>
        <definition>std::atomic&lt;size_t&gt;* forpy::TreeDesk::stored_in_leafs</definition>
        <argsstring></argsstring>
        <name>stored_in_leafs</name>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
<para>Tracking how many samples have been stored (mainly as sanity check). Usually points to <ref refid="classforpy_1_1_tree_1a3d7a4f0f4fd0898375162ace44ee1a61" kindref="member">forpy::Tree::stored_in_leafs</ref>. </para>        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/Users/classner/git/forpy/include/forpy/util/desk.h" line="25" column="1" bodyfile="/Users/classner/git/forpy/include/forpy/util/desk.h" bodystart="25" bodyend="-1"/>
      </memberdef>
      <memberdef kind="variable" id="structforpy_1_1_tree_desk_1aaeff10e3c9ea00a0fb9be5508972318c" prot="public" static="no" mutable="no">
        <type>std::atomic&lt; <ref refid="namespaceforpy_1a324c9643e02b76477c3a99a48773be8c" kindref="member">id_t</ref> &gt; *</type>
        <definition>std::atomic&lt;id_t&gt;* forpy::TreeDesk::next_id_p</definition>
        <argsstring></argsstring>
        <name>next_id_p</name>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
<para>To determine the ID of the next tree node to use. Usually points to <ref refid="classforpy_1_1_tree_1a5d82b4527282466155d649b66205af6c" kindref="member">forpy::Tree::next_id</ref> (see the doc there for the storage concept). </para>        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/Users/classner/git/forpy/include/forpy/util/desk.h" line="28" column="1" bodyfile="/Users/classner/git/forpy/include/forpy/util/desk.h" bodystart="28" bodyend="-1"/>
      </memberdef>
      <memberdef kind="variable" id="structforpy_1_1_tree_desk_1aed4e5f0f634e0196ab107528b593a1a0" prot="public" static="no" mutable="no">
        <type>std::vector&lt; std::pair&lt; <ref refid="namespaceforpy_1a324c9643e02b76477c3a99a48773be8c" kindref="member">id_t</ref>, <ref refid="namespaceforpy_1a324c9643e02b76477c3a99a48773be8c" kindref="member">id_t</ref> &gt; &gt; *</type>
        <definition>std::vector&lt;std::pair&lt;id_t, id_t&gt; &gt;* forpy::TreeDesk::tree_p</definition>
        <argsstring></argsstring>
        <name>tree_p</name>
        <briefdescription>
        </briefdescription>
        <detaileddescription>
<para>A vector representation of the tree. Usually points to <ref refid="classforpy_1_1_tree_1a1fccccd44acd59ec0235131d965d1a2e" kindref="member">forpy::Tree::tree</ref>. </para>        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/Users/classner/git/forpy/include/forpy/util/desk.h" line="31" column="1" bodyfile="/Users/classner/git/forpy/include/forpy/util/desk.h" bodystart="31" bodyend="-1"/>
      </memberdef>
      </sectiondef>
      <sectiondef kind="public-func">
      <memberdef kind="function" id="structforpy_1_1_tree_desk_1a051ebc82b146d913b3936a53d365d6b1" prot="public" static="no" const="no" explicit="no" inline="yes" virt="non-virtual">
        <type>void</type>
        <definition>void forpy::TreeDesk::setup</definition>
        <argsstring>(std::atomic&lt; size_t &gt; *silp, std::atomic&lt; id_t &gt; *np, std::vector&lt; std::pair&lt; id_t, id_t &gt;&gt; *tsp)</argsstring>
        <name>setup</name>
        <param>
          <type>std::atomic&lt; size_t &gt; *</type>
          <declname>silp</declname>
        </param>
        <param>
          <type>std::atomic&lt; <ref refid="namespaceforpy_1a324c9643e02b76477c3a99a48773be8c" kindref="member">id_t</ref> &gt; *</type>
          <declname>np</declname>
        </param>
        <param>
          <type>std::vector&lt; std::pair&lt; <ref refid="namespaceforpy_1a324c9643e02b76477c3a99a48773be8c" kindref="member">id_t</ref>, <ref refid="namespaceforpy_1a324c9643e02b76477c3a99a48773be8c" kindref="member">id_t</ref> &gt;&gt; *</type>
          <declname>tsp</declname>
        </param>
        <briefdescription>
<para>Set up all the internal pointers. </para>        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/Users/classner/git/forpy/include/forpy/util/desk.h" line="36" column="1" bodyfile="/Users/classner/git/forpy/include/forpy/util/desk.h" bodystart="36" bodyend="41"/>
      </memberdef>
      <memberdef kind="function" id="structforpy_1_1_tree_desk_1a7484bf57a80becd00662e478809b906c" prot="public" static="no" const="no" explicit="no" inline="yes" virt="non-virtual">
        <type>void</type>
        <definition>void forpy::TreeDesk::reset</definition>
        <argsstring>()</argsstring>
        <name>reset</name>
        <briefdescription>
<para>Clear the marks and reset all pointers. </para>        </briefdescription>
        <detaileddescription>
        </detaileddescription>
        <inbodydescription>
        </inbodydescription>
        <location file="/Users/classner/git/forpy/include/forpy/util/desk.h" line="45" column="1" bodyfile="/Users/classner/git/forpy/include/forpy/util/desk.h" bodystart="45" bodyend="50"/>
      </memberdef>
      </sectiondef>
    <briefdescription>
<para><ref refid="structforpy_1_1_desk" kindref="compound">Desk</ref> for tree training. </para>    </briefdescription>
    <detaileddescription>
<para>Storage container for threaded tree training (see also <ref refid="group__forpydesk_group" kindref="compound">Desk Implementations</ref>). </para>    </detaileddescription>
    <collaborationgraph>
      <node id="226">
        <label>std::vector&lt; std::pair&lt; id_t, id_t &gt; &gt;</label>
      </node>
      <node id="228">
        <label>forpy::TodoMark</label>
        <link refid="structforpy_1_1_todo_mark"/>
      </node>
      <node id="225">
        <label>forpy::TreeDesk</label>
        <link refid="structforpy_1_1_tree_desk"/>
        <childnode refid="226" relation="usage">
          <edgelabel>tree_p</edgelabel>
        </childnode>
        <childnode refid="227" relation="usage">
          <edgelabel>marks</edgelabel>
        </childnode>
      </node>
      <node id="227">
        <label>std::vector&lt; forpy::TodoMark &gt;</label>
        <childnode refid="228" relation="usage">
          <edgelabel>elements</edgelabel>
        </childnode>
      </node>
    </collaborationgraph>
    <location file="/Users/classner/git/forpy/include/forpy/util/desk.h" line="19" column="1" bodyfile="/Users/classner/git/forpy/include/forpy/util/desk.h" bodystart="19" bodyend="51"/>
    <listofallmembers>
      <member refid="structforpy_1_1_tree_desk_1a5812d7a6d8c7cd2891d5089ec06939b6" prot="public" virt="non-virtual"><scope>forpy::TreeDesk</scope><name>marks</name></member>
      <member refid="structforpy_1_1_tree_desk_1aaeff10e3c9ea00a0fb9be5508972318c" prot="public" virt="non-virtual"><scope>forpy::TreeDesk</scope><name>next_id_p</name></member>
      <member refid="structforpy_1_1_tree_desk_1a7484bf57a80becd00662e478809b906c" prot="public" virt="non-virtual"><scope>forpy::TreeDesk</scope><name>reset</name></member>
      <member refid="structforpy_1_1_tree_desk_1a051ebc82b146d913b3936a53d365d6b1" prot="public" virt="non-virtual"><scope>forpy::TreeDesk</scope><name>setup</name></member>
      <member refid="structforpy_1_1_tree_desk_1a8a307628cbb298e90f9e49abd80ff428" prot="public" virt="non-virtual"><scope>forpy::TreeDesk</scope><name>stored_in_leafs</name></member>
      <member refid="structforpy_1_1_tree_desk_1aed4e5f0f634e0196ab107528b593a1a0" prot="public" virt="non-virtual"><scope>forpy::TreeDesk</scope><name>tree_p</name></member>
    </listofallmembers>
  </compounddef>
</doxygen>
