Files
mlpack/doc/html/cli_8hpp_source.html
T

142 lines
36 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.11"/>
<title>mlpack: src/mlpack/core/util/cli.hpp 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>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { init_search(); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="extra-stylesheet.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">mlpack
&#160;<span id="projectnumber">master</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.11 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li><a href="annotated.html"><span>Classes</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
<li>
<div id="MSearchBox" class="MSearchBoxInactive">
<span class="left">
<img id="MSearchSelect" src="search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
<input type="text" id="MSearchField" value="Search" accesskey="S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
</span><span class="right">
<a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
</span>
</div>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="files.html"><span>File&#160;List</span></a></li>
<li><a href="globals.html"><span>File&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_44a936ef30fc126706c6284a2fc0c990.html">mlpack</a></li><li class="navelem"><a class="el" href="dir_f7ac9cdfd28b2e882eb44d163e3b98b4.html">core</a></li><li class="navelem"><a class="el" href="dir_e173a4984165953811b5143e3b27486f.html">util</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">cli.hpp</div> </div>
</div><!--header-->
<div class="contents">
<a href="cli_8hpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;</div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="preprocessor">#ifndef MLPACK_CORE_UTIL_CLI_HPP</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="preprocessor">#define MLPACK_CORE_UTIL_CLI_HPP</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;</div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="preprocessor">#include &lt;list&gt;</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="preprocessor">#include &lt;iostream&gt;</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="preprocessor">#include &lt;map&gt;</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="preprocessor">#include &lt;string&gt;</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;</div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="preprocessor">#include &lt;boost/any.hpp&gt;</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="preprocessor">#include &lt;boost/program_options.hpp&gt;</span></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;<span class="preprocessor">#include &lt;<a class="code" href="prereqs_8hpp.html">mlpack/prereqs.hpp</a>&gt;</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;<span class="preprocessor">#include &quot;<a class="code" href="timers_8hpp.html">timers.hpp</a>&quot;</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="cli__deleter_8hpp.html">cli_deleter.hpp</a>&quot;</span> <span class="comment">// To make sure we can delete the singleton.</span></div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="src_2mlpack_2core_2util_2version_8hpp.html">version.hpp</a>&quot;</span></div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="param_8hpp.html">param.hpp</a>&quot;</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;</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="preprocessor">#include &quot;<a class="code" href="param__data_8hpp.html">param_data.hpp</a>&quot;</span></div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="print__param_8hpp.html">print_param.hpp</a>&quot;</span></div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="output__param_8hpp.html">output_param.hpp</a>&quot;</span></div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="default__param_8hpp.html">default_param.hpp</a>&quot;</span></div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="string__type__param_8hpp.html">string_type_param.hpp</a>&quot;</span></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;<span class="keyword">namespace </span>po = boost::program_options;</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="keyword">namespace </span><a class="code" href="namespacemlpack.html">mlpack</a> {</div><div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="namespacemlpack_1_1util.html"> 42</a></span>&#160;<span class="keyword">namespace </span>util {</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;</div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="comment">// Externally defined in option.hpp, this class holds information about the</span></div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="comment">// program being run.</span></div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="keyword">class </span><a class="code" href="classmlpack_1_1util_1_1ProgramDoc.html">ProgramDoc</a>;</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;</div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;} <span class="comment">// namespace util</span></div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;</div><div class="line"><a name="l00175"></a><span class="lineno"><a class="line" href="classmlpack_1_1CLI.html"> 175</a></span>&#160;<span class="keyword">class </span><a class="code" href="classmlpack_1_1CLI.html">CLI</a></div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160;{</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">class</span> T&gt;</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; <span class="keyword">static</span> <span class="keywordtype">void</span> Add(<span class="keyword">const</span> T&amp; defaultValue,</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; <span class="keyword">const</span> <a class="code" href="bindings_2matlab_2CMakeLists_8txt.html#ad3a3f86b22ab94a882506e9e614165f1">std::string</a>&amp; identifier,</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; <span class="keyword">const</span> <a class="code" href="bindings_2matlab_2CMakeLists_8txt.html#ad3a3f86b22ab94a882506e9e614165f1">std::string</a>&amp; description,</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> alias = <span class="charliteral">&#39;\0&#39;</span>,</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; <span class="keyword">const</span> <span class="keywordtype">bool</span> required = <span class="keyword">false</span>,</div><div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; <span class="keyword">const</span> <span class="keywordtype">bool</span> input = <span class="keyword">true</span>,</div><div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; <span class="keyword">const</span> <span class="keywordtype">bool</span> noTranspose = <span class="keyword">false</span>);</div><div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160;</div><div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; <span class="keyword">static</span> <span class="keywordtype">void</span> Destroy();</div><div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160;</div><div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div><div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; <span class="keyword">static</span> T&amp; GetParam(<span class="keyword">const</span> <a class="code" href="bindings_2matlab_2CMakeLists_8txt.html#ad3a3f86b22ab94a882506e9e614165f1">std::string</a>&amp; identifier);</div><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160;</div><div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; <span class="keyword">static</span> <span class="keyword">typename</span> <a class="code" href="structmlpack_1_1util_1_1ParameterType.html#a53dc6f6798b56aecaf64bb1f616ddecb">util::ParameterType&lt;T&gt;::type</a>&amp; GetUnmappedParam(</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; <span class="keyword">const</span> <a class="code" href="bindings_2matlab_2CMakeLists_8txt.html#ad3a3f86b22ab94a882506e9e614165f1">std::string</a>&amp; identifier);</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160;</div><div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div><div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; <span class="keyword">static</span> T&amp; GetRawParam(<span class="keyword">const</span> <a class="code" href="bindings_2matlab_2CMakeLists_8txt.html#ad3a3f86b22ab94a882506e9e614165f1">std::string</a>&amp; identifier);</div><div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;</div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; <span class="keyword">static</span> <a class="code" href="classmlpack_1_1CLI.html">CLI</a>&amp; GetSingleton();</div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160;</div><div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; <span class="keyword">static</span> <span class="keywordtype">bool</span> HasParam(<span class="keyword">const</span> <a class="code" href="bindings_2matlab_2CMakeLists_8txt.html#ad3a3f86b22ab94a882506e9e614165f1">std::string</a>&amp; identifier);</div><div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160;</div><div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; <span class="keyword">static</span> <a class="code" href="bindings_2matlab_2CMakeLists_8txt.html#ad3a3f86b22ab94a882506e9e614165f1">std::string</a> HyphenateString(<span class="keyword">const</span> <a class="code" href="bindings_2matlab_2CMakeLists_8txt.html#ad3a3f86b22ab94a882506e9e614165f1">std::string</a>&amp; str, <span class="keywordtype">int</span> padding);</div><div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160;</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; <span class="keyword">static</span> <span class="keywordtype">void</span> ParseCommandLine(<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span>** argv);</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160;</div><div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; <span class="keyword">static</span> <span class="keywordtype">void</span> PrintHelp(<span class="keyword">const</span> <a class="code" href="bindings_2matlab_2CMakeLists_8txt.html#ad3a3f86b22ab94a882506e9e614165f1">std::string</a>&amp; param = <span class="stringliteral">&quot;&quot;</span>);</div><div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160;</div><div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; <span class="keyword">static</span> <span class="keywordtype">void</span> RegisterProgramDoc(<a class="code" href="classmlpack_1_1util_1_1ProgramDoc.html">util::ProgramDoc</a>* doc);</div><div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160;</div><div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; ~<a class="code" href="classmlpack_1_1CLI.html">CLI</a>();</div><div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160;</div><div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00300"></a><span class="lineno"><a class="line" href="classmlpack_1_1CLI.html#ad07794e7e7cb51ca8aef9165fdd3e83a"> 300</a></span>&#160; po::options_description <a class="code" href="classmlpack_1_1CLI.html#ad07794e7e7cb51ca8aef9165fdd3e83a">desc</a>;</div><div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160;</div><div class="line"><a name="l00303"></a><span class="lineno"><a class="line" href="classmlpack_1_1CLI.html#ae4f8241a1832fb36ba80a27c3fe9d4f6"> 303</a></span>&#160; po::variables_map <a class="code" href="classmlpack_1_1CLI.html#ae4f8241a1832fb36ba80a27c3fe9d4f6">vmap</a>;</div><div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160;</div><div class="line"><a name="l00306"></a><span class="lineno"><a class="line" href="classmlpack_1_1CLI.html#a0655cbb006d03d77e9f24c66109795df"> 306</a></span>&#160; std::list&lt;std::string&gt; <a class="code" href="classmlpack_1_1CLI.html#a0655cbb006d03d77e9f24c66109795df">outputOptions</a>;</div><div class="line"><a name="l00308"></a><span class="lineno"><a class="line" href="classmlpack_1_1CLI.html#a541ac19cca46a88a55545f553bf3c3ff"> 308</a></span>&#160; std::list&lt;std::string&gt; <a class="code" href="classmlpack_1_1CLI.html#a541ac19cca46a88a55545f553bf3c3ff">requiredOptions</a>;</div><div class="line"><a name="l00310"></a><span class="lineno"><a class="line" href="classmlpack_1_1CLI.html#abc6bf37bcee5acf0deaafbd8e5f21dbb"> 310</a></span>&#160; std::map&lt;char, std::string&gt; <a class="code" href="classmlpack_1_1CLI.html#abc6bf37bcee5acf0deaafbd8e5f21dbb">aliases</a>;</div><div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160;</div><div class="line"><a name="l00313"></a><span class="lineno"><a class="line" href="classmlpack_1_1CLI.html#a2f07a60a407cfb4f53346a585af337b0"> 313</a></span>&#160; std::map&lt;std::string, util::ParamData&gt; <a class="code" href="classmlpack_1_1CLI.html#a2f07a60a407cfb4f53346a585af337b0">parameters</a>;</div><div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160;</div><div class="line"><a name="l00316"></a><span class="lineno"><a class="line" href="classmlpack_1_1CLI.html#a5b1935a9dc23280d5b1749265efd6129"> 316</a></span>&#160; <span class="keyword">static</span> <a class="code" href="classmlpack_1_1CLI.html">CLI</a>* <a class="code" href="classmlpack_1_1CLI.html#a5b1935a9dc23280d5b1749265efd6129">singleton</a>;</div><div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160;</div><div class="line"><a name="l00319"></a><span class="lineno"><a class="line" href="classmlpack_1_1CLI.html#aefcfe29fde9ffab0987b22ddb9335bae"> 319</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="classmlpack_1_1CLI.html#aefcfe29fde9ffab0987b22ddb9335bae">didParse</a>;</div><div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160;</div><div class="line"><a name="l00323"></a><span class="lineno"><a class="line" href="classmlpack_1_1CLI.html#a11f647501dcca51fd44e695ea12c34e8"> 323</a></span>&#160; <a class="code" href="bindings_2matlab_2CMakeLists_8txt.html#ad3a3f86b22ab94a882506e9e614165f1">std::string</a> <a class="code" href="classmlpack_1_1CLI.html#a11f647501dcca51fd44e695ea12c34e8">programName</a>;</div><div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160;</div><div class="line"><a name="l00326"></a><span class="lineno"><a class="line" href="classmlpack_1_1CLI.html#a4ae620f2f1c4359fdb65afab8a0e0885"> 326</a></span>&#160; <a class="code" href="classmlpack_1_1Timers.html">Timers</a> <a class="code" href="classmlpack_1_1CLI.html#a4ae620f2f1c4359fdb65afab8a0e0885">timer</a>;</div><div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160;</div><div class="line"><a name="l00329"></a><span class="lineno"><a class="line" href="classmlpack_1_1CLI.html#a50de43af5bed41f30c071d8cce0e81bc"> 329</a></span>&#160; <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classmlpack_1_1Timer.html">Timer</a>;</div><div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160;</div><div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160; <span class="keyword">public</span>:</div><div class="line"><a name="l00333"></a><span class="lineno"><a class="line" href="classmlpack_1_1CLI.html#ae3f7adb8b51b578121c46821a86548f1"> 333</a></span>&#160; <a class="code" href="classmlpack_1_1util_1_1ProgramDoc.html">util::ProgramDoc</a> *<a class="code" href="classmlpack_1_1CLI.html#ae3f7adb8b51b578121c46821a86548f1">doc</a>;</div><div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160;</div><div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160; <span class="keyword">private</span>:</div><div class="line"><a name="l00342"></a><span class="lineno"> 342</span>&#160; <span class="keyword">static</span> <span class="keywordtype">void</span> AddAlias(<span class="keyword">const</span> <a class="code" href="bindings_2matlab_2CMakeLists_8txt.html#ad3a3f86b22ab94a882506e9e614165f1">std::string</a>&amp; alias, <span class="keyword">const</span> <a class="code" href="bindings_2matlab_2CMakeLists_8txt.html#ad3a3f86b22ab94a882506e9e614165f1">std::string</a>&amp; original);</div><div class="line"><a name="l00343"></a><span class="lineno"> 343</span>&#160;</div><div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160; <span class="keyword">static</span> <span class="keywordtype">char</span> AliasReverseLookup(<span class="keyword">const</span> <a class="code" href="bindings_2matlab_2CMakeLists_8txt.html#ad3a3f86b22ab94a882506e9e614165f1">std::string</a>&amp; value);</div><div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160;</div><div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; <a class="code" href="classmlpack_1_1CLI.html">CLI</a>();</div><div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160;</div><div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160; <a class="code" href="classmlpack_1_1CLI.html">CLI</a>(<span class="keyword">const</span> <a class="code" href="classmlpack_1_1CLI.html">CLI</a>&amp; other);</div><div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160;</div><div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div><div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160; <span class="keywordtype">void</span> AddOption(</div><div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span>* optId,</div><div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span>* descr,</div><div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160; <span class="keyword">const</span> <span class="keyword">typename</span> <a class="code" href="namespacestd.html#ac774dbdf8ae769197167b2a8273462fc">std::enable_if_t</a>&lt;!<a class="code" href="structmlpack_1_1util_1_1IsStdVector.html">util::IsStdVector&lt;T&gt;::value</a>&gt;*</div><div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160; <span class="comment">/* junk */</span> = 0);</div><div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160;</div><div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; <span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div><div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; <span class="keywordtype">void</span> AddOption(</div><div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span>* optId,</div><div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span>* descr,</div><div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160; <span class="keyword">const</span> <span class="keyword">typename</span> <a class="code" href="namespacestd.html#ac774dbdf8ae769197167b2a8273462fc">std::enable_if_t</a>&lt;<a class="code" href="structmlpack_1_1util_1_1IsStdVector.html">util::IsStdVector&lt;T&gt;::value</a>&gt;*</div><div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; <span class="comment">/* junk */</span> = 0);</div><div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160;};</div><div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160;</div><div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160;} <span class="comment">// namespace mlpack</span></div><div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160;</div><div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160;<span class="comment">// Include the actual definitions of templated methods</span></div><div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160;<span class="preprocessor">#include &quot;cli_impl.hpp&quot;</span></div><div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160;</div><div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160;<span class="preprocessor">#endif</span></div><div class="ttc" id="string__type__param_8hpp_html"><div class="ttname"><a href="string__type__param_8hpp.html">string_type_param.hpp</a></div></div>
<div class="ttc" id="namespacemlpack_html"><div class="ttname"><a href="namespacemlpack.html">mlpack</a></div><div class="ttdoc">Linear algebra utility functions, generally performed on matrices or vectors. </div><div class="ttdef"><b>Definition:</b> <a href="binarize_8hpp_source.html#l00018">binarize.hpp:18</a></div></div>
<div class="ttc" id="classmlpack_1_1CLI_html_a541ac19cca46a88a55545f553bf3c3ff"><div class="ttname"><a href="classmlpack_1_1CLI.html#a541ac19cca46a88a55545f553bf3c3ff">mlpack::CLI::requiredOptions</a></div><div class="ttdeci">std::list&lt; std::string &gt; requiredOptions</div><div class="ttdoc">Convenience list of required options. </div><div class="ttdef"><b>Definition:</b> <a href="cli_8hpp_source.html#l00308">cli.hpp:308</a></div></div>
<div class="ttc" id="prereqs_8hpp_html"><div class="ttname"><a href="prereqs_8hpp.html">prereqs.hpp</a></div><div class="ttdoc">The core includes that mlpack expects; standard C++ includes and Armadillo. </div></div>
<div class="ttc" id="print__param_8hpp_html"><div class="ttname"><a href="print__param_8hpp.html">print_param.hpp</a></div></div>
<div class="ttc" id="classmlpack_1_1Timers_html"><div class="ttname"><a href="classmlpack_1_1Timers.html">mlpack::Timers</a></div><div class="ttdef"><b>Definition:</b> <a href="timers_8hpp_source.html#l00072">timers.hpp:72</a></div></div>
<div class="ttc" id="classmlpack_1_1CLI_html_ae4f8241a1832fb36ba80a27c3fe9d4f6"><div class="ttname"><a href="classmlpack_1_1CLI.html#ae4f8241a1832fb36ba80a27c3fe9d4f6">mlpack::CLI::vmap</a></div><div class="ttdeci">po::variables_map vmap</div><div class="ttdoc">Values of the options given by user. </div><div class="ttdef"><b>Definition:</b> <a href="cli_8hpp_source.html#l00303">cli.hpp:303</a></div></div>
<div class="ttc" id="default__param_8hpp_html"><div class="ttname"><a href="default__param_8hpp.html">default_param.hpp</a></div></div>
<div class="ttc" id="classmlpack_1_1CLI_html_a2f07a60a407cfb4f53346a585af337b0"><div class="ttname"><a href="classmlpack_1_1CLI.html#a2f07a60a407cfb4f53346a585af337b0">mlpack::CLI::parameters</a></div><div class="ttdeci">std::map&lt; std::string, util::ParamData &gt; parameters</div><div class="ttdoc">Map of parameters. </div><div class="ttdef"><b>Definition:</b> <a href="cli_8hpp_source.html#l00313">cli.hpp:313</a></div></div>
<div class="ttc" id="classmlpack_1_1CLI_html_a4ae620f2f1c4359fdb65afab8a0e0885"><div class="ttname"><a href="classmlpack_1_1CLI.html#a4ae620f2f1c4359fdb65afab8a0e0885">mlpack::CLI::timer</a></div><div class="ttdeci">Timers timer</div><div class="ttdoc">Holds the timer objects. </div><div class="ttdef"><b>Definition:</b> <a href="cli_8hpp_source.html#l00326">cli.hpp:326</a></div></div>
<div class="ttc" id="classmlpack_1_1CLI_html_ae3f7adb8b51b578121c46821a86548f1"><div class="ttname"><a href="classmlpack_1_1CLI.html#ae3f7adb8b51b578121c46821a86548f1">mlpack::CLI::doc</a></div><div class="ttdeci">util::ProgramDoc * doc</div><div class="ttdoc">Pointer to the ProgramDoc object. </div><div class="ttdef"><b>Definition:</b> <a href="cli_8hpp_source.html#l00333">cli.hpp:333</a></div></div>
<div class="ttc" id="classmlpack_1_1CLI_html_ad07794e7e7cb51ca8aef9165fdd3e83a"><div class="ttname"><a href="classmlpack_1_1CLI.html#ad07794e7e7cb51ca8aef9165fdd3e83a">mlpack::CLI::desc</a></div><div class="ttdeci">po::options_description desc</div><div class="ttdoc">The documentation and names of options. </div><div class="ttdef"><b>Definition:</b> <a href="cli_8hpp_source.html#l00300">cli.hpp:300</a></div></div>
<div class="ttc" id="classmlpack_1_1Timer_html"><div class="ttname"><a href="classmlpack_1_1Timer.html">mlpack::Timer</a></div><div class="ttdoc">The timer class provides a way for mlpack methods to be timed. </div><div class="ttdef"><b>Definition:</b> <a href="timers_8hpp_source.html#l00038">timers.hpp:38</a></div></div>
<div class="ttc" id="structmlpack_1_1util_1_1IsStdVector_html"><div class="ttname"><a href="structmlpack_1_1util_1_1IsStdVector.html">mlpack::util::IsStdVector</a></div><div class="ttdoc">Metaprogramming structure for vector detection. </div><div class="ttdef"><b>Definition:</b> <a href="param__data_8hpp_source.html#l00025">param_data.hpp:25</a></div></div>
<div class="ttc" id="classmlpack_1_1CLI_html_a0655cbb006d03d77e9f24c66109795df"><div class="ttname"><a href="classmlpack_1_1CLI.html#a0655cbb006d03d77e9f24c66109795df">mlpack::CLI::outputOptions</a></div><div class="ttdeci">std::list&lt; std::string &gt; outputOptions</div><div class="ttdoc">Convenience list of output options. </div><div class="ttdef"><b>Definition:</b> <a href="cli_8hpp_source.html#l00306">cli.hpp:306</a></div></div>
<div class="ttc" id="param__data_8hpp_html"><div class="ttname"><a href="param__data_8hpp.html">param_data.hpp</a></div></div>
<div class="ttc" id="classmlpack_1_1CLI_html_a11f647501dcca51fd44e695ea12c34e8"><div class="ttname"><a href="classmlpack_1_1CLI.html#a11f647501dcca51fd44e695ea12c34e8">mlpack::CLI::programName</a></div><div class="ttdeci">std::string programName</div><div class="ttdoc">Holds the name of the program for version. </div><div class="ttdef"><b>Definition:</b> <a href="cli_8hpp_source.html#l00323">cli.hpp:323</a></div></div>
<div class="ttc" id="param_8hpp_html"><div class="ttname"><a href="param_8hpp.html">param.hpp</a></div></div>
<div class="ttc" id="src_2mlpack_2core_2util_2version_8hpp_html"><div class="ttname"><a href="src_2mlpack_2core_2util_2version_8hpp.html">version.hpp</a></div></div>
<div class="ttc" id="structmlpack_1_1util_1_1ParameterType_html_a53dc6f6798b56aecaf64bb1f616ddecb"><div class="ttname"><a href="structmlpack_1_1util_1_1ParameterType.html#a53dc6f6798b56aecaf64bb1f616ddecb">mlpack::util::ParameterType::type</a></div><div class="ttdeci">ParameterTypeDeducer&lt; data::HasSerialize&lt; T &gt;::value, T &gt;::type type</div><div class="ttdef"><b>Definition:</b> <a href="param__data_8hpp_source.html#l00054">param_data.hpp:54</a></div></div>
<div class="ttc" id="classmlpack_1_1CLI_html_abc6bf37bcee5acf0deaafbd8e5f21dbb"><div class="ttname"><a href="classmlpack_1_1CLI.html#abc6bf37bcee5acf0deaafbd8e5f21dbb">mlpack::CLI::aliases</a></div><div class="ttdeci">std::map&lt; char, std::string &gt; aliases</div><div class="ttdoc">Convenience map from alias values to names. </div><div class="ttdef"><b>Definition:</b> <a href="cli_8hpp_source.html#l00310">cli.hpp:310</a></div></div>
<div class="ttc" id="classmlpack_1_1CLI_html_a5b1935a9dc23280d5b1749265efd6129"><div class="ttname"><a href="classmlpack_1_1CLI.html#a5b1935a9dc23280d5b1749265efd6129">mlpack::CLI::singleton</a></div><div class="ttdeci">static CLI * singleton</div><div class="ttdoc">The singleton itself. </div><div class="ttdef"><b>Definition:</b> <a href="cli_8hpp_source.html#l00316">cli.hpp:316</a></div></div>
<div class="ttc" id="output__param_8hpp_html"><div class="ttname"><a href="output__param_8hpp.html">output_param.hpp</a></div></div>
<div class="ttc" id="cli__deleter_8hpp_html"><div class="ttname"><a href="cli__deleter_8hpp.html">cli_deleter.hpp</a></div></div>
<div class="ttc" id="classmlpack_1_1CLI_html_aefcfe29fde9ffab0987b22ddb9335bae"><div class="ttname"><a href="classmlpack_1_1CLI.html#aefcfe29fde9ffab0987b22ddb9335bae">mlpack::CLI::didParse</a></div><div class="ttdeci">bool didParse</div><div class="ttdoc">True, if CLI was used to parse command line options. </div><div class="ttdef"><b>Definition:</b> <a href="cli_8hpp_source.html#l00319">cli.hpp:319</a></div></div>
<div class="ttc" id="bindings_2matlab_2CMakeLists_8txt_html_ad3a3f86b22ab94a882506e9e614165f1"><div class="ttname"><a href="bindings_2matlab_2CMakeLists_8txt.html#ad3a3f86b22ab94a882506e9e614165f1">string</a></div><div class="ttdeci">test cpp RESULT_VARIABLE MEX_RESULT_TRASH OUTPUT_VARIABLE MEX_OUTPUT ERROR_VARIABLE MEX_ERROR_TRASH string(REGEX MATCH&quot;Warning: You are using&quot;MEX_WARNING&quot;${MEX_OUTPUT}&quot;) if(MEX_WARNING) string(REGEX REPLACE&quot;.*using [a-zA-Z]* version \&quot;([0-9.]*)[^\&quot;]*\&quot;.*&quot;&quot;\\1&quot;OTHER_COMPILER_VERSION&quot;$</div><div class="ttdef"><b>Definition:</b> <a href="bindings_2matlab_2CMakeLists_8txt_source.html#l00018">CMakeLists.txt:18</a></div></div>
<div class="ttc" id="classmlpack_1_1util_1_1ProgramDoc_html"><div class="ttname"><a href="classmlpack_1_1util_1_1ProgramDoc.html">mlpack::util::ProgramDoc</a></div><div class="ttdoc">A static object whose constructor registers program documentation with the CLI class. </div><div class="ttdef"><b>Definition:</b> <a href="option_8hpp_source.html#l00071">option.hpp:71</a></div></div>
<div class="ttc" id="classmlpack_1_1CLI_html"><div class="ttname"><a href="classmlpack_1_1CLI.html">mlpack::CLI</a></div><div class="ttdoc">Parses the command line for parameters and holds user-specified parameters. </div><div class="ttdef"><b>Definition:</b> <a href="cli_8hpp_source.html#l00175">cli.hpp:175</a></div></div>
<div class="ttc" id="timers_8hpp_html"><div class="ttname"><a href="timers_8hpp.html">timers.hpp</a></div></div>
<div class="ttc" id="namespacestd_html_ac774dbdf8ae769197167b2a8273462fc"><div class="ttname"><a href="namespacestd.html#ac774dbdf8ae769197167b2a8273462fc">std::enable_if_t</a></div><div class="ttdeci">typename enable_if&lt; B, T &gt;::type enable_if_t</div><div class="ttdef"><b>Definition:</b> <a href="prereqs_8hpp_source.html#l00059">prereqs.hpp:59</a></div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.11
</small></address>
</body>
<script type="text/javascript">
var x = document.getElementsByClassName("formulaDsp");
var i;
for (i = 0; i < x.length; i++)
{
x[i].width /= 4;
}
</script>
</html>