<> <> <> <> Centerline: CEDAR DEFINITIONS = BEGIN <> Handle: TYPE = REF Rec; Rec: TYPE = RECORD [ width: REAL, --expected line width t: REAL, --threshold at which we are definitely outside of the line maxV: INT, --maximum pixel value startX, startY, endX, endY: INT, --window on image get: PROC[client: REF, x,y: INT] RETURNS[INT], --called to get pixels newPoint: PROC[client: REF, x,y: REAL] RETURNS[abort: BOOLEAN _ FALSE],--return points on curve to client client: REF, --returned to client in procs above data: REF --private data for the outline procedures ]; CurveTrace: PUBLIC PROC[h: Handle, x1,y1,x2,y2: REAL]; <> InvalidID: SIGNAL; GetOutline: PROC [data: REF, newPoint: PROC[x,y: REAL], id: INT]; <> END.