oaCouplingCap Class Reference

Inheritance diagram for oaCouplingCap:

oaStdDevice oaDevice oaDesignObject oaObject


Public Methods

oaBoolean isLocal () const
oaBoolean isOtherConn () const
oaNodegetNode (oaEndpointType endpoint) const
oaNodegetOtherNode (oaNode *node) const
void getOtherNode (oaDesignObject *&otherNet, oaUInt4 &otherNodeId) const
oaDesignObjectgetOtherConn () const

Static Public Methods

oaCouplingCap * create (oaNode *fromNode, oaNode *toNode)
oaCouplingCap * create (oaNode *fromNode, oaNode *toNode, oaUInt4 id)
oaCouplingCap * create (oaNode *fromNode, oaDesignObject *otherNet, oaUInt4 otherNodeId, oaUInt4 id)
oaCouplingCap * create (oaNode *fromNode, oaDesignObject *otherConn, oaUInt4 id)

Detailed Description

The oaCouplingCap class represents a coupling capacitor that can couple between two nodes in the same parasitic network, between two nodes in different parasitic networks, or between a node in one parasitic network and an instTerm or term in a different network. Each oaCouplingCap object has one capacitance value for each analysis point that the parasitic network represents.

A coupling capacitor between two nodes in the same parasitic network is considered a local coupling cap. Local coupling caps have a single representation in the database. When a coupling capacitor physically connects two different parasitic networks, it is represented in the database as two distinct devices, one within each parasitic network. This allows each parasitic network to be loaded independently and efficiently.

The from endpoint of a oaCouplingCap always connects to a node in the same parasitic network as the oaCouplingCap itself. For local coupling caps, the to endpoint also connects to a node in the same parasitic network.

For coupling caps that connect nodes in two different networks, the nodes in both networks must be assigned a unique ID when the nodes are created. The net and the node ID are used to specify the node to which the to endpoint of each oaCouplingCap connects.

For coupling caps that connect a node in one parasitic network and an instTerm or term in a different network, the node must be assigned a unique ID when it is created. The oaDesignObject for the connection is used to specify the to endpoint of the oaCouplingCap. The isOtherConn() function must be used to distinguish between this type of coupling capacitor and coupling caps between nodes in different networks.


Member Function Documentation

oaCouplingCap * oaCouplingCap::create oaNode *    fromNode,
oaDesignObject *    otherConn,
oaUInt4    id
[static]
 

This function creates a coupling capacitor in the fromNode parasitic network that couples between fromNode and an instTerm or term in the parasitic network for another net. The parasitic network for the other net does not have to exist or be in memory at the time that this function is called.

Parameters:
fromNode The from which to couple
otherConn An instTerm or term to couple to in the parasitic network for another net
id The unique ID value
Exceptions:
oacCoupledNodeWithoutId 
oacNodeConnNotInSameDesign 
oacInvalidCouplingCapConnType 
oacNoConnForLocalCouplingCaps 
oacInvalidCouplingCapId 
oacNonLocalDeviceIdExists 

oaCouplingCap * oaCouplingCap::create oaNode *    fromNode,
oaDesignObject *    otherNet,
oaUInt4    otherNodeId,
oaUInt4    id
[static]
 

This function creates a coupling capacitor in the fromNode parasitic network that couples between fromNode and a node in the parasitic network for another net. The parasitic network for otherNet does not have to exist or be in memory at the time that this function is called. The otherNodeId specifies a unique ID for the node in the otherNet parasitic network, and that ID must be specified when the node is created.

The coupled nets must be within a given hierarchy domain, either oaNets or oaOccNets.

Parameters:
fromNode The node from which to couple
otherNet The other network to which to couple
otherNodeId A unique ID for the node in the other parasitic network
id The unique ID value
Exceptions:
oacCoupledNodeWithoutId 
oacInvalidCouplingCapId 
oacNodeNetNotInSameDesign 
oacInvalidNet 
oacDeviceNetNotInSameDomain 
oacNonLocalDeviceIdExists 

oaCouplingCap * oaCouplingCap::create oaNode *    fromNode,
oaNode *    toNode,
oaUInt4    id
[static]
 

This function creates a local coupling capacitor between the specified nodes. An explicit unique ID id is required to be specified. An exception will be thrown if the id is the reserved oacInvalidDeviceID value or if a device with the specified id value already exists. The hasId() function will return true for devices created with this function and the getId() function will return the user-specified id.

Coupling capacitors can be created between nodes in different partitions of the same root parasitic network, where one of the partitions must be an ancestor of the other. In this case, the couplingCap will be created in the lower level partition, and the node in the higher level partition must have an id so that it can be found when loading the lower level partition.

Parameters:
fromNode The node from which to couple
toNode The node to which to couple
id The unique ID to be assigned to this device
Exceptions:
oacInvalidDeviceIdSpecified 
oacLocalDeviceIdExists 
oacNodesNotInSameDesign 
oacNodesNotInSameNetwork 
oacNodesNotInRelatedPartitions 
oacAncestorNodeWithoutId 

oaCouplingCap * oaCouplingCap::create oaNode *    fromNode,
oaNode *    toNode
[static]
 

This function creates a local couplingCap between the specified nodes. An exception will be thrown if the two nodes are not in the same parasitic network. The device created will not have an ID associated with it. The hasId() function will return false for these devices and the getId() function will return an oacInvalidDeviceID value.

Coupling capacitors can be created between nodes in different partitions of the same root parasitic network, where one of the partitions must be an ancestor of the other. In this case, the couplingCap will be created in the lower level partition, and the node in the higher level partition must have an id so that it can be found when loading the lower level partition.

Parameters:
fromNode The node from which to couple
toNode The node to which to couple
Exceptions:
oacNodesNotInSameDesign 
oacNodesNotInSameNetwork 
oacNodesNotInRelatedPartitions 
oacAncestorNodeWithoutId 

oaNode * oaCouplingCap::getNode oaEndpointType    endpoint const
 

This function returns the node connected to the specified endpoint of this coupling cap. If this coupling capacitor connects to another parasitic network, NULL is returned for the to endpoint.

Parameters:
endpoint The endpoint value

Reimplemented from oaStdDevice.

oaDesignObject * oaCouplingCap::getOtherConn   const
 

This function returns a pointer to the conn (an instTerm or term) for the to endpoint of this device.

Exceptions:
oacNoConnForLocalCouplingCaps 
oacCouplingCapHasNoConn 

void oaCouplingCap::getOtherNode oaDesignObject *&    otherNet,
oaUInt4 &    otherNodeId
const
 

This function returns information about the node connected to the to endpoint of this device. The parasitic network for otherNet does not need to exist or be in memory at the time that this function is called. When this is a local coupling cap, the otherNodeId is set to oacNullIndex if the other node does not have an ID.

The other net may either be an oaNet or an oaOccNet. Coupling must either be between 2 occurrence nets or 2 block nets. It may not cross between them.

Parameters:
otherNet The other network from which to return information
otherNodeId A unique ID for the node in the other parasitic network

oaNode * oaCouplingCap::getOtherNode oaNode *    node const
 

This function returns the node connected to the other endpoint of this coupling capacitor (the endpoint that is not connected to node). When node is the from endpoint of this couplingCap and this coupling capacitor connects to another parasitic network, NULL is returned.

Parameters:
node The node connected to the other endpoint of this device

Reimplemented from oaStdDevice.

oaBoolean oaCouplingCap::isLocal   const
 

This function returns true if this coupling capacitor connects two nodes within the same parasitic network.

oaBoolean oaCouplingCap::isOtherConn   const
 

This function returns true if this couplingCap connects a node in the local network and a connection (an instTerm or term) in a different parasitic network.


The documentation for this class was generated from the following files:

Return to top of page