public class Layer
extends java.lang.Object
implements java.io.Serializable, java.lang.Comparable
Modifier and Type | Class and Description |
---|---|
static class |
Layer.Function
Function is a typesafe enum class that describes the function of a layer.
|
Modifier and Type | Field and Description |
---|---|
static double |
DEFAULT_DISTANCE |
static double |
DEFAULT_THICKNESS |
static com.sun.electric.technology.Layer.LayerSortByLevel |
layerSortByLevel
A comparator object for sorting Layers by their level.
|
static com.sun.electric.technology.Layer.LayerSortByName |
layerSortByName
A comparator object for sorting Layers by their name.
|
Modifier and Type | Method and Description |
---|---|
int |
compareTo(java.lang.Object other) |
void |
copyState(Layer that) |
double |
getCapacitance()
Method to return the capacitance for this layer.
|
Setting |
getCapacitanceSetting()
Returns project preferences to tell the capacitance for this Layer.
|
java.lang.String |
getCIFLayer()
Method to return the CIF name of this layer.
|
Setting |
getCIFLayerSetting()
Returns project preferences to tell the CIF name of this Layer.
|
double |
getDepth()
Method to calculate Z value of the upper part of the layer.
|
double |
getDistance()
Method to return the distance of this layer, by default.
|
Setting |
getDistanceSetting()
Returns project preferences to tell the distance of this layer.
|
java.lang.String |
getDXFLayer()
Method to return the DXF name of this layer.
|
Setting |
getDXFLayerSetting()
Returns project preferences to tell the DXF name of this Layer.
|
double |
getEdgeCapacitance()
Method to return the edge capacitance for this layer.
|
Setting |
getEdgeCapacitanceSetting()
Returns project preferences to tell the edge capacitance for this Layer.
|
EGraphics |
getFactoryGraphics()
Method to return the graphics description of this Layer by factory default.
|
java.lang.String |
getFullName()
Method to return the full name of this Layer.
|
Layer.Function |
getFunction()
Method to return the Function of this Layer.
|
int |
getFunctionExtras()
Method to return the Function "extras" of this Layer.
|
EGraphics |
getGraphics()
Method to return the graphics description of this Layer.
|
LayerId |
getId()
Method to return the Id of this Layer.
|
int |
getIndex()
Method to return the index of this Layer.
|
java.lang.String |
getName()
Method to return the name of this Layer.
|
Layer |
getNonPseudoLayer()
Method to return the non-pseudo layer associated with this pseudo-Layer.
|
Layer |
getPseudoLayer()
Method to return the pseudo layer associated with this real-Layer.
|
PrimitiveNode |
getPureLayerNode()
Method to return the Pure Layer Node associated with this Layer.
|
double |
getResistance()
Method to return the resistance for this layer.
|
Setting |
getResistanceSetting()
Returns project preferences to tell the resistance for this Layer.
|
java.lang.String |
getSkillLayer()
Method to return the Skill name of this layer.
|
Setting |
getSkillLayerSetting()
Returns project preferences to tell the Skill name of this Layer.
|
Technology |
getTechnology()
Method to return the Technology of this Layer.
|
double |
getThickness()
Method to return the thickness of this layer, by default.
|
Setting |
getThicknessSetting()
Returns project preferences to tell the thickness of this layer.
|
boolean |
isCarbonNanotubeLayer()
Method to determine if the layer corresponds to a poly cut layer.
|
boolean |
isDiffusionLayer()
Method to determine if the layer function corresponds to a diffusion layer.
|
boolean |
isNonElectrical()
Method to tell whether this layer function is non-electrical.
|
boolean |
isPolyCutLayer()
Method to determine if the layer corresponds to a poly cut layer.
|
boolean |
isPseudoLayer()
Method to return true if this is pseudo-Layer.
|
boolean |
isVTImplantLayer()
Method to determine if the layer corresponds to a VT layer.
|
Layer |
makePseudo()
Method to create a pseudo-layer for this Layer with a standard name "Pseudo-XXX".
|
PrimitiveNode |
makePureLayerNode(java.lang.String nodeName,
double size,
Poly.Type style,
java.lang.String portName,
ArcProto... connections)
Method to make the Pure Layer Node associated with this Layer.
|
static Layer |
newInstance(Technology tech,
java.lang.String name,
EGraphics graphics)
Method to create a new layer with the given name and graphics.
|
void |
setFactory3DInfo(double thickness,
double distance)
Method to set the 3D distance and thickness of this Layer.
|
void |
setFactoryCIFLayer(java.lang.String cifLayer)
Method to set the factory-default CIF name of this Layer.
|
void |
setFactoryDXFLayer(java.lang.String dxfLayer)
Method to set the factory-default DXF name of this Layer.
|
void |
setFactoryParasitics(double resistance,
double capacitance,
double edgeCapacitance)
Method to set the Spice parasitics for this Layer.
|
void |
setFactorySkillLayer(java.lang.String skillLayer)
Method to set the factory-default Skill name of this Layer.
|
void |
setFunction(Layer.Function function)
Method to set the Function of this Layer.
|
void |
setFunction(Layer.Function function,
int functionExtras)
Method to set the Function of this Layer when the function is complex.
|
void |
setGraphics(EGraphics graphics)
Method to set the graphics description of this Layer.
|
void |
setIndex(int index)
Method to set the index of this Layer.
|
void |
setPureLayerNode(PrimitiveNode pln)
Method to set the Pure Layer Node associated with this Layer.
|
java.lang.String |
toString()
Returns a printable version of this Layer.
|
protected java.lang.Object |
writeReplace() |
public static final double DEFAULT_THICKNESS
public static final double DEFAULT_DISTANCE
public static final com.sun.electric.technology.Layer.LayerSortByLevel layerSortByLevel
public static final com.sun.electric.technology.Layer.LayerSortByName layerSortByName
public int compareTo(java.lang.Object other)
compareTo
in interface java.lang.Comparable
protected java.lang.Object writeReplace()
public static Layer newInstance(Technology tech, java.lang.String name, EGraphics graphics)
tech
- the Technology that this layer belongs to.name
- the name of the layer.graphics
- the appearance of the layer.public Layer makePseudo()
public LayerId getId()
public java.lang.String getName()
public java.lang.String getFullName()
public int getIndex()
public void setIndex(int index)
index
- the index of this Layer.public Technology getTechnology()
public void setGraphics(EGraphics graphics)
graphics
- graphics description of this Layer.public EGraphics getGraphics()
public EGraphics getFactoryGraphics()
public void setFunction(Layer.Function function)
function
- the Function of this Layer.public void setFunction(Layer.Function function, int functionExtras)
function
- the Function of this Layer.functionExtras
- extra bits to describe the Function of this Layer.public Layer.Function getFunction()
public int getFunctionExtras()
public void setPureLayerNode(PrimitiveNode pln)
pln
- the Pure Layer PrimitiveNode to use for this Layer.public PrimitiveNode makePureLayerNode(java.lang.String nodeName, double size, Poly.Type style, java.lang.String portName, ArcProto... connections)
nodeName
- the name of the PrimitiveNode.
Primitive names may not contain unprintable characters, spaces, tabs, a colon (:), semicolon (;) or curly braces ({}).size
- the width and the height of the PrimitiveNode.style
- the Poly.Type this PrimitiveNode will generate (polygon, cross, etc.).public PrimitiveNode getPureLayerNode()
public boolean isNonElectrical()
public boolean isDiffusionLayer()
public boolean isVTImplantLayer()
public boolean isPolyCutLayer()
public boolean isCarbonNanotubeLayer()
public boolean isPseudoLayer()
public Layer getPseudoLayer()
public Layer getNonPseudoLayer()
public void setFactory3DInfo(double thickness, double distance)
thickness
- the thickness of this layer.distance
- the distance of this layer above the ground plane (silicon).
Negative values represent layes in silicon like p++, p well, etc.public double getDistance()
public Setting getDistanceSetting()
public double getThickness()
public Setting getThicknessSetting()
public double getDepth()
public void setFactoryCIFLayer(java.lang.String cifLayer)
cifLayer
- the factory-default CIF name of this Layer.public java.lang.String getCIFLayer()
public Setting getCIFLayerSetting()
public void setFactoryDXFLayer(java.lang.String dxfLayer)
dxfLayer
- the factory-default DXF name of this Layer.public java.lang.String getDXFLayer()
public Setting getDXFLayerSetting()
public void setFactorySkillLayer(java.lang.String skillLayer)
skillLayer
- the factory-default Skill name of this Layer.public java.lang.String getSkillLayer()
public Setting getSkillLayerSetting()
public void setFactoryParasitics(double resistance, double capacitance, double edgeCapacitance)
resistance
- the resistance of this Layer.capacitance
- the capacitance of this Layer.edgeCapacitance
- the edge capacitance of this Layer.public double getResistance()
public Setting getResistanceSetting()
public double getCapacitance()
public Setting getCapacitanceSetting()
public double getEdgeCapacitance()
public Setting getEdgeCapacitanceSetting()
public java.lang.String toString()
toString
in class java.lang.Object
public void copyState(Layer that)