com.sun.electric.tool.io.input
Class ELIB

java.lang.Object
  extended by com.sun.electric.tool.io.input.Input
      extended by com.sun.electric.tool.io.input.LibraryFiles
          extended by com.sun.electric.tool.io.input.ELIB

public class ELIB
extends LibraryFiles

This class reads files in binary (.elib) format.


Nested Class Summary
static class ELIB.Header
           
 
Field Summary
 
Fields inherited from class com.sun.electric.tool.io.input.LibraryFiles
cellLambda, cellsConstructed, convertMosisCmosTechnologies, errorCount, IO_DUMMY_OBJECT, IO_TRUE_LIBRARY, lib, mainLibDirectory, nodeProtoCount, nodeProtoList, rotationMirrorBits, scaledCells, scaleLambdaBy20, sizeCorrectors, TINYDISTANCE, topLevelLibrary, totalCells, VERBOSE, version
 
Fields inherited from class com.sun.electric.tool.io.input.Input
byteCount, dataInputStream, errorLogger, fileLength, filePath, inputStream, lineReader, READ_BUFFER_SIZE
 
Method Summary
protected  boolean canScale()
           
protected  double computeLambda(Cell cell, int cellIndex)
           
protected  void computeTech(Cell cell, java.util.Set uncomputedCells)
           
protected  PortInst getArcEnd(ArcProto ap, NodeInst node, java.lang.String portname, double x, double y, Cell cell)
           
static ELIB.Header readLibraryHeader(java.net.URL fileURL, ErrorLogger errorLogger)
          Method to read a Library from disk.
protected  boolean readProjectSettings()
          Method to read project settings from a Library.
static boolean readStatistics(java.net.URL fileURL, ErrorLogger errorLogger, com.sun.electric.tool.io.input.LibraryStatistics.FileContents fc)
          Method to read a Library from disk.
protected  void realizeCellsRecursively(Cell cell, java.util.HashSet<Cell> recursiveSetupFlag, java.lang.String scaledCellName, double scale)
          Method to recursively create the contents of each cell in the library.
protected  boolean spreadLambda(Cell cell, int cellIndex)
           
 
Methods inherited from class com.sun.electric.tool.io.input.LibraryFiles
cleanupLibraryInput, convertGeomName, findOldViewName, findTechnologyName, getReaderForLib, initializeLibraryInput, readALibrary, readExternalLibraryFromFilename, readInputLibrary, readLibrary, readProjectsSettingsFromLibrary, reloadLibrary, reloadLibraryCells, scanNodesForRecursion
 
Methods inherited from class com.sun.electric.tool.io.input.Input
changesQuiet, closeInput, eofDuring, getAKeyword, getLine, getLineFromBinary, getProgressNote, getRestOfLine, importALibrary, importLibrary, importToCurrentLibrary, initKeywordParsing, isBreakCharacter, isChangeQuiet, isNewLibraryCreated, openBinaryInput, openStringsInput, openTextInput, preprocessLine, readWholeLine, setProgressNote, setProgressValue, startProgressDialog, stopProgressDialog, updateProgressDialog
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

readLibraryHeader

public static ELIB.Header readLibraryHeader(java.net.URL fileURL,
                                            ErrorLogger errorLogger)
Method to read a Library from disk. This method is for reading full Electric libraries in ELIB, JELIB, and Readable Dump format.

Parameters:
fileURL - the URL to the disk file.
Returns:
the read Library, or null if an error occurred.

readStatistics

public static boolean readStatistics(java.net.URL fileURL,
                                     ErrorLogger errorLogger,
                                     com.sun.electric.tool.io.input.LibraryStatistics.FileContents fc)
Method to read a Library from disk. This method is for reading full Electric libraries in ELIB, JELIB, and Readable Dump format.

Parameters:
fileURL - the URL to the disk file.
Returns:
the read Library, or null if an error occurred.

readProjectSettings

protected boolean readProjectSettings()
Description copied from class: LibraryFiles
Method to read project settings from a Library. This method is never called. Instead, it is always overridden by the appropriate read subclass.

Overrides:
readProjectSettings in class LibraryFiles
Returns:
true on error.

realizeCellsRecursively

protected void realizeCellsRecursively(Cell cell,
                                       java.util.HashSet<Cell> recursiveSetupFlag,
                                       java.lang.String scaledCellName,
                                       double scale)
Method to recursively create the contents of each cell in the library.


spreadLambda

protected boolean spreadLambda(Cell cell,
                               int cellIndex)
Overrides:
spreadLambda in class LibraryFiles

computeTech

protected void computeTech(Cell cell,
                           java.util.Set uncomputedCells)
Overrides:
computeTech in class LibraryFiles

computeLambda

protected double computeLambda(Cell cell,
                               int cellIndex)
Overrides:
computeLambda in class LibraryFiles

canScale

protected boolean canScale()
Overrides:
canScale in class LibraryFiles

getArcEnd

protected PortInst getArcEnd(ArcProto ap,
                             NodeInst node,
                             java.lang.String portname,
                             double x,
                             double y,
                             Cell cell)