<!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::SCDimension 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_1SCDimension.html">SCDimension</a> </div> </div> <div class="contents"> <h1>sc::SCDimension Class Reference</h1><!-- doxytag: class="sc::SCDimension" --><!-- doxytag: inherits="sc::SavableState" -->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 is used to determine the size and blocking of matrices. <a href="#_details">More...</a> <p> <code>#include <<a class="el" href="dim_8h_source.html">dim.h</a>></code> <p> <div class="dynheader"> Inheritance diagram for sc::SCDimension:</div> <div class="dynsection"> <p><center><img src="classsc_1_1SCDimension.png" usemap="#sc::SCDimension_map" border="0" alt=""></center> <map name="sc::SCDimension_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_1SCDimension-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="classsc_1_1SCDimension.html#dd7aba4631bd0909882bc8c8679f2f8e">SCDimension</a> (int n, const char *name=0)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Create a dimension with an optional name. <a href="#dd7aba4631bd0909882bc8c8679f2f8e"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b3be6fab0ad5c8d51009c12ada153c1a"></a><!-- doxytag: member="sc::SCDimension::SCDimension" ref="b3be6fab0ad5c8d51009c12ada153c1a" args="(const Ref< SCBlockInfo > &, const char *name=0)" --> </td><td class="memItemRight" valign="bottom"><b>SCDimension</b> (const <a class="el" href="classsc_1_1Ref.html">Ref</a>< <a class="el" href="classsc_1_1SCBlockInfo.html">SCBlockInfo</a> > &, const char *name=0)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="47e9101f6ca11acb386377ec82b3601c"></a><!-- doxytag: member="sc::SCDimension::SCDimension" ref="47e9101f6ca11acb386377ec82b3601c" args="(int n, int nblocks, const int *blocksizes=0, const char *name=0)" --> </td><td class="memItemRight" valign="bottom"><b>SCDimension</b> (int n, int nblocks, const int *blocksizes=0, const char *name=0)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1SCDimension.html#c99d058ac7545d2b1d57b9a15d98697a">SCDimension</a> (const <a class="el" href="classsc_1_1Ref.html">Ref</a>< <a class="el" href="classsc_1_1KeyVal.html">KeyVal</a> > &)</td></tr> <tr><td class="mdescLeft"> </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="#c99d058ac7545d2b1d57b9a15d98697a"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="c4e7421c5b6bef5d169d238206568308"></a><!-- doxytag: member="sc::SCDimension::SCDimension" ref="c4e7421c5b6bef5d169d238206568308" args="(StateIn &s)" --> </td><td class="memItemRight" valign="bottom"><b>SCDimension</b> (<a class="el" href="classsc_1_1StateIn.html">StateIn</a> &s)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1SCDimension.html#c547a81ea2600235e8d4e9e2a3bfbc1d">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="#c547a81ea2600235e8d4e9e2a3bfbc1d"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="a8a0bee34dbd95a091e860b1c7f8370a"></a><!-- doxytag: member="sc::SCDimension::equiv" ref="a8a0bee34dbd95a091e860b1c7f8370a" args="(const SCDimension *) const " --> int </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1SCDimension.html#a8a0bee34dbd95a091e860b1c7f8370a">equiv</a> (const <a class="el" href="classsc_1_1SCDimension.html">SCDimension</a> *) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Test to see if two dimensions are equivalent. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="cdbb04a20a7214cc7413337f73917a54"></a><!-- doxytag: member="sc::SCDimension::n" ref="cdbb04a20a7214cc7413337f73917a54" args="() const " --> int </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1SCDimension.html#cdbb04a20a7214cc7413337f73917a54">n</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Return the dimension. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1SCDimension.html#288a37689dd92f74f6d286ed2b71ddf0">name</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Return the name of the dimension. <a href="#288a37689dd92f74f6d286ed2b71ddf0"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="6ba3808afbfa88a4eacb32427e6abc10"></a><!-- doxytag: member="sc::SCDimension::blocks" ref="6ba3808afbfa88a4eacb32427e6abc10" args="()" --> <a class="el" href="classsc_1_1Ref.html">Ref</a>< <a class="el" href="classsc_1_1SCBlockInfo.html">SCBlockInfo</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1SCDimension.html#6ba3808afbfa88a4eacb32427e6abc10">blocks</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Return the blocking information for this dimension. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="83f4946db46dfc8a33a2bc60a0b69e01"></a><!-- doxytag: member="sc::SCDimension::print" ref="83f4946db46dfc8a33a2bc60a0b69e01" args="(std::ostream &o=ExEnv::out0()) const " --> void </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1SCDimension.html#83f4946db46dfc8a33a2bc60a0b69e01">print</a> (std::ostream &o=ExEnv::out0()) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Print information about this dimension to 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="c323edfba7ce60723d8cfb77b8a3aa13"></a><!-- doxytag: member="sc::SCDimension::SCDimension" ref="c323edfba7ce60723d8cfb77b8a3aa13" args="(const char *name=0)" --> </td><td class="memItemRight" valign="bottom"><b>SCDimension</b> (const char *name=0)</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="0fd89e0d3f9690772aa364c9d86a9e8b"></a><!-- doxytag: member="sc::SCDimension::name_" ref="0fd89e0d3f9690772aa364c9d86a9e8b" args="" --> char * </td><td class="memItemRight" valign="bottom"><b>name_</b></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="2f397965110d348b81912044de308ffb"></a><!-- doxytag: member="sc::SCDimension::n_" ref="2f397965110d348b81912044de308ffb" args="" --> int </td><td class="memItemRight" valign="bottom"><b>n_</b></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="db758970b00e8837d98b9f7611863fca"></a><!-- doxytag: member="sc::SCDimension::blocks_" ref="db758970b00e8837d98b9f7611863fca" args="" --> <a class="el" href="classsc_1_1Ref.html">Ref</a>< <a class="el" href="classsc_1_1SCBlockInfo.html">SCBlockInfo</a> > </td><td class="memItemRight" valign="bottom"><b>blocks_</b></td></tr> </table> <hr><a name="_details"></a><h2>Detailed Description</h2> 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 is used to determine the size and blocking of matrices. <p> The blocking information is stored by an object of class <a class="el" href="classsc_1_1SCBlockInfo.html" title="SCBlockInfo contains blocking information for the SCDimension class.">SCBlockInfo</a>. <hr><h2>Constructor & Destructor Documentation</h2> <a class="anchor" name="dd7aba4631bd0909882bc8c8679f2f8e"></a><!-- doxytag: member="sc::SCDimension::SCDimension" ref="dd7aba4631bd0909882bc8c8679f2f8e" args="(int n, const char *name=0)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">sc::SCDimension::SCDimension </td> <td>(</td> <td class="paramtype">int </td> <td class="paramname"> <em>n</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const char * </td> <td class="paramname"> <em>name</em> = <code>0</code></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td></td> </tr> </table> </div> <div class="memdoc"> <p> Create a dimension with an optional name. <p> The name is a copy of the '0' terminated string name. </div> </div><p> <a class="anchor" name="c99d058ac7545d2b1d57b9a15d98697a"></a><!-- doxytag: member="sc::SCDimension::SCDimension" ref="c99d058ac7545d2b1d57b9a15d98697a" args="(const Ref< KeyVal > &)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">sc::SCDimension::SCDimension </td> <td>(</td> <td class="paramtype">const <a class="el" href="classsc_1_1Ref.html">Ref</a>< <a class="el" href="classsc_1_1KeyVal.html">KeyVal</a> > & </td> <td class="paramname"> </td> <td> ) </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>n</code></dt> <dd>This gives size of the dimension. One of n or blocks is required.<p> </dd> <dt><code>blocks</code></dt> <dd>The block information for the dimension can be given as a <a class="el" href="classsc_1_1SCBlockInfo.html" title="SCBlockInfo contains blocking information for the SCDimension class.">SCBlockInfo</a> object. One of n or blocks is required.<p> </dd> </dl> </div> </div><p> <hr><h2>Member Function Documentation</h2> <a class="anchor" name="288a37689dd92f74f6d286ed2b71ddf0"></a><!-- doxytag: member="sc::SCDimension::name" ref="288a37689dd92f74f6d286ed2b71ddf0" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const char* sc::SCDimension::name </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Return the name of the dimension. <p> If no name was given to the constructor, then return 0. </div> </div><p> <a class="anchor" name="c547a81ea2600235e8d4e9e2a3bfbc1d"></a><!-- doxytag: member="sc::SCDimension::save_data_state" ref="c547a81ea2600235e8d4e9e2a3bfbc1d" args="(StateOut &)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void sc::SCDimension::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_1SavableState.html#f9e0c212322d3c0f43e2dcb33e111acf">sc::SavableState</a>.</p> </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>