-- File CIFDrcListDefs.mesa
-- Written by Dan Fitzpatrick and Martin Newell, September 1980
-- Last updated: September 3, 1980 3:17 PM

-- CIF Drc List Routines

DIRECTORY

CIFDrcUtilsDefs: FROM "CIFDrcUtilsDefs" USING [Trapezoid];

CIFDrcListDefs: DEFINITIONS =

BEGIN

OPEN CIFDrcUtilsDefs;

InitList
: PUBLIC PROCEDURE;

InsertTrap:PUBLIC PROCEDURE [trap:Trapezoid, layer:CARDINAL];

RemoveTrap:PUBLIC PROCEDURE [trap:Trapezoid, layer:CARDINAL];

PrintList: PUBLIC PROCEDURE[i:CARDINAL];

GetFirst
: PUBLIC PROCEDURE [layer:CARDINAL,list:POINTER TO ListDescriptor] RETURNS[trap:Trapezoid];

GetNext
: PUBLIC PROCEDURE [list:POINTER TO ListDescriptor] RETURNS[trap:Trapezoid];

GetInitialLocal
: PUBLIC PROCEDURE [minx,maxx:REAL, layer:CARDINAL, list:POINTER TO ListDescriptor] RETURNS[trap:Trapezoid];

GetLocal
: PUBLIC PROCEDURE [list:POINTER TO ListDescriptor] RETURNS[trap:Trapezoid];

GetCurrent
: PUBLIC PROCEDURE [list:POINTER TO ListDescriptor] RETURNS[trap:Trapezoid];

EmptyList
: PUBLIC PROCEDURE [layer:CARDINAL];

ListDescriptor:TYPE = RECORD [
bucketNumb:CARDINAL,
trapPtr: Trapezoid,
layer: CARDINAL,
min,max:REAL
];


END.