diff options
| author | bhgv <bhgv.empire@gmail.com> | 2018-03-01 16:54:45 +0200 |
|---|---|---|
| committer | bhgv <bhgv.empire@gmail.com> | 2018-03-01 16:54:45 +0200 |
| commit | b786f20bbab5a59046aa78a2c6c2a11536497202 (patch) | |
| tree | 0851ecdec889eb9b7ba3751cc04d4f0b474e4a9e /man/2/devpointer | |
inferno-os tree was separated from the inferno-os-android (separated from the Android driver)
Diffstat (limited to 'man/2/devpointer')
| -rw-r--r-- | man/2/devpointer | 78 |
1 files changed, 78 insertions, 0 deletions
diff --git a/man/2/devpointer b/man/2/devpointer new file mode 100644 index 0000000..19c82f1 --- /dev/null +++ b/man/2/devpointer @@ -0,0 +1,78 @@ +.TH DEVPOINTER 2 mux +.SH NAME +devpointer \- I/O interface for the pointer device +.SH SYNOPSIS +.EX +include "draw.m"; # for Draw->Pointer +include "devpointer.m"; +ptr := load Devpointer Devpointer->PATH; + +init: fn(); +reader: fn(file: string, posn: chan of ref Draw->Pointer, + pid: chan of (int, string)); +bytes2ptr: fn(buf: array of byte) : ref Draw->Pointer; +ptr2bytes: fn(ptr: ref Draw->Pointer): array of byte; +.EE +.SH DESCRIPTION +.B Devpointer +reads messages from pointer devices with the same data format as +.BR /dev/pointer , +converting them to +.B Pointer +adts. +.PP +.B Init +must be called before any other operation of the module. +.PP +.B Reader +should be spawned by the caller. +It opens the pointer device specified by +.IR file , +and sends a value +.BI ( id,\ err ) +on channel +.IR pid . +On success, +.I id +is the process ID of the spawned process and +.I err +is nil; on an error, +.I err +is a diagnostic, and +.I id +is undefined. +If the file was opened successfully, +.B reader +continually reads the pointer device and sends +.B Pointer +adts over the channel +.IR posn . +If +.I file +is +.BR nil , +the default device is +.BR /dev/pointer . +.PP +.B Bytes2ptr +converts the array of bytes +.I buf +to a +.B Pointer +and returns a reference to it. +.I Buf +should consist of exactly +.B Devpointer->Size +bytes and be in the format returned by +.BR /dev/pointer . +.PP +.B Ptr2bytes +provides the inverse transformation of +.BR bytes2ptr : +it packs the data into an array of bytes of appropriate format, +which it returns. +.SH FILES +.B /dev/pointer +.SH "SEE ALSO" +.IR draw-intro (2), +.IR draw-pointer (2) |
