oaPin Class Reference

Inheritance diagram for oaPin:

oaBlockObject oaDesignObject oaObject


Public Methods

void destroy ()
oaTermgetTerm () const
void getName (oaString &name) const
oaUInt4 getAccessDir () const
oaPlacementStatus getPlacementStatus () const
oaPinType getPinType () const
void setTerm (oaTerm *term)
void setName (const oaString &name)
void setAccessDir (oaUInt4 accessDir)
void setPlacementStatus (oaPlacementStatus status)
void setPinType (oaPinType pinType)
oaCollection< oaPinFig, oaPin > getFigs () const
oaCollection< oaRoute, oaPin > getConnRoutes () const

Static Public Methods

oaPin * create (oaTerm *term, oaUInt4 accessDir=oacNone)
oaPin * create (oaTerm *term, const oaString &name, oaUInt4 accessDir=oacNone)
oaPin * find (const oaTerm *term, const oaString &name)

Public Types

enum  { dtIndex = oacPinDataType }

Detailed Description

The oaPin class implements an object that represents the physical connections of terminals to nets. A terminal can have multiple pins where multiple physical connections can correspond to one logical connection.

All pins are associated with a physical figure and are named. These names can be assigned by the creator. For pins associated with scalar terminals, pin names can be automatically assigned by the database.

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


Member Function Documentation

oaPin * oaPin::create oaTerm *    term,
const oaString &    name,
oaUInt4    accessDir = oacNone
[static]
 

This function creates a pin on the specified terminal. The pin receives the specified access direction and name.

Parameters:
term The terminal on which to create the pin
name The pin name
accessDir The access direction of the pin, specified by OR'ing bits that represent the top, bottom, left, and right directions, referenced as oacTop, oacBottom, oacLeft, and oacRight; a value of oacNone specifies the pin should have no access direction
Returns:
A pointer to the oaPin
Exceptions:
oacTermCannotBeImplicit 
oacInvalidAccessDirForPin 
oacPinExists 

oaPin * oaPin::create oaTerm *    term,
oaUInt4    accessDir = oacNone
[static]
 

This function creates a pin on the specified terminal. The pin receives the specified access direction. The pin name is automatically generated, with the default prefix P__%d, d referring to a unique integer.

Parameters:
term The terminal on which to create the pin
accessDir The access direction of the pin, specified by OR'ing bits that represent the top, bottom, left, and right directions, referenced as oacTop, oacBottom, oacLeft, and oacRight; a value of oacNone specifies the pin should have no access direction.
Returns:
A pointer to the oaPin
Exceptions:
oacTermCannotBeImplicit 
oacInvalidAccessDirForPin 

void oaPin::destroy  
 

This function removes this pin from the database.

oaPin * oaPin::find const oaTerm *    term,
const oaString &    name
[static]
 

This function searches the specified terminal for a pin with the specified name.

Parameters:
term The terminal to search
name The pin name to find
Returns:
A pointer to the oaPin, if found; otherwise, NULL is returned

oaUInt4 oaPin::getAccessDir   const
 

This function returns the access direction bit-field for this pin.

oaCollection oaPin::getConnRoutes   const
 

This function returns a collection of routes connected to this pin. Each route in the collection has this pin as either its startConn, endConn, or both.

oaCollection< oaPinFig, oaPin > oaPin::getFigs   const
 

This function returns a collection of figures that are connected with this pin.

void oaPin::getName oaString &    name const
 

This function fills in the name argument with the name of this pin.

oaPinType oaPin::getPinType   const
 

This function returns the pin type of the oaPin object.

oaPlacementStatus oaPin::getPlacementStatus   const
 

This function returns the placement status of this pin.

oaTerm * oaPin::getTerm   const
 

This function returns a pointer to the terminal to which this pin is attached.

void oaPin::setAccessDir oaUInt4    accessDir
 

This function sets the access direction of this pin to the specified value.

Parameters:
accessDir The access direction of the pin, specified by OR'ing bits that represent the top, bottom, left, and right directions, referenced as oacTop, oacBottom, oacLeft, and oacRight; a value of oacNone specifies the pin should have no access direction

void oaPin::setName const oaString &    name
 

This function sets the name of this pin to the specified value.

Parameters:
name The pin name to set
Exceptions:
oacPinExists 

void oaPin::setPinType oaPinType    pinType
 

This function changes the pin type for this oaPin object.

Parameters:
pinType The oaPinTypeEnum value

void oaPin::setPlacementStatus oaPlacementStatus    status
 

This function sets the placement status of this pin to the specified value.

Parameters:
status The status to set

void oaPin::setTerm oaTerm *    term
 

This function sets the terminal for this pin to the specified value. The pin is given a unique name if the pin is explicitly named and if the specified terminal already has a pin with that name.

Parameters:
term The terminal to associate with the pin
Exceptions:
oacTermCannotBeImplicit 


Member Enumeration Documentation

anonymous enum
 

Enumeration values:
dtIndex 


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

Return to top of page