DIRECTORY CD USING [Level, DesignNumber, DesignPosition, DesignRect, Orientation, ApplicationPtr], SpinifexCircuit USING [Circuit, SpinifexLayerIndex, CircuitNode, CircuitConstraint, RectDelta] ; SpinifexExtras: CEDAR DEFINITIONS ~ BEGIN WNEGrow: PROCEDURE [ x: INT] RETURNS [SpinifexCircuit.RectDelta] ~ INLINE { RETURN [[x, 0, x, x]] }; NESGrow: PROCEDURE [ x: INT] RETURNS [SpinifexCircuit.RectDelta] ~ INLINE { RETURN [[0, x, x, x]] }; ESWGrow: PROCEDURE [ x: INT] RETURNS [SpinifexCircuit.RectDelta] ~ INLINE { RETURN [[x, x, x, 0]] }; SWNGrow: PROCEDURE [ x: INT] RETURNS [SpinifexCircuit.RectDelta] ~ INLINE { RETURN [[x, x, 0, x]] }; WNGrow: PROCEDURE [ x: INT] RETURNS [SpinifexCircuit.RectDelta] ~ INLINE { RETURN [[x, 0, 0, x]] }; TransistorMaterial: TYPE ~ { nothing, diffusion, polysilicon, postProcess }; PerDrawRectProc: TYPE ~ PROCEDURE [r: CD.DesignRect, l: CD.Level, data: REF ANY] RETURNS [TransistorMaterial]; ReportDifProc: TYPE ~ PROCEDURE [difNode: REF SpinifexCircuit.CircuitNode, r: CD.DesignRect, l: CD.Level]; ProcessMosTransistor: PROCEDURE [appl: CD.ApplicationPtr, pos: CD.DesignPosition, orient: CD.Orientation, cir: REF SpinifexCircuit.Circuit, difSpinifex, polSpinifex: SpinifexCircuit.SpinifexLayerIndex, difChannel, channelEdge: REF SpinifexCircuit.CircuitConstraint, difToPolSep: CD.DesignNumber, PerDrawRect: PerDrawRectProc, data: REF ANY _ NIL, PostProcessor: ReportDifProc _ NIL] RETURNS [gateNode: REF SpinifexCircuit.CircuitNode, sourceDrainNodes: LIST OF REF SpinifexCircuit.CircuitNode, sourceDrainCount: INTEGER]; END. SpinifexExtras.mesa Copyright c 1984 by Xerox Corporation. All rights reserved. Written by Shand, June 12, 1984 3:11:49 pm PDT Last Edited by: Shand, July 25, 1984 6:16:15 am PDT -- Asymetric rectangle extenders, WNEGrow, NESGrow, ESWGrow, SWNGrow, WNGrow. Κς˜™Icodešœ Οmœ1™