File: vtkparallel_vtksocketcommunicator.html

package info (click to toggle)
freemat 4.2%2Bdfsg1-4
  • links: PTS, VCS
  • area: main
  • in suites: stretch
  • size: 141,800 kB
  • ctags: 14,082
  • sloc: ansic: 126,788; cpp: 62,046; python: 2,080; perl: 1,255; sh: 1,146; yacc: 1,019; lex: 239; makefile: 100
file content (138 lines) | stat: -rw-r--r-- 7,754 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<title>FreeMat: vtkSocketCommunicator</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <div id="projectname">FreeMat
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.1.1 -->
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li class="current"><a href="pages.html"><span>Related&#160;Pages</span></a></li>
    </ul>
  </div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('vtkparallel_vtksocketcommunicator.html','');});
</script>
<div id="doc-content">
<div class="header">
  <div class="headertitle">
<div class="title">vtkSocketCommunicator </div>  </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><p>Section: <a class="el" href="sec_vtkparallel.html">Visualization Toolkit Parallel Classes</a> </p>
<h1><a class="anchor" id="Usage"></a>
Usage</h1>
<p>This is a concrete implementation of vtkCommunicator which supports interprocess communication using BSD style sockets. It supports byte swapping for the communication of machines with different endianness.</p>
<p>To create an instance of class vtkSocketCommunicator, simply invoke its constructor as follows </p>
<pre class="fragment">  obj = vtkSocketCommunicator
</pre> <h1><a class="anchor" id="Methods"></a>
Methods</h1>
<p>The class vtkSocketCommunicator has several methods that can be used. They are listed below. Note that the documentation is translated automatically from the VTK sources, and may not be completely intelligible. When in doubt, consult the VTK website. In the methods listed below, <code>obj</code> is an instance of the vtkSocketCommunicator class. </p>
<ul>
<li>
<code>string = obj.GetClassName ()</code>  </li>
<li>
<code>int = obj.IsA (string name)</code>  </li>
<li>
<code>vtkSocketCommunicator = obj.NewInstance ()</code>  </li>
<li>
<code>vtkSocketCommunicator = obj.SafeDownCast (vtkObject o)</code>  </li>
<li>
<code>int = obj.WaitForConnection (int port)</code> - Wait for connection on a given port. These methods return 1 on success, 0 on error.  </li>
<li>
<code>int = obj.WaitForConnection (vtkServerSocket socket, long msec)</code> - Wait for connection on a given port. These methods return 1 on success, 0 on error.  </li>
<li>
<code>obj.CloseConnection ()</code> - Close a connection.  </li>
<li>
<code>int = obj.ConnectTo (string hostName, int port)</code> - Open a connection to host.  </li>
<li>
<code>int = obj.GetSwapBytesInReceivedData ()</code> - Returns 1 if bytes must be swapped in received ints, floats, etc  </li>
<li>
<code>int = obj.GetIsConnected ()</code> - Is the communicator connected?.  </li>
<li>
<code>obj.SetNumberOfProcesses (int num)</code> - Set the number of processes you will be using.  </li>
<li>
<code>obj.Barrier ()</code> - This class foolishly breaks the conventions of the superclass, so this overload fixes the method.  </li>
<li>
<code>obj.SetPerformHandshake (int )</code> - 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.  </li>
<li>
<code>int = obj.GetPerformHandshakeMinValue ()</code> - 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.  </li>
<li>
<code>int = obj.GetPerformHandshakeMaxValue ()</code> - 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.  </li>
<li>
<code>obj.PerformHandshakeOn ()</code> - 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.  </li>
<li>
<code>obj.PerformHandshakeOff ()</code> - 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.  </li>
<li>
<code>int = obj.GetPerformHandshake ()</code> - 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.  </li>
<li>
<code>int = obj.LogToFile (string name)</code> - 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.  </li>
<li>
<code>int = obj.LogToFile (string name, int append)</code> - 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.  </li>
<li>
<code>obj.SetReportErrors (int )</code> - If ReportErrors if false, all vtkErrorMacros are suppressed.  </li>
<li>
<code>int = obj.GetReportErrors ()</code> - If ReportErrors if false, all vtkErrorMacros are suppressed.  </li>
<li>
<code>vtkClientSocket = obj.GetSocket ()</code> - Get/Set the actual socket used for communication.  </li>
<li>
<code>obj.SetSocket (vtkClientSocket )</code> - Get/Set the actual socket used for communication.  </li>
<li>
<code>int = obj.Handshake ()</code> - Performs handshake. This uses vtkClientSocket::ConnectingSide to decide whether to perform ServerSideHandshake or ClientSideHandshake.  </li>
<li>
<code>int = obj.ServerSideHandshake ()</code> - Performs ServerSide handshake. One should preferably use Handshake() which calls ServerSideHandshake or ClientSideHandshake as required.  </li>
<li>
<code>int = obj.ClientSideHandshake ()</code> - Performs ClientSide handshake. One should preferably use Handshake() which calls ServerSideHandshake or ClientSideHandshake as required.  </li>
<li>
<code>int = obj.GetIsServer ()</code> - Returns true if this side of the socket is the server. The result is invalid if the socket is not connected.  </li>
</ul>
</div></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="index.html">FreeMat Documentation</a></li><li class="navelem"><a class="el" href="sec_vtkparallel.html">Visualization Toolkit Parallel Classes</a></li>
    <li class="footer">Generated on Thu Jul 25 2013 17:18:34 for FreeMat by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.1.1 </li>
  </ul>
</div>
</body>
</html>