Hurricane VLSI Database


List of all members | Public Member Functions
Hurricane::Slice Class Reference

Slice description (API) More...

Public Member Functions

CellgetCell () const
 
const LayergetLayer () const
 
const BoxgetBoundingBox () const
 
Gos getGos () const
 
Components getComponents () const
 
Components getComponentsUnder (const Box &area, DbU::Unit threshold=0) const
 

Detailed Description

Slice description (API)

Introduction

The slices are objects which split the layout description of a cell into horizontal slices grouping all objects located on a given layer and storing them into a fast geometrical access structure implemented by a quadtree.

Construction and destruction

The slices are fully managed by the cells : they are neither created nor destroyed by the application programmer.

Components are inserted in a slice (at their creation) and removed from their slice (at their deletion).

Empty slices being automatically deleted, you must never store pointers to them.

Example

The following example shows how to visit all cell components lying on a given basic layer and whose bounding box intersects some rectangular area.

Cell* cell = ...; // we get the cell
BasicLayer* basicLayer = ...; // we get the basic layer
Box area = ...; // we define the rectangular area
forEach(Slice*, islice, cell->getSlices()) {
if (islice->getLayer()->contains(basicLayer)) {
forEach(Component*, icomponent, slice->getComponentsUnder(area)) {
// ...
// here we visit all requested components
// ...
}
}
}

Member Function Documentation

◆ getCell()

Cell * Hurricane::Slice::getCell ( ) const
inline

Returns: the cell owning the slice.

◆ getLayer()

Layer * Hurricane::Slice::getLayer ( ) const
inline

Returns: the layer associated to the slice : all components lying in a cell are perforce located on that layer.

◆ getBoundingBox()

Box Hurricane::Slice::getBoundingBox ( ) const
inline

Returns: the bounding box of the slice, that is the smallest enclosing rectangle of all its components.

References Hurricane::QuadTree::getBoundingBox().

◆ getGos()

const Gos Hurricane::Slice::getGos ( ) const
inline

Returns: the collection of graphic objects lying on the slice.

References Hurricane::QuadTree::getGos().

◆ getComponents()

const Components Hurricane::Slice::getComponents ( ) const

Returns: the collection of components lying on the slice.

◆ getComponentsUnder()

const Components Hurricane::Slice::getComponentsUnder ( const Box area,
DbU::Unit  threshold = 0 
) const

Returns: the collection of components of the slice whose bounding box intersects the rectangular region defined by <area>.


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


Generated by doxygen 1.9.1 on Thu Aug 11 2022 Return to top of page
Hurricane VLSI Database Copyright © 2000-2020 Bull S.A. All rights reserved