com.sun.electric.tool.io.output
Class Tegas

java.lang.Object
  extended by com.sun.electric.tool.io.output.Output
      extended by com.sun.electric.tool.io.output.Topology
          extended by com.sun.electric.tool.io.output.Tegas

public class Tegas
extends Topology

This is the netlister for Tegas.


Nested Class Summary
static class Tegas.TegasPreferences
           
 
Nested classes/interfaces inherited from class com.sun.electric.tool.io.output.Topology
Topology.CellAggregateSignal, Topology.CellNetInfo, Topology.CellSignal, Topology.MyCellInfo, Topology.Visitor
 
Nested classes/interfaces inherited from class com.sun.electric.tool.io.output.Output
Output.OutputPreferences, Output.WriteJELIB
 
Field Summary
 
Fields inherited from class com.sun.electric.tool.io.output.Topology
topCell
 
Fields inherited from class com.sun.electric.tool.io.output.Output
dataOutputStream, errorLogger, filePath, printWriter, quiet, stringWriter
 
Method Summary
protected  boolean canParameterizeNames()
          Method to tell whether the topological analysis should mangle cell names that are parameterized.
protected  void done()
          Abstract method called after traversal
protected  java.lang.String getGlobalName(Global glob)
          Method to return the proper name of a Global signal
protected  java.lang.String getGroundName(Network net)
          Method to return the proper name of Ground
protected  java.lang.String getPowerName(Network net)
          Method to return the proper name of Power
protected  java.lang.String getSafeCellName(java.lang.String name)
          Method to adjust a cell name to be safe for Tegas output.
protected  java.lang.String getSafeNetName(java.lang.String name, boolean bus)
          Method to adjust a network name to be safe for Tegas output.
protected  Netlist.ShortResistors getShortResistors()
          Tell the Hierarchy enumerator how to short resistors
protected  boolean isAggregateNameGapsSupported()
          Abstract method to decide whether aggregate names (busses) can have gaps in their ranges.
protected  boolean isAggregateNamesSupported()
          Method to report that aggregate names (busses) ARE used.
protected  boolean isCaseSensitive()
          Abstract method to decide whether netlister is case-sensitive (Verilog) or not (Spice).
protected  boolean isLibraryNameAlwaysAddedToCellName()
          Method to report that library names ARE always prepended to cell names.
protected  boolean isNetworksUseExportedNames()
          Method to report that export names DO take precedence over arc names when determining the name of the network.
protected  boolean isSeparateInputAndOutput()
          Method to report whether input and output names are separated.
protected  void start()
          Abstract method called before hierarchy traversal
protected  void writeCellTopology(Cell cell, Topology.CellNetInfo cni, VarContext context, Topology.MyCellInfo info)
          Method to write cellGeom
 
Methods inherited from class com.sun.electric.tool.io.output.Topology
enterCell, enumerateLayoutView, getCellNetInfo, getUniqueCellName, isChooseBestExportName, isShortExplicitResistors, isShortResistors, maxNameLength, parameterizedName, skipCellAndSubcells, unIndexedName, validateSkippedCell, writeCell, writeCell
 
Methods inherited from class com.sun.electric.tool.io.output.Output
closeBinaryOutputStream, closeStringsOutputStream, closeTextOutputStream, emitCopyright, exportCellCommand, finishWrite, getAreaToPrint, getNumErrors, getNumWarnings, getOutputPreferences, openBinaryOutputStream, openStringsOutputStream, openTextOutputStream, reportError, reportWarning, saveJelib, setContinuationString, setOutputWidth, writeLibrary, writeLibrary, writePanicSnapshot, writeWidthLimited
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

start

protected void start()
Description copied from class: Topology
Abstract method called before hierarchy traversal

Specified by:
start in class Topology

done

protected void done()
Description copied from class: Topology
Abstract method called after traversal

Specified by:
done in class Topology

writeCellTopology

protected void writeCellTopology(Cell cell,
                                 Topology.CellNetInfo cni,
                                 VarContext context,
                                 Topology.MyCellInfo info)
Method to write cellGeom

Specified by:
writeCellTopology in class Topology

getSafeCellName

protected java.lang.String getSafeCellName(java.lang.String name)
Method to adjust a cell name to be safe for Tegas output.

Specified by:
getSafeCellName in class Topology
Parameters:
name - the cell name.
Returns:
the name, adjusted for Tegas output.

getPowerName

protected java.lang.String getPowerName(Network net)
Method to return the proper name of Power

Specified by:
getPowerName in class Topology

getGroundName

protected java.lang.String getGroundName(Network net)
Method to return the proper name of Ground

Specified by:
getGroundName in class Topology

getGlobalName

protected java.lang.String getGlobalName(Global glob)
Method to return the proper name of a Global signal

Specified by:
getGlobalName in class Topology

isNetworksUseExportedNames

protected boolean isNetworksUseExportedNames()
Method to report that export names DO take precedence over arc names when determining the name of the network.

Specified by:
isNetworksUseExportedNames in class Topology

isLibraryNameAlwaysAddedToCellName

protected boolean isLibraryNameAlwaysAddedToCellName()
Method to report that library names ARE always prepended to cell names.

Specified by:
isLibraryNameAlwaysAddedToCellName in class Topology

isAggregateNamesSupported

protected boolean isAggregateNamesSupported()
Method to report that aggregate names (busses) ARE used.

Specified by:
isAggregateNamesSupported in class Topology

isAggregateNameGapsSupported

protected boolean isAggregateNameGapsSupported()
Abstract method to decide whether aggregate names (busses) can have gaps in their ranges.

Specified by:
isAggregateNameGapsSupported in class Topology

isSeparateInputAndOutput

protected boolean isSeparateInputAndOutput()
Method to report whether input and output names are separated.

Specified by:
isSeparateInputAndOutput in class Topology

isCaseSensitive

protected boolean isCaseSensitive()
Abstract method to decide whether netlister is case-sensitive (Verilog) or not (Spice).

Specified by:
isCaseSensitive in class Topology

getSafeNetName

protected java.lang.String getSafeNetName(java.lang.String name,
                                          boolean bus)
Method to adjust a network name to be safe for Tegas output.

Specified by:
getSafeNetName in class Topology

getShortResistors

protected Netlist.ShortResistors getShortResistors()
Tell the Hierarchy enumerator how to short resistors

Overrides:
getShortResistors in class Topology

canParameterizeNames

protected boolean canParameterizeNames()
Method to tell whether the topological analysis should mangle cell names that are parameterized.

Overrides:
canParameterizeNames in class Topology