Silicon Graphics IRIS Workstation User Manual page 158

Table of Contents

Advertisement

152
IRIS WORKSTATION GUIDE
The second part of each entry (also a letter) is somewhat redundant
information that tells the physical type of the entry. This could be looked up
in a table, but it is included so that the awk scripts will run faster. Lower-case
letters are used if the parameter is sent by the remote host; upper-case is used
for parameters received. For example, in the entry k:s, the k means that the
logical type is Colorindex, and the s means that a Colorindex is actually a 16-bit
short. Since s is lower-case, this means that a short is transmitted from the host
to the IRIS Terminal.
The third part of triplet entries is used for lengths of arrays of items. It can
be a constant or have the form arg<m> or <n>*arg<m>, where <n> and
<m> are constants (arg5 or 3*arg4, for example). If it is a constant, then it is
the absolute size of the array. Arrays whose size depends on other parameters
to the function are described with the other form. For example, the actual
entry for
is:
poly
V:V:poly( u:l L:f:3*arg1 )
The first entry is u:l, meaning that the first parameter from the
of type integer, and is transmitted as a 32-bit long. The second entry,
L:f:3*arg1, means that the next parameter is of type Coord _[][], the data to be
transmitted is of type float, and the number of floats to be transmitted is 3
times the value of the first argument to the routine.
Some of the entries in the table have the following form: I:f:len,F:len,F. This
means that any of these forms are legal: I:f:len, I:F:len, I:F.
<returntype> is similar to the entries in the <parameterdescription>. Note that
entries with a non-void <returntype> always return values to the host—so in
all cases, the second part of the entry is in upper-case. To return a short, use
the entry e:S. The e tells the awk script to use the type short, and that the value
is sent as a 16-bit short. It might seem that f:S should be used as listed in the
defined types in the comment in lib.prim, but this would cause the awk scripts
to generate:
short *foo();
instead of:
short foo();
Basically, the problem is the difference between variables appearing on the left-
and right-hand side of an assignment. The assignment
b and stuffs it into the location of a.
K.6 Generating a Remote Graphics Library
A remote graphics library (libgl.a) can be compiled with a single make
procedure.
1.
Change the current directory to /usr/progenv/host/c/src/gl.
Appendix K:
routine is
poly
takes the value of
a = b
Version 1.0

Advertisement

Table of Contents
loading
Need help?

Need help?

Do you have a question about the IRIS Workstation and is the answer not in the manual?

Questions and answers

Table of Contents