DIRECTORY Mach, Camelot, YggDID; YggInternal: DEFINITIONS = BEGIN LockName: TYPE = RECORD [segmentId: Camelot.segmentIdT, offset: Mach.vmOffsetT]; LockID: TYPE = RECORD [did: YggDID.DID, subEntity: LockName]; LockSubID: TYPE [2*SIZE[CARD32]]; -- large enough to hold [tag, page number within file] nullLockIDRep: ARRAY [0..UNITS[LockID]/UNITS[CARD16]) OF CARD16 = [0,0,0,0,0]; nullLockID: LockID = LOOPHOLE[nullLockIDRep]; LockTransHeader: TYPE = REF LockTransHeaderObject; LockTransHeaderObject: TYPE; FileHandle: TYPE = REF FileHandleRep; -- same as YggFile.FileHandle and YggFileInternal.FileHandleRep FileHandleRep: TYPE; Document: TYPE = REF DocumentRep; -- same as YggDIDMap.Document and YggDIDMapPrivate.Document DocumentRep: TYPE; OpenDoc: TYPE = REF OpenDocRep; -- same as YggOpenDoc.OpenDoc OpenDocRep: TYPE; END. šYggInternal.mesa Copyright Σ 1988 by Xerox Corporation. All rights reserved. Last edited by: Bob Hagmann October 18, 1988 7:16:11 am PDT Lock File Κ~– "cedar" style˜šœ™Icodešœ<™<—šœ™K™+—J˜šΟk ˜ J˜J˜Jšœ˜—J˜Iunitšœ  œ˜ J˜J˜šœ™J˜Kš œ œœœœ˜PJšœœœ(˜=Jšœ œœœΟc6˜XJ˜Jš œœœ œœœœ˜NJšœœ˜-J˜Jšœœœ˜2Jšœœ˜—šœ™J˜Jšœ œœž?˜fJšœœ˜J˜Jšœ œœž;˜^Jšœ œ˜J˜Jšœ œœž˜>Jšœ œ˜J˜Lšœ˜——…—H`