# Hurricane VLSI Database

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

ContactLayer description (API) More...

Inheritance diagram for Hurricane::ContactLayer:
[legend]

## Static Public Member Functions
static ContactLayer * | create (Technology *technology, const Name &name, BasicLayer *metalLayer, BasicLayer *cutLayer, BasicLayer *activeLayer, BasicLayer *diffusionLayer, BasicLayer *wellLayer)

## Additional Inherited Members
Public Types inherited from Hurricane::Layer
typedef Hurricane::Mask< unsigned long long > | Mask
Public Member Functions inherited from Hurricane::Layer
Technology * | getTechnology () const
const Name & | getName () const
const Mask & | getMask () const
const Mask & | getExtractMask () const
const DbU::Unit & | getMinimalSize () const
const DbU::Unit & | getMinimalSpacing () const
virtual const Layer * | getTop () const
virtual const Layer * | getBottom () const
virtual const Layer * | getOpposite (const Layer *) const
Layer * | getMetalAbove (bool useSymbolic=true) const
Layer * | getMetalBelow (bool useSymbolic=true) const
Layer * | getCutAbove (bool useSymbolic=true) const
Layer * | getCutBelow (bool useSymbolic=true) const
bool | above (const Layer *layer) const
bool | below (const Layer *layer) const
bool | contains (const Layer *layer) const
bool | intersect (const Layer *layer) const
void | setName (const Name &name)
void | setMinimalSize (const DbU::Unit &minimalSize)
void | setMinimalSpacing (const DbU::Unit &minimalSpacing)
virtual void | setExtentionCap (const BasicLayer *layer, DbU::Unit)
virtual void | setExtentionWidth (const BasicLayer *layer, DbU::Unit)
Public Member Functions inherited from Hurricane::DBo
virtual void | destroy ()
Property * | getProperty (const Name &) const
Properties | getProperties () const
bool | hasProperty () const
void | put (Property *)
void | remove (Property *)
void | removeProperty (const Name &)
void | clearProperties ()

## Detailed Description

ContactLayer description (API)

For a more complete description of the Layers objects, please refer to Layer Introduction.

ContactLayer is a symbolic layer that contains four layers (metal, cut, active, diffusion) plus an optional well layer. Use it to represent a contact from the first metal level toward an active layer.

The accessors functions:

- ContactLayer::getTop()
- ContactLayer::getBottom()
- ContactLayer::getOpposite()

Have no meaning here.

Only enclosure is used. Extention cap & extention width are not used.

## Member Function Documentation

## ◆ create()

ContactLayer * Hurricane::ContactLayer::create | ( | Technology * | technology,
|  | const Name & | name,
|  | BasicLayer * | metalLayer,
|  | BasicLayer * | cutLayer,
|  | BasicLayer * | activeLayer,
|  | BasicLayer * | diffusionLayer,
|  | BasicLayer * | wellLayer
| ) |  |
| static

creates and returns a new contact layer named `<name>`, composed of metal, cut, active & diffusion BasicLayer and an optional WELL BasicLayer. A NULL value indicates that no NWELL is used.

Caution: Throws an exception if the technology is null, if the name is
  empty, if a layer of same name already exists or if we overflow the capacity of the bit field associated to the layer mask.

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

- ContactLayer.h
- ContactLayer.dox

Generated by doxygen 1.8.14 on Tue Jul 21 2020 | Return to top of page

Hurricane VLSI Database | Copyright © 2000-2016 Bull S.A. All rights reserved