<!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::SCMatrixRectSubBlock 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="pages.html"><span>Related 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 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 class="navpath"><b>sc</b>::<a class="el" href="classsc_1_1SCMatrixRectSubBlock.html">SCMatrixRectSubBlock</a> </div> </div> <div class="contents"> <h1>sc::SCMatrixRectSubBlock Class Reference</h1><!-- doxytag: class="sc::SCMatrixRectSubBlock" --><!-- doxytag: inherits="sc::SCMatrixBlock" -->The <a class="el" href="classsc_1_1SCMatrixRectSubBlock.html" title="The SCMatrixRectSubBlock describes a rectangular piece of a matrix.">SCMatrixRectSubBlock</a> describes a rectangular piece of a matrix. <a href="#_details">More...</a> <p> <code>#include <<a class="el" href="block_8h_source.html">block.h</a>></code> <p> <div class="dynheader"> Inheritance diagram for sc::SCMatrixRectSubBlock:</div> <div class="dynsection"> <p><center><img src="classsc_1_1SCMatrixRectSubBlock.png" usemap="#sc::SCMatrixRectSubBlock_map" border="0" alt=""></center> <map name="sc::SCMatrixRectSubBlock_map"> <area href="classsc_1_1SCMatrixBlock.html" alt="sc::SCMatrixBlock" shape="rect" coords="0,224,161,248"> <area href="classsc_1_1SavableState.html" alt="sc::SavableState" shape="rect" coords="0,168,161,192"> <area href="classsc_1_1DescribedClass.html" alt="sc::DescribedClass" shape="rect" coords="0,112,161,136"> <area href="classsc_1_1RefCount.html" alt="sc::RefCount" shape="rect" coords="0,56,161,80"> <area href="classsc_1_1Identity.html" alt="sc::Identity" shape="rect" coords="0,0,161,24"> </map> </div> <p> <a href="classsc_1_1SCMatrixRectSubBlock-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="173571b6f5115e7183d62ba5dd53ce42"></a><!-- doxytag: member="sc::SCMatrixRectSubBlock::SCMatrixRectSubBlock" ref="173571b6f5115e7183d62ba5dd53ce42" args="(int is, int ie, int istride, int js, int je, double *data)" --> </td><td class="memItemRight" valign="bottom"><b>SCMatrixRectSubBlock</b> (int is, int ie, int istride, int js, int je, double *data)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e77e579204a250c4926488811d115cd2"></a><!-- doxytag: member="sc::SCMatrixRectSubBlock::SCMatrixRectSubBlock" ref="e77e579204a250c4926488811d115cd2" args="(StateIn &)" --> </td><td class="memItemRight" valign="bottom"><b>SCMatrixRectSubBlock</b> (<a class="el" href="classsc_1_1StateIn.html">StateIn</a> &)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1SCMatrixRectSubBlock.html#7c9b30a2b6ec6bf2283dd7ffe45163a2">save_data_state</a> (<a class="el" href="classsc_1_1StateOut.html">StateOut</a> &)</td></tr> <tr><td class="mdescLeft"> </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="#7c9b30a2b6ec6bf2283dd7ffe45163a2"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a3039820ccec3477d3087d4a531c893b"></a><!-- doxytag: member="sc::SCMatrixRectSubBlock::process" ref="a3039820ccec3477d3087d4a531c893b" args="(SCElementOp *)" --> void </td><td class="memItemRight" valign="bottom"><b>process</b> (<a class="el" href="classsc_1_1SCElementOp.html">SCElementOp</a> *)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1e49b7b686a90a1665995eb0cea9a1b6"></a><!-- doxytag: member="sc::SCMatrixRectSubBlock::process" ref="1e49b7b686a90a1665995eb0cea9a1b6" args="(SCElementOp2 *, SCMatrixBlock *)" --> void </td><td class="memItemRight" valign="bottom"><b>process</b> (<a class="el" href="classsc_1_1SCElementOp2.html">SCElementOp2</a> *, <a class="el" href="classsc_1_1SCMatrixBlock.html">SCMatrixBlock</a> *)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="492960ef9f56030a588f352e3395ee92"></a><!-- doxytag: member="sc::SCMatrixRectSubBlock::process" ref="492960ef9f56030a588f352e3395ee92" args="(SCElementOp3 *, SCMatrixBlock *, SCMatrixBlock *)" --> void </td><td class="memItemRight" valign="bottom"><b>process</b> (<a class="el" href="classsc_1_1SCElementOp3.html">SCElementOp3</a> *, <a class="el" href="classsc_1_1SCMatrixBlock.html">SCMatrixBlock</a> *, <a class="el" href="classsc_1_1SCMatrixBlock.html">SCMatrixBlock</a> *)</td></tr> <tr><td colspan="2"><br><h2>Public Attributes</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d575fb4d7f18b601a8ca34e9b4432c4b"></a><!-- doxytag: member="sc::SCMatrixRectSubBlock::istart" ref="d575fb4d7f18b601a8ca34e9b4432c4b" args="" --> int </td><td class="memItemRight" valign="bottom"><b>istart</b></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="13c0e6127c1e055cc100a43fc8121164"></a><!-- doxytag: member="sc::SCMatrixRectSubBlock::jstart" ref="13c0e6127c1e055cc100a43fc8121164" args="" --> int </td><td class="memItemRight" valign="bottom"><b>jstart</b></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="9a700b6b1b2637dde6a6adb85c760bef"></a><!-- doxytag: member="sc::SCMatrixRectSubBlock::iend" ref="9a700b6b1b2637dde6a6adb85c760bef" args="" --> int </td><td class="memItemRight" valign="bottom"><b>iend</b></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="83c71f4e958a39b9a7356f6d4ec44a9d"></a><!-- doxytag: member="sc::SCMatrixRectSubBlock::jend" ref="83c71f4e958a39b9a7356f6d4ec44a9d" args="" --> int </td><td class="memItemRight" valign="bottom"><b>jend</b></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ec3f4d20523b7aaa450b9087d7ff61d5"></a><!-- doxytag: member="sc::SCMatrixRectSubBlock::istride" ref="ec3f4d20523b7aaa450b9087d7ff61d5" args="" --> int </td><td class="memItemRight" valign="bottom"><b>istride</b></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="39213d8c6f08a87ddf0576d6d11956ca"></a><!-- doxytag: member="sc::SCMatrixRectSubBlock::data" ref="39213d8c6f08a87ddf0576d6d11956ca" args="" --> double * </td><td class="memItemRight" valign="bottom"><b>data</b></td></tr> </table> <hr><a name="_details"></a><h2>Detailed Description</h2> The <a class="el" href="classsc_1_1SCMatrixRectSubBlock.html" title="The SCMatrixRectSubBlock describes a rectangular piece of a matrix.">SCMatrixRectSubBlock</a> describes a rectangular piece of a matrix. <p> The following bit of code illustrates the data layout: fill(double **matrix, SCMatrixRectSubBlock &b) { int offset=b.istart * b.istride + b.jstart; for (int i=b.istart; i<b.iend; i++) { for (int j=b.jstart; j<b.jend; j++,offset++) { matrix[i][j] = b.data[offset]; } offset += b.istride - (b.jend - b.jstart); } } <hr><h2>Member Function Documentation</h2> <a class="anchor" name="7c9b30a2b6ec6bf2283dd7ffe45163a2"></a><!-- doxytag: member="sc::SCMatrixRectSubBlock::save_data_state" ref="7c9b30a2b6ec6bf2283dd7ffe45163a2" args="(StateOut &)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void sc::SCMatrixRectSubBlock::save_data_state </td> <td>(</td> <td class="paramtype"><a class="el" href="classsc_1_1StateOut.html">StateOut</a> & </td> <td class="paramname"> </td> <td> ) </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_1SCMatrixBlock.html#ffdd5a3bf3b700083a02c2c4a95395ac">sc::SCMatrixBlock</a>.</p> </div> </div><p> <hr>The documentation for this class was generated from the following file:<ul> <li><a class="el" href="block_8h_source.html">block.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>