summaryrefslogtreecommitdiff
path: root/module/devpointer.m
diff options
context:
space:
mode:
authorCharles.Forsyth <devnull@localhost>2006-12-22 20:52:35 +0000
committerCharles.Forsyth <devnull@localhost>2006-12-22 20:52:35 +0000
commit46439007cf417cbd9ac8049bb4122c890097a0fa (patch)
tree6fdb25e5f3a2b6d5657eb23b35774b631d4d97e4 /module/devpointer.m
parent37da2899f40661e3e9631e497da8dc59b971cbd0 (diff)
20060303-partial
Diffstat (limited to 'module/devpointer.m')
-rw-r--r--module/devpointer.m21
1 files changed, 21 insertions, 0 deletions
diff --git a/module/devpointer.m b/module/devpointer.m
new file mode 100644
index 00000000..ea7bb7a6
--- /dev/null
+++ b/module/devpointer.m
@@ -0,0 +1,21 @@
+Devpointer: module
+{
+ PATH: con "/dis/lib/devpointer.dis";
+
+ Size: con 1+4*12; # 'm' plus 4 12-byte decimal integers
+ # merge events that have the same button state.
+ Ptrqueue: adt {
+ last: ref Draw->Pointer;
+ h, t: list of ref Draw->Pointer;
+ put: fn(q: self ref Ptrqueue, s: ref Draw->Pointer);
+ get: fn(q: self ref Ptrqueue): ref Draw->Pointer;
+ peek: fn(q: self ref Ptrqueue): ref Draw->Pointer;
+ nonempty: fn(q: self ref Ptrqueue): int;
+ };
+
+ init: fn();
+ reader: fn(file: string, posn: chan of ref Draw->Pointer, pid: chan of (int, string));
+ bytes2ptr: fn(b: array of byte): ref Draw->Pointer;
+ ptr2bytes: fn(p: ref Draw->Pointer): array of byte;
+ srv: fn(c: chan of ref Draw->Pointer, f: ref Sys->FileIO);
+};