Symbian3/Examples/guid-6013a680-57f9-415b-8851-c4fa63356636/class_c_adder.html
author Dominic Pinkman <dominic.pinkman@nokia.com>
Fri, 13 Aug 2010 16:47:46 +0100
changeset 14 578be2adaf3e
parent 6 43e37759235e
permissions -rw-r--r--
Week 32 contribution of PDK documentation content. See release notes for details. Fixes bug Bug 3582

<!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"/>
<title>TB9.2 Example Applications: CAdder 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.6.2 -->
<div class="contents">
<h1>CAdder Class Reference</h1><!-- doxytag: class="CAdder" -->
<p><a href="class_c_adder-members.html">List of all members.</a></p>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td colspan="2"><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_adder.html#a76003b0896145aa8d396f596bb8fbe31">~CAdder</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">TInt&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_adder.html#a1a7d0002967f1aa090a6beb84a433d4c">Add</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_adder.html#a258412cf6a78091b2b9f641dadb8e41b">RunL</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_adder.html#a73d41c81991e4cf7b65e3644aba926cc">DoCancel</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_adder.html#a004d5ec0fb8626310fdf85843c87ec67">StartTimer</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_adder.html#a5d5d56b9ce85c971c2e48b575f792d9d">StopTimer</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_adder.html#a800f42785c37c746dadd65c90b7e0dfa">ReadFunction</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1a7d0002967f1aa090a6beb84a433d4c"></a><!-- doxytag: member="CAdder::Add" ref="a1a7d0002967f1aa090a6beb84a433d4c" args="()" -->
void&nbsp;</td><td class="memItemRight" valign="bottom"><b>Add</b> ()</td></tr>
<tr><td colspan="2"><h2>Static Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static <a class="el" href="class_c_adder.html">CAdder</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_adder.html#aa703f5386236c2fa9ad3b750f521200a">NewL</a> (<a class="el" href="class_c_long_number.html">CLongNumber</a> *aNum1)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static <a class="el" href="class_c_adder.html">CAdder</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_adder.html#ac207184f306dec25c5430f2c510f5c3c">NewL</a> (CConsoleBase *aConsole)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static TInt&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_c_adder.html#a6e524c7466f89ca4ab9896f5bae13f3e">AddFunction</a> (TAny *aPtr)</td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<p>This class stores an object of the <a class="el" href="class_c_long_number.html">CLongNumber</a> class. It has methods to calculate the sum of all digits of the number represented by the iLongNumber object.</p>
<p>The adder class. This class creates the global chunk and periodically adds random values to it. It also creates:</p>
<ul>
<li>the global condition variable</li>
<li>the global mutex variable</li>
<li>the timer object The condition variable ensures that the value of the chunk is always less than 100. </li>
</ul>

<p>Definition at line <a class="el" href="_arrays_and_lists_2linkedlist_2sgllist_2inc_2adder_8h_source.html#l00031">31</a> of file <a class="el" href="_arrays_and_lists_2linkedlist_2sgllist_2inc_2adder_8h_source.html">adder.h</a>.</p>
<hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a76003b0896145aa8d396f596bb8fbe31"></a><!-- doxytag: member="CAdder::~CAdder" ref="a76003b0896145aa8d396f596bb8fbe31" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">CAdder::~CAdder </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Destructor. </p>

<p>Definition at line <a class="el" href="_arrays_and_lists_2linkedlist_2sgllist_2src_2adder_8cpp_source.html#l00073">73</a> of file <a class="el" href="_arrays_and_lists_2linkedlist_2sgllist_2src_2adder_8cpp_source.html">adder.cpp</a>.</p>

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="aa703f5386236c2fa9ad3b750f521200a"></a><!-- doxytag: member="CAdder::NewL" ref="aa703f5386236c2fa9ad3b750f521200a" args="(CLongNumber *aNum1)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class_c_adder.html">CAdder</a> * CAdder::NewL </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="class_c_long_number.html">CLongNumber</a> *&nbsp;</td>
          <td class="paramname"> <em>aLongNumber</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Creates an object of the <a class="el" href="class_c_adder.html">CAdder</a> class. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>aLongNumber</em>&nbsp;</td><td>A pointer to the object of the <a class="el" href="class_c_long_number.html">CLongNumber</a> class. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>A pointer to the object of the <a class="el" href="class_c_adder.html">CAdder</a> class. </dd></dl>

<p>Definition at line <a class="el" href="_arrays_and_lists_2linkedlist_2sgllist_2src_2adder_8cpp_source.html#l00030">30</a> of file <a class="el" href="_arrays_and_lists_2linkedlist_2sgllist_2src_2adder_8cpp_source.html">adder.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a1a7d0002967f1aa090a6beb84a433d4c"></a><!-- doxytag: member="CAdder::Add" ref="a1a7d0002967f1aa090a6beb84a433d4c" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CAdder::Add </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Performs the addition of all digits of the iLongNumber object. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>The sum of all digits of the iLongNumber object.</dd></dl>
<p>Adds a random integer value to the global chunk. </p>

<p>Definition at line <a class="el" href="_arrays_and_lists_2linkedlist_2sgllist_2src_2adder_8cpp_source.html#l00047">47</a> of file <a class="el" href="_arrays_and_lists_2linkedlist_2sgllist_2src_2adder_8cpp_source.html">adder.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="ac207184f306dec25c5430f2c510f5c3c"></a><!-- doxytag: member="CAdder::NewL" ref="ac207184f306dec25c5430f2c510f5c3c" args="(CConsoleBase *aConsole)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class_c_adder.html">CAdder</a> * CAdder::NewL </td>
          <td>(</td>
          <td class="paramtype">CConsoleBase *&nbsp;</td>
          <td class="paramname"> <em>aConsole</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Performs the two-phase construction of an object of the <a class="el" href="class_c_adder.html">CAdder</a> class. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>aConsole</em>&nbsp;</td><td>The console object. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>A <a class="el" href="class_c_adder.html">CAdder</a> object. </dd></dl>

<p>Definition at line <a class="el" href="_i_p_c_2condvar_2condvarglobal_2src_2adder_8cpp_source.html#l00030">30</a> of file <a class="el" href="_i_p_c_2condvar_2condvarglobal_2src_2adder_8cpp_source.html">adder.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a258412cf6a78091b2b9f641dadb8e41b"></a><!-- doxytag: member="CAdder::RunL" ref="a258412cf6a78091b2b9f641dadb8e41b" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CAdder::RunL </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Handles the key press events from the console. It stops the active scheduler for any key press event. </p>

<p>Definition at line <a class="el" href="_i_p_c_2condvar_2condvarglobal_2src_2adder_8cpp_source.html#l00043">43</a> of file <a class="el" href="_i_p_c_2condvar_2condvarglobal_2src_2adder_8cpp_source.html">adder.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a73d41c81991e4cf7b65e3644aba926cc"></a><!-- doxytag: member="CAdder::DoCancel" ref="a73d41c81991e4cf7b65e3644aba926cc" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CAdder::DoCancel </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Cancel any outstanding request. </p>

<p>Definition at line <a class="el" href="_i_p_c_2condvar_2condvarglobal_2src_2adder_8cpp_source.html#l00058">58</a> of file <a class="el" href="_i_p_c_2condvar_2condvarglobal_2src_2adder_8cpp_source.html">adder.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a004d5ec0fb8626310fdf85843c87ec67"></a><!-- doxytag: member="CAdder::StartTimer" ref="a004d5ec0fb8626310fdf85843c87ec67" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CAdder::StartTimer </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Starts the timer object. </p>
<dl class="see"><dt><b>See also:</b></dt><dd>CPeriodic::Start(). </dd></dl>

<p>Definition at line <a class="el" href="_i_p_c_2condvar_2condvarglobal_2src_2adder_8cpp_source.html#l00139">139</a> of file <a class="el" href="_i_p_c_2condvar_2condvarglobal_2src_2adder_8cpp_source.html">adder.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a5d5d56b9ce85c971c2e48b575f792d9d"></a><!-- doxytag: member="CAdder::StopTimer" ref="a5d5d56b9ce85c971c2e48b575f792d9d" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CAdder::StopTimer </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Stops the timer object. </p>

<p>Definition at line <a class="el" href="_i_p_c_2condvar_2condvarglobal_2src_2adder_8cpp_source.html#l00148">148</a> of file <a class="el" href="_i_p_c_2condvar_2condvarglobal_2src_2adder_8cpp_source.html">adder.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a800f42785c37c746dadd65c90b7e0dfa"></a><!-- doxytag: member="CAdder::ReadFunction" ref="a800f42785c37c746dadd65c90b7e0dfa" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CAdder::ReadFunction </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>Issues an outstanding request to get a keystroke from the console. </p>

<p>Definition at line <a class="el" href="_i_p_c_2condvar_2condvarglobal_2src_2adder_8cpp_source.html#l00126">126</a> of file <a class="el" href="_i_p_c_2condvar_2condvarglobal_2src_2adder_8cpp_source.html">adder.cpp</a>.</p>

</div>
</div>
<a class="anchor" id="a6e524c7466f89ca4ab9896f5bae13f3e"></a><!-- doxytag: member="CAdder::AddFunction" ref="a6e524c7466f89ca4ab9896f5bae13f3e" args="(TAny *aPtr)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">TInt CAdder::AddFunction </td>
          <td>(</td>
          <td class="paramtype">TAny *&nbsp;</td>
          <td class="paramname"> <em>aPtr</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>The call back function for the CAdder::iPeriodic object. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>aPtr</em>&nbsp;</td><td>Contains the address of the object passed as an argument to the <a class="el" href="class_c_adder.html#a6e524c7466f89ca4ab9896f5bae13f3e">AddFunction()</a>. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>KErrNone. </dd></dl>

<p>Definition at line <a class="el" href="_i_p_c_2condvar_2condvarglobal_2src_2adder_8cpp_source.html#l00159">159</a> of file <a class="el" href="_i_p_c_2condvar_2condvarglobal_2src_2adder_8cpp_source.html">adder.cpp</a>.</p>

</div>
</div>
</div>
<hr size="1"/><address style="text-align: right;"><small>Generated by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.2 </small></address>
</body>
</html>