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

API reference - Class LoadLayoutOptions::CellConflictResolution

Notation used in Ruby API documentation

Module: db

Description: This enum specifies how cell conflicts are handled if a layout read into another layout and a cell name conflict arises.

This class is equivalent to the class LoadLayoutOptions::CellConflictResolution

Until version 0.26.8 and before, the mode was always 'AddToCell'. On reading, a cell was 'reopened' when encountering a cell name which already existed. This mode is still the default. The other modes are made available to support other ways of merging layouts.

Proxy cells are never modified in the existing layout. Proxy cells are always local to their layout file. So if the existing cell is a proxy cell, the new cell will be renamed.

If the new or existing cell is a ghost cell, both cells are merged always.

This enum was introduced in version 0.27.

Public constructors

new LoadLayoutOptions::CellConflictResolution ptrnew(int i)Creates an enum from an integer value
new LoadLayoutOptions::CellConflictResolution ptrnew(string s)Creates an enum from a string value

Public methods

[const]bool!=(const LoadLayoutOptions::CellConflictResolution other)Compares two enums for inequality
[const]bool!=(int other)Compares an enum with an integer for inequality
[const]bool<(const LoadLayoutOptions::CellConflictResolution other)Returns true if the first enum is less (in the enum symbol order) than the second
[const]bool<(int other)Returns true if the enum is less (in the enum symbol order) than the integer value
[const]bool==(const LoadLayoutOptions::CellConflictResolution other)Compares two enums
[const]bool==(int other)Compares an enum with an integer value
[const]inthashGets the hash value from the enum
[const]stringinspectConverts an enum to a visual string
[const]intto_iGets the integer value from the enum
[const]stringto_sGets the symbolic string from an enum

Public static methods and constants

[static,const]LoadLayoutOptions::CellConflictResolutionAddToCellAdd content to existing cell
[static,const]LoadLayoutOptions::CellConflictResolutionOverwriteCellThe old cell is overwritten entirely (including child cells which are not used otherwise).
[static,const]LoadLayoutOptions::CellConflictResolutionRenameCellThe new cell will be renamed to become unique.
[static,const]LoadLayoutOptions::CellConflictResolutionSkipNewCellThe new cell is skipped entirely (including child cells which are not used otherwise).

Detailed description

!=

(1) Signature: [const] bool != (const LoadLayoutOptions::CellConflictResolution other)

Description: Compares two enums for inequality

(2) Signature: [const] bool != (int other)

Description: Compares an enum with an integer for inequality

<

(1) Signature: [const] bool < (const LoadLayoutOptions::CellConflictResolution other)

Description: Returns true if the first enum is less (in the enum symbol order) than the second

(2) Signature: [const] bool < (int other)

Description: Returns true if the enum is less (in the enum symbol order) than the integer value

==

(1) Signature: [const] bool == (const LoadLayoutOptions::CellConflictResolution other)

Description: Compares two enums

(2) Signature: [const] bool == (int other)

Description: Compares an enum with an integer value

AddToCell

Signature: [static,const] LoadLayoutOptions::CellConflictResolution AddToCell

Description: Add content to existing cell

This is the mode use in before version 0.27. Content of new cells is simply added to existing cells with the same name. Before version 0.29.2, this mode also merged instances, rendering it difficult to merge two identical cell hierarchies. Since version 0.29.2, no instance duplicates are generated. Instead only new instances are added to existing cells. With this feature in place, it is safe to merge two identical cell hierarchies stored in different files using AddToCell mode. In that application, the shapes and layers of the layouts are combined, but the cell hierarchy stays identical.

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

OverwriteCell

Signature: [static,const] LoadLayoutOptions::CellConflictResolution OverwriteCell

Description: The old cell is overwritten entirely (including child cells which are not used otherwise).

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

RenameCell

Signature: [static,const] LoadLayoutOptions::CellConflictResolution RenameCell

Description: The new cell will be renamed to become unique.

In this mode, two files are are combined rendering independent cell hierarchies coming from the original files. Cells may be renamed however. Also, new top cells will appear after merging a file into the layout using RenameCell mode.

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

SkipNewCell

Signature: [static,const] LoadLayoutOptions::CellConflictResolution SkipNewCell

Description: The new cell is skipped entirely (including child cells which are not used otherwise).

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

hash

Signature: [const] int hash

Description: Gets the hash value from the enum

Python specific notes:
This method is also available as 'hash(object)'.

inspect

Signature: [const] string inspect

Description: Converts an enum to a visual string

Python specific notes:
This method is also available as 'repr(object)'.

new

(1) Signature: [static] new LoadLayoutOptions::CellConflictResolution ptr new (int i)

Description: Creates an enum from an integer value

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

(2) Signature: [static] new LoadLayoutOptions::CellConflictResolution ptr new (string s)

Description: Creates an enum from a string value

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

to_i

Signature: [const] int to_i

Description: Gets the integer value from the enum

Python specific notes:
This method is also available as 'int(object)'.

to_s

Signature: [const] string to_s

Description: Gets the symbolic string from an enum

Python specific notes:
This method is also available as 'str(object)'.