<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"> <title>libqalculate-0.9.7: NumberArgument Class Reference</title> <link href="doxygen.css" rel="stylesheet" type="text/css"> <link href="tabs.css" rel="stylesheet" type="text/css"> </head><body> <!-- Generated by Doxygen 1.5.5 --> <div class="navigation" id="top"> <div class="tabs"> <ul> <li><a href="index.html"><span>Main Page</span></a></li> <li class="current"><a href="classes.html"><span>Classes</span></a></li> <li><a href="files.html"><span>Files</span></a></li> </ul> </div> <div class="tabs"> <ul> <li><a href="classes.html"><span>Alphabetical List</span></a></li> <li><a href="annotated.html"><span>Class List</span></a></li> <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> <li><a href="functions.html"><span>Class Members</span></a></li> </ul> </div> </div> <div class="contents"> <h1>NumberArgument Class Reference</h1><!-- doxytag: class="NumberArgument" --><!-- doxytag: inherits="Argument" -->A definition for numerical arguments. <a href="#_details">More...</a> <p> <code>#include <Function.h></code> <p> <div class="dynheader"> Inheritance diagram for NumberArgument:</div> <div class="dynsection"> <p><center><img src="classNumberArgument.png" usemap="#NumberArgument_map" border="0" alt=""></center> <map name="NumberArgument_map"> <area href="classArgument.html" alt="Argument" shape="rect" coords="0,0,110,24"> </map> </div> <p> <a href="classNumberArgument-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0"> <tr><td></td></tr> <tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ed65bdf63ffc80c5b65cfd1d1f593387"></a><!-- doxytag: member="NumberArgument::NumberArgument" ref="ed65bdf63ffc80c5b65cfd1d1f593387" args="(string name_="", ArgumentMinMaxPreDefinition minmax=ARGUMENT_MIN_MAX_NONE, bool does_test=true, bool does_error=true)" --> </td><td class="memItemRight" valign="bottom"><b>NumberArgument</b> (string name_="", <a class="el" href="Function_8h.html#d0a30ebdef87198658988eb0817dd6b3">ArgumentMinMaxPreDefinition</a> minmax=ARGUMENT_MIN_MAX_NONE, bool does_test=true, bool does_error=true)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="66825549b1f5be7a202f9cff02d7d569"></a><!-- doxytag: member="NumberArgument::NumberArgument" ref="66825549b1f5be7a202f9cff02d7d569" args="(const NumberArgument *arg)" --> </td><td class="memItemRight" valign="bottom"><b>NumberArgument</b> (const <a class="el" href="classNumberArgument.html">NumberArgument</a> *arg)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classNumberArgument.html#ab80211f0736c6e6dfa4351a5b0e243f">set</a> (const <a class="el" href="classArgument.html">Argument</a> *arg)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classArgument.html">Argument</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classNumberArgument.html#7955bf2595b6e3f2b114d43fa5cbc145">copy</a> () const </td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual string </td><td class="memItemRight" valign="bottom"><a class="el" href="classNumberArgument.html#d1705dcedc0f6ff5f86b9d5b8cdb2f6f">print</a> () const </td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a30e93f736c38e676899fb200426e1fe"></a><!-- doxytag: member="NumberArgument::setMin" ref="a30e93f736c38e676899fb200426e1fe" args="(const Number *nmin)" --> void </td><td class="memItemRight" valign="bottom"><b>setMin</b> (const <a class="el" href="classNumber.html">Number</a> *nmin)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="542dd2916c6edf675a9eb31137f29b1b"></a><!-- doxytag: member="NumberArgument::setIncludeEqualsMin" ref="542dd2916c6edf675a9eb31137f29b1b" args="(bool include_equals)" --> void </td><td class="memItemRight" valign="bottom"><b>setIncludeEqualsMin</b> (bool include_equals)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="0c7b8e435d79af25ede9843fdc21b8b4"></a><!-- doxytag: member="NumberArgument::includeEqualsMin" ref="0c7b8e435d79af25ede9843fdc21b8b4" args="() const " --> bool </td><td class="memItemRight" valign="bottom"><b>includeEqualsMin</b> () const </td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="176a441c59f6a1390c3807555822642c"></a><!-- doxytag: member="NumberArgument::min" ref="176a441c59f6a1390c3807555822642c" args="() const " --> const <a class="el" href="classNumber.html">Number</a> * </td><td class="memItemRight" valign="bottom"><b>min</b> () const </td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e4728ba5781cac43e81ed0de057381f5"></a><!-- doxytag: member="NumberArgument::setMax" ref="e4728ba5781cac43e81ed0de057381f5" args="(const Number *nmax)" --> void </td><td class="memItemRight" valign="bottom"><b>setMax</b> (const <a class="el" href="classNumber.html">Number</a> *nmax)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b79891b39e0048461d4798ae580ec9ac"></a><!-- doxytag: member="NumberArgument::setIncludeEqualsMax" ref="b79891b39e0048461d4798ae580ec9ac" args="(bool include_equals)" --> void </td><td class="memItemRight" valign="bottom"><b>setIncludeEqualsMax</b> (bool include_equals)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ac9ce3779808a9b4c157c9d40a38e726"></a><!-- doxytag: member="NumberArgument::includeEqualsMax" ref="ac9ce3779808a9b4c157c9d40a38e726" args="() const " --> bool </td><td class="memItemRight" valign="bottom"><b>includeEqualsMax</b> () const </td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="dc85dcdfa6ea9fa3bbd623de3f1a7279"></a><!-- doxytag: member="NumberArgument::max" ref="dc85dcdfa6ea9fa3bbd623de3f1a7279" args="() const " --> const <a class="el" href="classNumber.html">Number</a> * </td><td class="memItemRight" valign="bottom"><b>max</b> () const </td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="416835987c880e3520c6d092f196d5b6"></a><!-- doxytag: member="NumberArgument::complexAllowed" ref="416835987c880e3520c6d092f196d5b6" args="() const " --> bool </td><td class="memItemRight" valign="bottom"><b>complexAllowed</b> () const </td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c1ea3b71c44c10552be5a0374cdad712"></a><!-- doxytag: member="NumberArgument::setComplexAllowed" ref="c1ea3b71c44c10552be5a0374cdad712" args="(bool allow_complex)" --> void </td><td class="memItemRight" valign="bottom"><b>setComplexAllowed</b> (bool allow_complex)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b7eb2794aec867562b0b5ae459daf374"></a><!-- doxytag: member="NumberArgument::rationalNumber" ref="b7eb2794aec867562b0b5ae459daf374" args="() const " --> bool </td><td class="memItemRight" valign="bottom"><b>rationalNumber</b> () const </td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d07ff7b197e8b90f5a63f60b2c7d6b40"></a><!-- doxytag: member="NumberArgument::setRationalNumber" ref="d07ff7b197e8b90f5a63f60b2c7d6b40" args="(bool rational_number)" --> void </td><td class="memItemRight" valign="bottom"><b>setRationalNumber</b> (bool rational_number)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int </td><td class="memItemRight" valign="bottom"><a class="el" href="classNumberArgument.html#f3f6f631e35196cbae868c42d1269e30">type</a> () const </td></tr> <tr><td colspan="2"><br><h2>Protected Member Functions</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classNumberArgument.html#bd55d57c787974c9e90a2a9aace0f2ff">subtest</a> (<a class="el" href="classMathStructure.html">MathStructure</a> &value, const <a class="el" href="structEvaluationOptions.html">EvaluationOptions</a> &eo) const </td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual string </td><td class="memItemRight" valign="bottom"><a class="el" href="classNumberArgument.html#31b7f01aedc8bb7f907086d35c5b67f1">subprintlong</a> () const </td></tr> <tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9692deb8a75f6bdddcd8d128858fc1f4"></a><!-- doxytag: member="NumberArgument::fmin" ref="9692deb8a75f6bdddcd8d128858fc1f4" args="" --> <a class="el" href="classNumber.html">Number</a> * </td><td class="memItemRight" valign="bottom"><b>fmin</b></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="8152c8f1c226a76b2090044ee8b350fd"></a><!-- doxytag: member="NumberArgument::fmax" ref="8152c8f1c226a76b2090044ee8b350fd" args="" --> <a class="el" href="classNumber.html">Number</a> * </td><td class="memItemRight" valign="bottom"><b>fmax</b></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="80eb7e0284563354435659b66e7b1f3a"></a><!-- doxytag: member="NumberArgument::b_incl_min" ref="80eb7e0284563354435659b66e7b1f3a" args="" --> bool </td><td class="memItemRight" valign="bottom"><b>b_incl_min</b></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="19dd7baf0fee6682bf15a7c30cbaf905"></a><!-- doxytag: member="NumberArgument::b_incl_max" ref="19dd7baf0fee6682bf15a7c30cbaf905" args="" --> bool </td><td class="memItemRight" valign="bottom"><b>b_incl_max</b></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ad8c07b4f538b5e11bd545a7b5a627ec"></a><!-- doxytag: member="NumberArgument::b_complex" ref="ad8c07b4f538b5e11bd545a7b5a627ec" args="" --> bool </td><td class="memItemRight" valign="bottom"><b>b_complex</b></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="55193d1623aeaeb3e4c9f8479ac32583"></a><!-- doxytag: member="NumberArgument::b_rational_number" ref="55193d1623aeaeb3e4c9f8479ac32583" args="" --> bool </td><td class="memItemRight" valign="bottom"><b>b_rational_number</b></td></tr> </table> <hr><a name="_details"></a><h2>Detailed Description</h2> A definition for numerical arguments. <p> These arguments allows numerical values. The value can be restricted to real or rational numbers (defaults to allow all numbers, including complex), and a max and/or min value. <hr><h2>Member Function Documentation</h2> <a class="anchor" name="bd55d57c787974c9e90a2a9aace0f2ff"></a><!-- doxytag: member="NumberArgument::subtest" ref="bd55d57c787974c9e90a2a9aace0f2ff" args="(MathStructure &value, const EvaluationOptions &eo) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual bool NumberArgument::subtest </td> <td>(</td> <td class="paramtype"><a class="el" href="classMathStructure.html">MathStructure</a> & </td> <td class="paramname"> <em>value</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="structEvaluationOptions.html">EvaluationOptions</a> & </td> <td class="paramname"> <em>eo</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"> const<code> [protected, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> This function is called from <a class="el" href="classArgument.html#56535da601c8f8f46c2b9fa3cfe97730">Argument::test()</a> and performs validation specific to the argument definition type. Should be reimplemented by all subclasses.<p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>value</em> </td><td>Value to test. </td></tr> <tr><td valign="top"></td><td valign="top"><em>eo</em> </td><td>Evaluation options to use if the value needs to be evaluated. </td></tr> </table> </dl> <dl class="return" compact><dt><b>Returns:</b></dt><dd>true if the value is valid for the argument definition. </dd></dl> <p>Reimplemented from <a class="el" href="classArgument.html#c6e3f5ea55c3abe8fd7f978647589087">Argument</a>.</p> </div> </div><p> <a class="anchor" name="31b7f01aedc8bb7f907086d35c5b67f1"></a><!-- doxytag: member="NumberArgument::subprintlong" ref="31b7f01aedc8bb7f907086d35c5b67f1" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual string NumberArgument::subprintlong </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"> const<code> [protected, virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> This function is called from <a class="el" href="classArgument.html#09d80da7b0eb5d0b63f31f4289425049">Argument::printlong()</a> and returns description specific the argument definition type. Should be reimplemented by all subclasses. For example <a class="el" href="classIntegerArgument.html#0f97d178c0ccb382794429cd43c69964">IntegerArgument::subprintlong()</a> might return "an integer" and <a class="el" href="classArgument.html#09d80da7b0eb5d0b63f31f4289425049">Argument::printlong()</a> might append " that fulfills the condition: even(\x)".<p> <dl class="return" compact><dt><b>Returns:</b></dt><dd>Long description. </dd></dl> <p>Reimplemented from <a class="el" href="classArgument.html#ecb66daedc6826a33816652afb64e674">Argument</a>.</p> </div> </div><p> <a class="anchor" name="ab80211f0736c6e6dfa4351a5b0e243f"></a><!-- doxytag: member="NumberArgument::set" ref="ab80211f0736c6e6dfa4351a5b0e243f" args="(const Argument *arg)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual void NumberArgument::set </td> <td>(</td> <td class="paramtype">const <a class="el" href="classArgument.html">Argument</a> * </td> <td class="paramname"> <em>arg</em> </td> <td> ) </td> <td width="100%"><code> [virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Sets the argument to a copy of an argument definition.<p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>arg</em> </td><td><a class="el" href="classArgument.html" title="A mathematical function argument definition with free value and base class for all...">Argument</a> to copy. </td></tr> </table> </dl> <p>Reimplemented from <a class="el" href="classArgument.html#2a3cda124d233c5694a31a608d44cda3">Argument</a>.</p> </div> </div><p> <a class="anchor" name="7955bf2595b6e3f2b114d43fa5cbc145"></a><!-- doxytag: member="NumberArgument::copy" ref="7955bf2595b6e3f2b114d43fa5cbc145" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual <a class="el" href="classArgument.html">Argument</a>* NumberArgument::copy </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"> const<code> [virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Returns a copy of the argument definition.<p> <dl class="return" compact><dt><b>Returns:</b></dt><dd>A copy. </dd></dl> <p>Reimplemented from <a class="el" href="classArgument.html#b3c1acf637efbe585bb716cb6ecf5829">Argument</a>.</p> </div> </div><p> <a class="anchor" name="d1705dcedc0f6ff5f86b9d5b8cdb2f6f"></a><!-- doxytag: member="NumberArgument::print" ref="d1705dcedc0f6ff5f86b9d5b8cdb2f6f" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual string NumberArgument::print </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"> const<code> [virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Resturns a short description of the argument definition. Ex. "number" for <a class="el" href="classNumberArgument.html" title="A definition for numerical arguments.">NumberArgument</a>.<p> <dl class="return" compact><dt><b>Returns:</b></dt><dd>Short description. </dd></dl> <p>Reimplemented from <a class="el" href="classArgument.html#3d7c3969caf6b5e9dd70574bbbaffe3d">Argument</a>.</p> </div> </div><p> <a class="anchor" name="f3f6f631e35196cbae868c42d1269e30"></a><!-- doxytag: member="NumberArgument::type" ref="f3f6f631e35196cbae868c42d1269e30" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual int NumberArgument::type </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"> const<code> [virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Returns the type of the argument, corresponding to which subclass the object belongs to.<p> <dl class="return" compact><dt><b>Returns:</b></dt><dd><a class="el" href="Function_8h.html#a15f3f718db408445afc1b93c12294c5" title="Argument types.">ArgumentType</a>. </dd></dl> <p>Reimplemented from <a class="el" href="classArgument.html#2709c0d89f7827fabb1c4d4a563cae1a">Argument</a>.</p> </div> </div><p> <hr>The documentation for this class was generated from the following file:<ul> <li>libqalculate/<a class="el" href="Function_8h.html">Function.h</a></ul> </div> <hr size="1"><address style="text-align: right;"><small>Generated on Tue Jan 5 08:26:29 2010 for libqalculate-0.9.7 by <a href="http://www.doxygen.org/index.html"> <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.5 </small></address> </body> </html>