-- File: DisjointAllocDefs.mesa
-- Written by Martin Newell/Dan Fitzpatrick June 1981
-- Last edited: August 4, 1981 6:58 PM
DIRECTORY
DisjointTypes: FROM "DisjointTypes" USING [DisCell, Rectangle, Instance, Symbol, PIP, Geometry, PropID, PropList];
DisjointAllocDefs: DEFINITIONS =
BEGIN
OPEN DisjointTypes;
MakeSymbol: PUBLIC PROCEDURE [name: STRING, l,b,r,t: REAL] RETURNS[Symbol];
AllocateSymbol: PUBLIC PROCEDURE[] RETURNS[symb: Symbol];
GetSymbol: PUBLIC PROCEDURE[] RETURNS[symb: Symbol];
FreeSymbol: PUBLIC PROCEDURE[symb: Symbol];
FreeMarkedSymbols: PUBLIC PROCEDURE[id: PropID];
LookupSymbol: PUBLIC PROCEDURE [name: STRING]
RETURNS[s: Symbol];
EnumerateSymbols: PUBLIC PROCEDURE[proc: PROC[s: Symbol]RETURNS[BOOLEAN]]
RETURNS[BOOLEAN];
--BOOLEAN returns are both abort flags
InsertSymbolList: PUBLIC PROCEDURE[symb: Symbol];
MakeInstance: PUBLIC PROCEDURE[parent: Symbol, name: STRING, x,y: REAL]
RETURNS[Instance];
AllocateInstance: PUBLIC PROCEDURE[] RETURNS[inst: Instance];
FreeInstance: PUBLIC PROCEDURE[inst: Instance];
MakeGeometry: PUBLIC PROCEDURE[parent: Symbol, layer: CARDINAL, l,b,r,t: REAL]
RETURNS[Geometry];
AllocateGeometry: PUBLIC PROCEDURE[] RETURNS[g: Geometry];
FreeGeometry: PUBLIC PROCEDURE[g: Geometry];
AllocatePIP: PUBLIC PROCEDURE[] RETURNS[pip: PIP];
FreePIP: PUBLIC PROCEDURE[pip: PIP];
AllocateDisCell: PUBLIC PROCEDURE[] RETURNS[dc: DisCell];
FreeDisCell: PUBLIC PROCEDURE[dc: DisCell];
MakeRectangle: PUBLIC PROCEDURE[l,b,r,t: REAL]
RETURNS[rec: DisjointTypes.Rectangle];
AllocateRectangle: PUBLIC PROCEDURE[] RETURNS[r: DisjointTypes.Rectangle];
FreeRectangle: PUBLIC PROCEDURE[r: DisjointTypes.Rectangle];
AllocateProp: PUBLIC PROCEDURE[] RETURNS[p: PropList];
FreeProp: PUBLIC PROCEDURE[p: PropList];
Alloc: PUBLIC PROCEDURE[n:INTEGER] RETURNS[p: LONG POINTER];
Free: PUBLIC PROCEDURE[p:LONG POINTER, n:INTEGER];
PrintAlloc: PUBLIC PROCEDURE;
END.