In the C binding described, parameterlist is a sequence of pairs of arguments, the first being an RtToken and the second being an RtPointer , an untyped pointer to an array of either RtFloat , RtString or other values. This alternate procedure is denoted by appending an uppercase V to the procedure name. A Common Lisp binding would be particularly simple because it has intrinsic support for variable length argument lists. The semantics of the types, procedures and predefined variables are identical, and the necessary function prototype modifications are presented in a version of ri.h also listed in Appendix C, Language Binding Details . This byte stream serves as both a network transport protocol for modeling system clients to communicate requests to a remote rendering service, and an archive file format to save requests for later submission to a renderer.
Some requests have multiple versions, for efficiency or to denote special cases of the request.
The semantics of each RIB request are identical to the corresponding C entry point, except as specifically noted in the text. At the top of the description, parameter1 through parameterN are the parameters that the request requires. Normally the parameter names suggest their purpose, e.g., x , y , or angle . Integers will be automatically promoted if supplied for parameters which require floating point values. A parameter list is simply a sequence of string-array pairs.