# Coriolis Core (CRL) Documentation

Public Member Functions | Static Public Member Functions | List of all members
CRL::RoutingGauge Class Reference

Gauge for the detailed routing. More...

## Public Member Functions
virtual void | destroy ()
RoutingGauge * | getClone () const
const Name | getName () const
Technology * | getTechnology () const
size_t | getDepth () const
RoutingLayerGauge * | getLayerGauge (const Layer *) const
size_t | getLayerDepth (const Layer *) const
unsigned int | getLayerDirection (const Layer *) const
RoutingLayerGauge * | getLayerGauge (size_t depth) const
unsigned int | getLayerDirection (size_t depth) const
const Layer * | getRoutingLayer (size_t depth) const
Layer * | getContactLayer (size_t depth) const
const vector< RoutingLayerGauge * > & | getLayerGauges () const
void | addLayerGauge (RoutingLayerGauge *layerGauge)
void | checkConnexity () const

## Static Public Member Functions
static RoutingGauge * | create (const char *name)

## Detailed Description

Gauge for the detailed routing.

## Member Function Documentation

## ◆ create()

RoutingGauge * CRL::RoutingGauge::create | ( | const char * | name | ) |
| static

Returns: A new, empty, gauge named `name`.

## ◆ destroy()

void CRL::RoutingGauge::destroy | ( |  | ) |
| virtual

Returns: destroy the routing gauge.

## ◆ getClone()

RoutingGauge * CRL::RoutingGauge::getClone | ( |  | ) | const

Returns: a deep copy of the gauge.

## ◆ getName()

const Name CRL::RoutingGauge::getName | ( |  | ) | const
| inline

Returns: the name of the gauge.

## ◆ getTechnology()

Hurricane::Technology * CRL::RoutingGauge::getTechnology | ( |  | ) | const
| inline

Returns: the technology the gauge is built upon.

## ◆ getDepth()

size_t CRL::RoutingGauge::getDepth | ( |  | ) | const
| inline

Returns: the number of routing layers.

## ◆ getLayerGauge() [1/2]

RoutingLayerGauge * CRL::RoutingGauge::getLayerGauge | ( | const Layer * | layer | ) | const

Returns: the RoutingLayerGauge associated with `layer`. NULL if `layer` is not managed by the gauge.

Referenced by getLayerDirection().

## ◆ getLayerDepth()

size_t CRL::RoutingGauge::getLayerDepth | ( | const Layer * | layer | ) | const

Returns: the depth of the `layer`. If `layer` is not managed by the gauge, return UINT_MAX.

## ◆ getLayerDirection() [1/2]

unsigned int CRL::RoutingGauge::getLayerDirection | ( | const Layer * | layer | ) | const

Returns: the preferred routing direction for `layer`.

## ◆ getLayerGauge() [2/2]

RoutingLayerGauge * CRL::RoutingGauge::getLayerGauge | ( | size_t | depth | ) | const

Returns: the RoutingLayerGauge at position `depth`.

## ◆ getLayerDirection() [2/2]

unsigned int CRL::RoutingGauge::getLayerDirection | ( | size_t | depth | ) | const
| inline

Returns: the preferred routing direction at position `depth`.

References CRL::RoutingLayerGauge::getDirection(), and getLayerGauge().

## ◆ getRoutingLayer()

const Layer * CRL::RoutingGauge::getRoutingLayer | ( | size_t | depth | ) | const

Returns: the Layer at position `depth`.

## ◆ getContactLayer()

Layer * CRL::RoutingGauge::getContactLayer | ( | size_t | depth | ) | const

Returns: the Contact Layer at position `depth`.

## ◆ getLayerGauges()

const std::vector< RoutingLayerGauge * > & CRL::RoutingGauge::getLayerGauges | ( |  | ) | const

Returns: the stack of RoutingLayerGauge.

## ◆ addLayerGauge()

void CRL::RoutingGauge::addLayerGauge | ( | RoutingLayerGauge * | layerGauge | ) |

Returns: add a new `layerGauge`, on top of the others. The order of addition is meaningful (it's a stack). The closer to the substrate must be added first.

## ◆ checkConnexity()

void CRL::RoutingGauge::checkConnexity | ( |  | ) | const

Returns: Verify that the stacked layers are connex and that contacts between them exists.

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

- RoutingGauge.h
- RoutingGauge.dox

Generated by doxygen 1.8.14 on Mon Apr 27 2020 | Return to top of page

Coriolis Core (CRL) | Copyright © 2008-2016 UPMC All rights reserved