<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>Flex Bison C++ Example: CNPower Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css">
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.5.9 -->
<div class="navigation" id="top">
<div class="tabs">
<ul>
<li><a href="index.html"><span>Main Page</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li class="current"><a href="annotated.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="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>CNPower Class Reference</h1><!-- doxytag: class="CNPower" --><!-- doxytag: inherits="CalcNode" -->Calculation node raising one operand to the power of the second.
<a href="#_details">More...</a>
<p>
<code>#include <<a class="el" href="expression_8h_source.html">expression.h</a>></code>
<p>
<div class="dynheader">
Inheritance diagram for CNPower:</div>
<div class="dynsection">
<p><center><img src="classCNPower.png" usemap="#CNPower_map" border="0" alt=""></center>
<map name="CNPower_map">
<area href="classCalcNode.html" alt="CalcNode" shape="rect" coords="0,0,68,24">
</map>
</div>
<p>
<a href="classCNPower-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"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classCNPower.html#19cc4d9436407d694ec1671fd146834a">CNPower</a> (<a class="el" href="classCalcNode.html">CalcNode</a> *_left, <a class="el" href="classCalcNode.html">CalcNode</a> *_right)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual </td><td class="memItemRight" valign="bottom"><a class="el" href="classCNPower.html#2cbc6cdd3ea0a40f6a5cc1bc505cc075">~CNPower</a> ()</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual double </td><td class="memItemRight" valign="bottom"><a class="el" href="classCNPower.html#9461646cf8e9fc0cb54318e04d73ed72">evaluate</a> () const </td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">evaluate the complete calculation tree and return the floating point result value <a href="#9461646cf8e9fc0cb54318e04d73ed72"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classCNPower.html#23b22f144f66e242794826719eb4a47a">print</a> (std::ostream &os, unsigned int depth) const </td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">output the calculation tree to the given stream. <a href="#23b22f144f66e242794826719eb4a47a"></a><br></td></tr>
<tr><td colspan="2"><br><h2>Private Attributes</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classCalcNode.html">CalcNode</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classCNPower.html#339ba16c04b2b7a7d95657a8ecc1d667">left</a></td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">left calculation operand <a href="#339ba16c04b2b7a7d95657a8ecc1d667"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classCalcNode.html">CalcNode</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="classCNPower.html#6e8994ac1a958623135ca1925ee71bb1">right</a></td></tr>
<tr><td class="mdescLeft"> </td><td class="mdescRight">right calculation operand <a href="#6e8994ac1a958623135ca1925ee71bb1"></a><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
Calculation node raising one operand to the power of the second.
<p>
<p>Definition at line <a class="el" href="expression_8h_source.html#l00264">264</a> of file <a class="el" href="expression_8h_source.html">expression.h</a>.</p>
<hr><h2>Constructor & Destructor Documentation</h2>
<a class="anchor" name="19cc4d9436407d694ec1671fd146834a"></a><!-- doxytag: member="CNPower::CNPower" ref="19cc4d9436407d694ec1671fd146834a" args="(CalcNode *_left, CalcNode *_right)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">CNPower::CNPower </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classCalcNode.html">CalcNode</a> * </td>
<td class="paramname"> <em>_left</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"><a class="el" href="classCalcNode.html">CalcNode</a> * </td>
<td class="paramname"> <em>_right</em></td><td> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td><td><code> [inline, explicit]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
<p>Definition at line <a class="el" href="expression_8h_source.html#l00273">273</a> of file <a class="el" href="expression_8h_source.html">expression.h</a>.</p>
</div>
</div><p>
<a class="anchor" name="2cbc6cdd3ea0a40f6a5cc1bc505cc075"></a><!-- doxytag: member="CNPower::~CNPower" ref="2cbc6cdd3ea0a40f6a5cc1bc505cc075" args="()" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">virtual CNPower::~CNPower </td>
<td>(</td>
<td class="paramname"> </td>
<td> ) </td>
<td><code> [inline, virtual]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
<p>Definition at line <a class="el" href="expression_8h_source.html#l00278">278</a> of file <a class="el" href="expression_8h_source.html">expression.h</a>.</p>
<p>References <a class="el" href="expression_8h_source.html#l00267">left</a>, and <a class="el" href="expression_8h_source.html#l00270">right</a>.</p>
</div>
</div><p>
<hr><h2>Member Function Documentation</h2>
<a class="anchor" name="9461646cf8e9fc0cb54318e04d73ed72"></a><!-- doxytag: member="CNPower::evaluate" ref="9461646cf8e9fc0cb54318e04d73ed72" args="() const " -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">virtual double CNPower::evaluate </td>
<td>(</td>
<td class="paramname"> </td>
<td> ) </td>
<td> const<code> [inline, virtual]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
evaluate the complete calculation tree and return the floating point result value
<p>
<p>Implements <a class="el" href="classCalcNode.html#0c036b9e80266101e155bf76da1b868a">CalcNode</a>.</p>
<p>Definition at line <a class="el" href="expression_8h_source.html#l00284">284</a> of file <a class="el" href="expression_8h_source.html">expression.h</a>.</p>
<p>References <a class="el" href="classCalcNode.html#0c036b9e80266101e155bf76da1b868a">CalcNode::evaluate()</a>, <a class="el" href="expression_8h_source.html#l00267">left</a>, and <a class="el" href="expression_8h_source.html#l00270">right</a>.</p>
</div>
</div><p>
<a class="anchor" name="23b22f144f66e242794826719eb4a47a"></a><!-- doxytag: member="CNPower::print" ref="23b22f144f66e242794826719eb4a47a" args="(std::ostream &os, unsigned int depth) const " -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">virtual void CNPower::print </td>
<td>(</td>
<td class="paramtype">std::ostream & </td>
<td class="paramname"> <em>os</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">unsigned int </td>
<td class="paramname"> <em>depth</em></td><td> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td><td> const<code> [inline, virtual]</code></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
output the calculation tree to the given stream.
<p>
tries to format the output to make tree levels visible.
<p>Implements <a class="el" href="classCalcNode.html#ce46c07f593f0b4727faa46cbeb8f6e8">CalcNode</a>.</p>
<p>Definition at line <a class="el" href="expression_8h_source.html#l00289">289</a> of file <a class="el" href="expression_8h_source.html">expression.h</a>.</p>
<p>References <a class="el" href="expression_8h_source.html#l00033">CalcNode::indent()</a>, <a class="el" href="expression_8h_source.html#l00267">left</a>, <a class="el" href="classCalcNode.html#ce46c07f593f0b4727faa46cbeb8f6e8">CalcNode::print()</a>, and <a class="el" href="expression_8h_source.html#l00270">right</a>.</p>
</div>
</div><p>
<hr><h2>Member Data Documentation</h2>
<a class="anchor" name="339ba16c04b2b7a7d95657a8ecc1d667"></a><!-- doxytag: member="CNPower::left" ref="339ba16c04b2b7a7d95657a8ecc1d667" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classCalcNode.html">CalcNode</a>* <a class="el" href="classCNPower.html#339ba16c04b2b7a7d95657a8ecc1d667">CNPower::left</a><code> [private]</code> </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
left calculation operand
<p>
<p>Definition at line <a class="el" href="expression_8h_source.html#l00267">267</a> of file <a class="el" href="expression_8h_source.html">expression.h</a>.</p>
<p>Referenced by <a class="el" href="expression_8h_source.html#l00284">evaluate()</a>, <a class="el" href="expression_8h_source.html#l00289">print()</a>, and <a class="el" href="expression_8h_source.html#l00278">~CNPower()</a>.</p>
</div>
</div><p>
<a class="anchor" name="6e8994ac1a958623135ca1925ee71bb1"></a><!-- doxytag: member="CNPower::right" ref="6e8994ac1a958623135ca1925ee71bb1" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classCalcNode.html">CalcNode</a>* <a class="el" href="classCNPower.html#6e8994ac1a958623135ca1925ee71bb1">CNPower::right</a><code> [private]</code> </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
right calculation operand
<p>
<p>Definition at line <a class="el" href="expression_8h_source.html#l00270">270</a> of file <a class="el" href="expression_8h_source.html">expression.h</a>.</p>
<p>Referenced by <a class="el" href="expression_8h_source.html#l00284">evaluate()</a>, <a class="el" href="expression_8h_source.html#l00289">print()</a>, and <a class="el" href="expression_8h_source.html#l00278">~CNPower()</a>.</p>
</div>
</div><p>
<hr>The documentation for this class was generated from the following file:<ul>
<li>src/<a class="el" href="expression_8h_source.html">expression.h</a></ul>
</div>
<hr size="1"><address style="text-align: right;"><small>Generated on Sat Sep 5 10:26:25 2009 for Flex Bison C++ Example by
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.9 </small></address>
</body>
</html>