DIRECTORY Rope, SC, RefTab; SCStats: CEDAR DEFINITIONS = BEGIN Table: TYPE = RefTab.Ref; Key: TYPE = REF; NetStat: TYPE = REF NetStatRec; Int0: TYPE = INT _ 0; Real0: TYPE = REAL _ 0.0; VecSeqN: TYPE = RECORD[SEQUENCE ncols: INTEGER OF Int0]; RowN: TYPE = REF VecSeqN; VecSeqR: TYPE = RECORD[SEQUENCE ncols: INTEGER OF Real0]; RowR: TYPE = REF VecSeqR; Span: TYPE = RECORD [ min, max: INT ]; NetStatRec: TYPE = RECORD [ name: Rope.ROPE _ NIL, numPins: INT _ 0, xSpan: Span _ [0, 0], ySpan: Span _ [0, 0], trackLength: INT _ 0, ftHeight: INT _ 0, netStatDat: REF ANY _ NIL ]; CreateForRopes: PROC [mod: NAT _ 17] RETURNS [Table]; Fetch: PROC [table: Table, key: Key] RETURNS [found: BOOL, netStat: NetStat]; Store: PROC [table: Table, key: Key, netStat: NetStat] RETURNS [BOOL]; EnumerateNetStats: PROC [table: Table, action: EachNetStatAction] RETURNS [quit: BOOL]; EachNetStatAction: TYPE = PROC [key: Key, netStat: NetStat] RETURNS [quit: BOOL _ FALSE]; WriteSummaryStats: PROC [result: SC.Result]; WriteDetailStats: PROC [result: SC.Result]; CreateNetStats: PROC [result: SC.Result] RETURNS [table: Table]; WriteDetailNetStats: PROC [table: Table]; WriteSummaryNetStats: PROC [result: SC.Result, table: Table]; ReadStats: PROC [fileName: Rope.ROPE] RETURNS [stats: LIST OF SC.ChannelStats]; END. VSCStats.mesa Copyright Σ 1988 by Xerox Corporation. All rights reserved. Last Edited by: Preas, September 5, 1985 10:39:21 am PDT Massoud Pedram March 23, 1989 10:09:06 am PST To print stats from SC placement and routing; set SCNewRouteImpl.keepStats _ TRUE to gather statistics creates new table, whose length is mod. Does the right thing for Rope tables. looks up key in table, returns associated net (if any) if found is TRUE, net is value associated with given key if found is FALSE, net is NIL returns TRUE after inserting new pair returns FALSE after overwriting old net for existing key-net pair enumerates pairs currently in symbol table in unspecified order pairs inserted/deleted during enumeration may or may not be seen applies action to each pair until action returns TRUE or no more pairs returns TRUE if some action returns TRUE Κ ˜codešœ ™ Kšœ<™