oaBusNetBit Class Reference

Inheritance diagram for oaBusNetBit:

oaBitNet oaNet oaBlockObject oaDesignObject oaObject


Public Methods

oaBusNetDefgetDef () const
oaUInt4 getBitIndex () const
void getName (oaVectorBitName &name) const
void setName (const oaScalarName &baseName, oaUInt4 bitIndex)
void getName (oaName &name) const
void getName (const oaNameSpace &ns, oaString &name) const

Static Public Methods

oaBusNetBit * create (oaBlock *block, const oaScalarName &baseName, oaUInt4 bitIndex, oaSigType sigType=oacSignalSigType, oaBoolean isGlobale=false, oaBlockDomainVisibility view=oacInheritFromTopBlock)
oaBusNetBit * create (oaBlock *block, const oaVectorBitName &bitName, oaSigType sigType=oacSignalSigType, oaBoolean isGlobale=false, oaBlockDomainVisibility view=oacInheritFromTopBlock)
oaBusNetBit * find (const oaBlock *block, const oaScalarName &baseName, oaUInt4 bitIndex)
oaBoolean isValidName (const oaBlock *block, const oaScalarName &baseName, oaUInt4 bitIndex)

Detailed Description

The oaBusNetBit class implements an oaBitNet that represents a single bit of an oaBusNet which is a busNet in the block domain. When a busNet is created, a corresponding set of busNetBits is automatically created. When the busNet is destroyed, the automatically created busNetBits are also destroyed. An implicitly created busNetBit cannot be used to connect to terminals or instTerms, nor can it be associated with shapes or routes.

An oaBusNetBit can be explicitly created and used in other operations like creating terminals or instTerms. An explicitly created busNetBit must be explicitly destroyed.


Member Function Documentation

oaBusNetBit * oaBusNetBit::create oaBlock *    block,
const oaVectorBitName &    bitName,
oaSigType    sigType = oacSignalSigType,
oaBoolean    isGlobal = false,
oaBlockDomainVisibility    view = oacInheritFromTopBlock
[static]
 

This function creates a busNetBit with the baseName, attributes, and bitIndex as specified in the given bitName. If the vectorBitName is hierarchical, and the path already exists, and no oaOccNet with this name exists in the specified occurrence, the net is created in the specified occurrence.

Parameters:
block The block to create the net in
bitName The vector bit name to use for the net
sigType The signal type of the busNetBit
isGlobal Specifies if this is a global net
view Specifies whether this net is visible in the module domain
Exceptions:
oacBusNetNameMatchesAutoName 
oacBusNetBaseNameMatchesScalarName 
oacNetExists 
oacHierPathDoesNotExist 
oacHierPathCrossDesign 

oaBusNetBit * oaBusNetBit::create oaBlock *    block,
const oaScalarName &    baseName,
oaUInt4    bitIndex,
oaSigType    sigType = oacSignalSigType,
oaBoolean    isGlobal = false,
oaBlockDomainVisibility    view = oacInheritFromTopBlock
[static]
 

This function verifies that a net with the specified name does not exist and creates an oaBusNetBit with the specified name and attributes. If the baseName is hierarchical, and the path already exists, and no occNet with this name exists in the specified occurrence, the net is created in the specified occurrence.

Parameters:
block The block to create the net in
baseName The base name to give the net
bitIndex The bit index to give the net
sigType The signal type of the busNetBit
isGlobal Specifies if this is a global net
view Specifies whether this net is visible in the module domain
Exceptions:
oacBusNetNameMatchesAutoName 
oacBusNetBaseNameMatchesScalarName 
oacNetExists 
oacHierPathDoesNotExist 
oacHierPathCrossDesign 

oaBusNetBit * oaBusNetBit::find const oaBlock *    block,
const oaScalarName &    baseName,
oaUInt4    bitIndex
[static]
 

This function searches the specified block for an oaBusNetBit with the specified baseName and bitIndex. The net is returned if found, otherwise NULL is returned. The path portion of the name must specify the path to an existing occurrence in the design. A hierarchical name is considered an alias that identifies an oaOccNet in the occurrence domain. If the specified name is hierarchical, the return value is the canonical net in the block domain for the specified alias.

Parameters:
block The block to search
baseName The baseName of the busNetBit to locate
bitIndex The bit index of the busNetBit to locate

oaUInt4 oaBusNetBit::getBitIndex   const
 

This function returns the index for this busNetBit (with the respect of the corresponding bus net def). Returns can include non-consecutive numbers.

oaBusNetDef * oaBusNetBit::getDef   const
 

This function returns the busNetDef associated with this busNetBit.

void oaNet::getName const oaNameSpace &    ns,
oaString &    name
const
 

This function returns the name of this net in the specified nameSpace in the specified name string.

void oaNet::getName oaName &    name const
 

This function returns the name of this net in the name argument.

void oaBusNetBit::getName oaVectorBitName &    name const
 

This function returns the name of this oaBusNetBit.

Parameters:
name The name of the oaBusNetBit to return

oaBoolean oaBusNetBit::isValidName const oaBlock *    block,
const oaScalarName &    baseName,
oaUInt4    bitIndex
[static]
 

This function returns a boolean value indicating whether the specified name is valid for a new oaBusNetBit in the specified block. False is returned if the specified baseName is hierarchical, and an oaOccNet with the specified name already exists, or if an oaOccScalarNet with the same baseName already exists. False is also returned if the specified baseName is hierarchical, and there is no occurrence with that path name. These checks are done in the occurrence given by the path portion of the baseName not in the top occurrence.

Parameters:
block The block to search
baseName The base name of the bus bit
bitIndex The bit index of the bus bit

void oaBusNetBit::setName const oaScalarName &    baseName,
oaUInt4    bitIndex
 

This function changes the name of this busNetBit to that implied by the given baseName and bitIndex. If the specified name is hierarchical, is valid and the path is identical to the current path name of the oaBusNetBit, the baseName is set to the corresponding oaOccNet.

Parameters:
baseName The new base name for this net
bitIndex The new bit index for this net
Exceptions:
oacCannotSetNameOfImplicitNet 
oacCannotSetNameOfNetInBundleNet 
oacCannotSetNameOfNetInBusNet 
oacBusNetBaseNameMatchesScalarName 
oacNetExists 
oacHierPathDoesNotExist 
oacHierPathCrossDesign 
oacMismatchedHierPath 


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

Return to top of page