perftool/src/Common/PerfComm.mg


Copyright (C) 1994, Digital Equipment Corp.

GENERIC MODULE PerfComm (Event);

IMPORT Rd, Wr;

CONST
  Chars = (BITSIZE (Event.T) + BITSIZE (CHAR) - 1) DIV BITSIZE (CHAR);

TYPE
  Bug = ARRAY[0..Chars-1] OF CHAR;

PROCEDURE Send (wr: Wr.T; READONLY e: Event.T) =
  <*FATAL ANY*>
  BEGIN
    Wr.PutString (wr, LOOPHOLE (e, Bug));
  END Send;

PROCEDURE Receive (rd: Rd.T): Event.T =
  VAR e: Event.T;
  <*FATAL ANY*>
  BEGIN
    EVAL Rd.GetSub (rd, LOOPHOLE (e, Bug));
    RETURN e;
  END Receive;

BEGIN
END PerfComm.