Compiled doxygen

This commit is contained in:
Leonetienne
2021-09-05 12:57:10 +02:00
parent 069d544e02
commit e3fe859b9e
178 changed files with 727 additions and 520 deletions

View File

@@ -310,15 +310,13 @@ Parameter incompatibilities</h2>
<div class="line"> <span class="keywordflow">return</span> 0;</div>
<div class="line">}</div>
</div><!-- fragment --><hr />
<p> Note that you can also combine these two constraint-types by populating the struct yourself: </p><div class="fragment"><div class="line">ParamConstraint pc;</div>
<div class="line">pc.constrainType = <span class="keyword">true</span>;</div>
<div class="line">pc.requiredType = DATA_TYPE::STRING;</div>
<div class="line">pc.defaultValue = {}; <span class="comment">// no default value</span></div>
<div class="line">pc.required = <span class="keyword">true</span>;</div>
<div class="line"> </div>
<div class="line">args.<a class="code" href="classHazelnp_1_1CmdArgsInterface.html#aa30222df012f357455f90e3620346bb2">RegisterConstraint</a>(<span class="stringliteral">&quot;--my-key&quot;</span>, pc);</div>
</div><!-- fragment --><p>What doesn't work is inserting multiple constraints for one key. It will just discard the older one. But that's okay because one can describe all possible constraints for a single key in <b>one</b> struct.</p>
<p><span id="automatic-parameter-documentation"></span> </p>
<p> Keep in mind that you can only register ONE constraint for each parameter! Adding another one will just overwrite the prior one. However, one constraint can do all three "types" at once if you daisychain them: </p><div class="fragment"><div class="line">args.<a class="code" href="classHazelnp_1_1CmdArgsInterface.html#aa30222df012f357455f90e3620346bb2">RegisterConstraint</a>(</div>
<div class="line"> <span class="stringliteral">&quot;--width&quot;</span>,</div>
<div class="line"> ParamConstraint::Require() <span class="comment">// Make this parameter mandatory</span></div>
<div class="line"> .AddTypeSafety(DATA_TYPE::FLOAT) <span class="comment">// Force this param to be a float</span></div>
<div class="line"> .AddIncompatibility({ <span class="stringliteral">&quot;--antiwidth&quot;</span> }) <span class="comment">// Make this param incompatible with &#39;--antiwidth&#39;</span></div>
<div class="line">);</div>
</div><!-- fragment --><p><span id="automatic-parameter-documentation"></span> </p>
<h1><a class="anchor" id="autotoc_md12"></a>
Automatic parameter documentation</h1>
<p>Hazelnupp does automatically create a parameter documentation, accessible via <code>--help</code>. <br />
@@ -424,18 +422,18 @@ LICENSE</h1>
<div class="ttc" id="anamespaceHazelnp_html"><div class="ttname"><a href="namespaceHazelnp.html">Hazelnp</a></div><div class="ttdef"><b>Definition:</b> <a href="CmdArgsInterface_8h_source.html#l00009">CmdArgsInterface.h:9</a></div></div>
<div class="ttc" id="astructHazelnp_1_1ParamConstraint_html_a8a7e5d7ddffc3cfbb54ac6823dd7eded"><div class="ttname"><a href="structHazelnp_1_1ParamConstraint.html#a8a7e5d7ddffc3cfbb54ac6823dd7eded">Hazelnp::ParamConstraint::Require</a></div><div class="ttdeci">static ParamConstraint Require(const std::initializer_list&lt; std::string &gt; &amp;defaultValue={}, bool required=true)</div><div class="ttdoc">Constructs a require constraint.</div><div class="ttdef"><b>Definition:</b> <a href="ParamConstraint_8h_source.html#l00016">ParamConstraint.h:16</a></div></div>
<div class="ttc" id="aclassHazelnp_1_1CmdArgsInterface_html"><div class="ttname"><a href="classHazelnp_1_1CmdArgsInterface.html">Hazelnp::CmdArgsInterface</a></div><div class="ttdoc">The main class to interface with.</div><div class="ttdef"><b>Definition:</b> <a href="CmdArgsInterface_8h_source.html#l00013">CmdArgsInterface.h:13</a></div></div>
<div class="ttc" id="astructHazelnp_1_1ParamConstraint_html_a20fa41460106b5327a51114f8a187871"><div class="ttname"><a href="structHazelnp_1_1ParamConstraint.html#a20fa41460106b5327a51114f8a187871">Hazelnp::ParamConstraint::Incompatibility</a></div><div class="ttdeci">static ParamConstraint Incompatibility(const std::initializer_list&lt; std::string &gt; &amp;incompatibleParameters)</div><div class="ttdoc">Constructs an incompatibility constraint.</div><div class="ttdef"><b>Definition:</b> <a href="ParamConstraint_8h_source.html#l00037">ParamConstraint.h:37</a></div></div>
<div class="ttc" id="astructHazelnp_1_1ParamConstraint_html_a20fa41460106b5327a51114f8a187871"><div class="ttname"><a href="structHazelnp_1_1ParamConstraint.html#a20fa41460106b5327a51114f8a187871">Hazelnp::ParamConstraint::Incompatibility</a></div><div class="ttdeci">static ParamConstraint Incompatibility(const std::initializer_list&lt; std::string &gt; &amp;incompatibleParameters)</div><div class="ttdoc">Constructs an incompatibility constraint.</div><div class="ttdef"><b>Definition:</b> <a href="ParamConstraint_8h_source.html#l00059">ParamConstraint.h:59</a></div></div>
<div class="ttc" id="aclassHazelnp_1_1CmdArgsInterface_html_abf553ed4acabf9e1db357715bc10533c"><div class="ttname"><a href="classHazelnp_1_1CmdArgsInterface.html#abf553ed4acabf9e1db357715bc10533c">Hazelnp::CmdArgsInterface::SetCatchHelp</a></div><div class="ttdeci">void SetCatchHelp(bool catchHelp)</div><div class="ttdoc">Sets whether the CmdArgsInterface should automatically catch the help parameter, print the parameter...</div><div class="ttdef"><b>Definition:</b> <a href="CmdArgsInterface_8cpp_source.html#l00368">CmdArgsInterface.cpp:368</a></div></div>
<div class="ttc" id="aclassHazelnp_1_1HazelnuppInvalidKeyException_html"><div class="ttname"><a href="classHazelnp_1_1HazelnuppInvalidKeyException.html">Hazelnp::HazelnuppInvalidKeyException</a></div><div class="ttdoc">Gets thrown when an non-existent key gets dereferenced.</div><div class="ttdef"><b>Definition:</b> <a href="HazelnuppException_8h_source.html#l00029">HazelnuppException.h:29</a></div></div>
<div class="ttc" id="aclassHazelnp_1_1CmdArgsInterface_html_aa30222df012f357455f90e3620346bb2"><div class="ttname"><a href="classHazelnp_1_1CmdArgsInterface.html#aa30222df012f357455f90e3620346bb2">Hazelnp::CmdArgsInterface::RegisterConstraint</a></div><div class="ttdeci">void RegisterConstraint(const std::string &amp;key, const ParamConstraint &amp;constraint)</div><div class="ttdoc">Will register a constraint for a parameter.</div><div class="ttdef"><b>Definition:</b> <a href="CmdArgsInterface_8cpp_source.html#l00663">CmdArgsInterface.cpp:663</a></div></div>
<div class="ttc" id="aclassHazelnp_1_1CmdArgsInterface_html_aaccf591a74408aeb4363033fe8cb2224"><div class="ttname"><a href="classHazelnp_1_1CmdArgsInterface.html#aaccf591a74408aeb4363033fe8cb2224">Hazelnp::CmdArgsInterface::RegisterAbbreviation</a></div><div class="ttdeci">void RegisterAbbreviation(const std::string &amp;abbrev, const std::string &amp;target)</div><div class="ttdoc">Will register an abbreviation (like -f for force)</div><div class="ttdef"><b>Definition:</b> <a href="CmdArgsInterface_8cpp_source.html#l00632">CmdArgsInterface.cpp:632</a></div></div>
<div class="ttc" id="aclassHazelnp_1_1CmdArgsInterface_html_a3a7fa36fe69ee8bf3b400983a21ecd24"><div class="ttname"><a href="classHazelnp_1_1CmdArgsInterface.html#a3a7fa36fe69ee8bf3b400983a21ecd24">Hazelnp::CmdArgsInterface::HasParam</a></div><div class="ttdeci">bool HasParam(const std::string &amp;key) const</div><div class="ttdoc">Will check wether a parameter exists given a key, or not.</div><div class="ttdef"><b>Definition:</b> <a href="CmdArgsInterface_8cpp_source.html#l00199">CmdArgsInterface.cpp:199</a></div></div>
<div class="ttc" id="aclassHazelnp_1_1CmdArgsInterface_html_a1f4845041e08b3335510de44fafaee19"><div class="ttname"><a href="classHazelnp_1_1CmdArgsInterface.html#a1f4845041e08b3335510de44fafaee19">Hazelnp::CmdArgsInterface::Parse</a></div><div class="ttdeci">void Parse(const int argc, const char *const *argv)</div><div class="ttdoc">Will parse command line arguments.</div><div class="ttdef"><b>Definition:</b> <a href="CmdArgsInterface_8cpp_source.html#l00036">CmdArgsInterface.cpp:36</a></div></div>
<div class="ttc" id="astructHazelnp_1_1ParamConstraint_html_a7df61dbc8dbaff4bc596fdf2c0532d5b"><div class="ttname"><a href="structHazelnp_1_1ParamConstraint.html#a7df61dbc8dbaff4bc596fdf2c0532d5b">Hazelnp::ParamConstraint::TypeSafety</a></div><div class="ttdeci">static ParamConstraint TypeSafety(DATA_TYPE requiredType, bool constrainType=true)</div><div class="ttdoc">Constructs a type-safety constraint.</div><div class="ttdef"><b>Definition:</b> <a href="ParamConstraint_8h_source.html#l00026">ParamConstraint.h:26</a></div></div>
<div class="ttc" id="astructHazelnp_1_1ParamConstraint_html_a7df61dbc8dbaff4bc596fdf2c0532d5b"><div class="ttname"><a href="structHazelnp_1_1ParamConstraint.html#a7df61dbc8dbaff4bc596fdf2c0532d5b">Hazelnp::ParamConstraint::TypeSafety</a></div><div class="ttdeci">static ParamConstraint TypeSafety(DATA_TYPE requiredType, bool constrainType=true)</div><div class="ttdoc">Constructs a type-safety constraint.</div><div class="ttdef"><b>Definition:</b> <a href="ParamConstraint_8h_source.html#l00037">ParamConstraint.h:37</a></div></div>
<div class="ttc" id="anamespaceHazelnp_html_a07b61ac22ce9cd97eceebdf9487f803fa53f93baa3057821107c750323892fa92"><div class="ttname"><a href="namespaceHazelnp.html#a07b61ac22ce9cd97eceebdf9487f803fa53f93baa3057821107c750323892fa92">Hazelnp::DATA_TYPE::INT</a></div><div class="ttdeci">@ INT</div></div>
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Sun Sep 5 2021 12:24:40 for Leonetienne/Hazelnupp by &#160;<a href="http://www.doxygen.org/index.html">
Generated on Sun Sep 5 2021 12:56:58 for Leonetienne/Hazelnupp by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.17
</small></address>