(* $M- *)
DEFINITION MODULE Clipboard;

FROM SYSTEM IMPORT
 ADDRESS;
FROM Exec IMPORT
 nonstd,Node,Message,DevicePtr,IOFlagSet,UnitPtr;

CONST
 clipboardName="clipboard.device";
 post=nonstd+0;
 currentReadId=nonstd+1;
 currentWriteId=nonstd+2;
 obsoleteId=1;

TYPE
 ClipboardUnitPartial=RECORD
  node:Node;
  unitNum:LONGCARD;
 END;
 ClipboardUnitPartialPtr=POINTER TO ClipboardUnit;
 IOClipboard=RECORD
  message:Message;
  device:DevicePtr;
  unit:UnitPtr;
  command:CARDINAL;
  flags:IOFlagSet;
  error:[-128..127];
  actual:LONGCARD;
  length:LONGCARD;
  data:ADDRESS;
  offset:LONGCARD;
  clipID:LONGINT;
 END;
 IOClipboardPtr=POINTER TO IOClipReqPtr;

CONST
 primaryClip=0;

TYPE
 SatisfyMsg=RECORD
  msg:Message;
  unit:CARDINAL;
  clipID:LONGINT;
 END;
 SatisfyMsgPtr=POINTER TO SatisfyMsg;

END Clipboard.
