-- Copyright (C) 1984, 1985 by Xerox Corporation. All rights reserved. -- BTreeSupportDefs -- HGM, 15-Sep-85 4:54:37 -- 24-Jul-84 14:28:32, Hankins -- (removing Bravo formatting and changed internal name to match that of file) BTreeSupportDefs: DEFINITIONS = BEGIN FileHandle: TYPE [SIZE[LONG POINTER]]; PageHandle: TYPE = RECORD [pageH: LONG POINTER TO ARRAY OF WORD]; PageNumber: TYPE = CARDINAL; ReadPage: PROCEDURE [fileH: FileHandle, pageN: PageNumber] RETURNS [pageH: PageHandle]; -- does allocation of main memory. UsePage: PROCEDURE [fileH: FileHandle, pageN: PageNumber] RETURNS [pageH: PageHandle]; -- for when the page has no valid data. -- Avoids unnecessary disk read if < eof, works for 1 page > eof. -- does not zero the page. WritePage: PROC [fileH: FileHandle, pageN: PageNumber, pageH: PageHandle]; -- deallocates main memory. ReleasePage: PROCEDURE [pageH: PageHandle]; -- for when page has not been dirtied SetLength: PROCEDURE [fileH: FileHandle, pageN: PageNumber]; -- will be used by PruneBTree. PageSize: PROCEDURE RETURNS [nWords: CARDINAL]; END. Edit Log Change: May 13, 1980 1:04 PM: KK: interface changes so the message system and Juniper can both use the btree package.