Re: IDL - RPC? IDL - AVS? [message #1861] |
Wed, 23 March 1994 10:53 |
chase
Messages: 62 Registered: May 1993
|
Member |
|
|
In article <2mpkbuINNgsa@maz4.sma.ch> idl@sma.ch (idl Adm) writes:
ao> 1. print,'Does anyone use IDL-RPCs?'
ao> if (yes) then mail,'How are Your experience?'
ao> if (yes) then mail,'Did You ever do RPCs on a CRAY?'
I have used IDL's RPC features but not on a Cray. I have used them
successfully on HP9000/s700 and SGI IRIS4D workstations (mainly the
HPs though). We used them to add powerful but simple to use graphics
facilities to our C programs.
We were doing preliminary development of a space based sensor
algorithm for track association/prediction of objects against a star
field background. Using RPC we were able to create graphics without
coding low-level graphics routines ourselves or without having to write
lots of data to files to be post-processed by IDL.
Using the supplied example RPC routines, I wrote a very simple
interface routine for passing arrays (or scalars) in C to IDL and
another routine for sending commands for execution to IDL. The actual
IDL display code is put in an IDL procedure file - the advantage being
that when we want to change the display routines we don't have to
recompile C code, just IDL code which is faster and can even be done
while our C code is running.
Typically, in the C program I do the following:
connect_to_idl();
/* Just once at the beginning of the program. This
looks for an IDL server running on the current host (but could look
on a different host). If an IDL server is not found, then the
commands below just do nothing. */
/* Within our main simulation loop */
send_idl_var(....)
...
send_idl_var(....) /* Send the needed variables to IDL */
send_idl_cmd(".run ait_proc"); /* Run the IDL procedure file */
/* End loop */
disconnect_from_idl(); /* Close connection */
There is another nice advantage to using IDL as a server. I have a
client program that acts as just a command line interface to the IDL
server (it's a modification of one the example programs that uses the
GNU readline library). _While_ the simulation is running and
connected to the server, I can use the command line client to the IDL
server from another window (I always seem to have lots of xterms up
doing different things - one for the IDL server, one for our
simulation, one for the command line client, etc - alot of clutter) to
issue commands like set the color table, change the device parameters,
check values of passed variables, or whatever.
I haven't used IDL as a computation engine for returning values to our
C programs, nor have I used the RPC functions on a Cray. I do not
know if the equivalent features are fully implemented yet for a MS
Windows environment using DLE but I understand that there are plans to
support such features.
Chris
--
===============================
Bldg 24-E188
The Applied Physics Laboratory
The Johns Hopkins University
(301)953-6000 x8529
chris_chase@jhuapl.edu
|
|
|