1TOGEOMVIEW(1gv) TOGEOMVIEW(1gv)
2
3
4
6 togeomview - send commands or OOGL objects to geomview
7
9 togeomview [-c] [-g] [pipename [program args ...]]
10
12 togeomview sends a stream of geomview commands, or OOGL-format geomet‐
13 ric data, to a cooperating copy of geomview. If geomview is not run‐
14 ning, it is automatically started. ('geomview' must be on the $PATH of
15 the user running 'togeomview' in order for this to work.)
16
17 Typical usage is:
18 someprogram | togeomview (to send commands) or
19 someprogram-generating-OOGL-data | togeomview -g (to send geometry)
20 i.e. a program pipes geometric data into ``togeomview''; the data is
21 displayed by a copy of geomview run with the -M option and a name
22 matching the one given to togeomview.
23
24 Togeomview uses a named pipe in the directory /tmp/geomview to communi‐
25 cate with geomview. If unspecified, the pipe's default name is "OOGL".
26 When sending geometry (-g), a geomview object with the same name as the
27 pipe appears in geomview's object browser.
28
29 By default, when no suitable copy of geomview is running, togeomview
30 invokes "geomview" with arguments specifying the appropriate named
31 pipe. A different command may be specified as in:
32
33 togeomview OOGL gv -wpos 300x300 -c my_startup_script
34
35 which communicates through a pipe named OOGL, and (if necessary)
36 invokes the given gv command. The pipe name is required if a command
37 is specified.
38
39 After togeomview has created it, the named pipe may be written as an
40 ordinary file. For example, one could use
41
42 togeomview pipename < /dev/null
43
44 to invoke a listening copy of geomview, and then run a program which
45 simply wrote to /tmp/geomview/pipename.
46
48 /tmp/geomview
49
51 The pipe-based communications scheme imposes several restrictions.
52
53 If no copy of geomview is reading from the pipe, or if geomview gets
54 far enough behind, a program writing data to ``togeomview'' will be
55 forced to block after sending a few kilobytes.
56
57 Because of the buffering in the pipe, the sender may be substantially
58 ahead of the geomview display.
59
60 If geomview exits, the sending program receives a write-on-broken-pipe
61 (SIGPIPE) signal, which will kill it unless measures are taken to catch
62 or ignore that signal.
63
64 Only one copy of geomview can read from a given pipe at a time. If a
65 second copy attempts to read from it, both will probably fail. It's
66 fine to have multiple copies of geomview reading from different pipes.
67
68 Note that togeomview will invoke geomview if no extant copy is listen‐
69 ing to the relevant pipe; it can't connect to an existing copy of
70 geomview started by other means.
71
73 geomview(1), oogl(5)
74
75
76
77Geometry Center 21 May 1993 TOGEOMVIEW(1gv)