Sophie

Sophie

distrib > Mandriva > 2010.0 > i586 > media > contrib-release > by-pkgid > 60f1dc962abad0f3b492991a4fbef9be > files > 1573

vtk-doc-5.4.2-5mdv2010.0.noarch.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>VTK: vtkSocketCommunicator Class Reference</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.5.6 -->
<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><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li class="current"><a href="classes.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="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
      <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>
<div class="contents">
<h1>vtkSocketCommunicator Class Reference</h1><!-- doxytag: class="vtkSocketCommunicator" --><!-- doxytag: inherits="vtkCommunicator" --><code>#include &lt;<a class="el" href="a05133.html">vtkSocketCommunicator.h</a>&gt;</code>
<p>
<div class="dynheader">
Inheritance diagram for vtkSocketCommunicator:</div>
<div class="dynsection">
<p><center><img src="a14555.png" border="0" usemap="#a14556" alt="Inheritance graph"></center>
<map name="a14556">
<area shape="rect" href="a00293.html" title="Used to send/receive messages in a multiprocess environment." alt="" coords="27,155,155,181"><area shape="rect" href="a01084.html" title="abstract base class for most VTK objects" alt="" coords="51,80,131,107"><area shape="rect" href="a01085.html" title="abstract base class for most VTK objects" alt="" coords="36,5,145,32"></map>
<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div>
<div class="dynheader">
Collaboration diagram for vtkSocketCommunicator:</div>
<div class="dynsection">
<p><center><img src="a14557.png" border="0" usemap="#a14558" alt="Collaboration graph"></center>
<map name="a14558">
<area shape="rect" href="a00293.html" title="Used to send/receive messages in a multiprocess environment." alt="" coords="46,224,174,251"><area shape="rect" href="a01084.html" title="abstract base class for most VTK objects" alt="" coords="87,96,167,123"><area shape="rect" href="a01568.html" title="BSD socket encapsulation." alt="" coords="151,173,234,200"><area shape="rect" href="a01085.html" title="abstract base class for most VTK objects" alt="" coords="6,5,115,32"><area shape="rect" href="a01719.html" title="record modification and/or execution time" alt="" coords="139,5,248,32"><area shape="rect" href="a00269.html" title="Encapsulates a client socket." alt="" coords="144,275,262,301"></map>
<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div>

<p>
<a href="a14559.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2>
Process communication using Sockets. 
<p>
This is a concrete implementation of <a class="el" href="a00293.html" title="Used to send/receive messages in a multiprocess environment.">vtkCommunicator</a> which supports interprocess communication using BSD style sockets. It supports byte swapping for the communication of machines with different endianness.<p>
<dl class="warning" compact><dt><b>Warning:</b></dt><dd>Communication between 32 bit and 64 bit systems is not fully supported. If a type does not have the same length on both systems, this communicator can not be used to transfer data of that type.</dd></dl>
<dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="a00293.html" title="Used to send/receive messages in a multiprocess environment.">vtkCommunicator</a> <a class="el" href="a01571.html" title="Process communication using Sockets.">vtkSocketController</a></dd></dl>
<dl class="user" compact><dt><b>Events:</b></dt><dd><a class="el" href="a00291.html#59a8690330ebcb1af6b66b0f3121f8fe593e8277372a9449fa156716bbe22f91">vtkCommand::WrongTagEvent</a></dd></dl>
<dl class="user" compact><dt><b>Tests:</b></dt><dd><a class="el" href="c2_vtk_t_15.html#c2_vtk_t_vtkSocketCommunicator">vtkSocketCommunicator (Tests)</a> </dd></dl>

<p>Definition at line <a class="el" href="a05133.html#l00061">61</a> of file <a class="el" href="a05133.html">vtkSocketCommunicator.h</a>.</p>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Public Types</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="a00293.html">vtkCommunicator</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01570.html#c6ecd2cd59e428a639ed6f95cff9cb45">Superclass</a></td></tr>

<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual const char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01570.html#f090f013d3e26a08b38934bf65881832">GetClassName</a> ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01570.html#1a9f7bd5443e125fcf1ea713fb96ea28">IsA</a> (const char *type)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01570.html#1a3b40995d0a5dc192a996be45203586">PrintSelf</a> (ostream &amp;os, <a class="el" href="a00869.html">vtkIndent</a> indent)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01570.html#5a3cc029d417e4a72e490ac00f2fdceb">CloseConnection</a> ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01570.html#013c01c1538415d6b7c9e38e221abc41">ConnectTo</a> (char *hostName, int port)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01570.html#4e2084d1a3fc98208653ff8242bbdbdb">GetIsConnected</a> ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01570.html#01e57b2f3cf3b53f2295523fb71d2f71">SetNumberOfProcesses</a> (int num)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01570.html#37412be70f345d28cbfa12907b82d24a">Barrier</a> ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01570.html#30aacba46853667f8ca4f64427f3cbc8">Handshake</a> ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01570.html#418d2ef5e1eaad097738c86cd3c7c3e2">ServerSideHandshake</a> ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01570.html#17a01eb504355dd5a279636c9d45caeb">ClientSideHandshake</a> ()</td></tr>

<tr><td colspan="2"><div class="groupHeader"></div></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01570.html#735870db32c406d07c4a6087d61a0805">WaitForConnection</a> (int port)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01570.html#6b919447f0687c4f0089670f389731d6">WaitForConnection</a> (<a class="el" href="a01530.html">vtkServerSocket</a> *socket, unsigned long msec=0)</td></tr>

<tr><td colspan="2"><div class="groupHeader"></div></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01570.html#c4c6e829e467afe52bbe6223bd6f1510">GetSwapBytesInReceivedData</a> ()</td></tr>

<tr><td colspan="2"><div class="groupHeader"></div></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01570.html#75a09c864747a59e1efce7db25ae66ba">SendVoidArray</a> (const void *data, <a class="el" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> length, int type, int remoteHandle, int tag)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01570.html#8652acae99d1759b1ef8d7b58a20e6b5">ReceiveVoidArray</a> (void *data, <a class="el" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> length, int type, int remoteHandle, int tag)</td></tr>

<tr><td colspan="2"><div class="groupHeader"></div></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01570.html#21fc8b7e8b640052bf3b57b7b74ae9e4">BroadcastVoidArray</a> (void *data, <a class="el" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> length, int type, int srcProcessId)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01570.html#8ea6f00f43bb6cdbd9be098e29fc717b">GatherVoidArray</a> (const void *sendBuffer, void *recvBuffer, <a class="el" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> length, int type, int destProcessId)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01570.html#80c6359bbada21d754d28f5ac8a10ed5">GatherVVoidArray</a> (const void *sendBuffer, void *recvBuffer, <a class="el" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> sendLength, <a class="el" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> *recvLengths, <a class="el" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> *offsets, int type, int destProcessId)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01570.html#d79711a43d6b9c552001e2acea04a00d">ScatterVoidArray</a> (const void *sendBuffer, void *recvBuffer, <a class="el" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> length, int type, int srcProcessId)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01570.html#a48f5079a100f6edfcec6a1aa1a62f1f">ScatterVVoidArray</a> (const void *sendBuffer, void *recvBuffer, <a class="el" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> *sendLengths, <a class="el" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> *offsets, <a class="el" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> recvLength, int type, int srcProcessId)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01570.html#160eaf745c749324d2e021e9a5bd208b">AllGatherVoidArray</a> (const void *sendBuffer, void *recvBuffer, <a class="el" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> length, int type)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01570.html#d96114502a512cc0836e734ff274cef8">AllGatherVVoidArray</a> (const void *sendBuffer, void *recvBuffer, <a class="el" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> sendLength, <a class="el" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> *recvLengths, <a class="el" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> *offsets, int type)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01570.html#05b2b1e90349bd1fe332bce2353dcb5c">ReduceVoidArray</a> (const void *sendBuffer, void *recvBuffer, <a class="el" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> length, int type, int operation, int destProcessId)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01570.html#110867869717a5767c0838f1760b1a86">ReduceVoidArray</a> (const void *sendBuffer, void *recvBuffer, <a class="el" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> length, int type, <a class="el" href="a00294.html">Operation</a> *operation, int destProcessId)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01570.html#bfaa1a674a45a0a3c7054dfd8b8aff69">AllReduceVoidArray</a> (const void *sendBuffer, void *recvBuffer, <a class="el" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> length, int type, int operation)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01570.html#604c3e1a40688acdd7bede534c5d480e">AllReduceVoidArray</a> (const void *sendBuffer, void *recvBuffer, <a class="el" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> length, int type, <a class="el" href="a00294.html">Operation</a> *operation)</td></tr>

<tr><td colspan="2"><div class="groupHeader"></div></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01570.html#f250ccaa260484baf0846787ecff2083">SetPerformHandshake</a> (int)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01570.html#3d6f1c83ca7dbfebd773f9fd980f2312">PerformHandshakeOn</a> ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01570.html#ff475713522d7d2895e7b1515f1e21df">PerformHandshakeOff</a> ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01570.html#9e44ce4895b02b2ce7a3a46f3d4c83ad">GetPerformHandshake</a> ()</td></tr>

<tr><td colspan="2"><div class="groupHeader"></div></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01570.html#cd58c83f1903b698911858b28219f802">SetLogStream</a> (ostream *stream)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual ostream *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01570.html#4b716c6d6929d0fd86d2e87d8d9cd597">GetLogStream</a> ()</td></tr>

<tr><td colspan="2"><div class="groupHeader"></div></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01570.html#b9159f2e7b1bb56d817e0f29b0445995">LogToFile</a> (const char *name)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01570.html#3b94ed5ee7f480bc43a600839486bfe2">LogToFile</a> (const char *name, int append)</td></tr>

<tr><td colspan="2"><div class="groupHeader"></div></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01570.html#07195dec6d02e3f5c363286109d25615">SetReportErrors</a> (int)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01570.html#3e05a7b8c2cfcb75968e42d574125b29">GetReportErrors</a> ()</td></tr>

<tr><td colspan="2"><div class="groupHeader"></div></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="a00269.html">vtkClientSocket</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01570.html#75e2914a1aab84a1cf31ad82de030fbe">GetSocket</a> ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01570.html#cd3d12530a82890e6a08a4318abc3f48">SetSocket</a> (<a class="el" href="a00269.html">vtkClientSocket</a> *)</td></tr>

<tr><td colspan="2"><div class="groupHeader"></div></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01570.html#64d7b09037f7f5e79c9a16dce82ea571">GetIsServer</a> ()</td></tr>

<tr><td colspan="2"><br><h2>Static Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">static <a class="el" href="a01570.html">vtkSocketCommunicator</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01570.html#daab714baa38eab93fe91e3403da1ada">New</a> ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">static int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01570.html#36968123731e6d7ab3f0b0ccb07dd3dc">IsTypeOf</a> (const char *type)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">static <a class="el" href="a01570.html">vtkSocketCommunicator</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01570.html#6807b186cf0704ddfb241127c47c339a">SafeDownCast</a> (<a class="el" href="a01084.html">vtkObject</a> *o)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">static int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01570.html#71d01fbfd633c5e9320532aab4835d2b">GetVersion</a> ()</td></tr>

<tr><td colspan="2"><br><h2>Protected Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01570.html#6c9b60f0954e0e9c041817d0c82546d2">vtkSocketCommunicator</a> ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01570.html#1f975c89d76be37a1d3053da0d0a810a">~vtkSocketCommunicator</a> ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01570.html#5eaf09f2c58ba223e7885938a6fbd014">SendTagged</a> (const void *data, int wordSize, int numWords, int tag, const char *logName)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01570.html#caa4b13ee52996ab4e11c5918ad926f8">ReceiveTagged</a> (void *data, int wordSize, int numWords, int tag, const char *logName)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01570.html#598b40db74e5272000c8347a31a51d25">ReceivePartialTagged</a> (void *data, int wordSize, int numWords, int tag, const char *logName)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01570.html#6235f3d487330b2a4342b282b92aa425">LogTagged</a> (const char *name, const void *data, int wordSize, int numWords, int tag, const char *logName)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01570.html#ad9dbac3e834cd4813c1f163da21aade">CheckForErrorInternal</a> (int id)</td></tr>

<tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="a00269.html">vtkClientSocket</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01570.html#d1ffe3f1374581e117dfdc52a56350ab">Socket</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01570.html#e56f1fbf7c4fa6c75703ca5df0d08ba9">SwapBytesInReceivedData</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01570.html#fbd67f40887ec60dedeb14a9c6fec630">RemoteHas64BitIds</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01570.html#6eb754690b0916be93ade00a5777d18b">PerformHandshake</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01570.html#5c2a126fe088c45666e585fff3ae38d1">IsServer</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01570.html#3e4f9e4660ddce959bcfc660b45aa1af">ReportErrors</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">ofstream *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01570.html#fa1edefda4948a5a149eefd9b3667acb">LogFile</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">ostream *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01570.html#a5dfd95cf4f8800fecba3b12cb047c52">LogStream</a></td></tr>

</table>
<hr><h2>Member Typedef Documentation</h2>
<a class="anchor" name="c6ecd2cd59e428a639ed6f95cff9cb45"></a><!-- doxytag: member="vtkSocketCommunicator::Superclass" ref="c6ecd2cd59e428a639ed6f95cff9cb45" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="a00293.html">vtkCommunicator</a> <a class="el" href="a00293.html">vtkSocketCommunicator::Superclass</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Reimplemented from <a class="el" href="a00293.html#780e4732c5ee9c52ef8db7081b0dc3cb">vtkCommunicator</a>.</p>

<p>Definition at line <a class="el" href="a05133.html#l00065">65</a> of file <a class="el" href="a05133.html">vtkSocketCommunicator.h</a>.</p>

</div>
</div><p>
<hr><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" name="6c9b60f0954e0e9c041817d0c82546d2"></a><!-- doxytag: member="vtkSocketCommunicator::vtkSocketCommunicator" ref="6c9b60f0954e0e9c041817d0c82546d2" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">vtkSocketCommunicator::vtkSocketCommunicator           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="1f975c89d76be37a1d3053da0d0a810a"></a><!-- doxytag: member="vtkSocketCommunicator::~vtkSocketCommunicator" ref="1f975c89d76be37a1d3053da0d0a810a" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">vtkSocketCommunicator::~vtkSocketCommunicator           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<hr><h2>Member Function Documentation</h2>
<a class="anchor" name="daab714baa38eab93fe91e3403da1ada"></a><!-- doxytag: member="vtkSocketCommunicator::New" ref="daab714baa38eab93fe91e3403da1ada" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static <a class="el" href="a01570.html">vtkSocketCommunicator</a>* vtkSocketCommunicator::New           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Create an object with Debug turned off, modified time initialized to zero, and reference counting on. 
<p>Reimplemented from <a class="el" href="a01084.html#4d5b227267c076d6f9e38483370b6612">vtkObject</a>.</p>

</div>
</div><p>
<a class="anchor" name="f090f013d3e26a08b38934bf65881832"></a><!-- doxytag: member="vtkSocketCommunicator::GetClassName" ref="f090f013d3e26a08b38934bf65881832" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual const char* vtkSocketCommunicator::GetClassName           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Reimplemented from <a class="el" href="a00293.html#92d08c1a24abe616e8c79eaf634aac5e">vtkCommunicator</a>.</p>

</div>
</div><p>
<a class="anchor" name="36968123731e6d7ab3f0b0ccb07dd3dc"></a><!-- doxytag: member="vtkSocketCommunicator::IsTypeOf" ref="36968123731e6d7ab3f0b0ccb07dd3dc" args="(const char *type)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static int vtkSocketCommunicator::IsTypeOf           </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>name</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Return 1 if this class type is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeRevisionMacro found in vtkSetGet.h. 
<p>Reimplemented from <a class="el" href="a00293.html#475ce8d71fd296f14b8e43935c880306">vtkCommunicator</a>.</p>

</div>
</div><p>
<a class="anchor" name="1a9f7bd5443e125fcf1ea713fb96ea28"></a><!-- doxytag: member="vtkSocketCommunicator::IsA" ref="1a9f7bd5443e125fcf1ea713fb96ea28" args="(const char *type)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int vtkSocketCommunicator::IsA           </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>name</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Return 1 if this class is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeRevisionMacro found in vtkSetGet.h. 
<p>Reimplemented from <a class="el" href="a00293.html#b90429fbae3c2b8825f2987fb94f99be">vtkCommunicator</a>.</p>

</div>
</div><p>
<a class="anchor" name="6807b186cf0704ddfb241127c47c339a"></a><!-- doxytag: member="vtkSocketCommunicator::SafeDownCast" ref="6807b186cf0704ddfb241127c47c339a" args="(vtkObject *o)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static <a class="el" href="a01570.html">vtkSocketCommunicator</a>* vtkSocketCommunicator::SafeDownCast           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a01084.html">vtkObject</a> *&nbsp;</td>
          <td class="paramname"> <em>o</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Reimplemented from <a class="el" href="a00293.html#cb0614eb073180f1877fb8c491055684">vtkCommunicator</a>.</p>

</div>
</div><p>
<a class="anchor" name="1a3b40995d0a5dc192a996be45203586"></a><!-- doxytag: member="vtkSocketCommunicator::PrintSelf" ref="1a3b40995d0a5dc192a996be45203586" args="(ostream &amp;os, vtkIndent indent)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void vtkSocketCommunicator::PrintSelf           </td>
          <td>(</td>
          <td class="paramtype">ostream &amp;&nbsp;</td>
          <td class="paramname"> <em>os</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a00869.html">vtkIndent</a>&nbsp;</td>
          <td class="paramname"> <em>indent</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Methods invoked by print to print information about the object including superclasses. Typically not called by the user (use <a class="el" href="a01085.html#edadf6378465fd81c2592ef64262e2a5">Print()</a> instead) but used in the hierarchical print process to combine the output of several classes. 
<p>Reimplemented from <a class="el" href="a00293.html#4de89ecef880090549ffeaf648228c29">vtkCommunicator</a>.</p>

</div>
</div><p>
<a class="anchor" name="735870db32c406d07c4a6087d61a0805"></a><!-- doxytag: member="vtkSocketCommunicator::WaitForConnection" ref="735870db32c406d07c4a6087d61a0805" args="(int port)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int vtkSocketCommunicator::WaitForConnection           </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>port</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Wait for connection on a given port. These methods return 1 on success, 0 on error. 
</div>
</div><p>
<a class="anchor" name="6b919447f0687c4f0089670f389731d6"></a><!-- doxytag: member="vtkSocketCommunicator::WaitForConnection" ref="6b919447f0687c4f0089670f389731d6" args="(vtkServerSocket *socket, unsigned long msec=0)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int vtkSocketCommunicator::WaitForConnection           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a01530.html">vtkServerSocket</a> *&nbsp;</td>
          <td class="paramname"> <em>socket</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned long&nbsp;</td>
          <td class="paramname"> <em>msec</em> = <code>0</code></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Wait for connection on a given port. These methods return 1 on success, 0 on error. 
</div>
</div><p>
<a class="anchor" name="5a3cc029d417e4a72e490ac00f2fdceb"></a><!-- doxytag: member="vtkSocketCommunicator::CloseConnection" ref="5a3cc029d417e4a72e490ac00f2fdceb" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void vtkSocketCommunicator::CloseConnection           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Close a connection. 
</div>
</div><p>
<a class="anchor" name="013c01c1538415d6b7c9e38e221abc41"></a><!-- doxytag: member="vtkSocketCommunicator::ConnectTo" ref="013c01c1538415d6b7c9e38e221abc41" args="(char *hostName, int port)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int vtkSocketCommunicator::ConnectTo           </td>
          <td>(</td>
          <td class="paramtype">char *&nbsp;</td>
          <td class="paramname"> <em>hostName</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>port</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Open a connection to host. 
</div>
</div><p>
<a class="anchor" name="c4c6e829e467afe52bbe6223bd6f1510"></a><!-- doxytag: member="vtkSocketCommunicator::GetSwapBytesInReceivedData" ref="c4c6e829e467afe52bbe6223bd6f1510" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int vtkSocketCommunicator::GetSwapBytesInReceivedData           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Returns 1 if bytes must be swapped in received ints, floats, etc 
</div>
</div><p>
<a class="anchor" name="4e2084d1a3fc98208653ff8242bbdbdb"></a><!-- doxytag: member="vtkSocketCommunicator::GetIsConnected" ref="4e2084d1a3fc98208653ff8242bbdbdb" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int vtkSocketCommunicator::GetIsConnected           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Is the communicator connected?. 
</div>
</div><p>
<a class="anchor" name="01e57b2f3cf3b53f2295523fb71d2f71"></a><!-- doxytag: member="vtkSocketCommunicator::SetNumberOfProcesses" ref="01e57b2f3cf3b53f2295523fb71d2f71" args="(int num)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void vtkSocketCommunicator::SetNumberOfProcesses           </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>num</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Set the number of processes you will be using. 
<p>Reimplemented from <a class="el" href="a00293.html#09c3840e89da2c9b538d8d7cbc84ab86">vtkCommunicator</a>.</p>

</div>
</div><p>
<a class="anchor" name="75a09c864747a59e1efce7db25ae66ba"></a><!-- doxytag: member="vtkSocketCommunicator::SendVoidArray" ref="75a09c864747a59e1efce7db25ae66ba" args="(const void *data, vtkIdType length, int type, int remoteHandle, int tag)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int vtkSocketCommunicator::SendVoidArray           </td>
          <td>(</td>
          <td class="paramtype">const void *&nbsp;</td>
          <td class="paramname"> <em>data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a>&nbsp;</td>
          <td class="paramname"> <em>length</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>type</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>remoteHandle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>tag</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Performs the actual communication. You will usually use the convenience Send functions defined in the superclass. 
<p>Implements <a class="el" href="a00293.html#32d70db86b6f94b8401e7aabd8da59a8">vtkCommunicator</a>.</p>

</div>
</div><p>
<a class="anchor" name="8652acae99d1759b1ef8d7b58a20e6b5"></a><!-- doxytag: member="vtkSocketCommunicator::ReceiveVoidArray" ref="8652acae99d1759b1ef8d7b58a20e6b5" args="(void *data, vtkIdType length, int type, int remoteHandle, int tag)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int vtkSocketCommunicator::ReceiveVoidArray           </td>
          <td>(</td>
          <td class="paramtype">void *&nbsp;</td>
          <td class="paramname"> <em>data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a>&nbsp;</td>
          <td class="paramname"> <em>length</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>type</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>remoteHandle</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>tag</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Performs the actual communication. You will usually use the convenience Send functions defined in the superclass. 
<p>Implements <a class="el" href="a00293.html#7279585811b12a45910dd2e446aa3f21">vtkCommunicator</a>.</p>

</div>
</div><p>
<a class="anchor" name="37412be70f345d28cbfa12907b82d24a"></a><!-- doxytag: member="vtkSocketCommunicator::Barrier" ref="37412be70f345d28cbfa12907b82d24a" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void vtkSocketCommunicator::Barrier           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
This class foolishly breaks the conventions of the superclass, so this overload fixes the method. 
<p>Reimplemented from <a class="el" href="a00293.html#4bafd59226eac5fc0c4a77be0ccecfe1">vtkCommunicator</a>.</p>

</div>
</div><p>
<a class="anchor" name="21fc8b7e8b640052bf3b57b7b74ae9e4"></a><!-- doxytag: member="vtkSocketCommunicator::BroadcastVoidArray" ref="21fc8b7e8b640052bf3b57b7b74ae9e4" args="(void *data, vtkIdType length, int type, int srcProcessId)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int vtkSocketCommunicator::BroadcastVoidArray           </td>
          <td>(</td>
          <td class="paramtype">void *&nbsp;</td>
          <td class="paramname"> <em>data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a>&nbsp;</td>
          <td class="paramname"> <em>length</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>type</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>srcProcessId</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
This class foolishly breaks the conventions of the superclass, so the default implementations of these methods do not work. These just give errors instead. 
<p>Reimplemented from <a class="el" href="a00293.html#d3b49ca614ba6417c6cc9a13fab5157b">vtkCommunicator</a>.</p>

</div>
</div><p>
<a class="anchor" name="8ea6f00f43bb6cdbd9be098e29fc717b"></a><!-- doxytag: member="vtkSocketCommunicator::GatherVoidArray" ref="8ea6f00f43bb6cdbd9be098e29fc717b" args="(const void *sendBuffer, void *recvBuffer, vtkIdType length, int type, int destProcessId)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int vtkSocketCommunicator::GatherVoidArray           </td>
          <td>(</td>
          <td class="paramtype">const void *&nbsp;</td>
          <td class="paramname"> <em>sendBuffer</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&nbsp;</td>
          <td class="paramname"> <em>recvBuffer</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a>&nbsp;</td>
          <td class="paramname"> <em>length</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>type</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>destProcessId</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
This class foolishly breaks the conventions of the superclass, so the default implementations of these methods do not work. These just give errors instead. 
<p>Reimplemented from <a class="el" href="a00293.html#b65d16765bc36eefd1414389f083c7ca">vtkCommunicator</a>.</p>

</div>
</div><p>
<a class="anchor" name="80c6359bbada21d754d28f5ac8a10ed5"></a><!-- doxytag: member="vtkSocketCommunicator::GatherVVoidArray" ref="80c6359bbada21d754d28f5ac8a10ed5" args="(const void *sendBuffer, void *recvBuffer, vtkIdType sendLength, vtkIdType *recvLengths, vtkIdType *offsets, int type, int destProcessId)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int vtkSocketCommunicator::GatherVVoidArray           </td>
          <td>(</td>
          <td class="paramtype">const void *&nbsp;</td>
          <td class="paramname"> <em>sendBuffer</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&nbsp;</td>
          <td class="paramname"> <em>recvBuffer</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a>&nbsp;</td>
          <td class="paramname"> <em>sendLength</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> *&nbsp;</td>
          <td class="paramname"> <em>recvLengths</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> *&nbsp;</td>
          <td class="paramname"> <em>offsets</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>type</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>destProcessId</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
This class foolishly breaks the conventions of the superclass, so the default implementations of these methods do not work. These just give errors instead. 
<p>Reimplemented from <a class="el" href="a00293.html#21e279d2eae613a2409239fb83c208e3">vtkCommunicator</a>.</p>

</div>
</div><p>
<a class="anchor" name="d79711a43d6b9c552001e2acea04a00d"></a><!-- doxytag: member="vtkSocketCommunicator::ScatterVoidArray" ref="d79711a43d6b9c552001e2acea04a00d" args="(const void *sendBuffer, void *recvBuffer, vtkIdType length, int type, int srcProcessId)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int vtkSocketCommunicator::ScatterVoidArray           </td>
          <td>(</td>
          <td class="paramtype">const void *&nbsp;</td>
          <td class="paramname"> <em>sendBuffer</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&nbsp;</td>
          <td class="paramname"> <em>recvBuffer</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a>&nbsp;</td>
          <td class="paramname"> <em>length</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>type</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>srcProcessId</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
This class foolishly breaks the conventions of the superclass, so the default implementations of these methods do not work. These just give errors instead. 
<p>Reimplemented from <a class="el" href="a00293.html#9ffe63bb05a5a8de9ae5d1e2d839ba9d">vtkCommunicator</a>.</p>

</div>
</div><p>
<a class="anchor" name="a48f5079a100f6edfcec6a1aa1a62f1f"></a><!-- doxytag: member="vtkSocketCommunicator::ScatterVVoidArray" ref="a48f5079a100f6edfcec6a1aa1a62f1f" args="(const void *sendBuffer, void *recvBuffer, vtkIdType *sendLengths, vtkIdType *offsets, vtkIdType recvLength, int type, int srcProcessId)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int vtkSocketCommunicator::ScatterVVoidArray           </td>
          <td>(</td>
          <td class="paramtype">const void *&nbsp;</td>
          <td class="paramname"> <em>sendBuffer</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&nbsp;</td>
          <td class="paramname"> <em>recvBuffer</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> *&nbsp;</td>
          <td class="paramname"> <em>sendLengths</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> *&nbsp;</td>
          <td class="paramname"> <em>offsets</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a>&nbsp;</td>
          <td class="paramname"> <em>recvLength</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>type</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>srcProcessId</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
This class foolishly breaks the conventions of the superclass, so the default implementations of these methods do not work. These just give errors instead. 
<p>Reimplemented from <a class="el" href="a00293.html#9c28c87832400a4c34da0d46d7c76490">vtkCommunicator</a>.</p>

</div>
</div><p>
<a class="anchor" name="160eaf745c749324d2e021e9a5bd208b"></a><!-- doxytag: member="vtkSocketCommunicator::AllGatherVoidArray" ref="160eaf745c749324d2e021e9a5bd208b" args="(const void *sendBuffer, void *recvBuffer, vtkIdType length, int type)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int vtkSocketCommunicator::AllGatherVoidArray           </td>
          <td>(</td>
          <td class="paramtype">const void *&nbsp;</td>
          <td class="paramname"> <em>sendBuffer</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&nbsp;</td>
          <td class="paramname"> <em>recvBuffer</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a>&nbsp;</td>
          <td class="paramname"> <em>length</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>type</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
This class foolishly breaks the conventions of the superclass, so the default implementations of these methods do not work. These just give errors instead. 
<p>Reimplemented from <a class="el" href="a00293.html#c16c39787f8d77547bb288aebe626ad8">vtkCommunicator</a>.</p>

</div>
</div><p>
<a class="anchor" name="d96114502a512cc0836e734ff274cef8"></a><!-- doxytag: member="vtkSocketCommunicator::AllGatherVVoidArray" ref="d96114502a512cc0836e734ff274cef8" args="(const void *sendBuffer, void *recvBuffer, vtkIdType sendLength, vtkIdType *recvLengths, vtkIdType *offsets, int type)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int vtkSocketCommunicator::AllGatherVVoidArray           </td>
          <td>(</td>
          <td class="paramtype">const void *&nbsp;</td>
          <td class="paramname"> <em>sendBuffer</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&nbsp;</td>
          <td class="paramname"> <em>recvBuffer</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a>&nbsp;</td>
          <td class="paramname"> <em>sendLength</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> *&nbsp;</td>
          <td class="paramname"> <em>recvLengths</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> *&nbsp;</td>
          <td class="paramname"> <em>offsets</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>type</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
This class foolishly breaks the conventions of the superclass, so the default implementations of these methods do not work. These just give errors instead. 
<p>Reimplemented from <a class="el" href="a00293.html#c01d7328eb843d69b0694a1279ed1586">vtkCommunicator</a>.</p>

</div>
</div><p>
<a class="anchor" name="05b2b1e90349bd1fe332bce2353dcb5c"></a><!-- doxytag: member="vtkSocketCommunicator::ReduceVoidArray" ref="05b2b1e90349bd1fe332bce2353dcb5c" args="(const void *sendBuffer, void *recvBuffer, vtkIdType length, int type, int operation, int destProcessId)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int vtkSocketCommunicator::ReduceVoidArray           </td>
          <td>(</td>
          <td class="paramtype">const void *&nbsp;</td>
          <td class="paramname"> <em>sendBuffer</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&nbsp;</td>
          <td class="paramname"> <em>recvBuffer</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a>&nbsp;</td>
          <td class="paramname"> <em>length</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>type</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>operation</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>destProcessId</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
This class foolishly breaks the conventions of the superclass, so the default implementations of these methods do not work. These just give errors instead. 
<p>Reimplemented from <a class="el" href="a00293.html#8efe4de8e193773f89e1616ebbc85585">vtkCommunicator</a>.</p>

</div>
</div><p>
<a class="anchor" name="110867869717a5767c0838f1760b1a86"></a><!-- doxytag: member="vtkSocketCommunicator::ReduceVoidArray" ref="110867869717a5767c0838f1760b1a86" args="(const void *sendBuffer, void *recvBuffer, vtkIdType length, int type, Operation *operation, int destProcessId)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int vtkSocketCommunicator::ReduceVoidArray           </td>
          <td>(</td>
          <td class="paramtype">const void *&nbsp;</td>
          <td class="paramname"> <em>sendBuffer</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&nbsp;</td>
          <td class="paramname"> <em>recvBuffer</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a>&nbsp;</td>
          <td class="paramname"> <em>length</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>type</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a00294.html">Operation</a> *&nbsp;</td>
          <td class="paramname"> <em>operation</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>destProcessId</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
This class foolishly breaks the conventions of the superclass, so the default implementations of these methods do not work. These just give errors instead. 
<p>Reimplemented from <a class="el" href="a00293.html#a361b8fc13b41ad1f41bc6d8323a268c">vtkCommunicator</a>.</p>

</div>
</div><p>
<a class="anchor" name="bfaa1a674a45a0a3c7054dfd8b8aff69"></a><!-- doxytag: member="vtkSocketCommunicator::AllReduceVoidArray" ref="bfaa1a674a45a0a3c7054dfd8b8aff69" args="(const void *sendBuffer, void *recvBuffer, vtkIdType length, int type, int operation)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int vtkSocketCommunicator::AllReduceVoidArray           </td>
          <td>(</td>
          <td class="paramtype">const void *&nbsp;</td>
          <td class="paramname"> <em>sendBuffer</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&nbsp;</td>
          <td class="paramname"> <em>recvBuffer</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a>&nbsp;</td>
          <td class="paramname"> <em>length</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>type</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>operation</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
This class foolishly breaks the conventions of the superclass, so the default implementations of these methods do not work. These just give errors instead. 
<p>Reimplemented from <a class="el" href="a00293.html#3f8229beb76c7126b15d076c0db3ea40">vtkCommunicator</a>.</p>

</div>
</div><p>
<a class="anchor" name="604c3e1a40688acdd7bede534c5d480e"></a><!-- doxytag: member="vtkSocketCommunicator::AllReduceVoidArray" ref="604c3e1a40688acdd7bede534c5d480e" args="(const void *sendBuffer, void *recvBuffer, vtkIdType length, int type, Operation *operation)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int vtkSocketCommunicator::AllReduceVoidArray           </td>
          <td>(</td>
          <td class="paramtype">const void *&nbsp;</td>
          <td class="paramname"> <em>sendBuffer</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&nbsp;</td>
          <td class="paramname"> <em>recvBuffer</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a>&nbsp;</td>
          <td class="paramname"> <em>length</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>type</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a00294.html">Operation</a> *&nbsp;</td>
          <td class="paramname"> <em>operation</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
This class foolishly breaks the conventions of the superclass, so the default implementations of these methods do not work. These just give errors instead. 
<p>Reimplemented from <a class="el" href="a00293.html#3a9c92993e733728c43c3d1f814e374e">vtkCommunicator</a>.</p>

</div>
</div><p>
<a class="anchor" name="f250ccaa260484baf0846787ecff2083"></a><!-- doxytag: member="vtkSocketCommunicator::SetPerformHandshake" ref="f250ccaa260484baf0846787ecff2083" args="(int)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void vtkSocketCommunicator::SetPerformHandshake           </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Set or get the PerformHandshake ivar. If it is on, the communicator will try to perform a handshake when connected. It is on by default. 
</div>
</div><p>
<a class="anchor" name="3d6f1c83ca7dbfebd773f9fd980f2312"></a><!-- doxytag: member="vtkSocketCommunicator::PerformHandshakeOn" ref="3d6f1c83ca7dbfebd773f9fd980f2312" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void vtkSocketCommunicator::PerformHandshakeOn           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Set or get the PerformHandshake ivar. If it is on, the communicator will try to perform a handshake when connected. It is on by default. 
</div>
</div><p>
<a class="anchor" name="ff475713522d7d2895e7b1515f1e21df"></a><!-- doxytag: member="vtkSocketCommunicator::PerformHandshakeOff" ref="ff475713522d7d2895e7b1515f1e21df" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void vtkSocketCommunicator::PerformHandshakeOff           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Set or get the PerformHandshake ivar. If it is on, the communicator will try to perform a handshake when connected. It is on by default. 
</div>
</div><p>
<a class="anchor" name="9e44ce4895b02b2ce7a3a46f3d4c83ad"></a><!-- doxytag: member="vtkSocketCommunicator::GetPerformHandshake" ref="9e44ce4895b02b2ce7a3a46f3d4c83ad" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int vtkSocketCommunicator::GetPerformHandshake           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Set or get the PerformHandshake ivar. If it is on, the communicator will try to perform a handshake when connected. It is on by default. 
</div>
</div><p>
<a class="anchor" name="cd58c83f1903b698911858b28219f802"></a><!-- doxytag: member="vtkSocketCommunicator::SetLogStream" ref="cd58c83f1903b698911858b28219f802" args="(ostream *stream)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void vtkSocketCommunicator::SetLogStream           </td>
          <td>(</td>
          <td class="paramtype">ostream *&nbsp;</td>
          <td class="paramname"> <em>stream</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get/Set the output stream to which communications should be logged. This is intended as a debugging feature. 
</div>
</div><p>
<a class="anchor" name="4b716c6d6929d0fd86d2e87d8d9cd597"></a><!-- doxytag: member="vtkSocketCommunicator::GetLogStream" ref="4b716c6d6929d0fd86d2e87d8d9cd597" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual ostream* vtkSocketCommunicator::GetLogStream           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get/Set the output stream to which communications should be logged. This is intended as a debugging feature. 
</div>
</div><p>
<a class="anchor" name="b9159f2e7b1bb56d817e0f29b0445995"></a><!-- doxytag: member="vtkSocketCommunicator::LogToFile" ref="b9159f2e7b1bb56d817e0f29b0445995" args="(const char *name)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int vtkSocketCommunicator::LogToFile           </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>name</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Log messages to the given file. The file is truncated unless the second argument is non-zero (default is to truncate). If the file name is empty or NULL, logging is disabled. Returns 0 if the file failed to open, and 1 otherwise. 
</div>
</div><p>
<a class="anchor" name="3b94ed5ee7f480bc43a600839486bfe2"></a><!-- doxytag: member="vtkSocketCommunicator::LogToFile" ref="3b94ed5ee7f480bc43a600839486bfe2" args="(const char *name, int append)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int vtkSocketCommunicator::LogToFile           </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>append</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Log messages to the given file. The file is truncated unless the second argument is non-zero (default is to truncate). If the file name is empty or NULL, logging is disabled. Returns 0 if the file failed to open, and 1 otherwise. 
</div>
</div><p>
<a class="anchor" name="07195dec6d02e3f5c363286109d25615"></a><!-- doxytag: member="vtkSocketCommunicator::SetReportErrors" ref="07195dec6d02e3f5c363286109d25615" args="(int)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void vtkSocketCommunicator::SetReportErrors           </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
If ReportErrors if false, all vtkErrorMacros are suppressed. 
</div>
</div><p>
<a class="anchor" name="3e05a7b8c2cfcb75968e42d574125b29"></a><!-- doxytag: member="vtkSocketCommunicator::GetReportErrors" ref="3e05a7b8c2cfcb75968e42d574125b29" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int vtkSocketCommunicator::GetReportErrors           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
If ReportErrors if false, all vtkErrorMacros are suppressed. 
</div>
</div><p>
<a class="anchor" name="75e2914a1aab84a1cf31ad82de030fbe"></a><!-- doxytag: member="vtkSocketCommunicator::GetSocket" ref="75e2914a1aab84a1cf31ad82de030fbe" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="a00269.html">vtkClientSocket</a>* vtkSocketCommunicator::GetSocket           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get/Set the actual socket used for communication. 
</div>
</div><p>
<a class="anchor" name="cd3d12530a82890e6a08a4318abc3f48"></a><!-- doxytag: member="vtkSocketCommunicator::SetSocket" ref="cd3d12530a82890e6a08a4318abc3f48" args="(vtkClientSocket *)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void vtkSocketCommunicator::SetSocket           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00269.html">vtkClientSocket</a> *&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get/Set the actual socket used for communication. 
</div>
</div><p>
<a class="anchor" name="30aacba46853667f8ca4f64427f3cbc8"></a><!-- doxytag: member="vtkSocketCommunicator::Handshake" ref="30aacba46853667f8ca4f64427f3cbc8" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int vtkSocketCommunicator::Handshake           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Performs handshake. This uses <a class="el" href="a00269.html#fb5c234ba3c53d28b924b297c44c4ad9">vtkClientSocket::ConnectingSide</a> to decide whether to perform ServerSideHandshake or ClientSideHandshake. 
</div>
</div><p>
<a class="anchor" name="418d2ef5e1eaad097738c86cd3c7c3e2"></a><!-- doxytag: member="vtkSocketCommunicator::ServerSideHandshake" ref="418d2ef5e1eaad097738c86cd3c7c3e2" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int vtkSocketCommunicator::ServerSideHandshake           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Performs ServerSide handshake. One should preferably use <a class="el" href="a01570.html#30aacba46853667f8ca4f64427f3cbc8">Handshake()</a> which calls ServerSideHandshake or ClientSideHandshake as required. 
</div>
</div><p>
<a class="anchor" name="17a01eb504355dd5a279636c9d45caeb"></a><!-- doxytag: member="vtkSocketCommunicator::ClientSideHandshake" ref="17a01eb504355dd5a279636c9d45caeb" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int vtkSocketCommunicator::ClientSideHandshake           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Performs ClientSide handshake. One should preferably use <a class="el" href="a01570.html#30aacba46853667f8ca4f64427f3cbc8">Handshake()</a> which calls ServerSideHandshake or ClientSideHandshake as required. 
</div>
</div><p>
<a class="anchor" name="64d7b09037f7f5e79c9a16dce82ea571"></a><!-- doxytag: member="vtkSocketCommunicator::GetIsServer" ref="64d7b09037f7f5e79c9a16dce82ea571" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int vtkSocketCommunicator::GetIsServer           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Returns true if this side of the socket is the server. The result is invalid if the socket is not connected. 
</div>
</div><p>
<a class="anchor" name="71d01fbfd633c5e9320532aab4835d2b"></a><!-- doxytag: member="vtkSocketCommunicator::GetVersion" ref="71d01fbfd633c5e9320532aab4835d2b" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static int vtkSocketCommunicator::GetVersion           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Uniquely identifies the version of this class. If the versions match, then the socket communicators should be compatible. 
</div>
</div><p>
<a class="anchor" name="5eaf09f2c58ba223e7885938a6fbd014"></a><!-- doxytag: member="vtkSocketCommunicator::SendTagged" ref="5eaf09f2c58ba223e7885938a6fbd014" args="(const void *data, int wordSize, int numWords, int tag, const char *logName)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int vtkSocketCommunicator::SendTagged           </td>
          <td>(</td>
          <td class="paramtype">const void *&nbsp;</td>
          <td class="paramname"> <em>data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>wordSize</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>numWords</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>tag</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>logName</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="caa4b13ee52996ab4e11c5918ad926f8"></a><!-- doxytag: member="vtkSocketCommunicator::ReceiveTagged" ref="caa4b13ee52996ab4e11c5918ad926f8" args="(void *data, int wordSize, int numWords, int tag, const char *logName)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int vtkSocketCommunicator::ReceiveTagged           </td>
          <td>(</td>
          <td class="paramtype">void *&nbsp;</td>
          <td class="paramname"> <em>data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>wordSize</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>numWords</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>tag</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>logName</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="598b40db74e5272000c8347a31a51d25"></a><!-- doxytag: member="vtkSocketCommunicator::ReceivePartialTagged" ref="598b40db74e5272000c8347a31a51d25" args="(void *data, int wordSize, int numWords, int tag, const char *logName)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int vtkSocketCommunicator::ReceivePartialTagged           </td>
          <td>(</td>
          <td class="paramtype">void *&nbsp;</td>
          <td class="paramname"> <em>data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>wordSize</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>numWords</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>tag</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>logName</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="6235f3d487330b2a4342b282b92aa425"></a><!-- doxytag: member="vtkSocketCommunicator::LogTagged" ref="6235f3d487330b2a4342b282b92aa425" args="(const char *name, const void *data, int wordSize, int numWords, int tag, const char *logName)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void vtkSocketCommunicator::LogTagged           </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const void *&nbsp;</td>
          <td class="paramname"> <em>data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>wordSize</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>numWords</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>tag</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>logName</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="ad9dbac3e834cd4813c1f163da21aade"></a><!-- doxytag: member="vtkSocketCommunicator::CheckForErrorInternal" ref="ad9dbac3e834cd4813c1f163da21aade" args="(int id)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int vtkSocketCommunicator::CheckForErrorInternal           </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>id</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<hr><h2>Member Data Documentation</h2>
<a class="anchor" name="d1ffe3f1374581e117dfdc52a56350ab"></a><!-- doxytag: member="vtkSocketCommunicator::Socket" ref="d1ffe3f1374581e117dfdc52a56350ab" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00269.html">vtkClientSocket</a>* <a class="el" href="a01570.html#d1ffe3f1374581e117dfdc52a56350ab">vtkSocketCommunicator::Socket</a><code> [protected]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Definition at line <a class="el" href="a05133.html#l00206">206</a> of file <a class="el" href="a05133.html">vtkSocketCommunicator.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="e56f1fbf7c4fa6c75703ca5df0d08ba9"></a><!-- doxytag: member="vtkSocketCommunicator::SwapBytesInReceivedData" ref="e56f1fbf7c4fa6c75703ca5df0d08ba9" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int <a class="el" href="a01570.html#e56f1fbf7c4fa6c75703ca5df0d08ba9">vtkSocketCommunicator::SwapBytesInReceivedData</a><code> [protected]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Definition at line <a class="el" href="a05133.html#l00207">207</a> of file <a class="el" href="a05133.html">vtkSocketCommunicator.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="fbd67f40887ec60dedeb14a9c6fec630"></a><!-- doxytag: member="vtkSocketCommunicator::RemoteHas64BitIds" ref="fbd67f40887ec60dedeb14a9c6fec630" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int <a class="el" href="a01570.html#fbd67f40887ec60dedeb14a9c6fec630">vtkSocketCommunicator::RemoteHas64BitIds</a><code> [protected]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Definition at line <a class="el" href="a05133.html#l00208">208</a> of file <a class="el" href="a05133.html">vtkSocketCommunicator.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="6eb754690b0916be93ade00a5777d18b"></a><!-- doxytag: member="vtkSocketCommunicator::PerformHandshake" ref="6eb754690b0916be93ade00a5777d18b" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int <a class="el" href="a01570.html#6eb754690b0916be93ade00a5777d18b">vtkSocketCommunicator::PerformHandshake</a><code> [protected]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Definition at line <a class="el" href="a05133.html#l00209">209</a> of file <a class="el" href="a05133.html">vtkSocketCommunicator.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="5c2a126fe088c45666e585fff3ae38d1"></a><!-- doxytag: member="vtkSocketCommunicator::IsServer" ref="5c2a126fe088c45666e585fff3ae38d1" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int <a class="el" href="a01570.html#5c2a126fe088c45666e585fff3ae38d1">vtkSocketCommunicator::IsServer</a><code> [protected]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Definition at line <a class="el" href="a05133.html#l00210">210</a> of file <a class="el" href="a05133.html">vtkSocketCommunicator.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="3e4f9e4660ddce959bcfc660b45aa1af"></a><!-- doxytag: member="vtkSocketCommunicator::ReportErrors" ref="3e4f9e4660ddce959bcfc660b45aa1af" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int <a class="el" href="a01570.html#3e4f9e4660ddce959bcfc660b45aa1af">vtkSocketCommunicator::ReportErrors</a><code> [protected]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Definition at line <a class="el" href="a05133.html#l00212">212</a> of file <a class="el" href="a05133.html">vtkSocketCommunicator.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="fa1edefda4948a5a149eefd9b3667acb"></a><!-- doxytag: member="vtkSocketCommunicator::LogFile" ref="fa1edefda4948a5a149eefd9b3667acb" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">ofstream* <a class="el" href="a01570.html#fa1edefda4948a5a149eefd9b3667acb">vtkSocketCommunicator::LogFile</a><code> [protected]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Definition at line <a class="el" href="a05133.html#l00214">214</a> of file <a class="el" href="a05133.html">vtkSocketCommunicator.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="a5dfd95cf4f8800fecba3b12cb047c52"></a><!-- doxytag: member="vtkSocketCommunicator::LogStream" ref="a5dfd95cf4f8800fecba3b12cb047c52" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">ostream* <a class="el" href="a01570.html#a5dfd95cf4f8800fecba3b12cb047c52">vtkSocketCommunicator::LogStream</a><code> [protected]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Definition at line <a class="el" href="a05133.html#l00215">215</a> of file <a class="el" href="a05133.html">vtkSocketCommunicator.h</a>.</p>

</div>
</div><p>
<hr>The documentation for this class was generated from the following file:<ul>
<li>dox/Parallel/<a class="el" href="a05133.html">vtkSocketCommunicator.h</a></ul>
</div>
<hr size="1"><address style="text-align: right;"><small>Generated on Wed Jun 3 19:35:00 2009 for VTK by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
</body>
</html>