Glade Reference


array

An array is a reference to an array of cellViews, in another cellView. Arrays correspond to GDS2 AREFs. Arrays are created using the dbCreateArray cellView function. An array is derived from the inst class.

 

array::numRows(uint16_t rows)

Set the number of rows of this array.

 

uint16_t array::rows()

Get the number of rows for this array.

 

array::numCols(uint16_t cols)

Set the number of columns for this array.

 

uint16_t array::cols()

Get the number of columns for this array.

 

array::rowSpacing(int32_t spacing)

Set the row spacing. This can be positive or negative.

 

int32_t array::rowSpacing()

Get the row spacing.

 

array::colSpacing(int32_t spacing)

set the column spacing for this array. This can be positive or negative.

 

int32_t array::colSpacing()

Get the column spacing.

 

int32_t array:left()

Get the left edge of the array's bounding box. Note the bounding box of an array encloses all cells in the array, and depends on the origin, rotation and magnification, if any.

 

int32_t array::bottom()

Get the bottom edge of the array's bounding box

 

int32_t array::right()

Get the right edge of the array's bounding box

 

int32_t array::top()

Get the top edge of the array's bounding box

 

bool array::offGrid(const int32_t grid) const

Checks if an array origin is on the grid grid, which is in database units.

array::orient(orient_t orient)

Set the array orientation. orient can be one of: R0, R90, R180, R270, MX, MXR90, MY, MYR90.


orient_t array::orient ()

Get the array orientation.

array::bound(bool b)

Set the array binding. This should probably not be set by the user.

 

bool array::bound()

Get the instance binding status. An array is bound if it references a valid master.

 

double array::mag()

Get the array magnification. Magnifications other than 1.0 are supported, but their use is deprecated.

 

Rect array::bBox()

Get the array's bounding box.

 

const char * array::libName()

Get the array's lib name.

 

library * array::lib()

Get the array's library.

 

char * array::cellName()

Get the array's master cell name.

 

array::cellName(const char *s)

Set the array master's cellName.

 

char * array::viewName()

Get the array's view name.

 

array::viewName(const char *s)

Set the array master's viewName.

 

array::instName(cellView *cv, const char *instName)

Set the array's instName. cv is the cellView containing the instance.

 

char * array::instName()

Get the array's instName.

 

cellView * array::getMaster()

Get the cellview of the array's master.

 

array::setMaster(cellView * cv)

Set the array's master cellView.

 

Point & array::origin()

Get the origin of the array. Note that an array's origin does not have to be e.g. the lower left of its bounding box - it can be anywhere.

 

array::origin(const Point &p)

array::origin(int x, int y)

Set the origin of the array.

 

Rect array:bBox()

Get the array's bounding box.

 

db_Type array::objType() const

Returns the objects type as ARRAY

 

const char * array::objName() const

Returns the print name i.e. "ARRAY"

 

int32_t array::getNearestEdge(const Point &p, segment &edge) const

Get the nearest edge of this object to a Point p.

 

Rect array::getBoundary()

Returns the boundary shape rectangle (e.g. for a symbol or abstract view) if it exists; if not the master's bounding box.

 

array::transform(transform &trans)

Transform the array by the given transform trans.

 

array::scale(double scalefactor, double grid)

Scale the array origin coordinates by scalefactor, snapping to grid.

 

array::Move(cellView *cv, Point delta, bool opt=true)

Move the array origin by delta. If opt is true then the database is re-optimised for the new array position. If there are a lot of objects to move it makes sense to turn this off and instead use the cellView update() function after moving them all.

 

dbObj * array::Copy(cellView *cv, Point delta)

Copy the array. cv is the destination cellview, delta is the offset from the current origin. Returns a pointer to the copied object.

 

dbObjList<dbObj> * array::Flatten(cellView *cv, transform &trans)

Flatten the array into the cellView cv, with the given transform trans. Returns a dbObjList of the flattenned objects.

 

instPin & array::dbCreateInstPin(net *n, const char *name)

Create an instance pin on this array for the net n and pin name name.

 

array::dbDeleteInstPin(net *n, const char *pinName)

array::dbDeleteInstPin(instPin *ip)

Delete the instPin given by ip from this array.

 

instPin * array::dbFindInstPinByName(const char *name)

Find the inst pin with name name on this array. Returns nullptr if not found.

 

dbObjList<instPin> * array::getInstPins()

Get a list of all instPins for this array.

 

int32_t num = array::getNumInstPins()

Get the number of instPins for this array.

 

int16_t layer()

Returns the layer of the array, TECH_INSTANCE_LAYER.

 

int32_t array::mfactor()

Returns the m factor (multiplication factor) of the array.

 

int16_t array::numBits()

Returns the number of bits if the array has a vector name.

 

 

Contents|Index

Copyright © Peardrop Design 2024.