-- File CIFDrcNewListDefs.mesa
-- Written by Dan Fitzpatrick and Martin Newell, September 1980
-- Last updated: March 24, 1981 2:55 PM
-- CIF Drc List Routines
DIRECTORY
CIFDrcUtilsDefs: FROM "CIFDrcUtilsDefs" USING [Trapezoid],
IntervalsDefs: FROM "IntervalsDefs" USING [GetHandleRecord];
CIFDrcNewListDefs: DEFINITIONS =
BEGIN
OPEN CIFDrcUtilsDefs, IntervalsDefs;
InitList: PUBLIC PROCEDURE[left,right: LONG INTEGER];
InsertTrap:PUBLIC PROCEDURE [trap:Trapezoid, layer:CARDINAL, swath:SwathType];
RemoveTrap:PUBLIC PROCEDURE [trap:Trapezoid, layer:CARDINAL, swath:SwathType];
EmptyList:PUBLIC PROCEDURE [layer:CARDINAL];
StepSwaths:PUBLIC PROCEDURE [];
GenSwath: PUBLIC PROCEDURE [layer:CARDINAL, swath:SwathType,list:POINTER TO ListDescriptor] RETURNS[trap:Trapezoid];
GetSwath: PUBLIC PROCEDURE [list:POINTER TO ListDescriptor] RETURNS[trap:Trapezoid];
GenLocal: PUBLIC PROCEDURE [minx,maxx:LONG INTEGER, layer:CARDINAL, list:POINTER TO ListDescriptor] RETURNS[trap:Trapezoid];
GetLocal: PUBLIC PROCEDURE [list:POINTER TO ListDescriptor] RETURNS[trap:Trapezoid];
SwathType:TYPE = {bottom, middle, top};
ListDescriptor:TYPE = RECORD [
layer: CARDINAL,
min,max:LONG INTEGER,
swath: SwathType,
handle: GetHandleRecord
];
END.