ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/radiance/ray/src/hd/rhdisp.h
Revision: 3.2
Committed: Mon Nov 3 18:33:12 1997 UTC (27 years ago) by gregl
Content type: text/plain
Branch: MAIN
Changes since 3.1: +21 -18 lines
Log Message:
added more routines for display support

File Contents

# Content
1 /* Copyright (c) 1997 Silicon Graphics, Inc. */
2
3 /* SCCSid "$SunId$ SGI" */
4
5 /*
6 * Header for holodeck display drivers.
7 * Include after "rholo.h".
8 */
9
10 /* display requests */
11 #define DR_BUNDLE 1 /* bundle request */
12 #define DR_ATTEN 2 /* request for attention */
13 #define DR_SHUTDOWN 3 /* shutdown request */
14 #define DR_NEWSET 4 /* new bundle set */
15 #define DR_ADDSET 5 /* add to current set */
16 #define DR_DELSET 6 /* delete from current set */
17
18 /* server responses */
19 #define DS_BUNDLE 1 /* computed bundle */
20 #define DS_ACKNOW 2 /* acknowledge request for attention */
21 #define DS_SHUTDOWN 3 /* end process and close connection */
22 #define DS_ADDHOLO 4 /* register new holodeck */
23 #define DS_STARTIMM 5 /* begin immediate bundle set */
24 #define DS_ENDIMM 6 /* end immediate bundle set */
25
26 /*
27 * Normally, the server channel has priority, with the display process
28 * checking it frequently for new data. However, when the display process
29 * makes a request for attention (DR_ATTEN), the server will finish its
30 * current operations and flush its buffers, sending an acknowledge
31 * message (DS_ACKNOW) when it's done. This then allows the
32 * display process to send a long request to the holodeck server.
33 * Priority returns to normal after the following request.
34 */
35
36 typedef struct {
37 int2 type; /* message type */
38 int4 nbytes; /* number of additional bytes */
39 } MSGHEAD; /* message head */
40
41 /* display request message bodies */
42
43 /* DR_BUNDLE */
44 #define BUNDLE_REQ PACKHEAD
45 /* DR_ATTEN */
46 /* no body */
47 /* DR_SHUTDOWN */
48 /* no body */
49 /* DR_NEWSET */
50 /* body is nbytes/sizeof(BUNDLE_REQ) BUNDLE_REQ bodies */
51 /* DR_ADDSET */
52 /* body is nbytes/sizeof(PACKHEAD) BUNDLE_REQ bodies */
53 /* DR_DELSET */
54 /* body is nbytes/sizeof(PACKHEAD) BUNDLE_REQ bodies */
55
56 /* server response message bodies */
57
58 /* DS_BUNDLE */
59 #define BUNDLE_RES PACKHEAD /* followed by nr RAYVAL structs */
60 /* DS_ACKNOW */
61 /* no body */
62 /* DS_SHUTDOWN */
63 /* no body */
64 /* DS_ADDHOLO */
65 #define HOLO_RES HDGRID
66 /* DS_STARTIMM */
67 /* no body */
68 /* DS_ENDIMM */
69 /* no body */