48
48
* at a higher level in the schematic or layout hierarchy.
49
49
* The PortProto also has a parent cell, characteristics, and more.
51
public interface PortProto
51
public interface PortProto {
53
53
/** Method to return PortProtoId of this PortProto.
54
54
* PortProtoId identifies PortProto independently of threads.
55
55
* @return PortProtoId of this PortProto.
57
57
public PortProtoId getId();
60
* Method to get the index of this PortProto.
61
* This is a zero-based index of ports on the NodeProto.
62
* @return the index of this PortProto.
64
public int getPortIndex();
67
* Method to return the name key of this PortProto.
68
* @return the Name key of this PortProto.
70
public Name getNameKey();
73
* Method to return the name of this PortProto.
74
* @return the name of this PortProto.
76
public String getName();
79
* Method to return the parent NodeProto of this PortProto.
80
* @return the parent NodeProto of this PortProto.
82
public NodeProto getParent();
85
* Method to return the PortCharacteristic of this PortProto.
86
* @return the PortCharacteristic of this PortProto.
88
public PortCharacteristic getCharacteristic();
91
* Method to determine whether this PortProto is of type Power.
92
* This is determined by either having the proper Characteristic, or by
93
* having the proper name (starting with "vdd", "vcc", "pwr", or "power").
94
* @return true if this PortProto is of type Power.
96
public boolean isPower();
99
* Method to determine whether this PortProto is of type Ground.
100
* This is determined by either having the proper PortCharacteristic, or by
101
* having the proper name (starting with "vss", "gnd", or "ground").
102
* @return true if this PortProto is of type Ground.
104
public boolean isGround();
107
* method to return the base-level port that this PortProto is created from.
108
* For a PrimitivePort, it simply returns itself.
109
* For an Export, it returns the base port of its sub-port, the port on the NodeInst
110
* from which the Export was created.
111
* @return the base-level port that this PortProto is created from.
113
public PrimitivePort getBasePort();
116
* Method to return true if the specified ArcProto can connect to this PortProto.
117
* @param arc the ArcProto to test for connectivity.
118
* @return true if this PortProto can connect to the ArcProto, false if it can't.
120
public boolean connectsTo(ArcProto arc);
60
* Method to get the index of this PortProto.
61
* This is a zero-based index of ports on the NodeProto.
62
* @return the index of this PortProto.
64
public int getPortIndex();
67
* Method to return the name key of this PortProto.
68
* @return the Name key of this PortProto.
70
public Name getNameKey();
73
* Method to return the name of this PortProto.
74
* @return the name of this PortProto.
76
public String getName();
79
* Method to return the parent NodeProto of this PortProto.
80
* @return the parent NodeProto of this PortProto.
82
public NodeProto getParent();
85
* Method to return the PortCharacteristic of this PortProto.
86
* @return the PortCharacteristic of this PortProto.
88
public PortCharacteristic getCharacteristic();
91
* Method to determine whether this PortProto is of type Power.
92
* This is determined by either having the proper Characteristic, or by
93
* having the proper name (starting with "vdd", "vcc", "pwr", or "power").
94
* @return true if this PortProto is of type Power.
96
public boolean isPower();
99
* Method to determine whether this PortProto is of type Ground.
100
* This is determined by either having the proper PortCharacteristic, or by
101
* having the proper name (starting with "vss", "gnd", or "ground").
102
* @return true if this PortProto is of type Ground.
104
public boolean isGround();
107
* method to return the base-level port that this PortProto is created from.
108
* For a PrimitivePort, it simply returns itself.
109
* For an Export, it returns the base port of its sub-port, the port on the NodeInst
110
* from which the Export was created.
111
* @return the base-level port that this PortProto is created from.
113
public PrimitivePort getBasePort();
116
* Method to return true if the specified ArcProto can connect to this PortProto.
117
* @param arc the ArcProto to test for connectivity.
118
* @return true if this PortProto can connect to the ArcProto, false if it can't.
120
public boolean connectsTo(ArcProto arc);