oaOccShape Class Reference

Inheritance diagram for oaOccShape:

oaBlockObject oaDesignObject oaObject oaOccArc oaOccDonut oaOccDot oaOccEllipse oaOccLine oaOccPath oaOccPathSeg oaOccPolygon oaOccRect oaOccText oaOccTextDisplay


Public Methods

oaShapegetShape () const
void getBBox (oaBox &bBox) const
void getHierPath (oaHierPath &hierPath) const
oaLPPHeadergetHeader () const
oaLayerNum getLayerNum () const
oaPurposeNum getPurposeNum () const
oaRouteStatus getRouteStatus () const
oaBoolean hasPin () const
oaPingetPin () const
oaBoolean hasNet () const
oaNetgetNet () const
oaShapecopy (const oaTransform &xform) const
oaShapecopy (const oaTransform &xform, oaDesign *design) const
void release ()

Static Public Methods

oaOccShape * get (oaShape *shape, oaDesign *topDesign, const oaHierPath &hierPath)

Public Types

enum  { dtIndex = oacOccShapeDataType }

Detailed Description

The oaOccShape class is an abstract base class for all types of occurrence shapes. An oaOccShape object represents an unique occurrence of an oaShape object in a design hierarchy. Each type of oaShape will have a corresponding oaOccShape class. These classes include:

oaOccArc oaOccDonut oaOccDot oaOccEllipse oaOccLine oaOccPath oaOccPathSeg oaOccPolygon oaOccRect oaOccText oaOccEvalText oaOccTextDisplay oaOccPropDisplay oaOccAttrDisplay oaOccTextOverride oaOccInstPropDisplay oaOccInstAttrDisplay

The oaOccShape class has a read-only interface, which means that oaOccShape objects cannot be saved persistently, cannot have properties attached to them, and cannot be assigned to groups.

oaOccShapes are dynamically generated. Applications are responsible for notifying OpenAccess to free the resources associated with each oaOccShape object.


Member Function Documentation

oaShape * oaOccShape::copy const oaTransform &    xform,
oaDesign *    design
const
 

This function copies the occShape into an oaShape object in the specified design. The new shape is moved from the location of the original by the specified transform. The new shape is returned. An exception is thrown if the occShape is an occTextDisplay and the shape from which the occShape is generated is not in the specified design.

Parameters:
xform The transformation used to transform the occShape
design The target design
Exceptions:
oacInvalidTextDisplayCopy 

oaShape * oaOccShape::copy const oaTransform &    xform const
 

This function copies the occShape into an oaShape object in the design containing the occShape. The new shape is moved from the location of the original by the specified transform. The new shape is returned. An exception is thrown if the occShape is an occTextDisplay and the shape from which the occShape is generated is not in the top level design.

Parameters:
xform The transformation used to transform the occShape
Exceptions:
oacInvalidTextDisplayCopy 

oaOccShape * oaOccShape::get oaShape *    shape,
oaDesign *    topDesign,
const oaHierPath &    hierPath
[static]
 

This function returns the occShape associated with the given shape in the design associated with the given hierPath and topDesign. If the occShape does not exist, one will be generated and returned.

Parameters:
shape The shape from which the occShape is generated
topDesign Specifies the top level design of the design hierarchy associated with the given hierPath
hierPath Specifies the hierarchical path from the top level to the design containing the given shape.
Exceptions:
oacInvalidHierPath 

void oaOccShape::getBBox oaBox &    bBox const
 

This function fills out 'bBox' with the bBox of the specified occShape.

Parameters:
bBox The bounding box to be filled

oaLPPHeader * oaOccShape::getHeader   const
 

This function returns the lppHeader of the shape from which this occShape is generated.

void oaOccShape::getHierPath oaHierPath &    hierPath const
 

This function fills out the specified 'hierPath' with the hierPath associated with this occShape.

Parameters:
hierPath The oaHierPath to be filled

oaLayerNum oaOccShape::getLayerNum   const
 

This function returns the layer number of the shape from which this occShape is generated.

oaNet * oaOccShape::getNet   const
 

This function returns the highest net to which this occShape is attached.

Note that this function will return a net if the shape is directly assigned to a net or if the shape is in a route that is assigned to a net. It will not return a net (it will return NULL) if the shape belongs to a pin.

oaPin * oaOccShape::getPin   const
 

This function returns the pin implemented by the shape from which this occShape is generated. If the shape does not implement a pin, NULL is returned.

oaPurposeNum oaOccShape::getPurposeNum   const
 

This function returns the purpose number of the shape from which this occShape is generated.

oaRouteStatus oaOccShape::getRouteStatus   const
 

This function returns the routeStatus of the shape from which this occShape is generated.

oaShape * oaOccShape::getShape   const
 

This function returns the shape from which this occShape is generated.

oaBoolean oaOccShape::hasNet   const
 

This function returns a boolean indicating whether or not the shape from which this occShape is generated is attached to a net.

oaBoolean oaOccShape::hasPin   const
 

This function returns a boolean indicating whether or not the shape from which this occShape is generated.

void oaOccShape::release  
 

This function decrements the refCount of this occShape. If the refCount goes to zero, this occShape will be destroyed.


Member Enumeration Documentation

anonymous enum
 

Enumeration values:
dtIndex 


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

Return to top of page