oaOccVectorInstDef Class Reference

Inheritance diagram for oaOccVectorInstDef:

oaOccObject oaDesignObject oaObject


Public Methods

oaUInt4 getMinIndex () const
oaUInt4 getMaxIndex () const
oaUInt4 getNumBits () const
void getName (oaScalarName &name) const
void getName (const oaNameSpace &ns, oaString &name) const
void getPathName (oaScalarName &pathName) const
void getPathName (const oaNameSpace &ns, oaString &pathName) const
oaBitOrder getBitOrder () const
oaBoolean isImplicit () const
oaCollection< oaOccInst, oaOccVectorInstDef > getVectorInsts () const
oaCollection< oaOccInst, oaOccVectorInstDef > getVectorInstBits () const

Static Public Methods

oaOccVectorInstDef * find (const oaOccurrence *occurrence, const oaScalarName &name)

Public Types

enum  { dtIndex = oacVectorInstDefDataType }

Detailed Description

The oaOccVectorInstDef class implements the definition of an occurrence vectorInst, including its base name and bit-range. All vectorInsts in an occurrence with the same base name are managed by the same vectorInst definition. The oaOccvectorInstDef class tracks the minimum and maximum indices referred to by all of its corresponding vectorInst objects.

The bit order of an explicit oaOccVectorInstDef is independent of the order within individual oaOccVectorInsts with the same base name. Verilog requires a single wire declaration for a given base name, and the range of that declaration covers all of the bit indices used by the sub-ranges that correspond to oaOccVectorInsts.

A vectorInstDef can be 'sparse' (have missing bits). Vectors do not have to start or end at zero. For example, a[22:25] is a legal vectorInst name. Vector indexes must be non-negative.

The oaOccVectorInstDef class can be observed by deriving from oaObserver<oaOccVectorInstDef>.


Member Function Documentation

oaOccVectorInstDef * oaOccVectorInstDef::find const oaOccurrence *    occurrence,
const oaScalarName &    baseName
[static]
 

This function searches the specified occurrence looking for a vectorInstDef with the specified baseName. If baseName is hierarchical, this function will descend into lower levels of occurrence hierarchy, expanding the hierarchy and binding the master designs as needed. The vectorInstDef is returned if found, otherwise NULL is returned.

Parameters:
occurrence The occurrence in which to search
baseName The base name of the vectorInstDef to find
Returns:
A pointer to the oaOccVectorInstDef

oaBitOrder oaOccVectorInstDef::getBitOrder   const
 

This function returns the bitOrder associated with this oaOccVectorInstDef object.

oaUInt4 oaOccVectorInstDef::getMaxIndex   const
 

This function returns the largest bit number in use for this oaOccVectorInstDef object. This is the largest index used across all vectorInsts associated with this oaOccVectorInstDef object.

oaUInt4 oaOccVectorInstDef::getMinIndex   const
 

This function returns the smallest bit number in use for this oaOccVectorInstDef object. This is the smallest index used across all vectorInsts associated with this oaOccVectorInstDef object.

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

This function returns the local name of this vectorInstDef in the specified nameSpace in the specified name string. The name is relative to the parent occurrence of this vectorInstDef.

Parameters:
ns The nameSpace used to map the name
name The returned vectorInstDef name

void oaOccVectorInstDef::getName oaScalarName &    name const
 

This function returns the local name of this vectorInstDef within its parent occurrence.

Parameters:
name The returned vectorInstDef name

oaUInt4 oaOccVectorInstDef::getNumBits   const
 

This function returns the number of bits covered by the vectorInsts in this oaOccVectorInstDef. The number of bits is equal to abs(maxIndex - minIndex) + 1.

void oaOccVectorInstDef::getPathName const oaNameSpace &    ns,
oaString &    pathName
const
 

This function returns the full path name of this vectorInstDef in the specified nameSpace in the specified pathName string. The pathName is relative to the top occurrence in the occurrence hierarchy containing this vectorInstDef.

Parameters:
ns The nameSpace used to map the name
pathName The returned path name

void oaOccVectorInstDef::getPathName oaScalarName &    pathName const
 

This function returns the full path name of this vectorInstDef, relative to the top occurrence in the occurrence hierarchy containing this vectorInstDef.

Parameters:
pathName The returned path name

oaCollection oaOccVectorInstDef::getVectorInstBits   const
 

This function returns a collection of oaOccVectorInstBit and oaOccModuleVectorInstBit objects associated with this oaOccVectorInstDef object.

oaCollection oaOccVectorInstDef::getVectorInsts   const
 

This function returns a collection of oaOccVectorInst and oaOccModuleVectorInst objects associated with this oaOccVectorInstDef object.

void oaOccVectorInstDef::isImplicit   const
 

This function returns a boolean indicating whether this oaOccVectorInstDef was implicitly created or not.


Member Enumeration Documentation

anonymous enum
 

Enumeration values:
dtIndex 


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

Return to top of page