VIEW_SHARE
Inputs
: geometry
Parameters
: local integer
local float
local string
connection list={hostname[1-9],talk_port[1-9],listen_port[1-9]}
Outputs
: integer
float
string
geometry
Description
This module is part of the collaboratory development being done at the
North Carolina Supercomputing Center. This module allows AVS users, on
up to 9 heterogeneous workstations, to perform shared visualization. In
Other
words, the data can be located on one workstation's file system,
the computation could be done on that user's workstation, and then the
resulting geometry can be broadcast to all of the other users and then
rendered on each user's individual workstation. Each user can then
take control of the visualization, rotating and translating not only his
view, but that of the other collaborators. In addition, integers, floats,
and strings can be broadcast around the collaborative loop to allow
for interactive distributed data slicing, contouring, and file switching.
The first step in using the module is to set up the connection list.
This list tells the module which machines to talk to, and on which ports.
See below.
If BROADCAST is turned on, then any new geometry on the input port, or any
new float, integers, or string in the type_in will be broadcast on all of the
talk ports. All of the local parameters can be turned into input ports through
standard AVS. Any new float, integers, or string are passed onto the module
output, but the geometry is not copied over.
If LISTEN is turned on, all listen ports are checked continuously for new
parameters. Anything coming across the network is then outputted through
the module output ports.
With the broadcast/listen options and separate output ports, each user can
maintain a local view; while another user control the visualization parameters.
Notes
1. The GEOMETRY output port must be hooked up to the geometry viewer in order
to received transformations of selected objects.
2. Label and Line Geometries can not be transmitted.
3. All geometries are converted into polytriangle objects before being
transmitted.
4. This modules has an iris-explorer counterpart - that only listens.
5. If the VERBOSE definition is turned on during compilation, the module
will provide tremendous feedback on the network communication.
Example network
machine 1 machine 2-9
----------- -------------
read field share_views
| |
share views | |
| | | |
| ---- | |
| | | |
| isosurface geometry viewer
| |
------- |
| |
geometry viewer
With these networks set up, both users can toggle the isosurface threhsold,
and both users can spin each others objects.
CONNECTION LIST :
If you click on Show Connection List - a chart of hostnames, and ports will
appear. If a port is listed as 0 - then no connection to the host exists. The
minimum port number is 4200- this was arbitrarily chosen to avoid any system
sockets. There are nine identical entries in the connection list. Each and
every entry should be different.
In each host type_in, you can enter any hostname on the internet ( e.g.
avs.ncsc.org ). In the listen and talk entries, neither is required, you
should enter an arbitrary number above 4200 - if the entry is not reset to
0 then you have established a socket connection to that machine.
Example
CONNECTION LIST:
machine 1 ( doppler ) machine 2 ( mach )
----------------------- --------------------
Hostname 1 : mach Hostname 1 : doppler
Listen Port 1 : 4600 Listen Port 1 : 4601
Talk Port 1 : 4601 Talk Port 1 : 4600
Hostname 2 : fermi Hostname 2 : fermi
Listen Port 2 : 4800 Listen Port 2 : 4900
Talk Port 2 : 4801 Talk Port 2 : 4901
machine 3 ( fermi )
---------------------
Hostname 1 : doppler
Listen Port 1 : 4801
Talk Port 1 : 4800
Hostname 2 : mach
Listen Port 2 : 4901
Talk Port 2 : 4900
Credits :
The socket communication is based upon NCSA's DTM library. This library
can be obtained from ftp.ncsa.uiuc.edu
FUTURE WORK:
Work on the connection list interface is a dire necessary.
PLEASE SEND SUGGESTIONS FOR FUTURE WORK !!!!!
Please contact me for any assistance in using the module or any suggestions,
bugs, etc...
Terry Myerson
International AVS Center
North Carolina Supercomputing Center
avs@ncsc.org or tvv@ncsc.org
(919) 248 - 1186