<> <> <> <> <> <> <> DIRECTORY YggEnvironment USING[FileID, LockMode, PageCount, VolumeID], YggInternal USING[FileHandle, FileInstanceHandle, TransHandle]; YggFileInstance: CEDAR DEFINITIONS = BEGIN Handle: TYPE = YggInternal.FileInstanceHandle; Register: PROCEDURE [trans: YggInternal.TransHandle, volumeID: YggEnvironment.VolumeID, fileID: YggEnvironment.FileID] RETURNS [handle: Handle]; <> <> Unregister: PROCEDURE [handle: Handle]; <> <> FlushTransState: PROCEDURE [trans: YggInternal.TransHandle]; <> <> <> GetFileHandle: PROCEDURE [handle: Handle] RETURNS [fileHandle: YggInternal.FileHandle]; <> GetTransHandle: PROCEDURE [handle: Handle] RETURNS [trans: YggInternal.TransHandle]; <> GetVolumeID: PROCEDURE [handle: Handle] RETURNS [volumeID: YggEnvironment.VolumeID]; <> GetFileID: PROCEDURE [handle: Handle] RETURNS [fileID: YggEnvironment.FileID]; <> GetVolumeIDAndFileID: PROCEDURE [handle: Handle] RETURNS [volumeID: YggEnvironment.VolumeID, fileID: YggEnvironment.FileID]; <> <> GetDeltaVersion: PROCEDURE [handle: Handle] RETURNS [delta: LONG INTEGER]; <> <> <> SetMaxDeltaVersion: PROCEDURE [handle: Handle, increment: LONG INTEGER _ 1]; <> <> GetHighWaterMark: PROCEDURE [handle: Handle] RETURNS [highWaterMark: YggEnvironment.PageCount]; <> <> <> SetHighWaterMark: PROCEDURE [handle: Handle, highWaterMark: YggEnvironment.PageCount] RETURNS [oldHighWaterMark: YggEnvironment.PageCount]; <> GetLockMode: PROCEDURE [handle: Handle] RETURNS [lock: YggEnvironment.LockMode]; <> SetLockMode: PROCEDURE [handle: Handle, lock: YggEnvironment.LockMode]; <> <> GetNextHandleForTrans: PROCEDURE [trans: YggInternal.TransHandle, handle: Handle _ NIL] RETURNS [nextHandle: Handle]; <> <> <> <> END. <> <> <<>>