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

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

# 2

# Changed Features

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

| Reader Class Routines

## Reader Class Routines

The following syntax was added to the listed reader class routines.

### defiBlockage

void setMask(int maskColor);
  int hasMask() const;
  int mask() const;

Description:

setMask(int maskColor)
| Adds the color mask number to the blockage. The default value is 0.
hasMask() | Checks if the blockage is colored.
mask() | Returns the color mask number of the blockage.

For more information, see "defiBlockage" in the DEF C/C++ Programming Interface Open Licensing Program).

### defiComponent

void setMaskShift(int color);
  int maskShiftSize();
  int maskShift(int index) const;

Description:

setMaskShift(int color)
| Sets the layer mask shift information.
maskShiftSize() | Returns the number of shifted layer masks.
maskShift(int index)
| Returns the layer masks by index. maskShift(0) will return the right-most digit.

For more information, see "defiComponent" in the DEF C/C++ Programming Interface Open Licensing Program).

### defiFill

void setMask(int colorMask);
  int layerMask() const
  int viaTopMask() const;
  int viaCutMask() const;
  int viaBottomMask() const;

Description:

setMask(int colorMask)
| Specifies the mask number information to the layer. The default value is 0.
layerMask() | Returns the layer mask information.
viaTopMask() | Returns the top mask number of the via.
viaCutMask() | Returns cut mask number of the via.
viaBottomMask() | Returns bottom mask number of the via.

For more information, see "defiFill" in the DEF C/C++ Programming Interface Open Licensing Program).

### defiNet

void addPolygon(const char* layerName,
  defiGeometries* geom,
  int *needCbk,
  int colorMask,
  ...);

void addRect(const char* layerName,
  defiGeometries* geom,
  int *needCbk,
  int colorMask,
  ...);

void addPts(const char* viaName,
  defiGeometries* geom,
  int *needCbk,
  int colorMask,
  ...);

int polyMask(int index) const;
  int rectMask(int index) const;
  int topMaskNum(int index) const;
  int cutMaskNum(int index) const;
  int bottomMask(int index) const;

Description:

addPolygon(const char* layerName, defiGeometries* geom, int *needCbk, int colorMask
| Specifies color mask information for a polygon. The default value is 0.
addRect(const char* layerName, defiGeometries* geom, int *needCbk, int colorMask,
| Specifies color mask information for a rectangle. The default value is 0.
addPts(const char* viaName, defiGeometries* geom, int *needCbk, int colorMask,
| Specifies color mask information for points. The default value is 0.
polyMask(int index) | Returns the color mask information of a polygon by index.
rectMask(int index) | Returns the color mask information of a rectangle by index.
topMaskNum(int index)
| Returns the top mask number of the via.
cutMaskNum(int index)
| Returns the cut mask number of the via.
bottomMask(int index)
| Returns the bottom mask number of the via.

For more information, see "defiNet" in the DEF C/C++ Programming Interface Open Licensing Program).

### defiPath

void addMask(int colorMask);
  void addViaMask(int colorMask);
  int getMask();
  int getViaTopMask();
  int getViaCutMask();
  int getViaBottomMask();
  int getRectMask();

Description:

addMask(int colorMask)
| Specifies the color mask information for a path.
addViaMask(int colorMask)
| Specifies the color mask information for a via.
getMask() | Returns the color mask information of a path.
getViaTopMask() | Returns the top mask number of a via.
getViaCutMask() | Returns the cut mask number of a via.
getViaBottomMask() | Returns the bottom mask number of a via.
getRectMask() | Returns the color mask information of a rectangle.

Additionally, a new enum was added to defiPath. The syntax is as follows:

enum defiPath_e {
  ...
  DEFIPATH_RECT,
  DEFIPATH_VIRTUALPOINT,
  DEFIPATH_MASK,
  DEFIPATH_VIAMASK

The returned value depends on the input data that is read in.

For more information, see "defiPath" in the DEF C/C++ Programming Interface Open Licensing Program).

### defiPinPort

void addLayerMask(int mask);
  void addPolyMask(int mask);
  void addVia(const char*via,
  int
viaX,
  int viaY,
  int mask);
  int layerMask(int index) const;
  int polygonMask(int index) const;
  int viaTopMask(int index) const;
  int viaCutMask(int index) const;
  int viaBottomMask(int index) const;};

Description:

addLayerMask(int mask)
| Specifies the color mask for a layer on the pin port.
addPolyMask(int mask)
| Specifies the color mask for a polygon on the pin port.
addVia(const char*via, int viaX, int viaY, int mask);
| Specifies the color mask for a via on the pin port.
layerMask(int index)
| Returns the layer mask number.
PolygonMask(int index)
| Returns the polygon mask number.
viaTopMask(int index)
| Returns top mask number of a via by index.
viaCutMask(int index)
| Returns cut mask number of a via by index.
viaBottomMask(int index)
| Returns bottom mask number of a via by index.

### defiPin

void addLayerMask(int mask);
  void addPolyMask(int mask);
  void addVia(const char*via,
  int
viaX,
  int viaY,
  int mask);
  void addPortLayerMask(int mask);
  void addPortPolyMask(int mask);
  int layerMask(int index) const;
  int polygonMask(int index) const;
  int viaTopMask(int index) const;
  int viaCutMask(int index) const;
  int viaBottomMask(int index) const;

Description:

addLayerMask(int mask)
| Specifies the color mask for a layer on the pin.
addPolyMask(int mask)
| Specifies the color mask for a polygon on the pin.
addVia(const char*via, int viaX, int viaY, int mask);
| Specifies the color mask for a via on the pin.
addPortLayerMask(int mask)
| Specifies the layer color mask number on the port.
addPortPolyMask(int mask)
| Specifies the polygon color mask number on the port.
layerMask(int index)
| Returns the layer mask number on a pin.
polygonMask(int index)
| Returns polygon mask number on a pin.
viaTopMask(int index)
| Returns the top mask number of a via by index.
viaCutMask(int index)
| Returns cut mask number of a via by index.
viaBottomMask(int index)
| Returns bottom mask number of a via by index.

For more information, see "defiPin" in the DEF C/C++ Programming Interface Open Licensing Program).

### defiTrack

void addMask(int colorMask,
  int sameMask);
  int firstTrackMask() const;
  int sameMask() const;

Description:

addMask(int colorMask) int sameMask);
| Specifies the mask number on the first routing track. If sameMask is true, all the routing tracks have the same mask number as the first mask.
int firstTrackMask()
| Returns the color mask information of the first routing track.
sameMask() | Indicates whether same mask is defined or not.

For more information, see "defiTrack" in the DEF C/C++ Programming Interface Open Licensing Program).

### defiVia

void addLayer(const char* layer,
  int
xl, int yl,
  int xh, int yh,
  int colorMask);
  void addPolygon(const char* layer,
  defiGeometries *geom,
  int colorMask);
  int rectMask(int index) const;
  int polyMask(int index) const;

Description:

addLayer(const char* layer, int xl, int yl, int xh, int yh, int colorMask);
| Specifies color mask information of a rectangle. The default value is 0.
addPolygon(const char* layer, defiGeometries *geom, int colorMask)
| Specifies color mask information of a polygon. The default value is 0.
rectMask(int index) | Returns color mask for the defined rectangle.
polyMask(int index) | Returns color mask for the defined polygon.

For more information, see "defiVia" in the DEF 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.