Chapter 11: INTERPRETERS

plug

11-5: Interpreter Attributes

plug


When examining the database from the language interpreters, you have access to many attributes on the various objects. This section lists the predefined attributes on the different Electric objects. Those attributes with a (*) next to them are relatively important to database examination.

This section is not meant as a full explanation of the attributes in the Electric database, but rather is a quick list. For more detail on these and other aspects of Electric internals, see the Electric Internals Manual (a document that is available from Static Free Software).

These basic attributes exist on components (NODEINST):
 ATTRIBUTETYPEDESCRIPTION
 aseenIntegerflags for the database
 firstportarcinstPORTARCINSThead of linked list of connecting arcs' ports
 firstportexpinstPORTEXPINSThead of linked list of exports
 geomGEOMgeometry module
*highxIntegerhigh X coordinate in database units
*highyIntegerhigh Y coordinate in database units
 lastinstNODEINSTlink to previous component of this type
 lastnodeinstNODEINSTlink to previous component in this cell
*lowxIntegerlow X coordinate in database units
*lowyIntegerlow Y coordinate in database units
 nextinstNODEINSTlink to next component of this type
 nextnodeinstNODEINSTlink to next component in this cell
*parentNODEPROTOcell that contains this component
*protoNODEPROTOtype of this component
*rotationIntegerangle in degrees of this component
*transposeIntegernonzero if component transposed after rot.
*userbitsIntegermiscellaneous flags

These basic attributes exist on component prototypes (NODEPROTO):
 ATTRIBUTETYPEDESCRIPTION
 adirtyIntegerflags for the database
*cellCELLcell of which this cell is a part
*cellviewVIEWview of this cell
 creationdateIntegerdate this cell was created
 firstarcinstARCINSThead of list of wires in this cell
 firstinstNODEINSThead of list of instances of this prototype
 firstnetworkNETWORKhead of list of networks in this cell
 firstnodeinstNODEINSThead of list of components in this cell
*firstportprotoPORTPROTOhead of list of exports on this cell
*highxIntegerhigh X coordinate in database units
*highyIntegerhigh Y coordinate in database units
*primindexIntegernonzero if this is a primitive prototype
 lastnodeprotoNODEPROTOlink to previous prototype in lib/tech
 lastversionNODEPROTOearlier version of this cell
*lowxIntegerlow X coordinate in database units
*lowyIntegerlow Y coordinate in database units
 newestversionNODEPROTOmost recent version of this cell
 nextnodeprotoNODEPROTOlink to next prototype in lib/tech
 nextincellNODEPROTOnext view in this cell
 revisiondateIntegerdate this cell was last modified
 rtreeRTNODEroot R-tree in this cell
*primnameStringname of this primitives (if primitive)
*techTECHNOLOGYtechnology in which this primitive resides
*userbitsIntegermiscellaneous flags
*versionIntegerversion number of this cell

These basic attributes exist on cells (CELL):
 ATTRIBUTETYPEDESCRIPTION
*cellnameStringname of this cell
*firstincellNODEPROTOfirst cell in this cell
*libLIBRARYlibrary containing this cell
*nextcellCELLlink to next cell in this library

These basic attributes exist on instantiated wire connections (PORTARCINST):
 ATTRIBUTETYPEDESCRIPTION
*conarcinstARCINSTwire that is connected at this port
 nextportarcinstPORTARCINSTlink to next instantiated wire connection
*protoPORTPROTOprototype of the port that is connected

These basic attributes exist on instantiated export instances (PORTEXPINST):
 ATTRIBUTETYPEDESCRIPTION
*exportprotoPORTPROTOexport prototype on parent cell
 nextportexpinstPORTEXPINSTlink to next instantiated export connection
*protoPORTPROTOprototype of the port that is an export

These basic attributes exist on connection prototypes (PORTPROTO):
 ATTRIBUTETYPEDESCRIPTION
 aseenIntegerflags for the database
*connectsARCPROTO arrayarray of arc types that may connect
*networkNETWORKnetwork object
 nextportprotoPORTPROTOlink to next connection prototype
*parentNODEPROTOcomponent prototype with connection
*protonameStringname of connection
*subnodeinstNODEINSTorigin component in cell
*subportexpinstPORTEXPINSTorigin export component in cell
*subportprotoPORTPROTOorigin port on component in cell
*userbitsIntegermiscellaneous flags

These basic attributes exist on wires (ARCINST):
 ATTRIBUTETYPEDESCRIPTION
 aseenIntegerflags for the database
*endshrinkIntegerdata for nonmanhattan end shrinkage
*geomGEOMgeometry module
 lastarcinstARCINSTlink to previous wire in cell
*lengthIntegerlength in database units
*networkNETWORKnetwork object
 nextarcinstARCINSTlink to next wire in cell
*nodeinst1NODEINSTcomponent on end 1
*nodeinst2NODEINSTcomponent on end 2
*parentNODEPROTOcell that contains this wire
*portarcinst1PORTARCINSTinstantiated wire connection on end 1
*portarcinst2PORTARCINSTinstantiated wire connection on end 2
*protoARCPROTOtype of this wire
*userbitsIntegermiscellaneous flags
*widthIntegerwidth in database units
*xpos1IntegerX coordinate of end 1 in database units
*xpos2IntegerX coordinate of end 2 in database units
*ypos1IntegerY coordinate of end 1 in database units
*ypos2IntegerY coordinate of end 2 in database units

These basic attributes exist on wire prototypes (ARCPROTO):
 ATTRIBUTETYPEDESCRIPTION
 arcindexInteger0-based index of this arc type
 nextarcprotoARCPROTOlink to next arc type in this technology
*nominalwidthIntegerdefault wire width in database units
*protonameStringname of this wire type
*techTECHNOLOGYtechnology in which this wire type resides
*userbitsIntegermiscellaneous flags

These basic attributes exist on networks (NETWORK):
 ATTRIBUTETYPEDESCRIPTION
*netnameStringname of this network
 namecountIntegernumber of names
 arccountIntegernumber of arcs on this network
 arcaddrARCINST arrayaddress of arc(s) on this network
 refcountIntegernumber of arcs on network
 portcountIntegernumber of ports on this network
 buslinkcountIntegernumber of busses referencing this network
*parentNODEPROTOcell that has this network
*signalsIntegerwidth of bus or index into bus
*networklistNETWORK arraylist of single-wire networks on bus
 nextnetworkNETWORKnext in linked list
 lastnetworkNETWORKprevious in linked list

These basic attributes exist on geometric objects (GEOM):
 ATTRIBUTETYPEDESCRIPTION
*entryisnodeIntegernonzero for component
*entryaddrNODEINST or ARCINSTaddress of component or wire
*highxIntegerhigh X coordinate in database units
*highyIntegerhigh Y coordinate in database units
*lowxIntegerlow X coordinate in database units
*lowyIntegerlow Y coordinate in database units

These basic attributes exist on R-tree nodes (RTNODE):
 ATTRIBUTETYPEDESCRIPTION
*flagIntegernonzero if pointers are terminal (geom)
*highxIntegerhigh X coordinate in database units
*highyIntegerhigh Y coordinate in database units
*lowxIntegerlow X coordinate in database units
*lowyIntegerlow Y coordinate in database units
*parentRTNODEparent R-tree node
*pointersRTNODE arraychildren (type depends on "flag")
*totalIntegernumber of children in this node

These basic attributes exist on cell libraries (LIBRARY):
 ATTRIBUTETYPEDESCRIPTION
*curnodeprotoNODEPROTOcurrently edited cell in library
 firstcellCELLhead of list of cells in library
 firstnodeprotoNODEPROTOhead of list of cells in library
 lambdaInteger arrayvalues of lambda for all technologies
*libnameStringname of this library
*libfileStringdisk file associated with this library
 nextlibraryLIBRARYlink to next library in Electric
*userbitsIntegermiscellaneous flags

These basic attributes exist on design environment objects (TECHNOLOGY):
 ATTRIBUTETYPEDESCRIPTION
*deflambdaIntegervalue of lambda in database units
 firstarcprotoARCPROTOhead of list of wire types in this technology
 firstnodeprotoNODEPROTOhead of list of primitive components
 techindexInteger0-based index of this technology
*nexttechnologyTECHNOLOGYlink to next technology in Electric
*techdescriptStringlong description of this technology
*technameStringshort name of this technology
 userbitsIntegermiscellaneous flags (none at present)

These basic attributes exist on views (VIEW):
 ATTRIBUTETYPEDESCRIPTION
*nextviewVIEWlink to next view
*viewnameStringname of this view
*sviewnameStringabbreviated name of this view

These basic attributes exist on editing window partition objects (WINDOWPART):
 ATTRIBUTETYPEDESCRIPTION
*curnodeprotoNODEPROTOcell in window
*gridxIntegerX spacing of grid
*gridyIntegerY spacing of grid
 lastwindowpartWINDOWPARTlast in linked list
*locationStringname of window
 nextwindowpartWINDOWPARTnext in linked list
 screenlxIntegerlow X coordinate in cell
 screenlyIntegerlow Y coordinate in cell
 screenhxIntegerhigh X coordinate in cell
 screenhyIntegerhigh Y coordinate in cell
 stateIntegermiscellaneous information about window
 uselxIntegerlow X coordinate on screen
 uselyIntegerlow Y coordinate on screen
 usehxIntegerhigh X coordinate on screen
 usehyIntegerhigh Y coordinate on screen

These basic attributes exist on graphical attribute objects (GRAPHICS):
 ATTRIBUTETYPEDESCRIPTION
*bitsIntegerbitplanes of color display
*colIntegercolor to use
*rasterInteger array16x16 bit pattern

These basic attributes exist on editing constraint objects (CONSTRAINT):
 ATTRIBUTETYPEDESCRIPTION
*connameStringname of constraint system
*condescStringdescription of constraint system

These basic attributes exist on synthesis and analysis tools (AID):
 ATTRIBUTETYPEDESCRIPTION
*aidnameStringname of this tool
*aidstateIntegermiscellaneous flags
*aidindexInteger0-based index of this tool

These basic attributes exist on polygons (POLYGON):
 ATTRIBUTETYPEDESCRIPTION
*countIntegernumber of points
*descGRAPHICSgraphic appearance
*fontIntegerfont size
*layerIntegerlayer number
 limitIntegermax allocated points
*portprotoPORTPROTOport association
*stringStringmessage (if text style)
*styleIntegerstyle
*techTECHNOLOGYtechnology
*xvInteger arrayX coordinate values
*yvInteger arrayY coordinate values


Prev Previous     Contents Table of Contents     Next Next