<!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::MsgStateSend 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_1MsgStateSend.html">MsgStateSend</a> </div> </div> <div class="contents"> <h1>sc::MsgStateSend Class Reference</h1><!-- doxytag: class="sc::MsgStateSend" --><!-- doxytag: inherits="sc::StateOut" -->The <a class="el" href="classsc_1_1MsgStateSend.html" title="The MsgStateSend is an abstract base class that sends objects to nodes in a MessageGrp...">MsgStateSend</a> is an abstract base class that sends objects to nodes in a <a class="el" href="classsc_1_1MessageGrp.html" title="The MessageGrp abstract class provides a mechanism for moving data and objects between...">MessageGrp</a>. <a href="#_details">More...</a> <p> <code>#include <<a class="el" href="mstate_8h_source.html">mstate.h</a>></code> <p> <div class="dynheader"> Inheritance diagram for sc::MsgStateSend:</div> <div class="dynsection"> <p><center><img src="classsc_1_1MsgStateSend.png" usemap="#sc::MsgStateSend_map" border="0" alt=""></center> <map name="sc::MsgStateSend_map"> <area href="classsc_1_1StateOut.html" alt="sc::StateOut" shape="rect" coords="65,168,185,192"> <area href="classsc_1_1DescribedClass.html" alt="sc::DescribedClass" shape="rect" coords="65,112,185,136"> <area href="classsc_1_1RefCount.html" alt="sc::RefCount" shape="rect" coords="65,56,185,80"> <area href="classsc_1_1Identity.html" alt="sc::Identity" shape="rect" coords="65,0,185,24"> <area href="classsc_1_1BcastStateSend.html" alt="sc::BcastStateSend" shape="rect" coords="0,280,120,304"> <area href="classsc_1_1StateSend.html" alt="sc::StateSend" shape="rect" coords="130,280,250,304"> </map> </div> <p> <a href="classsc_1_1MsgStateSend-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="648b4bc74eb4b9bb91dc40f301d9b5fc"></a><!-- doxytag: member="sc::MsgStateSend::MsgStateSend" ref="648b4bc74eb4b9bb91dc40f301d9b5fc" args="(const Ref< MessageGrp > &)" --> </td><td class="memItemRight" valign="bottom"><b>MsgStateSend</b> (const <a class="el" href="classsc_1_1Ref.html">Ref</a>< <a class="el" href="classsc_1_1MessageGrp.html">MessageGrp</a> > &)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="832368432b47bc6c97eba7f6fd0ffe8f"></a><!-- doxytag: member="sc::MsgStateSend::flush" ref="832368432b47bc6c97eba7f6fd0ffe8f" args="()=0" --> virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1MsgStateSend.html#832368432b47bc6c97eba7f6fd0ffe8f">flush</a> ()=0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Specializations must implement <a class="el" href="classsc_1_1MsgStateSend.html#832368432b47bc6c97eba7f6fd0ffe8f" title="Specializations must implement flush().">flush()</a>. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1MsgStateSend.html#4a50f752b7e6d43a8959a7ba43f22991">set_buffer_size</a> (int)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">The buffer size of statein and stateout objects that communicate with each other must match. <a href="#4a50f752b7e6d43a8959a7ba43f22991"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1MsgStateSend.html#a14a994ae76db509e9249175a1b81afb">put</a> (const <a class="el" href="classsc_1_1ClassDesc.html">ClassDesc</a> *)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">I only need to override <a class="el" href="classsc_1_1MsgStateSend.html#a14a994ae76db509e9249175a1b81afb" title="I only need to override put(const ClassDesc*) but C++ will hide all of the other...">put(const ClassDesc*)</a> but C++ will hide all of the other put's so I must override everything. <a href="#a14a994ae76db509e9249175a1b81afb"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="2f502adb9ed92be741c10593d595d4c9"></a><!-- doxytag: member="sc::MsgStateSend::put" ref="2f502adb9ed92be741c10593d595d4c9" args="(char r)" --> int </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1MsgStateSend.html#2f502adb9ed92be741c10593d595d4c9">put</a> (char r)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Write the given datum. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="b493f3d30ab1ba8f8b9dfe2894ef7a53"></a><!-- doxytag: member="sc::MsgStateSend::put" ref="b493f3d30ab1ba8f8b9dfe2894ef7a53" args="(unsigned int r)" --> int </td><td class="memItemRight" valign="bottom"><b>put</b> (unsigned int r)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ac0d99e69805d60589c5a7b0d3670e26"></a><!-- doxytag: member="sc::MsgStateSend::put" ref="ac0d99e69805d60589c5a7b0d3670e26" args="(int r)" --> int </td><td class="memItemRight" valign="bottom"><b>put</b> (int r)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="520e8d5a93152fe38150160ada0a16d0"></a><!-- doxytag: member="sc::MsgStateSend::put" ref="520e8d5a93152fe38150160ada0a16d0" args="(float r)" --> int </td><td class="memItemRight" valign="bottom"><b>put</b> (float r)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="60bd8cda78fe5b66744c4707f8acb8f8"></a><!-- doxytag: member="sc::MsgStateSend::put" ref="60bd8cda78fe5b66744c4707f8acb8f8" args="(double r)" --> int </td><td class="memItemRight" valign="bottom"><b>put</b> (double r)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="classsc_1_1MsgStateSend.html#0df1f1f0287ff4aceef3098629f08200">put</a> (const char *, int)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Write the given array data. <a href="#0df1f1f0287ff4aceef3098629f08200"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="e9b96f0069e88703377b8f9fe39ddfde"></a><!-- doxytag: member="sc::MsgStateSend::put" ref="e9b96f0069e88703377b8f9fe39ddfde" args="(const int *, int)" --> int </td><td class="memItemRight" valign="bottom"><b>put</b> (const int *, int)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="58684d20d502b858280cbdf38690d408"></a><!-- doxytag: member="sc::MsgStateSend::put" ref="58684d20d502b858280cbdf38690d408" args="(const unsigned int *, int)" --> int </td><td class="memItemRight" valign="bottom"><b>put</b> (const unsigned int *, int)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="19a97d3b90ee859dd2e80fd5dd3afa6e"></a><!-- doxytag: member="sc::MsgStateSend::put" ref="19a97d3b90ee859dd2e80fd5dd3afa6e" args="(const float *, int)" --> int </td><td class="memItemRight" valign="bottom"><b>put</b> (const float *, int)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ec9d7296366c28db0177f60536338b9b"></a><!-- doxytag: member="sc::MsgStateSend::put" ref="ec9d7296366c28db0177f60536338b9b" args="(const double *, int)" --> int </td><td class="memItemRight" valign="bottom"><b>put</b> (const double *, int)</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="91212de235d5ad183eefa54f6b464caf"></a><!-- doxytag: member="sc::MsgStateSend::put_array_void" ref="91212de235d5ad183eefa54f6b464caf" args="(const void *, int)" --> int </td><td class="memItemRight" valign="bottom"><b>put_array_void</b> (const void *, int)</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="adc6accb01808a2a720d2dcb9fe3ad47"></a><!-- doxytag: member="sc::MsgStateSend::grp" ref="adc6accb01808a2a720d2dcb9fe3ad47" args="" --> <a class="el" href="classsc_1_1Ref.html">Ref</a>< <a class="el" href="classsc_1_1MessageGrp.html">MessageGrp</a> > </td><td class="memItemRight" valign="bottom"><b>grp</b></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="d3843a3b86ca9cf4ff3fe6c2348e44b8"></a><!-- doxytag: member="sc::MsgStateSend::nbuf" ref="d3843a3b86ca9cf4ff3fe6c2348e44b8" args="" --> int </td><td class="memItemRight" valign="bottom"><b>nbuf</b></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="cbce4afa4d9c36d84a80751ae2d76863"></a><!-- doxytag: member="sc::MsgStateSend::bufsize" ref="cbce4afa4d9c36d84a80751ae2d76863" args="" --> int </td><td class="memItemRight" valign="bottom"><b>bufsize</b></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="36cfc739a4e619f2ec4016c8c532fd61"></a><!-- doxytag: member="sc::MsgStateSend::buffer" ref="36cfc739a4e619f2ec4016c8c532fd61" args="" --> char * </td><td class="memItemRight" valign="bottom"><b>buffer</b></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="803ade5770cd85fd0a2c7c3f728379d6"></a><!-- doxytag: member="sc::MsgStateSend::send_buffer" ref="803ade5770cd85fd0a2c7c3f728379d6" args="" --> char * </td><td class="memItemRight" valign="bottom"><b>send_buffer</b></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="86c8032415e88087bfdabd7749686fc9"></a><!-- doxytag: member="sc::MsgStateSend::nheader" ref="86c8032415e88087bfdabd7749686fc9" args="" --> int </td><td class="memItemRight" valign="bottom"><b>nheader</b></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="75778bf0fdb52c0491744f5e831c37bb"></a><!-- doxytag: member="sc::MsgStateSend::nbuf_buffer" ref="75778bf0fdb52c0491744f5e831c37bb" args="" --> int * </td><td class="memItemRight" valign="bottom"><b>nbuf_buffer</b></td></tr> </table> <hr><a name="_details"></a><h2>Detailed Description</h2> The <a class="el" href="classsc_1_1MsgStateSend.html" title="The MsgStateSend is an abstract base class that sends objects to nodes in a MessageGrp...">MsgStateSend</a> is an abstract base class that sends objects to nodes in a <a class="el" href="classsc_1_1MessageGrp.html" title="The MessageGrp abstract class provides a mechanism for moving data and objects between...">MessageGrp</a>. <hr><h2>Member Function Documentation</h2> <a class="anchor" name="0df1f1f0287ff4aceef3098629f08200"></a><!-- doxytag: member="sc::MsgStateSend::put" ref="0df1f1f0287ff4aceef3098629f08200" args="(const char *, int)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int sc::MsgStateSend::put </td> <td>(</td> <td class="paramtype">const char * </td> <td class="paramname">, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td><code> [virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Write the given array data. <p> Size information is also saved. The data is allocated and read by the get(T*&) routines. <p>Reimplemented from <a class="el" href="classsc_1_1StateOut.html#dbf03916c62010d0251de90e60dca46c">sc::StateOut</a>.</p> </div> </div><p> <a class="anchor" name="a14a994ae76db509e9249175a1b81afb"></a><!-- doxytag: member="sc::MsgStateSend::put" ref="a14a994ae76db509e9249175a1b81afb" args="(const ClassDesc *)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int sc::MsgStateSend::put </td> <td>(</td> <td class="paramtype">const <a class="el" href="classsc_1_1ClassDesc.html">ClassDesc</a> * </td> <td class="paramname"> </td> <td> ) </td> <td><code> [virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> I only need to override <a class="el" href="classsc_1_1MsgStateSend.html#a14a994ae76db509e9249175a1b81afb" title="I only need to override put(const ClassDesc*) but C++ will hide all of the other...">put(const ClassDesc*)</a> but C++ will hide all of the other put's so I must override everything. <p> <p>Reimplemented from <a class="el" href="classsc_1_1StateOut.html#c8d021ee9372bcfe7fbefc81619dd8e0">sc::StateOut</a>.</p> </div> </div><p> <a class="anchor" name="4a50f752b7e6d43a8959a7ba43f22991"></a><!-- doxytag: member="sc::MsgStateSend::set_buffer_size" ref="4a50f752b7e6d43a8959a7ba43f22991" args="(int)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void sc::MsgStateSend::set_buffer_size </td> <td>(</td> <td class="paramtype">int </td> <td class="paramname"> </td> <td> ) </td> <td></td> </tr> </table> </div> <div class="memdoc"> <p> The buffer size of statein and stateout objects that communicate with each other must match. <p> </div> </div><p> <hr>The documentation for this class was generated from the following file:<ul> <li><a class="el" href="mstate_8h_source.html">mstate.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>