KLayout 0.29.8 (2024-10-28 63dd591e5) [master]

API reference - Class LEFDEFReaderConfiguration

Notation used in Ruby API documentation

Module: db

Description: Detailed LEF/DEF reader options

This class is a aggregate belonging to the LoadLayoutOptions class. It provides options for the LEF/DEF reader. These options have been placed into a separate class to account for their complexity. This class specifically handles layer mapping. This is the process of generating layer names or GDS layer/datatypes from LEF/DEF layers and purpose combinations. There are basically two ways: to use a map file or to use pattern-based production rules.

To use a layer map file, set the map_file attribute to the name of the layer map file. The layer map file lists the GDS layer and datatype numbers to generate for the geometry.

The pattern-based approach will use the layer name and attach a purpose-dependent suffix to it. Use the ..._suffix attributes to specify this suffix. For routing, the corresponding attribute is routing_suffix for example. A purpose can also be mapped to a specific GDS datatype using the corresponding ..._datatype attributes. The decorated or undecorated names are looked up in a layer mapping table in the next step. The layer mapping table is specified using the layer_map attribute. This table can be used to map layer names to specific GDS layers by using entries of the form 'NAME: layer-number'.

If a layer map file is present, the pattern-based attributes are ignored.

Public constructors

new LEFDEFReaderConfiguration ptrnewCreates a new object of this class

Public methods

[const]LEFDEFReaderConfiguration ptr_const_castReturns a non-const reference to self.
void_createEnsures the C++ object is created
void_destroyExplicitly destroys the object
[const]bool_destroyed?Returns a value indicating whether the object was already destroyed
[const]bool_is_const_object?Returns a value indicating whether the reference is a const reference
void_manageMarks the object as managed by the script side.
void_unmanageMarks the object as no longer owned by the script side.
voidassign(const LEFDEFReaderConfiguration other)Assigns another object to self
[const]intblockages_datatypeGets the blockage marker layer datatype value.
voidblockages_datatype=(int datatype)Sets the blockage marker layer datatype value.
[const]stringblockages_suffixGets the blockage marker layer name suffix.
voidblockages_suffix=(string suffix)Sets the blockage marker layer name suffix.
[const]stringcell_outline_layerGets the layer on which to produce the cell outline (diearea).
voidcell_outline_layer=(string spec)Sets the layer on which to produce the cell outline (diearea).
voidclear_fill_datatypes_per_maskClears the fill layer datatypes per mask.
voidclear_fills_suffixes_per_maskClears the fill layer name suffix per mask.
voidclear_lef_pins_datatypes_per_maskClears the LEF pin layer datatypes per mask.
voidclear_lef_pins_suffixes_per_maskClears the LEF pin layer name suffix per mask.
voidclear_pin_datatypes_per_maskClears the pin layer datatypes per mask.
voidclear_pins_suffixes_per_maskClears the pin layer name suffix per mask.
voidclear_routing_datatypes_per_maskClears the routing layer datatypes per mask.
voidclear_routing_suffixes_per_maskClears the routing layer name suffix per mask.
voidclear_special_routing_datatypes_per_maskClears the special routing layer datatypes per mask.
voidclear_special_routing_suffixes_per_maskClears the special routing layer name suffix per mask.
voidclear_via_geometry_datatypes_per_maskClears the via geometry layer datatypes per mask.
voidclear_via_geometry_suffixes_per_maskClears the via geometry layer name suffix per mask.
[const]boolcreate_other_layersGets a value indicating whether layers not mapped in the layer map shall be created too
voidcreate_other_layers=(bool f)Sets a value indicating whether layers not mapped in the layer map shall be created too
[const]doubledbuGets the database unit to use for producing the layout.
voiddbu=(double dbu)Sets the database unit to use for producing the layout.
[const]new LEFDEFReaderConfiguration ptrdupCreates a copy of self
[const]intfills_datatypeGets the fill geometry layer datatype value.
[const]intfills_datatype(unsigned int mask)Gets the fill geometry layer datatype value per mask.
voidfills_datatype=(int datatype)Sets the fill geometry layer datatype value.
[const]stringfills_suffixGets the fill geometry layer name suffix.
voidfills_suffix=(string suffix)Sets the fill geometry layer name suffix.
[const]stringfills_suffix_per_mask(unsigned int mask)Gets the fill geometry layer name suffix per mask.
[const]variantinstance_property_nameGets a value indicating whether and how to produce instance names as properties.
voidinstance_property_name=(variant name)Sets a value indicating whether and how to produce instance names as properties.
[const]booljoined_pathsGets a value indicating whether to create joined paths for wires.
voidjoined_paths=(bool flag)Sets a value indicating whether to create joined paths for wires.
[const]intlabels_datatypeGets the labels layer datatype value.
voidlabels_datatype=(int datatype)Sets the labels layer datatype value.
[const]stringlabels_suffixGets the label layer name suffix.
voidlabels_suffix=(string suffix)Sets the label layer name suffix.
LayerMaplayer_mapGets the layer map to be used for the LEF/DEF reader
voidlayer_map=(const LayerMap m)Sets the layer map to be used for the LEF/DEF reader
[const]string[]lef_filesGets the list technology LEF files to additionally import
voidlef_files=(string[] lef_file_paths)Sets the list technology LEF files to additionally import
[const]intlef_labels_datatypeGets the lef_labels layer datatype value.
voidlef_labels_datatype=(int datatype)Sets the lef_labels layer datatype value.
[const]stringlef_labels_suffixGets the label layer name suffix.
voidlef_labels_suffix=(string suffix)Sets the label layer name suffix.
[const]intlef_pins_datatypeGets the LEF pin geometry layer datatype value.
[const]intlef_pins_datatype(unsigned int mask)Gets the LEF pin geometry layer datatype value per mask.
voidlef_pins_datatype=(int datatype)Sets the LEF pin geometry layer datatype value.
[const]stringlef_pins_suffixGets the LEF pin geometry layer name suffix.
voidlef_pins_suffix=(string suffix)Sets the LEF pin geometry layer name suffix.
[const]stringlef_pins_suffix_per_mask(unsigned int mask)Gets the LEF pin geometry layer name suffix per mask.
[const]string[]macro_layout_filesGets the list of layout files to read for substituting macros in DEF
voidmacro_layout_files=(string[] file_paths)Sets the list of layout files to read for substituting macros in DEF
[const]Layout ptr[]macro_layoutsGets the layout objects used for resolving LEF macros in the DEF reader.
voidmacro_layouts=(Layout ptr[] layouts)Sets the layout objects used for resolving LEF macros in the DEF reader.
[const]unsigned intmacro_resolution_modeGets the macro resolution mode (LEF macros into DEF).
voidmacro_resolution_mode=(unsigned int mode)Sets the macro resolution mode (LEF macros into DEF).
[const]stringmap_fileGets the layer map file to use.
voidmap_file=(string file)Sets the layer map file to use.
[const]variantnet_property_nameGets a value indicating whether and how to produce net names as properties.
voidnet_property_name=(variant name)Sets a value indicating whether and how to produce net names as properties.
[const]intobstructions_datatypeGets the obstruction marker layer datatype value.
voidobstructions_datatype=(int datatype)Sets the obstruction marker layer datatype value.
[const]stringobstructions_suffixGets the obstruction marker layer name suffix.
voidobstructions_suffix=(string suffix)Sets the obstruction marker layer name suffix.
voidpaths_relative_to_cwd=(bool f)Sets a value indicating whether to use paths relative to cwd (true) or DEF file (false) for map or LEF files
[const]variantpin_property_nameGets a value indicating whether and how to produce pin names as properties.
voidpin_property_name=(variant name)Sets a value indicating whether and how to produce pin names as properties.
[const]intpins_datatypeGets the pin geometry layer datatype value.
[const]intpins_datatype(unsigned int mask)Gets the pin geometry layer datatype value per mask.
voidpins_datatype=(int datatype)Sets the pin geometry layer datatype value.
[const]stringpins_suffixGets the pin geometry layer name suffix.
voidpins_suffix=(string suffix)Sets the pin geometry layer name suffix.
[const]stringpins_suffix_per_mask(unsigned int mask)Gets the pin geometry layer name suffix per mask.
[const]stringplacement_blockage_layerGets the layer on which to produce the placement blockage.
voidplacement_blockage_layer=(string layer)Sets the layer on which to produce the placement blockage.
[const]boolproduce_blockagesGets a value indicating whether routing blockage markers shall be produced.
voidproduce_blockages=(bool produce)Sets a value indicating whether routing blockage markers shall be produced.
[const]boolproduce_cell_outlinesGets a value indicating whether to produce cell outlines (diearea).
voidproduce_cell_outlines=(bool produce)Sets a value indicating whether to produce cell outlines (diearea).
[const]boolproduce_fillsGets a value indicating whether fill geometries shall be produced.
voidproduce_fills=(bool produce)Sets a value indicating whether fill geometries shall be produced.
[const]boolproduce_labelsGets a value indicating whether labels shall be produced.
voidproduce_labels=(bool produce)Sets a value indicating whether labels shall be produced.
[const]boolproduce_lef_labelsGets a value indicating whether lef_labels shall be produced.
voidproduce_lef_labels=(bool produce)Sets a value indicating whether lef_labels shall be produced.
[const]boolproduce_lef_pinsGets a value indicating whether LEF pin geometries shall be produced.
voidproduce_lef_pins=(bool produce)Sets a value indicating whether LEF pin geometries shall be produced.
[const]boolproduce_obstructionsGets a value indicating whether obstruction markers shall be produced.
voidproduce_obstructions=(bool produce)Sets a value indicating whether obstruction markers shall be produced.
[const]boolproduce_pinsGets a value indicating whether pin geometries shall be produced.
voidproduce_pins=(bool produce)Sets a value indicating whether pin geometries shall be produced.
[const]boolproduce_placement_blockagesGets a value indicating whether to produce placement blockage regions.
voidproduce_placement_blockages=(bool produce)Sets a value indicating whether to produce placement blockage regions.
[const]boolproduce_regionsGets a value indicating whether to produce regions.
voidproduce_regions=(bool produce)Sets a value indicating whether to produce regions.
[const]boolproduce_routingGets a value indicating whether routing geometry shall be produced.
voidproduce_routing=(bool produce)Sets a value indicating whether routing geometry shall be produced.
[const]boolproduce_special_routingGets a value indicating whether special routing geometry shall be produced.
voidproduce_special_routing=(bool produce)Sets a value indicating whether special routing geometry shall be produced.
[const]boolproduce_via_geometrySets a value indicating whether via geometries shall be produced.
voidproduce_via_geometry=(bool produce)Sets a value indicating whether via geometries shall be produced.
[const]boolread_lef_with_defGets a value indicating whether to read all LEF files in the same directory than the DEF file.
voidread_lef_with_def=(bool flag)Sets a value indicating whether to read all LEF files in the same directory than the DEF file.
[const]stringregion_layerGets the layer on which to produce the regions.
voidregion_layer=(string layer)Sets the layer on which to produce the regions.
[const]introuting_datatypeGets the routing layer datatype value.
[const]introuting_datatype(unsigned int mask)Gets the routing geometry layer datatype value per mask.
voidrouting_datatype=(int datatype)Sets the routing layer datatype value.
[const]stringrouting_suffixGets the routing layer name suffix.
voidrouting_suffix=(string suffix)Sets the routing layer name suffix.
[const]stringrouting_suffix_per_mask(unsigned int mask)Gets the routing geometry layer name suffix per mask.
[const]boolseparate_groupsGets a value indicating whether to create separate parent cells for individual groups.
voidseparate_groups=(bool flag)Sets a value indicating whether to create separate parent cells for individual groups.
voidset_fills_datatype_per_mask(unsigned int mask,
int datatype)
Sets the fill geometry layer datatype value.
voidset_fills_suffix_per_mask(unsigned int mask,
string suffix)
Sets the fill geometry layer name suffix per mask.
voidset_lef_pins_datatype_per_mask(unsigned int mask,
int datatype)
Sets the LEF pin geometry layer datatype value.
voidset_lef_pins_suffix_per_mask(unsigned int mask,
string suffix)
Sets the LEF pin geometry layer name suffix per mask.
voidset_pins_datatype_per_mask(unsigned int mask,
int datatype)
Sets the pin geometry layer datatype value.
voidset_pins_suffix_per_mask(unsigned int mask,
string suffix)
Sets the pin geometry layer name suffix per mask.
voidset_routing_datatype_per_mask(unsigned int mask,
int datatype)
Sets the routing geometry layer datatype value.
voidset_routing_suffix_per_mask(unsigned int mask,
string suffix)
Sets the routing geometry layer name suffix per mask.
voidset_special_routing_datatype_per_mask(unsigned int mask,
int datatype)
Sets the special routing geometry layer datatype value.
voidset_special_routing_suffix_per_mask(unsigned int mask,
string suffix)
Sets the special routing geometry layer name suffix per mask.
voidset_via_geometry_datatype_per_mask(unsigned int mask,
int datatype)
Sets the via geometry layer datatype value.
voidset_via_geometry_suffix_per_mask(unsigned int mask,
string suffix)
Sets the via geometry layer name suffix per mask.
[const]intspecial_routing_datatypeGets the special routing layer datatype value.
[const]intspecial_routing_datatype(unsigned int mask)Gets the special routing geometry layer datatype value per mask.
voidspecial_routing_datatype=(int datatype)Sets the special routing layer datatype value.
[const]stringspecial_routing_suffixGets the special routing layer name suffix.
voidspecial_routing_suffix=(string suffix)Sets the special routing layer name suffix.
[const]stringspecial_routing_suffix_per_mask(unsigned int mask)Gets the special routing geometry layer name suffix per mask.
[const]stringvia_cellname_prefixGets the via cellname prefix.
voidvia_cellname_prefix=(string prefix)Sets the via cellname prefix.
[const]intvia_geometry_datatypeGets the via geometry layer datatype value.
[const]intvia_geometry_datatype(unsigned int mask)Gets the via geometry layer datatype value per mask.
voidvia_geometry_datatype=(int datatype)Sets the via geometry layer datatype value.
[const]stringvia_geometry_suffixGets the via geometry layer name suffix.
voidvia_geometry_suffix=(string suffix)Sets the via geometry layer name suffix.
[const]stringvia_geometry_suffix_per_mask(unsigned int mask)Gets the via geometry layer name suffix per mask.

Deprecated methods (protected, public, static, non-static and constructors)

voidcreateUse of this method is deprecated. Use _create instead
voiddestroyUse of this method is deprecated. Use _destroy instead
[const]booldestroyed?Use of this method is deprecated. Use _destroyed? instead
[const]boolis_const_object?Use of this method is deprecated. Use _is_const_object? instead

Detailed description

_const_cast

Signature: [const] LEFDEFReaderConfiguration ptr _const_cast

Description: Returns a non-const reference to self.

Basically, this method allows turning a const object reference to a non-const one. This method is provided as last resort to remove the constness from an object. Usually there is a good reason for a const object reference, so using this method may have undesired side effects.

This method has been introduced in version 0.29.6.

_create

Signature: void _create

Description: Ensures the C++ object is created

Use this method to ensure the C++ object is created, for example to ensure that resources are allocated. Usually C++ objects are created on demand and not necessarily when the script object is created.

_destroy

Signature: void _destroy

Description: Explicitly destroys the object

Explicitly destroys the object on C++ side if it was owned by the script interpreter. Subsequent access to this object will throw an exception. If the object is not owned by the script, this method will do nothing.

_destroyed?

Signature: [const] bool _destroyed?

Description: Returns a value indicating whether the object was already destroyed

This method returns true, if the object was destroyed, either explicitly or by the C++ side. The latter may happen, if the object is owned by a C++ object which got destroyed itself.

_is_const_object?

Signature: [const] bool _is_const_object?

Description: Returns a value indicating whether the reference is a const reference

This method returns true, if self is a const reference. In that case, only const methods may be called on self.

_manage

Signature: void _manage

Description: Marks the object as managed by the script side.

After calling this method on an object, the script side will be responsible for the management of the object. This method may be called if an object is returned from a C++ function and the object is known not to be owned by any C++ instance. If necessary, the script side may delete the object if the script's reference is no longer required.

Usually it's not required to call this method. It has been introduced in version 0.24.

_unmanage

Signature: void _unmanage

Description: Marks the object as no longer owned by the script side.

Calling this method will make this object no longer owned by the script's memory management. Instead, the object must be managed in some other way. Usually this method may be called if it is known that some C++ object holds and manages this object. Technically speaking, this method will turn the script's reference into a weak reference. After the script engine decides to delete the reference, the object itself will still exist. If the object is not managed otherwise, memory leaks will occur.

Usually it's not required to call this method. It has been introduced in version 0.24.

assign

Signature: void assign (const LEFDEFReaderConfiguration other)

Description: Assigns another object to self

blockages_datatype

Signature: [const] int blockages_datatype

Description: Gets the blockage marker layer datatype value.

See produce_via_geometry for details about the layer production rules.

Python specific notes:
The object exposes a readable attribute 'blockages_datatype'. This is the getter.

blockages_datatype=

Signature: void blockages_datatype= (int datatype)

Description: Sets the blockage marker layer datatype value.

See produce_via_geometry for details about the layer production rules.

Python specific notes:
The object exposes a writable attribute 'blockages_datatype'. This is the setter.

blockages_suffix

Signature: [const] string blockages_suffix

Description: Gets the blockage marker layer name suffix.

See produce_via_geometry for details about the layer production rules.

Python specific notes:
The object exposes a readable attribute 'blockages_suffix'. This is the getter.

blockages_suffix=

Signature: void blockages_suffix= (string suffix)

Description: Sets the blockage marker layer name suffix.

See produce_via_geometry for details about the layer production rules.

Python specific notes:
The object exposes a writable attribute 'blockages_suffix'. This is the setter.

cell_outline_layer

Signature: [const] string cell_outline_layer

Description: Gets the layer on which to produce the cell outline (diearea).

This attribute is a string corresponding to the string representation of LayerInfo. This string can be either a layer number, a layer/datatype pair, a name or a combination of both. See LayerInfo for details. The setter for this attribute is cell_outline_layer=. See also produce_cell_outlines.

Python specific notes:
The object exposes a readable attribute 'cell_outline_layer'. This is the getter.

cell_outline_layer=

Signature: void cell_outline_layer= (string spec)

Description: Sets the layer on which to produce the cell outline (diearea).

See cell_outline_layer for details.

Python specific notes:
The object exposes a writable attribute 'cell_outline_layer'. This is the setter.

clear_fill_datatypes_per_mask

Signature: void clear_fill_datatypes_per_mask

Description: Clears the fill layer datatypes per mask.

See produce_via_geometry for details about this property.

Mask specific rules have been introduced in version 0.27.

clear_fills_suffixes_per_mask

Signature: void clear_fills_suffixes_per_mask

Description: Clears the fill layer name suffix per mask.

See produce_via_geometry for details about this property.

Mask specific rules have been introduced in version 0.27.

clear_lef_pins_datatypes_per_mask

Signature: void clear_lef_pins_datatypes_per_mask

Description: Clears the LEF pin layer datatypes per mask.

See produce_via_geometry for details about this property.

Mask specific rules have been introduced in version 0.27.

clear_lef_pins_suffixes_per_mask

Signature: void clear_lef_pins_suffixes_per_mask

Description: Clears the LEF pin layer name suffix per mask.

See produce_via_geometry for details about this property.

Mask specific rules have been introduced in version 0.27.

clear_pin_datatypes_per_mask

Signature: void clear_pin_datatypes_per_mask

Description: Clears the pin layer datatypes per mask.

See produce_via_geometry for details about this property.

Mask specific rules have been introduced in version 0.27.

clear_pins_suffixes_per_mask

Signature: void clear_pins_suffixes_per_mask

Description: Clears the pin layer name suffix per mask.

See produce_via_geometry for details about this property.

Mask specific rules have been introduced in version 0.27.

clear_routing_datatypes_per_mask

Signature: void clear_routing_datatypes_per_mask

Description: Clears the routing layer datatypes per mask.

See produce_via_geometry for details about this property.

Mask specific rules have been introduced in version 0.27.

clear_routing_suffixes_per_mask

Signature: void clear_routing_suffixes_per_mask

Description: Clears the routing layer name suffix per mask.

See produce_via_geometry for details about this property.

Mask specific rules have been introduced in version 0.27.

clear_special_routing_datatypes_per_mask

Signature: void clear_special_routing_datatypes_per_mask

Description: Clears the special routing layer datatypes per mask.

See produce_via_geometry for details about this property.

Mask specific rules have been introduced in version 0.27.

clear_special_routing_suffixes_per_mask

Signature: void clear_special_routing_suffixes_per_mask

Description: Clears the special routing layer name suffix per mask.

See produce_via_geometry for details about this property.

Mask specific rules have been introduced in version 0.27.

clear_via_geometry_datatypes_per_mask

Signature: void clear_via_geometry_datatypes_per_mask

Description: Clears the via geometry layer datatypes per mask.

See produce_via_geometry for details about this property.

Mask specific rules have been introduced in version 0.27.

clear_via_geometry_suffixes_per_mask

Signature: void clear_via_geometry_suffixes_per_mask

Description: Clears the via geometry layer name suffix per mask.

See produce_via_geometry for details about this property.

Mask specific rules have been introduced in version 0.27.

create

Signature: void create

Description: Ensures the C++ object is created

Use of this method is deprecated. Use _create instead

Use this method to ensure the C++ object is created, for example to ensure that resources are allocated. Usually C++ objects are created on demand and not necessarily when the script object is created.

create_other_layers

Signature: [const] bool create_other_layers

Description: Gets a value indicating whether layers not mapped in the layer map shall be created too

See layer_map for details.

Python specific notes:
The object exposes a readable attribute 'create_other_layers'. This is the getter.

create_other_layers=

Signature: void create_other_layers= (bool f)

Description: Sets a value indicating whether layers not mapped in the layer map shall be created too

See layer_map for details.

Python specific notes:
The object exposes a writable attribute 'create_other_layers'. This is the setter.

dbu

Signature: [const] double dbu

Description: Gets the database unit to use for producing the layout.

This value specifies the database to be used for the layout that is read. When a DEF file is specified with a different database unit, the layout is translated into this database unit.

Python specific notes:
The object exposes a readable attribute 'dbu'. This is the getter.

dbu=

Signature: void dbu= (double dbu)

Description: Sets the database unit to use for producing the layout.

See dbu for details.

Python specific notes:
The object exposes a writable attribute 'dbu'. This is the setter.

destroy

Signature: void destroy

Description: Explicitly destroys the object

Use of this method is deprecated. Use _destroy instead

Explicitly destroys the object on C++ side if it was owned by the script interpreter. Subsequent access to this object will throw an exception. If the object is not owned by the script, this method will do nothing.

destroyed?

Signature: [const] bool destroyed?

Description: Returns a value indicating whether the object was already destroyed

Use of this method is deprecated. Use _destroyed? instead

This method returns true, if the object was destroyed, either explicitly or by the C++ side. The latter may happen, if the object is owned by a C++ object which got destroyed itself.

dup

Signature: [const] new LEFDEFReaderConfiguration ptr dup

Description: Creates a copy of self

Python specific notes:
This method also implements '__copy__' and '__deepcopy__'.

fills_datatype

(1) Signature: [const] int fills_datatype

Description: Gets the fill geometry layer datatype value.

See produce_via_geometry for details about the layer production rules.

Fill support has been introduced in version 0.27.

Python specific notes:
The object exposes a readable attribute 'fills_datatype'. This is the getter.

(2) Signature: [const] int fills_datatype (unsigned int mask)

Description: Gets the fill geometry layer datatype value per mask.

See produce_via_geometry for details about the layer production rules.The mask number is a zero-based mask index (0: MASK 1, 1: MASK 2 ...).

Mask specific rules have been introduced in version 0.27.

Python specific notes:
This method is available as 'fills_datatype_' in Python to distiguish it from the property with the same name.

fills_datatype=

Signature: void fills_datatype= (int datatype)

Description: Sets the fill geometry layer datatype value.

See produce_via_geometry for details about the layer production rules.

Fill support has been introduced in version 0.27.

Python specific notes:
The object exposes a writable attribute 'fills_datatype'. This is the setter.

fills_suffix

Signature: [const] string fills_suffix

Description: Gets the fill geometry layer name suffix.

See produce_via_geometry for details about the layer production rules.

Fill support has been introduced in version 0.27.

Python specific notes:
The object exposes a readable attribute 'fills_suffix'. This is the getter.

fills_suffix=

Signature: void fills_suffix= (string suffix)

Description: Sets the fill geometry layer name suffix.

See produce_via_geometry for details about the layer production rules.

Fill support has been introduced in version 0.27.

Python specific notes:
The object exposes a writable attribute 'fills_suffix'. This is the setter.

fills_suffix_per_mask

Signature: [const] string fills_suffix_per_mask (unsigned int mask)

Description: Gets the fill geometry layer name suffix per mask.

See produce_via_geometry for details about the layer production rules.The mask number is a zero-based mask index (0: MASK 1, 1: MASK 2 ...).

Mask specific rules have been introduced in version 0.27.

instance_property_name

Signature: [const] variant instance_property_name

Description: Gets a value indicating whether and how to produce instance names as properties.

If set to a value not nil, instance names will be attached to the instances generated as user properties. This attribute then specifies the user property name to be used for attaching the instance names. If set to nil, no instance names will be produced.

The corresponding setter is instance_property_name=.

This method has been introduced in version 0.26.4.

Python specific notes:
The object exposes a readable attribute 'instance_property_name'. This is the getter.

instance_property_name=

Signature: void instance_property_name= (variant name)

Description: Sets a value indicating whether and how to produce instance names as properties.

See instance_property_name for details.

This method has been introduced in version 0.26.4.

Python specific notes:
The object exposes a writable attribute 'instance_property_name'. This is the setter.

is_const_object?

Signature: [const] bool is_const_object?

Description: Returns a value indicating whether the reference is a const reference

Use of this method is deprecated. Use _is_const_object? instead

This method returns true, if self is a const reference. In that case, only const methods may be called on self.

joined_paths

Signature: [const] bool joined_paths

Description: Gets a value indicating whether to create joined paths for wires.

If this property is set to true, wires are represented by multi-segment paths as far as possible (this will fail for 45 degree path segments for example). By defauls, wires are represented by multiple straight segments.

This property has been added in version 0.28.8.

Python specific notes:
The object exposes a readable attribute 'joined_paths'. This is the getter.

joined_paths=

Signature: void joined_paths= (bool flag)

Description: Sets a value indicating whether to create joined paths for wires.

See joined_paths for details about this property.

This property has been added in version 0.28.8.

Python specific notes:
The object exposes a writable attribute 'joined_paths'. This is the setter.

labels_datatype

Signature: [const] int labels_datatype

Description: Gets the labels layer datatype value.

See produce_via_geometry for details about the layer production rules.

Python specific notes:
The object exposes a readable attribute 'labels_datatype'. This is the getter.

labels_datatype=

Signature: void labels_datatype= (int datatype)

Description: Sets the labels layer datatype value.

See produce_via_geometry for details about the layer production rules.

Python specific notes:
The object exposes a writable attribute 'labels_datatype'. This is the setter.

labels_suffix

Signature: [const] string labels_suffix

Description: Gets the label layer name suffix.

See produce_via_geometry for details about the layer production rules.

Python specific notes:
The object exposes a readable attribute 'labels_suffix'. This is the getter.

labels_suffix=

Signature: void labels_suffix= (string suffix)

Description: Sets the label layer name suffix.

See produce_via_geometry for details about the layer production rules.

Python specific notes:
The object exposes a writable attribute 'labels_suffix'. This is the setter.

layer_map

Signature: LayerMap layer_map

Description: Gets the layer map to be used for the LEF/DEF reader

Returns:A reference to the layer map

Because LEF/DEF layer mapping is substantially different than for normal layout files, the LEF/DEF reader employs a separate layer mapping table. The LEF/DEF specific layer mapping is stored within the LEF/DEF reader's configuration and can be accessed with this attribute. The layer mapping table of LoadLayoutOptions will be ignored for the LEF/DEF reader.

The setter is layer_map=. create_other_layers= is available to control whether layers not specified in the layer mapping table shall be created automatically.

Python specific notes:
The object exposes a readable attribute 'layer_map'. This is the getter.

layer_map=

Signature: void layer_map= (const LayerMap m)

Description: Sets the layer map to be used for the LEF/DEF reader

See layer_map for details.

Python specific notes:
The object exposes a writable attribute 'layer_map'. This is the setter.

lef_files

Signature: [const] string[] lef_files

Description: Gets the list technology LEF files to additionally import

Returns a list of path names for technology LEF files to read in addition to the primary file. Relative paths are resolved relative to the file to read or relative to the technology base path.

The setter for this property is lef_files=.

Python specific notes:
The object exposes a readable attribute 'lef_files'. This is the getter.

lef_files=

Signature: void lef_files= (string[] lef_file_paths)

Description: Sets the list technology LEF files to additionally import

See lef_files for details.

Python specific notes:
The object exposes a writable attribute 'lef_files'. This is the setter.

lef_labels_datatype

Signature: [const] int lef_labels_datatype

Description: Gets the lef_labels layer datatype value.

See produce_via_geometry for details about the layer production rules.

This method has been introduced in version 0.27.2

Python specific notes:
The object exposes a readable attribute 'lef_labels_datatype'. This is the getter.

lef_labels_datatype=

Signature: void lef_labels_datatype= (int datatype)

Description: Sets the lef_labels layer datatype value.

See produce_via_geometry for details about the layer production rules.

This method has been introduced in version 0.27.2

Python specific notes:
The object exposes a writable attribute 'lef_labels_datatype'. This is the setter.

lef_labels_suffix

Signature: [const] string lef_labels_suffix

Description: Gets the label layer name suffix.

See produce_via_geometry for details about the layer production rules.

This method has been introduced in version 0.27.2

Python specific notes:
The object exposes a readable attribute 'lef_labels_suffix'. This is the getter.

lef_labels_suffix=

Signature: void lef_labels_suffix= (string suffix)

Description: Sets the label layer name suffix.

See produce_via_geometry for details about the layer production rules.

This method has been introduced in version 0.27.2

Python specific notes:
The object exposes a writable attribute 'lef_labels_suffix'. This is the setter.

lef_pins_datatype

(1) Signature: [const] int lef_pins_datatype

Description: Gets the LEF pin geometry layer datatype value.

See produce_via_geometry for details about the layer production rules.

Python specific notes:
The object exposes a readable attribute 'lef_pins_datatype'. This is the getter.

(2) Signature: [const] int lef_pins_datatype (unsigned int mask)

Description: Gets the LEF pin geometry layer datatype value per mask.

See produce_via_geometry for details about the layer production rules.The mask number is a zero-based mask index (0: MASK 1, 1: MASK 2 ...).

Mask specific rules have been introduced in version 0.27.

Python specific notes:
This method is available as 'lef_pins_datatype_' in Python to distiguish it from the property with the same name.

lef_pins_datatype=

Signature: void lef_pins_datatype= (int datatype)

Description: Sets the LEF pin geometry layer datatype value.

See produce_via_geometry for details about the layer production rules.

Python specific notes:
The object exposes a writable attribute 'lef_pins_datatype'. This is the setter.

lef_pins_suffix

Signature: [const] string lef_pins_suffix

Description: Gets the LEF pin geometry layer name suffix.

See produce_via_geometry for details about the layer production rules.

Python specific notes:
The object exposes a readable attribute 'lef_pins_suffix'. This is the getter.

lef_pins_suffix=

Signature: void lef_pins_suffix= (string suffix)

Description: Sets the LEF pin geometry layer name suffix.

See produce_via_geometry for details about the layer production rules.

Python specific notes:
The object exposes a writable attribute 'lef_pins_suffix'. This is the setter.

lef_pins_suffix_per_mask

Signature: [const] string lef_pins_suffix_per_mask (unsigned int mask)

Description: Gets the LEF pin geometry layer name suffix per mask.

See produce_via_geometry for details about the layer production rules.The mask number is a zero-based mask index (0: MASK 1, 1: MASK 2 ...).

Mask specific rules have been introduced in version 0.27.

macro_layout_files

Signature: [const] string[] macro_layout_files

Description: Gets the list of layout files to read for substituting macros in DEF

These files play the same role than the macro layouts (see macro_layouts), except that this property specifies a list of file names. The given files are loaded automatically to resolve macro layouts instead of LEF geometry. See macro_resolution_mode for details when this happens. Relative paths are resolved relative to the DEF file to read or relative to the technology base path. Macros in need for substitution are looked up in the layout files by searching for cells with the same name. The files are scanned in the order they are given in the file list. The files from macro_layout_files are scanned after the layout objects specified with macro_layouts.

The setter for this property is macro_layout_files=.

This property has been added in version 0.27.1.

Python specific notes:
The object exposes a readable attribute 'macro_layout_files'. This is the getter.

macro_layout_files=

Signature: void macro_layout_files= (string[] file_paths)

Description: Sets the list of layout files to read for substituting macros in DEF

See macro_layout_files for details.

This property has been added in version 0.27.1.

Python specific notes:
The object exposes a writable attribute 'macro_layout_files'. This is the setter.

macro_layouts

Signature: [const] Layout ptr[] macro_layouts

Description: Gets the layout objects used for resolving LEF macros in the DEF reader.

The DEF reader can either use LEF geometry or use a separate source of layouts for the LEF macros. The macro_resolution_mode controls whether to use LEF geometry. If LEF geometry is not used, the DEF reader will look up macro cells from the macro_layouts and pull cell layouts from there.

The LEF cells are looked up as cells by name from the macro layouts in the order these are given in this array.

macro_layout_files is another way of specifying such substitution layouts. This method accepts file names instead of layout objects.

This property has been added in version 0.27.

Python specific notes:
The object exposes a readable attribute 'macro_layouts'. This is the getter.

macro_layouts=

Signature: void macro_layouts= (Layout ptr[] layouts)

Description: Sets the layout objects used for resolving LEF macros in the DEF reader.

See macro_layouts for more details about this property.

Layout objects specified in the array for this property are not owned by the LEFDEFReaderConfiguration object. Be sure to keep some other reference to these Layout objects if you are storing away the LEF/DEF reader configuration object.

This property has been added in version 0.27.

Python specific notes:
The object exposes a writable attribute 'macro_layouts'. This is the setter.

macro_resolution_mode

Signature: [const] unsigned int macro_resolution_mode

Description: Gets the macro resolution mode (LEF macros into DEF).

This property describes the way LEF macros are turned into layout cells when reading DEF. There are three modes available:

  • 0: produce LEF geometry unless a FOREIGN cell is specified
  • 1: produce LEF geometry always and ignore FOREIGN
  • 2: Never produce LEF geometry and assume FOREIGN always

If substitution layouts are specified with macro_layouts, these are used to provide macro layouts in case no LEF geometry is taken.

This property has been added in version 0.27.

Python specific notes:
The object exposes a readable attribute 'macro_resolution_mode'. This is the getter.

macro_resolution_mode=

Signature: void macro_resolution_mode= (unsigned int mode)

Description: Sets the macro resolution mode (LEF macros into DEF).

See macro_resolution_mode for details about this property.

This property has been added in version 0.27.

Python specific notes:
The object exposes a writable attribute 'macro_resolution_mode'. This is the setter.

map_file

Signature: [const] string map_file

Description: Gets the layer map file to use.

If a layer map file is given, the reader will pull the layer mapping from this file. The layer mapping rules specified in the reader options are ignored in this case. These are the name suffix rules for vias, blockages, routing, special routing, pins etc. and the corresponding datatype rules. The layer_map attribute will also be ignored. The layer map file path will be resolved relative to the technology base path if the LEF/DEF reader options are used in the context of a technology.

This property has been added in version 0.27.

Python specific notes:
The object exposes a readable attribute 'map_file'. This is the getter.

map_file=

Signature: void map_file= (string file)

Description: Sets the layer map file to use.

See map_file for details about this property.

This property has been added in version 0.27.

Python specific notes:
The object exposes a writable attribute 'map_file'. This is the setter.

net_property_name

Signature: [const] variant net_property_name

Description: Gets a value indicating whether and how to produce net names as properties.

If set to a value not nil, net names will be attached to the net shapes generated as user properties. This attribute then specifies the user property name to be used for attaching the net names. If set to nil, no net names will be produced.

The corresponding setter is net_property_name=.

Python specific notes:
The object exposes a readable attribute 'net_property_name'. This is the getter.

net_property_name=

Signature: void net_property_name= (variant name)

Description: Sets a value indicating whether and how to produce net names as properties.

See net_property_name for details.

Python specific notes:
The object exposes a writable attribute 'net_property_name'. This is the setter.

new

Signature: [static] new LEFDEFReaderConfiguration ptr new

Description: Creates a new object of this class

Python specific notes:
This method is the default initializer of the object.

obstructions_datatype

Signature: [const] int obstructions_datatype

Description: Gets the obstruction marker layer datatype value.

See produce_via_geometry for details about the layer production rules.

Python specific notes:
The object exposes a readable attribute 'obstructions_datatype'. This is the getter.

obstructions_datatype=

Signature: void obstructions_datatype= (int datatype)

Description: Sets the obstruction marker layer datatype value.

See produce_via_geometry for details about the layer production rules.

Python specific notes:
The object exposes a writable attribute 'obstructions_datatype'. This is the setter.

obstructions_suffix

Signature: [const] string obstructions_suffix

Description: Gets the obstruction marker layer name suffix.

See produce_via_geometry for details about the layer production rules.

Python specific notes:
The object exposes a readable attribute 'obstructions_suffix'. This is the getter.

obstructions_suffix=

Signature: void obstructions_suffix= (string suffix)

Description: Sets the obstruction marker layer name suffix.

See produce_via_geometry for details about the layer production rules.

Python specific notes:
The object exposes a writable attribute 'obstructions_suffix'. This is the setter.

paths_relative_to_cwd=

Signature: void paths_relative_to_cwd= (bool f)

Description: Sets a value indicating whether to use paths relative to cwd (true) or DEF file (false) for map or LEF files

This write-only attribute has been introduced in version 0.27.9.

Python specific notes:
The object exposes a writable attribute 'paths_relative_to_cwd'. This is the setter.

pin_property_name

Signature: [const] variant pin_property_name

Description: Gets a value indicating whether and how to produce pin names as properties.

If set to a value not nil, pin names will be attached to the pin shapes generated as user properties. This attribute then specifies the user property name to be used for attaching the pin names. If set to nil, no pin names will be produced.

The corresponding setter is pin_property_name=.

This method has been introduced in version 0.26.4.

Python specific notes:
The object exposes a readable attribute 'pin_property_name'. This is the getter.

pin_property_name=

Signature: void pin_property_name= (variant name)

Description: Sets a value indicating whether and how to produce pin names as properties.

See pin_property_name for details.

This method has been introduced in version 0.26.4.

Python specific notes:
The object exposes a writable attribute 'pin_property_name'. This is the setter.

pins_datatype

(1) Signature: [const] int pins_datatype

Description: Gets the pin geometry layer datatype value.

See produce_via_geometry for details about the layer production rules.

Python specific notes:
The object exposes a readable attribute 'pins_datatype'. This is the getter.

(2) Signature: [const] int pins_datatype (unsigned int mask)

Description: Gets the pin geometry layer datatype value per mask.

See produce_via_geometry for details about the layer production rules.The mask number is a zero-based mask index (0: MASK 1, 1: MASK 2 ...).

Mask specific rules have been introduced in version 0.27.

Python specific notes:
This method is available as 'pins_datatype_' in Python to distiguish it from the property with the same name.

pins_datatype=

Signature: void pins_datatype= (int datatype)

Description: Sets the pin geometry layer datatype value.

See produce_via_geometry for details about the layer production rules.

Python specific notes:
The object exposes a writable attribute 'pins_datatype'. This is the setter.

pins_suffix

Signature: [const] string pins_suffix

Description: Gets the pin geometry layer name suffix.

See produce_via_geometry for details about the layer production rules.

Python specific notes:
The object exposes a readable attribute 'pins_suffix'. This is the getter.

pins_suffix=

Signature: void pins_suffix= (string suffix)

Description: Sets the pin geometry layer name suffix.

See produce_via_geometry for details about the layer production rules.

Python specific notes:
The object exposes a writable attribute 'pins_suffix'. This is the setter.

pins_suffix_per_mask

Signature: [const] string pins_suffix_per_mask (unsigned int mask)

Description: Gets the pin geometry layer name suffix per mask.

See produce_via_geometry for details about the layer production rules.The mask number is a zero-based mask index (0: MASK 1, 1: MASK 2 ...).

Mask specific rules have been introduced in version 0.27.

placement_blockage_layer

Signature: [const] string placement_blockage_layer

Description: Gets the layer on which to produce the placement blockage.

This attribute is a string corresponding to the string representation of LayerInfo. This string can be either a layer number, a layer/datatype pair, a name or a combination of both. See LayerInfo for details.The setter for this attribute is placement_blockage_layer=. See also produce_placement_blockages.

Python specific notes:
The object exposes a readable attribute 'placement_blockage_layer'. This is the getter.

placement_blockage_layer=

Signature: void placement_blockage_layer= (string layer)

Description: Sets the layer on which to produce the placement blockage.

See placement_blockage_layer for details.

Python specific notes:
The object exposes a writable attribute 'placement_blockage_layer'. This is the setter.

produce_blockages

Signature: [const] bool produce_blockages

Description: Gets a value indicating whether routing blockage markers shall be produced.

See produce_via_geometry for details about the layer production rules.

Python specific notes:
The object exposes a readable attribute 'produce_blockages'. This is the getter.

produce_blockages=

Signature: void produce_blockages= (bool produce)

Description: Sets a value indicating whether routing blockage markers shall be produced.

See produce_via_geometry for details about the layer production rules.

Python specific notes:
The object exposes a writable attribute 'produce_blockages'. This is the setter.

produce_cell_outlines

Signature: [const] bool produce_cell_outlines

Description: Gets a value indicating whether to produce cell outlines (diearea).

If set to true, cell outlines will be produced on the layer given by cell_outline_layer.

Python specific notes:
The object exposes a readable attribute 'produce_cell_outlines'. This is the getter.

produce_cell_outlines=

Signature: void produce_cell_outlines= (bool produce)

Description: Sets a value indicating whether to produce cell outlines (diearea).

See produce_cell_outlines for details.

Python specific notes:
The object exposes a writable attribute 'produce_cell_outlines'. This is the setter.

produce_fills

Signature: [const] bool produce_fills

Description: Gets a value indicating whether fill geometries shall be produced.

See produce_via_geometry for details about the layer production rules.

Fill support has been introduced in version 0.27.

Python specific notes:
The object exposes a readable attribute 'produce_fills'. This is the getter.

produce_fills=

Signature: void produce_fills= (bool produce)

Description: Sets a value indicating whether fill geometries shall be produced.

See produce_via_geometry for details about the layer production rules.

Fill support has been introduced in version 0.27.

Python specific notes:
The object exposes a writable attribute 'produce_fills'. This is the setter.

produce_labels

Signature: [const] bool produce_labels

Description: Gets a value indicating whether labels shall be produced.

See produce_via_geometry for details about the layer production rules.

Python specific notes:
The object exposes a readable attribute 'produce_labels'. This is the getter.

produce_labels=

Signature: void produce_labels= (bool produce)

Description: Sets a value indicating whether labels shall be produced.

See produce_via_geometry for details about the layer production rules.

Python specific notes:
The object exposes a writable attribute 'produce_labels'. This is the setter.

produce_lef_labels

Signature: [const] bool produce_lef_labels

Description: Gets a value indicating whether lef_labels shall be produced.

See produce_via_geometry for details about the layer production rules.

This method has been introduced in version 0.27.2

Python specific notes:
The object exposes a readable attribute 'produce_lef_labels'. This is the getter.

produce_lef_labels=

Signature: void produce_lef_labels= (bool produce)

Description: Sets a value indicating whether lef_labels shall be produced.

See produce_via_geometry for details about the layer production rules.

This method has been introduced in version 0.27.2

Python specific notes:
The object exposes a writable attribute 'produce_lef_labels'. This is the setter.

produce_lef_pins

Signature: [const] bool produce_lef_pins

Description: Gets a value indicating whether LEF pin geometries shall be produced.

See produce_via_geometry for details about the layer production rules.

Python specific notes:
The object exposes a readable attribute 'produce_lef_pins'. This is the getter.

produce_lef_pins=

Signature: void produce_lef_pins= (bool produce)

Description: Sets a value indicating whether LEF pin geometries shall be produced.

See produce_via_geometry for details about the layer production rules.

Python specific notes:
The object exposes a writable attribute 'produce_lef_pins'. This is the setter.

produce_obstructions

Signature: [const] bool produce_obstructions

Description: Gets a value indicating whether obstruction markers shall be produced.

See produce_via_geometry for details about the layer production rules.

Python specific notes:
The object exposes a readable attribute 'produce_obstructions'. This is the getter.

produce_obstructions=

Signature: void produce_obstructions= (bool produce)

Description: Sets a value indicating whether obstruction markers shall be produced.

See produce_via_geometry for details about the layer production rules.

Python specific notes:
The object exposes a writable attribute 'produce_obstructions'. This is the setter.

produce_pins

Signature: [const] bool produce_pins

Description: Gets a value indicating whether pin geometries shall be produced.

See produce_via_geometry for details about the layer production rules.

Python specific notes:
The object exposes a readable attribute 'produce_pins'. This is the getter.

produce_pins=

Signature: void produce_pins= (bool produce)

Description: Sets a value indicating whether pin geometries shall be produced.

See produce_via_geometry for details about the layer production rules.

Python specific notes:
The object exposes a writable attribute 'produce_pins'. This is the setter.

produce_placement_blockages

Signature: [const] bool produce_placement_blockages

Description: Gets a value indicating whether to produce placement blockage regions.

If set to true, polygons will be produced representing the placement blockage region on the layer given by placement_blockage_layer.

Python specific notes:
The object exposes a readable attribute 'produce_placement_blockages'. This is the getter.

produce_placement_blockages=

Signature: void produce_placement_blockages= (bool produce)

Description: Sets a value indicating whether to produce placement blockage regions.

See produce_placement_blockages for details.

Python specific notes:
The object exposes a writable attribute 'produce_placement_blockages'. This is the setter.

produce_regions

Signature: [const] bool produce_regions

Description: Gets a value indicating whether to produce regions.

If set to true, polygons will be produced representing the regions on the layer given by region_layer.

The attribute has been introduced in version 0.27.

Python specific notes:
The object exposes a readable attribute 'produce_regions'. This is the getter.

produce_regions=

Signature: void produce_regions= (bool produce)

Description: Sets a value indicating whether to produce regions.

See produce_regions for details.

The attribute has been introduced in version 0.27.

Python specific notes:
The object exposes a writable attribute 'produce_regions'. This is the setter.

produce_routing

Signature: [const] bool produce_routing

Description: Gets a value indicating whether routing geometry shall be produced.

See produce_via_geometry for details about the layer production rules.

Python specific notes:
The object exposes a readable attribute 'produce_routing'. This is the getter.

produce_routing=

Signature: void produce_routing= (bool produce)

Description: Sets a value indicating whether routing geometry shall be produced.

See produce_via_geometry for details about the layer production rules.

Python specific notes:
The object exposes a writable attribute 'produce_routing'. This is the setter.

produce_special_routing

Signature: [const] bool produce_special_routing

Description: Gets a value indicating whether special routing geometry shall be produced.

See produce_via_geometry for details about the layer production rules.

The differentiation between special and normal routing has been introduced in version 0.27.

Python specific notes:
The object exposes a readable attribute 'produce_special_routing'. This is the getter.

produce_special_routing=

Signature: void produce_special_routing= (bool produce)

Description: Sets a value indicating whether special routing geometry shall be produced.

See produce_via_geometry for details about the layer production rules. The differentiation between special and normal routing has been introduced in version 0.27.

Python specific notes:
The object exposes a writable attribute 'produce_special_routing'. This is the setter.

produce_via_geometry

Signature: [const] bool produce_via_geometry

Description: Sets a value indicating whether via geometries shall be produced.

If set to true, shapes will be produced for each via. The layer to be produced will be determined from the via layer's name using the suffix provided by via_geometry_suffix. If there is a specific mapping in the layer mapping table for the via layer including the suffix, the layer/datatype will be taken from the layer mapping table. If there is a mapping to the undecorated via layer, the datatype will be substituted with the via_geometry_datatype value. If no mapping is defined, a unique number will be assigned to the layer number and the datatype will be taken from the via_geometry_datatype value.

For example: the via layer is 'V1', via_geometry_suffix is 'GEO' and via_geometry_datatype is 1. Then:

  • If there is a mapping for 'V1.GEO', the layer and datatype will be taken from there.
  • If there is a mapping for 'V1', the layer will be taken from there and the datatype will be taken from via_geometry_datatype. The name of the produced layer will be 'V1.GEO'.
  • If there is no mapping for both, the layer number will be a unique value, the datatype will be taken from via_geometry_datatype and the layer name will be 'V1.GEO'.

Python specific notes:
The object exposes a readable attribute 'produce_via_geometry'. This is the getter.

produce_via_geometry=

Signature: void produce_via_geometry= (bool produce)

Description: Sets a value indicating whether via geometries shall be produced.

See produce_via_geometry for details.

Python specific notes:
The object exposes a writable attribute 'produce_via_geometry'. This is the setter.

read_lef_with_def

Signature: [const] bool read_lef_with_def

Description: Gets a value indicating whether to read all LEF files in the same directory than the DEF file.

If this property is set to true (the default), the DEF reader will automatically consume all LEF files next to the DEF file in addition to the LEF files specified with lef_files. If set to false, only the LEF files specified with lef_files will be read.

This property has been added in version 0.27.

Python specific notes:
The object exposes a readable attribute 'read_lef_with_def'. This is the getter.

read_lef_with_def=

Signature: void read_lef_with_def= (bool flag)

Description: Sets a value indicating whether to read all LEF files in the same directory than the DEF file.

See read_lef_with_def for details about this property.

This property has been added in version 0.27.

Python specific notes:
The object exposes a writable attribute 'read_lef_with_def'. This is the setter.

region_layer

Signature: [const] string region_layer

Description: Gets the layer on which to produce the regions.

This attribute is a string corresponding to the string representation of LayerInfo. This string can be either a layer number, a layer/datatype pair, a name or a combination of both. See LayerInfo for details.The setter for this attribute is region_layer=. See also produce_regions.

The attribute has been introduced in version 0.27.

Python specific notes:
The object exposes a readable attribute 'region_layer'. This is the getter.

region_layer=

Signature: void region_layer= (string layer)

Description: Sets the layer on which to produce the regions.

See region_layer for details.

The attribute has been introduced in version 0.27.

Python specific notes:
The object exposes a writable attribute 'region_layer'. This is the setter.

routing_datatype

(1) Signature: [const] int routing_datatype

Description: Gets the routing layer datatype value.

See produce_via_geometry for details about the layer production rules.

Python specific notes:
The object exposes a readable attribute 'routing_datatype'. This is the getter.

(2) Signature: [const] int routing_datatype (unsigned int mask)

Description: Gets the routing geometry layer datatype value per mask.

See produce_via_geometry for details about the layer production rules.The mask number is a zero-based mask index (0: MASK 1, 1: MASK 2 ...).

Mask specific rules have been introduced in version 0.27.

Python specific notes:
This method is available as 'routing_datatype_' in Python to distiguish it from the property with the same name.

routing_datatype=

Signature: void routing_datatype= (int datatype)

Description: Sets the routing layer datatype value.

See produce_via_geometry for details about the layer production rules.

Python specific notes:
The object exposes a writable attribute 'routing_datatype'. This is the setter.

routing_suffix

Signature: [const] string routing_suffix

Description: Gets the routing layer name suffix.

See produce_via_geometry for details about the layer production rules.

Python specific notes:
The object exposes a readable attribute 'routing_suffix'. This is the getter.

routing_suffix=

Signature: void routing_suffix= (string suffix)

Description: Sets the routing layer name suffix.

See produce_via_geometry for details about the layer production rules.

Python specific notes:
The object exposes a writable attribute 'routing_suffix'. This is the setter.

routing_suffix_per_mask

Signature: [const] string routing_suffix_per_mask (unsigned int mask)

Description: Gets the routing geometry layer name suffix per mask.

See produce_via_geometry for details about the layer production rules.The mask number is a zero-based mask index (0: MASK 1, 1: MASK 2 ...).

Mask specific rules have been introduced in version 0.27.

separate_groups

Signature: [const] bool separate_groups

Description: Gets a value indicating whether to create separate parent cells for individual groups.

If this property is set to true, instances belonging to different groups are separated by putting them into individual parent cells. These parent cells are named after the groups and are put into the master top cell. If this property is set to false (the default), no such group parents will be formed. This property has been added in version 0.27.

Python specific notes:
The object exposes a readable attribute 'separate_groups'. This is the getter.

separate_groups=

Signature: void separate_groups= (bool flag)

Description: Sets a value indicating whether to create separate parent cells for individual groups.

See separate_groups for details about this property.

This property has been added in version 0.27.

Python specific notes:
The object exposes a writable attribute 'separate_groups'. This is the setter.

set_fills_datatype_per_mask

Signature: void set_fills_datatype_per_mask (unsigned int mask, int datatype)

Description: Sets the fill geometry layer datatype value.

See produce_via_geometry for details about the layer production rules.The mask number is a zero-based mask index (0: MASK 1, 1: MASK 2 ...).

Mask specific rules have been introduced in version 0.27.

set_fills_suffix_per_mask

Signature: void set_fills_suffix_per_mask (unsigned int mask, string suffix)

Description: Sets the fill geometry layer name suffix per mask.

See produce_via_geometry for details about the layer production rules.The mask number is a zero-based mask index (0: MASK 1, 1: MASK 2 ...).

Mask specific rules have been introduced in version 0.27.

set_lef_pins_datatype_per_mask

Signature: void set_lef_pins_datatype_per_mask (unsigned int mask, int datatype)

Description: Sets the LEF pin geometry layer datatype value.

See produce_via_geometry for details about the layer production rules.The mask number is a zero-based mask index (0: MASK 1, 1: MASK 2 ...).

Mask specific rules have been introduced in version 0.27.

set_lef_pins_suffix_per_mask

Signature: void set_lef_pins_suffix_per_mask (unsigned int mask, string suffix)

Description: Sets the LEF pin geometry layer name suffix per mask.

See produce_via_geometry for details about the layer production rules.The mask number is a zero-based mask index (0: MASK 1, 1: MASK 2 ...).

Mask specific rules have been introduced in version 0.27.

set_pins_datatype_per_mask

Signature: void set_pins_datatype_per_mask (unsigned int mask, int datatype)

Description: Sets the pin geometry layer datatype value.

See produce_via_geometry for details about the layer production rules.The mask number is a zero-based mask index (0: MASK 1, 1: MASK 2 ...).

Mask specific rules have been introduced in version 0.27.

set_pins_suffix_per_mask

Signature: void set_pins_suffix_per_mask (unsigned int mask, string suffix)

Description: Sets the pin geometry layer name suffix per mask.

See produce_via_geometry for details about the layer production rules.The mask number is a zero-based mask index (0: MASK 1, 1: MASK 2 ...).

Mask specific rules have been introduced in version 0.27.

set_routing_datatype_per_mask

Signature: void set_routing_datatype_per_mask (unsigned int mask, int datatype)

Description: Sets the routing geometry layer datatype value.

See produce_via_geometry for details about the layer production rules.The mask number is a zero-based mask index (0: MASK 1, 1: MASK 2 ...).

Mask specific rules have been introduced in version 0.27.

set_routing_suffix_per_mask

Signature: void set_routing_suffix_per_mask (unsigned int mask, string suffix)

Description: Sets the routing geometry layer name suffix per mask.

See produce_via_geometry for details about the layer production rules.The mask number is a zero-based mask index (0: MASK 1, 1: MASK 2 ...).

Mask specific rules have been introduced in version 0.27.

set_special_routing_datatype_per_mask

Signature: void set_special_routing_datatype_per_mask (unsigned int mask, int datatype)

Description: Sets the special routing geometry layer datatype value.

See produce_via_geometry for details about the layer production rules.The mask number is a zero-based mask index (0: MASK 1, 1: MASK 2 ...).

Mask specific rules have been introduced in version 0.27.

set_special_routing_suffix_per_mask

Signature: void set_special_routing_suffix_per_mask (unsigned int mask, string suffix)

Description: Sets the special routing geometry layer name suffix per mask.

See produce_via_geometry for details about the layer production rules.The mask number is a zero-based mask index (0: MASK 1, 1: MASK 2 ...).

Mask specific rules have been introduced in version 0.27.

set_via_geometry_datatype_per_mask

Signature: void set_via_geometry_datatype_per_mask (unsigned int mask, int datatype)

Description: Sets the via geometry layer datatype value.

See produce_via_geometry for details about this property. The mask number is a zero-based mask index (0: MASK 1, 1: MASK 2 ...).

Mask specific rules have been introduced in version 0.27.

set_via_geometry_suffix_per_mask

Signature: void set_via_geometry_suffix_per_mask (unsigned int mask, string suffix)

Description: Sets the via geometry layer name suffix per mask.

See produce_via_geometry for details about this property. The mask number is a zero-based mask index (0: MASK 1, 1: MASK 2 ...).

Mask specific rules have been introduced in version 0.27.

special_routing_datatype

(1) Signature: [const] int special_routing_datatype

Description: Gets the special routing layer datatype value.

See produce_via_geometry for details about the layer production rules. The differentiation between special and normal routing has been introduced in version 0.27.

Python specific notes:
The object exposes a readable attribute 'special_routing_datatype'. This is the getter.

(2) Signature: [const] int special_routing_datatype (unsigned int mask)

Description: Gets the special routing geometry layer datatype value per mask.

See produce_via_geometry for details about the layer production rules.The mask number is a zero-based mask index (0: MASK 1, 1: MASK 2 ...).

Mask specific rules have been introduced in version 0.27.

Python specific notes:
This method is available as 'special_routing_datatype_' in Python to distiguish it from the property with the same name.

special_routing_datatype=

Signature: void special_routing_datatype= (int datatype)

Description: Sets the special routing layer datatype value.

See produce_via_geometry for details about the layer production rules. The differentiation between special and normal routing has been introduced in version 0.27.

Python specific notes:
The object exposes a writable attribute 'special_routing_datatype'. This is the setter.

special_routing_suffix

Signature: [const] string special_routing_suffix

Description: Gets the special routing layer name suffix.

See produce_via_geometry for details about the layer production rules. The differentiation between special and normal routing has been introduced in version 0.27.

Python specific notes:
The object exposes a readable attribute 'special_routing_suffix'. This is the getter.

special_routing_suffix=

Signature: void special_routing_suffix= (string suffix)

Description: Sets the special routing layer name suffix.

See produce_via_geometry for details about the layer production rules. The differentiation between special and normal routing has been introduced in version 0.27.

Python specific notes:
The object exposes a writable attribute 'special_routing_suffix'. This is the setter.

special_routing_suffix_per_mask

Signature: [const] string special_routing_suffix_per_mask (unsigned int mask)

Description: Gets the special routing geometry layer name suffix per mask.

See produce_via_geometry for details about the layer production rules.The mask number is a zero-based mask index (0: MASK 1, 1: MASK 2 ...).

Mask specific rules have been introduced in version 0.27.

via_cellname_prefix

Signature: [const] string via_cellname_prefix

Description: Gets the via cellname prefix.

Vias are represented by cells. The cell name is formed by combining the via cell name prefix and the via name.

This property has been added in version 0.27.

Python specific notes:
The object exposes a readable attribute 'via_cellname_prefix'. This is the getter.

via_cellname_prefix=

Signature: void via_cellname_prefix= (string prefix)

Description: Sets the via cellname prefix.

See via_cellname_prefix for details about this property.

This property has been added in version 0.27.

Python specific notes:
The object exposes a writable attribute 'via_cellname_prefix'. This is the setter.

via_geometry_datatype

(1) Signature: [const] int via_geometry_datatype

Description: Gets the via geometry layer datatype value.

See produce_via_geometry for details about this property.

Python specific notes:
The object exposes a readable attribute 'via_geometry_datatype'. This is the getter.

(2) Signature: [const] int via_geometry_datatype (unsigned int mask)

Description: Gets the via geometry layer datatype value per mask.

See produce_via_geometry for details about this property. The mask number is a zero-based mask index (0: MASK 1, 1: MASK 2 ...).

Mask specific rules have been introduced in version 0.27.

Python specific notes:
This method is available as 'via_geometry_datatype_' in Python to distiguish it from the property with the same name.

via_geometry_datatype=

Signature: void via_geometry_datatype= (int datatype)

Description: Sets the via geometry layer datatype value.

See produce_via_geometry for details about this property.

Python specific notes:
The object exposes a writable attribute 'via_geometry_datatype'. This is the setter.

via_geometry_suffix

Signature: [const] string via_geometry_suffix

Description: Gets the via geometry layer name suffix.

See produce_via_geometry for details about this property.

Python specific notes:
The object exposes a readable attribute 'via_geometry_suffix'. This is the getter.

via_geometry_suffix=

Signature: void via_geometry_suffix= (string suffix)

Description: Sets the via geometry layer name suffix.

See produce_via_geometry for details about this property.

Python specific notes:
The object exposes a writable attribute 'via_geometry_suffix'. This is the setter.

via_geometry_suffix_per_mask

Signature: [const] string via_geometry_suffix_per_mask (unsigned int mask)

Description: Gets the via geometry layer name suffix per mask.

See produce_via_geometry for details about this property. The mask number is a zero-based mask index (0: MASK 1, 1: MASK 2 ...).

Mask specific rules have been introduced in version 0.27.