Sophie

Sophie

distrib > Mandriva > 2010.0 > i586 > media > contrib-release > by-pkgid > 247b28499c443e092731ffba814075f2 > files > 671

mpqc-html-2.3.1-9mdv2010.0.i586.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>MPQC: sc::SCBlockInfo 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&nbsp;Page</span></a></li>
      <li><a href="pages.html"><span>Related&nbsp;Pages</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&nbsp;List</span></a></li>
      <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
    </ul>
  </div>
  <div class="navpath"><b>sc</b>::<a class="el" href="classsc_1_1SCBlockInfo.html">SCBlockInfo</a>
  </div>
</div>
<div class="contents">
<h1>sc::SCBlockInfo Class Reference</h1><!-- doxytag: class="sc::SCBlockInfo" --><!-- doxytag: inherits="sc::SavableState" --><a class="el" href="classsc_1_1SCBlockInfo.html" title="SCBlockInfo contains blocking information for the SCDimension class.">SCBlockInfo</a> contains blocking information for the <a class="el" href="classsc_1_1SCDimension.html" title="The SCDimension class is used to determine the size and blocking of matrices.">SCDimension</a> class.  
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="dim_8h_source.html">dim.h</a>&gt;</code>
<p>
<div class="dynheader">
Inheritance diagram for sc::SCBlockInfo:</div>
<div class="dynsection">

<p><center><img src="classsc_1_1SCBlockInfo.png" usemap="#sc::SCBlockInfo_map" border="0" alt=""></center>
<map name="sc::SCBlockInfo_map">
<area href="classsc_1_1SavableState.html" alt="sc::SavableState" shape="rect" coords="0,168,120,192">
<area href="classsc_1_1DescribedClass.html" alt="sc::DescribedClass" shape="rect" coords="0,112,120,136">
<area href="classsc_1_1RefCount.html" alt="sc::RefCount" shape="rect" coords="0,56,120,80">
<area href="classsc_1_1Identity.html" alt="sc::Identity" shape="rect" coords="0,0,120,24">
</map>
</div>

<p>
<a href="classsc_1_1SCBlockInfo-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="95a2cb8bf0aeaf1d7f08c1d2222b21c6"></a><!-- doxytag: member="sc::SCBlockInfo::SCBlockInfo" ref="95a2cb8bf0aeaf1d7f08c1d2222b21c6" args="(int n, int nblocks=0, const int *blocksizes=0)" -->
&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1SCBlockInfo.html#95a2cb8bf0aeaf1d7f08c1d2222b21c6">SCBlockInfo</a> (int n, int nblocks=0, const int *blocksizes=0)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Create a <a class="el" href="classsc_1_1SCBlockInfo.html" title="SCBlockInfo contains blocking information for the SCDimension class.">SCBlockInfo</a> object. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="7e2cc91a58bfa25a8490b7c9c323f6b0"></a><!-- doxytag: member="sc::SCBlockInfo::SCBlockInfo" ref="7e2cc91a58bfa25a8490b7c9c323f6b0" args="(StateIn &amp;)" -->
&nbsp;</td><td class="memItemRight" valign="bottom"><b>SCBlockInfo</b> (<a class="el" href="classsc_1_1StateIn.html">StateIn</a> &amp;)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1SCBlockInfo.html#34379737b89e49cf26841f22e1d8a728">SCBlockInfo</a> (const <a class="el" href="classsc_1_1Ref.html">Ref</a>&lt; <a class="el" href="classsc_1_1KeyVal.html">KeyVal</a> &gt; &amp;keyval)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">The <a class="el" href="classsc_1_1KeyVal.html" title="The KeyVal class is designed to simplify the process of allowing a user to specify...">KeyVal</a> constructor.  <a href="#34379737b89e49cf26841f22e1d8a728"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1SCBlockInfo.html#58ad19db7bc528f1369961e3e1bee4c9">save_data_state</a> (<a class="el" href="classsc_1_1StateOut.html">StateOut</a> &amp;)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Save the base classes (with save_data_state) and the members in the same order that the <a class="el" href="classsc_1_1StateIn.html" title="Restores objects that derive from SavableState.">StateIn</a> CTOR initializes them.  <a href="#58ad19db7bc528f1369961e3e1bee4c9"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f0bfa9cded5c1e719b88c2af911217df"></a><!-- doxytag: member="sc::SCBlockInfo::equiv" ref="f0bfa9cded5c1e719b88c2af911217df" args="(SCBlockInfo *bi)" -->
int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1SCBlockInfo.html#f0bfa9cded5c1e719b88c2af911217df">equiv</a> (<a class="el" href="classsc_1_1SCBlockInfo.html">SCBlockInfo</a> *bi)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return nonzero if this is equivalent to bi. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b18f9926971e9a93a617870a42150046"></a><!-- doxytag: member="sc::SCBlockInfo::nelem" ref="b18f9926971e9a93a617870a42150046" args="() const " -->
int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1SCBlockInfo.html#b18f9926971e9a93a617870a42150046">nelem</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return the total number of elements. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1d27688543f5cbe16c08070f3b490e33"></a><!-- doxytag: member="sc::SCBlockInfo::nblock" ref="1d27688543f5cbe16c08070f3b490e33" args="() const " -->
int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1SCBlockInfo.html#1d27688543f5cbe16c08070f3b490e33">nblock</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return the number of blocks. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="29c2f9929ae7097dd1af1816ee8e8679"></a><!-- doxytag: member="sc::SCBlockInfo::start" ref="29c2f9929ae7097dd1af1816ee8e8679" args="(int i) const " -->
int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1SCBlockInfo.html#29c2f9929ae7097dd1af1816ee8e8679">start</a> (int i) const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return the starting index for block i. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a53dd82d26b7ea83cc13712dcbfd6436"></a><!-- doxytag: member="sc::SCBlockInfo::size" ref="a53dd82d26b7ea83cc13712dcbfd6436" args="(int i) const " -->
int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1SCBlockInfo.html#a53dd82d26b7ea83cc13712dcbfd6436">size</a> (int i) const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return the size of block i. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5696a4aa6fde251f9688e870de9fa53a"></a><!-- doxytag: member="sc::SCBlockInfo::fence" ref="5696a4aa6fde251f9688e870de9fa53a" args="(int i) const " -->
int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1SCBlockInfo.html#5696a4aa6fde251f9688e870de9fa53a">fence</a> (int i) const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return the last index + 1 for block i. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="005c2ffbe67a6a177d815d7d6369ef35"></a><!-- doxytag: member="sc::SCBlockInfo::elem_to_block" ref="005c2ffbe67a6a177d815d7d6369ef35" args="(int i, int &amp;block, int &amp;offset)" -->
void&nbsp;</td><td class="memItemRight" valign="bottom"><b>elem_to_block</b> (int i, int &amp;block, int &amp;offset)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="f16962d2f8684fb10cff807533ba0c07"></a><!-- doxytag: member="sc::SCBlockInfo::subdim" ref="f16962d2f8684fb10cff807533ba0c07" args="(int i)" -->
<a class="el" href="classsc_1_1RefSCDimension.html">RefSCDimension</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1SCBlockInfo.html#f16962d2f8684fb10cff807533ba0c07">subdim</a> (int i)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Retreive subdimension information. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1SCBlockInfo.html#f875f05bde93d12c3bece58ca1924076">set_subdim</a> (int i, const <a class="el" href="classsc_1_1RefSCDimension.html">RefSCDimension</a> &amp;dim)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set subdimension information.  <a href="#f875f05bde93d12c3bece58ca1924076"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="6504225575f68e59cefad42fe76cf03f"></a><!-- doxytag: member="sc::SCBlockInfo::print" ref="6504225575f68e59cefad42fe76cf03f" args="(std::ostream &amp;o=ExEnv::out0()) const " -->
void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1SCBlockInfo.html#6504225575f68e59cefad42fe76cf03f">print</a> (std::ostream &amp;o=ExEnv::out0()) const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Print the object to the stream o. <br></td></tr>
<tr><td colspan="2"><br><h2>Protected Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="3b218a0ec48cd341d8e02429ee334058"></a><!-- doxytag: member="sc::SCBlockInfo::init_start" ref="3b218a0ec48cd341d8e02429ee334058" args="()" -->
void&nbsp;</td><td class="memItemRight" valign="bottom"><b>init_start</b> ()</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="205185c0ec93edd6a22ce5bf5b90c43e"></a><!-- doxytag: member="sc::SCBlockInfo::n_" ref="205185c0ec93edd6a22ce5bf5b90c43e" args="" -->
int&nbsp;</td><td class="memItemRight" valign="bottom"><b>n_</b></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="58bf0cf301fe9dca20fe687a60e29502"></a><!-- doxytag: member="sc::SCBlockInfo::nblocks_" ref="58bf0cf301fe9dca20fe687a60e29502" args="" -->
int&nbsp;</td><td class="memItemRight" valign="bottom"><b>nblocks_</b></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c1f59a669df18c994268308b2a1a0f52"></a><!-- doxytag: member="sc::SCBlockInfo::start_" ref="c1f59a669df18c994268308b2a1a0f52" args="" -->
int *&nbsp;</td><td class="memItemRight" valign="bottom"><b>start_</b></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c20d175497d76bdb560a87cfb4c923c2"></a><!-- doxytag: member="sc::SCBlockInfo::size_" ref="c20d175497d76bdb560a87cfb4c923c2" args="" -->
int *&nbsp;</td><td class="memItemRight" valign="bottom"><b>size_</b></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c545406c4b378c6d6bf80cef5a6ae740"></a><!-- doxytag: member="sc::SCBlockInfo::subdims_" ref="c545406c4b378c6d6bf80cef5a6ae740" args="" -->
<a class="el" href="classsc_1_1RefSCDimension.html">RefSCDimension</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><b>subdims_</b></td></tr>

</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
<a class="el" href="classsc_1_1SCBlockInfo.html" title="SCBlockInfo contains blocking information for the SCDimension class.">SCBlockInfo</a> contains blocking information for the <a class="el" href="classsc_1_1SCDimension.html" title="The SCDimension class is used to determine the size and blocking of matrices.">SCDimension</a> class. 
<p>
There are really two ways that it can contain blocking information. In the first way, a vector of block offsets and block sizes is stored. The second method is only used by those specializations created by the BlockedSCMatrixKit class. In this method the blocking information is stored as subdimensions of type <a class="el" href="classsc_1_1SCDimension.html" title="The SCDimension class is used to determine the size and blocking of matrices.">SCDimension</a>. If both methods are used, they must be used consistently. That is, the number, sizes, and order of the blocks must match the number, sizes, and order of the <a class="el" href="classsc_1_1SCDimension.html" title="The SCDimension class is used to determine the size and blocking of matrices.">SCDimension</a> objects. <hr><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" name="34379737b89e49cf26841f22e1d8a728"></a><!-- doxytag: member="sc::SCBlockInfo::SCBlockInfo" ref="34379737b89e49cf26841f22e1d8a728" args="(const Ref&lt; KeyVal &gt; &amp;keyval)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">sc::SCBlockInfo::SCBlockInfo           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classsc_1_1Ref.html">Ref</a>&lt; <a class="el" href="classsc_1_1KeyVal.html">KeyVal</a> &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>keyval</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
The <a class="el" href="classsc_1_1KeyVal.html" title="The KeyVal class is designed to simplify the process of allowing a user to specify...">KeyVal</a> constructor. 
<p>
<dl>
<dt><code>sizes</code></dt>
<dd>This is a vector giving the size of each subblock. There is no default.<p>
</dd>
<dt><code>subdims</code></dt>
<dd>If this vector is given there is must be entry for each entry in the sizes vector. Each entry is an <a class="el" href="classsc_1_1SCDimension.html" title="The SCDimension class is used to determine the size and blocking of matrices.">SCDimension</a> object. The default is to not store subdimension information.<p>
</dd>
</dl>

</div>
</div><p>
<hr><h2>Member Function Documentation</h2>
<a class="anchor" name="58ad19db7bc528f1369961e3e1bee4c9"></a><!-- doxytag: member="sc::SCBlockInfo::save_data_state" ref="58ad19db7bc528f1369961e3e1bee4c9" args="(StateOut &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void sc::SCBlockInfo::save_data_state           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classsc_1_1StateOut.html">StateOut</a> &amp;&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Save the base classes (with save_data_state) and the members in the same order that the <a class="el" href="classsc_1_1StateIn.html" title="Restores objects that derive from SavableState.">StateIn</a> CTOR initializes them. 
<p>
This must be implemented by the derived class if the class has data. 
<p>Reimplemented from <a class="el" href="classsc_1_1SavableState.html#f9e0c212322d3c0f43e2dcb33e111acf">sc::SavableState</a>.</p>

</div>
</div><p>
<a class="anchor" name="f875f05bde93d12c3bece58ca1924076"></a><!-- doxytag: member="sc::SCBlockInfo::set_subdim" ref="f875f05bde93d12c3bece58ca1924076" args="(int i, const RefSCDimension &amp;dim)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void sc::SCBlockInfo::set_subdim           </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>i</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classsc_1_1RefSCDimension.html">RefSCDimension</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>dim</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Set subdimension information. 
<p>
The dimension dim and index i must be consistent with the nblocks and blocksizes information given to the constructor. 
</div>
</div><p>
<hr>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="dim_8h_source.html">dim.h</a></ul>
</div>
<hr>
<address>
<small>

Generated at Wed Oct 14 14:12:16 2009 for <a
href="http://www.mpqc.org">MPQC</a>
2.3.1 using the documentation package <a
href="http://www.doxygen.org">Doxygen</a>
1.5.9.

</small>
</address>
</body>
</html>