# What's New in LEF 5.8 C/C++ Programming Interface -- 2
Describes new, changed, and removed features for the LEF API in version 5.8.
Author: Technical Publications

###
What's New in LEF 5.8 C/C++ Programming Interface

# 2

# Changed Features

This chapter describes the features that were changed in this release of the LEF application programming interface.

| Layer Routines

## Layer Routines

The following syntax has been added to the listed layer routines.

### lefiGeometries

int colorMask;
  void addPath(int colorMask);
  void addPathIter(int colorMask);
  void addRect(int colorMask);
  void addRectIter(int colorMask);
  void addPolygon(int colorMask);
  void addPolygonIter(int colorMask);
  void addVia(int viaMasks);
  void addViaIter(int viaMasks);

These are described below:

colorMask | Defines the color mask number for the GeomRect structure.
addPathIter(int colorMask)
| Adds the color mask number to the lefiGeomPath structure. The default value is 0.
addPathIter(int colorMask)
| Adds the color mask number to the lefiGeomPathIter structure. The default value is 0.
addRectIter(int colorMask)
| Adds the color mask number to the lefiGeomRectIter structure. The default value is 0.
addPolygon(int colorMask)
| Adds the color mask number to the lefiGeomPolygon structure. The default value is 0.
addPolygonIter(int colorMask)
| Adds the color mask number to the lefiGeomRectIter structure. The default value is 0.
addVia(int viaMasks)
| Adds the via mask number to the lefiGeomVia structure. The default value is 0.
addViaIter(int viaMasks)
| Adds the via mask number to the lefiGeomViaIter structure. The default value is 0.

For more information, see "lefiGeometries" in the LEF C/C++ Programming Interface (Open Licensing Program).

### lefiGeomRect

int colorMask;

Defines the color mask number for the GeomRect struct. The default value is 0.

For more information, see "lefiGeomRect" in the LEF C/C++ Programming Interface (Open Licensing Program).

### lefiGeomRectIter

int colorMask;

Defines the color mask number for the GeomRectIter struct. The default value is 0.

For more information, see "lefiGeomRect" in the LEF C/C++ Programming Interface (Open Licensing Program).

### lefiGeomPath

int colorMask;

Defines the color mask number for the GeomPath struct. The default value is 0.

For more information, see "lefiGeomPath" in the LEF C/C++ Programming Interface (Open Licensing Program).

### lefiGeomPathIter

int colorMask;

Defines the color mask number for the GeomPathIter struct. The default value is 0.

For more information, see "lefiGeomPathIter" in the LEF C/C++ Programming Interface (Open Licensing Program).

### lefiGeomPolygon

int colorMask;

Defines the color mask number for the GeomPolygon struct. The default value is 0.

For more information, see "lefiGeomPolygon" in the LEF C/C++ Programming Interface (Open Licensing Program).

### lefiGeomPolygonIter

int colorMask;

Defines the color mask number for the GeomPolygonIter struct. The default value is 0.

For more information, see "lefiGeomPolygonIter" in the LEF C/C++ Programming Interface (Open Licensing Program).

### lefiGeomVia

int topMaskNum;
  int cutMaskNum;
  int bottomMaskNum;

Indicates the top, bottom, and cut mask numbers for the GeomVia struct. The default value is 0.

For more information, see "lefiGeomVia" in the LEF C/C++ Programming Interface (Open Licensing Program).

### lefiGeomViaIter

int topMaskNum;
  int cutMaskNum;
  int bottomMaskNum;

Indicates the top, bottom, and cut mask numbers for the GeomViaIter struct. The default value is 0.

For more information, see "lefiGeomViaIter" in the LEF C/C++ Programming Interface (Open Licensing Program).

### lefiLayer

void setMask(int num);
  int hasMask() const;
  Int mask() const;

These are described below:

setMask(int num) | Sets the color mask number on the layer.
hasMask() | Checks whether the layer has a color mask assigned to it or not.
mask() | Returns the color mask number of the layer.

For more information, see "lefiLayer" in the LEF C/C++ Programming Interface (Open Licensing Program).

### lefiViaLayer

void addRect(int mask,
  double
xl,
  double yl
double xh
double yn);
  void addPoly(int mask,
  lefiGeometries* geom);
  int rectColorMask(int index);
  int polyColorMask(int index);

These are described below:

addRect(int mask) | Adds the color mask number to the rectangle inside the via.The default value is 0.
addPoly(int mask) | Adds the color mask number to the polygon. The default value is 0.
rectColorMask(int index)
| Returns the color mask number on the rectangle.
polyColorMask(int index)
| Returns the color mask number on the polygon.

For more information, see "lefiViaLayer" in the LEF C/C++ Programming Interface (Open Licensing Program).

### lefiVia

void addRectToLayer(int mask,
  double
xl,
  double yl,
  double xh,
  double yh);
  void addPolyToLayer(int mask,
  lefiGeometries* geom);
  int rectColorMask(int layerNum,
  int rectNum);
  int polyColorMask(int layerNum,
  int rectNum);

These are described below:

addRectToLayer(int mask)
| Adds the color mask of the via rectangle to the layer. The default value is 0.
addPolyToLayer(int mask)
| Adds the color mask of the via polygon to the layer. The default value is 0.
rectColorMask(int layerNum, int rectNum)
| Returns the color mask number of the indexed rectangle inside the via for that layer.
polyColorMask(int layerNum, int rectNum)
| Returns the color mask number of the indexed polygon inside the via for that layer.

For more information, see "lefiVia" in the LEF C/C++ Programming Interface (Open Licensing Program).

Return to top of page

For support, see Cadence Online Support service.
Copyright © 2016, Cadence Design Systems, Inc.
All rights reserved.