DIRECTORY CD, CDDefaults, CDPrivate, CDValue; CDDefaultsImpl: CEDAR PROGRAM IMPORTS CDPrivate, CDValue EXPORTS CDDefaults = BEGIN CurrentLevel: PUBLIC PROC [design: CD.Design] RETURNS [CD.Level] = BEGIN RETURN [CDValue.FetchInt[boundTo: design, key: $CurrentLevel, propagation: technology]] END; SetCurrentLevel: PUBLIC PROC [design: REF, level: CD.Level] = BEGIN CDValue.StoreInt[boundTo: design, key: $CurrentLevel, value: level] END; LevelWidth: PUBLIC PROC [design: CD.Design, level: CD.Level] RETURNS [CD.DesignNumber] = BEGIN RETURN [CDValue.FetchInt[boundTo: design, key: CDPrivate.levels[level].globalUniqueKey, propagation: technology]] END; SetLevelWidth: PUBLIC PROC [design: REF, level: CD.Level, width: CD.DesignNumber] = BEGIN CDValue.StoreInt[boundTo: design, key: CDPrivate.levels[level].globalUniqueKey, value: width] END; CDValue.EnregisterKey[key: $CurrentLevel, boundTo: NIL]; FOR l: CD.Level IN CD.Level DO [] _ CDValue.EnregisterKey[CDPrivate.levels[l].globalUniqueKey]; ENDLOOP; END. êCDDefaultsImpl.mesa (part of Chipndale) Copyright c 1983, 1984 by Xerox Corporation. All rights reserved. by Christian Jacobi August 11, 1983 11:32 am last edited by Christian Jacobi October 24, 1984 7:07:52 pm PDT --design can exceptionally be a technology to set default values --reserve call for CDPanelImpl; otherwise CDPanel gets fooled -- design can exceptionally be a technology to set default values -- reserve call for CDPanelImpl; otherwise CDPanel gets fooled ÊÕ˜šœ.™.Jšœ Ïmœ7™BJšœ/™/JšœA™A—J˜šÏk ˜ Jšžœ˜J˜ J˜ Jšœ˜J˜—šÏbœžœžœ˜Jšžœ˜Jšžœ ˜—Jšž˜J˜š Ïn œžœžœ žœ žœžœ ˜BJšž˜JšžœQ˜WJšžœ˜J˜—š  œžœžœ žœ žœ ˜=Jšž˜JšœC˜CJšžœ˜Jšœ@™@Jšœ=™=J˜—š  œžœžœ žœžœžœžœ˜XJšž˜Jšžœk˜qJšžœ˜J˜—š   œžœžœ žœ žœžœ˜SJšž˜Jšœ]˜]Jšžœ˜JšœA™AJšœ>™>J˜—Jšœ3žœ˜8š žœžœžœžœž˜Jšœ@˜@Jšžœ˜—Jšžœ˜J˜J˜J˜—…—ü»