documentation for v1.0

This commit is contained in:
HRN
2025-01-10 13:02:07 +03:30
parent 53c7b23728
commit 0acd52f1b1
16893 changed files with 448346 additions and 285977 deletions

View File

@ -5,7 +5,7 @@
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="description" content="PhasicFlow is an open-source parallel DEM (discrete element method) package for simulating granular flow. It is developed in C++ and can be exectued on both GPU (like CUDA) and CPU.">
<title>PhasicFlow: src/Particles/particles/particleIdHandler.cpp Source File</title>
<title>PhasicFlow: src/Particles/particles/particleIdHandler/particleIdHandler.cpp Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
@ -127,54 +127,120 @@ $(document).ready(function(){initNavTree('particleIdHandler_8cpp_source.html',''
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160; </div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="particleIdHandler_8hpp.html">particleIdHandler.hpp</a>&quot;</span></div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160; </div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160; </div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160; </div>
<div class="line"><a name="l00025"></a><span class="lineno"><a class="line" href="classpFlow_1_1particleIdHandler.html#ac3593ef0f65358a88a49bd94305bbcdc"> 25</a></span>&#160;<a class="code" href="classpFlow_1_1particleIdHandler.html#ac3593ef0f65358a88a49bd94305bbcdc">pFlow::particleIdHandler::particleIdHandler</a>(<a class="code" href="classpFlow_1_1pointField.html">int32PointField_HD</a> &amp; <span class="keywordtype">id</span>)</div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;{</div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160; <a class="code" href="namespacepFlow.html#aae6ad039f09c0676db11bd114136a3fa">int32</a> maxID = maxActive&lt;DeviceSide&gt;(<span class="keywordtype">id</span>);</div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160; </div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; <span class="keywordflow">if</span>( maxID != -1 &amp;&amp; <span class="keywordtype">id</span>.size() == 0 )</div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; {</div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160; <a class="code" href="classpFlow_1_1particleIdHandler.html#aef6608c59885d9c2ca9703cdf2067a8c">nextId_</a> = 0;</div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; }</div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span>( maxID == -1 &amp;&amp; <span class="keywordtype">id</span>.size()&gt;0 )</div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; {</div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160; </div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; <a class="code" href="classpFlow_1_1particleIdHandler.html#aef6608c59885d9c2ca9703cdf2067a8c">nextId_</a> = 0; </div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; <span class="keywordtype">id</span>.modifyOnHost();</div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; </div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; <a class="code" href="pFlowMacros_8hpp.html#ac6c2cd1218587d4992ab1344890520d6">ForAll</a>(i,<span class="keywordtype">id</span>)</div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; {</div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; <span class="keywordflow">if</span>(<span class="keywordtype">id</span>.isActive(i))</div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; {</div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; <span class="keywordtype">id</span>[i] = <a class="code" href="classpFlow_1_1particleIdHandler.html#aab9e56419af88aa23546fc6ac70c8caa">getNextId</a>(); </div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; }</div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; }</div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; </div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; <span class="keywordtype">id</span>.syncViews();</div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; }</div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span>( maxID &gt;= <span class="keyword">static_cast&lt;</span><a class="code" href="namespacepFlow.html#aae6ad039f09c0676db11bd114136a3fa">int32</a><span class="keyword">&gt;</span>(<span class="keywordtype">id</span>.size()) )</div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; {</div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <a class="code" href="classpFlow_1_1particleIdHandler.html#aef6608c59885d9c2ca9703cdf2067a8c">nextId_</a> = maxID + 1;</div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; }</div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <span class="keywordflow">else</span></div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; {</div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <a class="code" href="classpFlow_1_1particleIdHandler.html#aef6608c59885d9c2ca9703cdf2067a8c">nextId_</a> = <span class="keywordtype">id</span>.size();</div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; }</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;}</div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; </div>
<div class="line"><a name="l00023"></a><span class="lineno"><a class="line" href="classpFlow_1_1particleIdHandler.html#a593696bb4b911919fd747f7c4105bc1f"> 23</a></span>&#160;<a class="code" href="classpFlow_1_1particleIdHandler.html#a593696bb4b911919fd747f7c4105bc1f">pFlow::particleIdHandler::particleIdHandler</a>(<a class="code" href="classpFlow_1_1pointStructure.html">pointStructure</a>&amp; <a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>)</div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;:</div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160; <a class="code" href="classpFlow_1_1pointField.html">uint32PointField_D</a></div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160; (</div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160; <a class="code" href="classpFlow_1_1objectFile.html">objectFile</a></div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160; (</div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; <span class="stringliteral">&quot;id&quot;</span>,</div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; <span class="stringliteral">&quot;&quot;</span>,</div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160; <a class="code" href="classpFlow_1_1objectFile.html">objectFile</a>::READ_IF_PRESENT,</div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; <a class="code" href="classpFlow_1_1objectFile.html">objectFile</a>::WRITE_ALWAYS</div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; ),</div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; <a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>,</div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160; static_cast&lt;<a class="code" href="namespacepFlow.html#abd01e8e67e3d94cab04ecaaf4f85ac1b">uint32</a>&gt;(-1),</div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; static_cast&lt;<a class="code" href="namespacepFlow.html#abd01e8e67e3d94cab04ecaaf4f85ac1b">uint32</a>&gt;(-1)</div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; )</div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;{</div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; </div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;}</div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; </div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="keywordtype">bool</span></div>
<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="classpFlow_1_1particleIdHandler.html#a0f63a62676bba1a8a5cf891337d1d201"> 43</a></span>&#160;<a class="code" href="classpFlow_1_1particleIdHandler.html#a0f63a62676bba1a8a5cf891337d1d201">pFlow::particleIdHandler::hearChanges</a>(</div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> t,</div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; <a class="code" href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">real</a> dt,</div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; <a class="code" href="namespacepFlow.html#abd01e8e67e3d94cab04ecaaf4f85ac1b">uint32</a> iter,</div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; <span class="keyword">const</span> <a class="code" href="classpFlow_1_1message.html">message</a>&amp; msg,</div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <span class="keyword">const</span> <a class="code" href="classpFlow_1_1anyList.html">anyList</a>&amp; varList</div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;)</div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;{</div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <span class="keywordflow">if</span>(msg.<a class="code" href="classpFlow_1_1message.html#a77ea2ce039db7df50fd0a93cb0ecdf74">equivalentTo</a>(<a class="code" href="classpFlow_1_1message.html#a9ebe5a85b9070712ab5db5fd0bed687daf023478eb6deb494ddc303783a84b28f">message::ITEM_INSERT</a>))</div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; {</div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <span class="keyword">const</span> <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a> eventName = <a class="code" href="classpFlow_1_1message.html#acf9f500a488d3493694136a3515bf259">message::eventName</a>(<a class="code" href="classpFlow_1_1message.html#a9ebe5a85b9070712ab5db5fd0bed687daf023478eb6deb494ddc303783a84b28f">message::ITEM_INSERT</a>);</div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; </div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <span class="keyword">const</span> <span class="keyword">auto</span>&amp; indices = varList.<a class="code" href="classpFlow_1_1anyList.html#a5cf0498e92b5a4870077c74b0d3edd78">getObject</a>&lt;<a class="code" href="classpFlow_1_1indexContainer.html">uint32IndexContainer</a>&gt;(</div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; eventName);</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; </div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <a class="code" href="namespacepFlow.html#abd01e8e67e3d94cab04ecaaf4f85ac1b">uint32</a> numNew = indices.<a class="code" href="classpFlow_1_1indexContainer.html#a81c1a64be64b5bab9c8143a8d1c02029">size</a>();</div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <span class="keywordflow">if</span>(numNew == 0u)<span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; </div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <span class="keyword">auto</span> idRange = getIdRange(numNew);</div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <a class="code" href="classpFlow_1_1Vector.html">uint32Vector</a> newId(<span class="stringliteral">&quot;newId&quot;</span>,numNew,numNew,<a class="code" href="structRESERVE.html">RESERVE</a>());</div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; <a class="code" href="namespacepFlow.html#a1b5160866e4f412ceaeb32203cd87925">fillSequence</a>(newId, idRange.first);</div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; </div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="keywordflow">return</span> this-&gt;field().insertSetElement(indices, newId);</div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; }</div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="keywordflow">else</span></div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; {</div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classpFlow_1_1internalField.html#a0f63a62676bba1a8a5cf891337d1d201">uint32PointField_D::hearChanges</a>(t,dt,iter, msg,varList);</div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; }</div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;}</div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; </div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<a class="code" href="classpFlow_1_1uniquePtr.html">pFlow::uniquePtr&lt;pFlow::particleIdHandler&gt;</a></div>
<div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="classpFlow_1_1particleIdHandler.html#a916064ccf229e3608f27fef9d03d81c5"> 74</a></span>&#160;<a class="code" href="classpFlow_1_1particleIdHandler.html#a916064ccf229e3608f27fef9d03d81c5">pFlow::particleIdHandler::create</a>(<a class="code" href="classpFlow_1_1pointStructure.html">pointStructure</a>&amp; <a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>)</div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;{</div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <a class="code" href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">word</a> idHType = <a class="code" href="namespacepFlow.html#af4e1df8908797640749fa02e2f5db7a7">angleBracketsNames</a>(</div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <span class="stringliteral">&quot;particleIdHandler&quot;</span>, </div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <a class="code" href="namespacepFlow.html#a73a9289af0708a96f32013982a1a2967">pFlowProcessors</a>().localRunTypeName());</div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; </div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; </div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="keywordflow">if</span>( pointStructurevCtorSelector_.search(idHType) )</div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; {</div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <a class="code" href="streams_8hpp.html#aeb765df06121339620670437d217fec8">REPORT</a>(1)&lt;&lt;<span class="stringliteral">&quot;Creating particle id handler &quot;</span>&lt;&lt; </div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <a class="code" href="iOstream_8hpp.html#ac569b1e93bab8b809907065244b11fd2">Green_Text</a>(idHType)&lt;&lt;<a class="code" href="streams_8hpp.html#a1861619f2a6e102d0043a98577c8c9e8">END_REPORT</a>;</div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="keywordflow">return</span> pointStructurevCtorSelector_[idHType] (<a class="code" href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a>);</div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; }</div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <span class="keywordflow">else</span></div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; {</div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <a class="code" href="namespacepFlow.html#a9c4454c5f18c8245eaaebf2b4832eab0">printKeys</a></div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; ( </div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <a class="code" href="error_8hpp.html#adfe9ae1313e6913aca3f96d3eb67906e">fatalError</a> &lt;&lt; <span class="stringliteral">&quot;Ctor Selector &quot;</span>&lt;&lt; idHType &lt;&lt; <span class="stringliteral">&quot; dose not exist. \n&quot;</span></div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; &lt;&lt;<span class="stringliteral">&quot;Avaiable ones are: \n\n&quot;</span></div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; ,</div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; pointStructurevCtorSelector_</div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; );</div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <a class="code" href="error_8hpp.html#aad22a1cd3b45a97ac8cd195f06fe61fe">fatalExit</a>;</div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; }</div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <span class="keywordflow">return</span> <span class="keyword">nullptr</span>;</div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;}</div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<div class="ttc" id="aclasspFlow_1_1particleIdHandler_html_ac3593ef0f65358a88a49bd94305bbcdc"><div class="ttname"><a href="classpFlow_1_1particleIdHandler.html#ac3593ef0f65358a88a49bd94305bbcdc">pFlow::particleIdHandler::particleIdHandler</a></div><div class="ttdeci">particleIdHandler(int32PointField_HD &amp;id)</div><div class="ttdef"><b>Definition:</b> <a href="particleIdHandler_8cpp_source.html#l00025">particleIdHandler.cpp:25</a></div></div>
<div class="ttc" id="aclasspFlow_1_1particleIdHandler_html_aab9e56419af88aa23546fc6ac70c8caa"><div class="ttname"><a href="classpFlow_1_1particleIdHandler.html#aab9e56419af88aa23546fc6ac70c8caa">pFlow::particleIdHandler::getNextId</a></div><div class="ttdeci">int32 getNextId()</div><div class="ttdef"><b>Definition:</b> <a href="particleIdHandler_8hpp_source.html#l00037">particleIdHandler.hpp:37</a></div></div>
<div class="ttc" id="aclasspFlow_1_1pointField_html"><div class="ttname"><a href="classpFlow_1_1pointField.html">pFlow::pointField</a></div><div class="ttdef"><b>Definition:</b> <a href="pointField_8hpp_source.html#l00035">pointField.hpp:35</a></div></div>
<div class="ttc" id="anamespacepFlow_html_aae6ad039f09c0676db11bd114136a3fa"><div class="ttname"><a href="namespacepFlow.html#aae6ad039f09c0676db11bd114136a3fa">pFlow::int32</a></div><div class="ttdeci">int int32</div><div class="ttdef"><b>Definition:</b> <a href="builtinTypes_8hpp_source.html#l00053">builtinTypes.hpp:53</a></div></div>
<div class="ttc" id="apFlowMacros_8hpp_html_ac6c2cd1218587d4992ab1344890520d6"><div class="ttname"><a href="pFlowMacros_8hpp.html#ac6c2cd1218587d4992ab1344890520d6">ForAll</a></div><div class="ttdeci">#define ForAll(i, container)</div><div class="ttdef"><b>Definition:</b> <a href="pFlowMacros_8hpp_source.html#l00071">pFlowMacros.hpp:71</a></div></div>
<div class="ttc" id="aclasspFlow_1_1message_html_a77ea2ce039db7df50fd0a93cb0ecdf74"><div class="ttname"><a href="classpFlow_1_1message.html#a77ea2ce039db7df50fd0a93cb0ecdf74">pFlow::message::equivalentTo</a></div><div class="ttdeci">bool equivalentTo(EVENT evnt) const</div><div class="ttdef"><b>Definition:</b> <a href="message_8hpp_source.html#l00131">message.hpp:131</a></div></div>
<div class="ttc" id="aiOstream_8hpp_html_ac569b1e93bab8b809907065244b11fd2"><div class="ttname"><a href="iOstream_8hpp.html#ac569b1e93bab8b809907065244b11fd2">Green_Text</a></div><div class="ttdeci">#define Green_Text(text)</div><div class="ttdef"><b>Definition:</b> <a href="iOstream_8hpp_source.html#l00042">iOstream.hpp:42</a></div></div>
<div class="ttc" id="aclasspFlow_1_1message_html"><div class="ttname"><a href="classpFlow_1_1message.html">pFlow::message</a></div><div class="ttdef"><b>Definition:</b> <a href="message_8hpp_source.html#l00033">message.hpp:33</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a6192191c0e9c178a44ee1ac350fde476"><div class="ttname"><a href="namespacepFlow.html#a6192191c0e9c178a44ee1ac350fde476">pFlow::real</a></div><div class="ttdeci">float real</div><div class="ttdef"><b>Definition:</b> <a href="builtinTypes_8hpp_source.html#l00045">builtinTypes.hpp:45</a></div></div>
<div class="ttc" id="aerror_8hpp_html_aad22a1cd3b45a97ac8cd195f06fe61fe"><div class="ttname"><a href="error_8hpp.html#aad22a1cd3b45a97ac8cd195f06fe61fe">fatalExit</a></div><div class="ttdeci">#define fatalExit</div><div class="ttdoc">Fatal exit.</div><div class="ttdef"><b>Definition:</b> <a href="error_8hpp_source.html#l00098">error.hpp:98</a></div></div>
<div class="ttc" id="aclasspFlow_1_1anyList_html_a5cf0498e92b5a4870077c74b0d3edd78"><div class="ttname"><a href="classpFlow_1_1anyList.html#a5cf0498e92b5a4870077c74b0d3edd78">pFlow::anyList::getObject</a></div><div class="ttdeci">T &amp; getObject(size_t i)</div><div class="ttdoc">Get the reference to variable by index.</div><div class="ttdef"><b>Definition:</b> <a href="anyList_8hpp_source.html#l00134">anyList.hpp:134</a></div></div>
<div class="ttc" id="astreams_8hpp_html_aeb765df06121339620670437d217fec8"><div class="ttname"><a href="streams_8hpp.html#aeb765df06121339620670437d217fec8">REPORT</a></div><div class="ttdeci">#define REPORT(n)</div><div class="ttdef"><b>Definition:</b> <a href="streams_8hpp_source.html#l00039">streams.hpp:39</a></div></div>
<div class="ttc" id="anamespacepFlow_html_abd01e8e67e3d94cab04ecaaf4f85ac1b"><div class="ttname"><a href="namespacepFlow.html#abd01e8e67e3d94cab04ecaaf4f85ac1b">pFlow::uint32</a></div><div class="ttdeci">unsigned int uint32</div><div class="ttdef"><b>Definition:</b> <a href="builtinTypes_8hpp_source.html#l00056">builtinTypes.hpp:56</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a0ebe792a293e8c717bddf60070c0fe99"><div class="ttname"><a href="namespacepFlow.html#a0ebe792a293e8c717bddf60070c0fe99">pFlow::word</a></div><div class="ttdeci">std::string word</div><div class="ttdef"><b>Definition:</b> <a href="builtinTypes_8hpp_source.html#l00064">builtinTypes.hpp:64</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a9c4454c5f18c8245eaaebf2b4832eab0"><div class="ttname"><a href="namespacepFlow.html#a9c4454c5f18c8245eaaebf2b4832eab0">pFlow::printKeys</a></div><div class="ttdeci">iOstream &amp; printKeys(iOstream &amp;os, const wordHashMap&lt; T &gt; &amp;m)</div></div>
<div class="ttc" id="aclasspFlow_1_1internalField_html_a0f63a62676bba1a8a5cf891337d1d201"><div class="ttname"><a href="classpFlow_1_1internalField.html#a0f63a62676bba1a8a5cf891337d1d201">pFlow::internalField&lt; T, void &gt;::hearChanges</a></div><div class="ttdeci">bool hearChanges(real t, real dt, uint32 iter, const message &amp;msg, const anyList &amp;varList) override</div><div class="ttdef"><b>Definition:</b> <a href="internalField_8cpp_source.html#l00164">internalField.cpp:164</a></div></div>
<div class="ttc" id="astructRESERVE_html"><div class="ttname"><a href="structRESERVE.html">RESERVE</a></div><div class="ttdef"><b>Definition:</b> <a href="Vector_8hpp_source.html#l00040">Vector.hpp:40</a></div></div>
<div class="ttc" id="aclasspFlow_1_1pointField_html"><div class="ttname"><a href="classpFlow_1_1pointField.html">pFlow::pointField</a></div><div class="ttdef"><b>Definition:</b> <a href="pointField_8hpp_source.html#l00033">pointField.hpp:33</a></div></div>
<div class="ttc" id="aclasspFlow_1_1pointStructure_html"><div class="ttname"><a href="classpFlow_1_1pointStructure.html">pFlow::pointStructure</a></div><div class="ttdef"><b>Definition:</b> <a href="pointStructure_8hpp_source.html#l00034">pointStructure.hpp:34</a></div></div>
<div class="ttc" id="aclasspFlow_1_1anyList_html"><div class="ttname"><a href="classpFlow_1_1anyList.html">pFlow::anyList</a></div><div class="ttdef"><b>Definition:</b> <a href="anyList_8hpp_source.html#l00035">anyList.hpp:35</a></div></div>
<div class="ttc" id="anamespacepFlow_html_af4e1df8908797640749fa02e2f5db7a7"><div class="ttname"><a href="namespacepFlow.html#af4e1df8908797640749fa02e2f5db7a7">pFlow::angleBracketsNames</a></div><div class="ttdeci">word angleBracketsNames(const word &amp;w1, const word &amp;w2)</div><div class="ttdoc">Output &lt;w1,w2&gt;</div><div class="ttdef"><b>Definition:</b> <a href="bTypesFunctions_8cpp_source.html#l00156">bTypesFunctions.cpp:156</a></div></div>
<div class="ttc" id="astreams_8hpp_html_a1861619f2a6e102d0043a98577c8c9e8"><div class="ttname"><a href="streams_8hpp.html#a1861619f2a6e102d0043a98577c8c9e8">END_REPORT</a></div><div class="ttdeci">#define END_REPORT</div><div class="ttdef"><b>Definition:</b> <a href="streams_8hpp_source.html#l00040">streams.hpp:40</a></div></div>
<div class="ttc" id="aclasspFlow_1_1particleIdHandler_html_a593696bb4b911919fd747f7c4105bc1f"><div class="ttname"><a href="classpFlow_1_1particleIdHandler.html#a593696bb4b911919fd747f7c4105bc1f">pFlow::particleIdHandler::particleIdHandler</a></div><div class="ttdeci">particleIdHandler(pointStructure &amp;pStruct)</div><div class="ttdef"><b>Definition:</b> <a href="particleIdHandler_8cpp_source.html#l00023">particleIdHandler.cpp:23</a></div></div>
<div class="ttc" id="aclasspFlow_1_1objectFile_html"><div class="ttname"><a href="classpFlow_1_1objectFile.html">pFlow::objectFile</a></div><div class="ttdef"><b>Definition:</b> <a href="objectFile_8hpp_source.html#l00030">objectFile.hpp:30</a></div></div>
<div class="ttc" id="aclasspFlow_1_1message_html_a9ebe5a85b9070712ab5db5fd0bed687daf023478eb6deb494ddc303783a84b28f"><div class="ttname"><a href="classpFlow_1_1message.html#a9ebe5a85b9070712ab5db5fd0bed687daf023478eb6deb494ddc303783a84b28f">pFlow::message::ITEM_INSERT</a></div><div class="ttdeci">@ ITEM_INSERT</div><div class="ttdef"><b>Definition:</b> <a href="message_8hpp_source.html#l00042">message.hpp:42</a></div></div>
<div class="ttc" id="aerror_8hpp_html_adfe9ae1313e6913aca3f96d3eb67906e"><div class="ttname"><a href="error_8hpp.html#adfe9ae1313e6913aca3f96d3eb67906e">fatalError</a></div><div class="ttdeci">#define fatalError</div><div class="ttdoc">Report a fatal error and exit the applicaiton.</div><div class="ttdef"><b>Definition:</b> <a href="error_8hpp_source.html#l00070">error.hpp:70</a></div></div>
<div class="ttc" id="asetPointStructure_8hpp_html_a385e32971df44b131e4498181a949a91"><div class="ttname"><a href="setPointStructure_8hpp.html#a385e32971df44b131e4498181a949a91">pStruct</a></div><div class="ttdeci">auto &amp; pStruct</div><div class="ttdef"><b>Definition:</b> <a href="setPointStructure_8hpp_source.html#l00024">setPointStructure.hpp:24</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a73a9289af0708a96f32013982a1a2967"><div class="ttname"><a href="namespacepFlow.html#a73a9289af0708a96f32013982a1a2967">pFlow::pFlowProcessors</a></div><div class="ttdeci">localProcessors &amp; pFlowProcessors()</div><div class="ttdef"><b>Definition:</b> <a href="pFlowProcessors_8cpp_source.html#l00005">pFlowProcessors.cpp:5</a></div></div>
<div class="ttc" id="aclasspFlow_1_1uniquePtr_html"><div class="ttname"><a href="classpFlow_1_1uniquePtr.html">pFlow::uniquePtr&lt; pFlow::particleIdHandler &gt;</a></div></div>
<div class="ttc" id="aclasspFlow_1_1particleIdHandler_html_a0f63a62676bba1a8a5cf891337d1d201"><div class="ttname"><a href="classpFlow_1_1particleIdHandler.html#a0f63a62676bba1a8a5cf891337d1d201">pFlow::particleIdHandler::hearChanges</a></div><div class="ttdeci">bool hearChanges(real t, real dt, uint32 iter, const message &amp;msg, const anyList &amp;varList) override</div><div class="ttdef"><b>Definition:</b> <a href="particleIdHandler_8cpp_source.html#l00043">particleIdHandler.cpp:43</a></div></div>
<div class="ttc" id="aclasspFlow_1_1indexContainer_html_a81c1a64be64b5bab9c8143a8d1c02029"><div class="ttname"><a href="classpFlow_1_1indexContainer.html#a81c1a64be64b5bab9c8143a8d1c02029">pFlow::indexContainer::size</a></div><div class="ttdeci">INLINE_FUNCTION_HD auto size() const</div><div class="ttdoc">Size.</div><div class="ttdef"><b>Definition:</b> <a href="indexContainer_8hpp_source.html#l00175">indexContainer.hpp:175</a></div></div>
<div class="ttc" id="anamespacepFlow_html_a1b5160866e4f412ceaeb32203cd87925"><div class="ttname"><a href="namespacepFlow.html#a1b5160866e4f412ceaeb32203cd87925">pFlow::fillSequence</a></div><div class="ttdeci">void fillSequence(internalField&lt; T, MemorySpace &gt; &amp;iField, const T &amp;startVal)</div><div class="ttdef"><b>Definition:</b> <a href="internalFieldAlgorithms_8hpp_source.html#l00198">internalFieldAlgorithms.hpp:198</a></div></div>
<div class="ttc" id="aparticleIdHandler_8hpp_html"><div class="ttname"><a href="particleIdHandler_8hpp.html">particleIdHandler.hpp</a></div></div>
<div class="ttc" id="aclasspFlow_1_1particleIdHandler_html_aef6608c59885d9c2ca9703cdf2067a8c"><div class="ttname"><a href="classpFlow_1_1particleIdHandler.html#aef6608c59885d9c2ca9703cdf2067a8c">pFlow::particleIdHandler::nextId_</a></div><div class="ttdeci">int32 nextId_</div><div class="ttdef"><b>Definition:</b> <a href="particleIdHandler_8hpp_source.html#l00033">particleIdHandler.hpp:33</a></div></div>
<div class="ttc" id="aclasspFlow_1_1Vector_html"><div class="ttname"><a href="classpFlow_1_1Vector.html">pFlow::Vector&lt; uint32 &gt;</a></div></div>
<div class="ttc" id="aclasspFlow_1_1particleIdHandler_html_a916064ccf229e3608f27fef9d03d81c5"><div class="ttname"><a href="classpFlow_1_1particleIdHandler.html#a916064ccf229e3608f27fef9d03d81c5">pFlow::particleIdHandler::create</a></div><div class="ttdeci">static uniquePtr&lt; particleIdHandler &gt; create(pointStructure &amp;pStruct)</div><div class="ttdef"><b>Definition:</b> <a href="particleIdHandler_8cpp_source.html#l00074">particleIdHandler.cpp:74</a></div></div>
<div class="ttc" id="aclasspFlow_1_1indexContainer_html"><div class="ttname"><a href="classpFlow_1_1indexContainer.html">pFlow::indexContainer</a></div><div class="ttdoc">It holds two vectors of indecis on Host and Device.</div><div class="ttdef"><b>Definition:</b> <a href="indexContainer_8hpp_source.html#l00039">indexContainer.hpp:39</a></div></div>
<div class="ttc" id="aclasspFlow_1_1message_html_acf9f500a488d3493694136a3515bf259"><div class="ttname"><a href="classpFlow_1_1message.html#acf9f500a488d3493694136a3515bf259">pFlow::message::eventName</a></div><div class="ttdeci">static const word &amp; eventName(size_t event)</div><div class="ttdef"><b>Definition:</b> <a href="message_8hpp_source.html#l00196">message.hpp:196</a></div></div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_9e72493e858003bd3d74a55a2aedd075.html">Particles</a></li><li class="navelem"><a class="el" href="dir_b351bcc3c60d144476bd2e30437abfde.html">particles</a></li><li class="navelem"><a class="el" href="particleIdHandler_8cpp.html">particleIdHandler.cpp</a></li>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_9e72493e858003bd3d74a55a2aedd075.html">Particles</a></li><li class="navelem"><a class="el" href="dir_b351bcc3c60d144476bd2e30437abfde.html">particles</a></li><li class="navelem"><a class="el" href="dir_8bc24349fa0634bc52689ddce350f25a.html">particleIdHandler</a></li><li class="navelem"><a class="el" href="particleIdHandler_8cpp.html">particleIdHandler.cpp</a></li>
<li class="footer">Generated by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>