API reference - Class PCellParameterDeclaration

Notation used in Ruby API documentation

Description: A PCell parameter declaration

This class declares a PCell parameter by providing a name, the type and a value and additional information like description, unit string and default value. It is used in the PCellDeclaration class to deliver the necessary information.

This class has been introduced in version 0.22.

Public constructors

new PCellParameterDeclarationnew(string name,
unsigned int type,
string description)
Create a new parameter declaration with the given name and type
new PCellParameterDeclarationnew(string name,
unsigned int type,
string description,
variant default)
Create a new parameter declaration with the given name, type and default value
new PCellParameterDeclarationnew(string name,
unsigned int type,
string description,
variant default,
string arg5)
Create a new parameter declaration with the given name, type, default value and unit string

Public methods

voidadd_choice(string description,
variant value)
Add a new value to the list of choices
[const]voidassign(const PCellParameterDeclaration other)Assign the contents of another object to self
[const]string[]choice_descriptionsReturns a list of choice descriptions
[const]variant[]choice_valuesReturns a list of choice values
voidclear_choicesClears the list of choices
voidcreateEnsures the C++ object is created
[const]variantdefaultGets the default value
voiddefault=(variant value)Sets the default value
[const]stringdescriptionGets the description text
voiddescription=(string description)Sets the description
voiddestroyExplicitly destroy the object
[const]booldestroyed?Returns a value indicating whether the object was already destroyed
[const]PCellParameterDeclarationdupCreates a copy of self
voidhidden=(bool flag)Makes the parameter hidden if this attribute is set to true
[const]boolhidden?Returns true, if the parameter is a hidden parameter that should not be shown in the user interface
[const]boolis_const_object?Returns a value indicating whether the reference is a const reference
[const]stringnameGets the name
voidname=(string value)Sets the name
voidreadonly=(bool flag)Makes the parameter read-only if this attribute is set to true
[const]boolreadonly?Returns true, if the parameter is a read-only parameter
[const]unsigned inttypeGets the type
voidtype=(unsigned int type)Sets the type
[const]stringunitGets the unit string
voidunit=(string unit)Sets the unit string

Public static methods and constants

unsigned intTypeBooleanType code: boolean data
unsigned intTypeDoubleType code: floating-point data
unsigned intTypeIntType code: integer data
unsigned intTypeLayerType code: a layer (a LayerInfo object)
unsigned intTypeListType code: a list of variants
unsigned intTypeNoneType code: unspecific type
unsigned intTypeShapeType code: a guiding shape (Box, Edge, Point, Polygon or Path)
unsigned intTypeStringType code: string data

Detailed description

[static] unsigned int TypeBoolean

Description: Type code: boolean data

[static] unsigned int TypeDouble

Description: Type code: floating-point data

[static] unsigned int TypeInt

Description: Type code: integer data

[static] unsigned int TypeLayer

Description: Type code: a layer (a LayerInfo object)

[static] unsigned int TypeList

Description: Type code: a list of variants

[static] unsigned int TypeNone

Description: Type code: unspecific type

[static] unsigned int TypeShape

Description: Type code: a guiding shape (Box, Edge, Point, Polygon or Path)

[static] unsigned int TypeString

Description: Type code: string data

void add_choice(string description,variant value)

Description: Add a new value to the list of choices

This method will add the given value with the given description to the list of choices. If choices are defined, KLayout will show a drop-down box instead of an entry field in the parameter user interface.

[const] void assign(const PCellParameterDeclaration other)

Description: Assign the contents of another object to self

This method assigns the contents of another object to self. This is a deep copy that does not only copy the reference but the actual content.

[const] string[] choice_descriptions

Description: Returns a list of choice descriptions

[const] variant[] choice_values

Description: Returns a list of choice values

void clear_choices

Description: Clears the list of choices

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.

[const] variant default

Description: Gets the default value

void default=(variant value)

Description: Sets the default value

If a default value is defined, it will be used to initialize the parameter value when a PCell is created.

[const] string description

Description: Gets the description text

void description=(string description)

Description: Sets the description

void destroy

Description: Explicitly destroy the object

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

[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.

[const] PCellParameterDeclaration dup

Description: Creates a copy of self

void hidden=(bool flag)

Description: Makes the parameter hidden if this attribute is set to true

[const] bool hidden?

Description: Returns true, if the parameter is a hidden parameter that should not be shown in the user interface

By making a parameter hidden, it is possible to create internal parameters which cannot be edited.

[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.

[const] string name

Description: Gets the name

void name=(string value)

Description: Sets the name

[static] new PCellParameterDeclaration new(string name,unsigned int type,string description)

Description: Create a new parameter declaration with the given name and type

name:The parameter name
type:One of the Type... constants describing the type of the parameter
description:The description text

[static] new PCellParameterDeclaration new(string name,unsigned int type,string description,variant default)

Description: Create a new parameter declaration with the given name, type and default value

name:The parameter name
type:One of the Type... constants describing the type of the parameter
description:The description text
default:The default (initial) value

[static] new PCellParameterDeclaration new(string name,unsigned int type,string description,variant default,string arg5)

Description: Create a new parameter declaration with the given name, type, default value and unit string

name:The parameter name
type:One of the Type... constants describing the type of the parameter
description:The description text
default:The default (initial) value
unit:The unit string

void readonly=(bool flag)

Description: Makes the parameter read-only if this attribute is set to true

[const] bool readonly?

Description: Returns true, if the parameter is a read-only parameter

By making a parameter read-only, it is shown but cannot be edited.

[const] unsigned int type

Description: Gets the type

The type is one of the T... constants.

void type=(unsigned int type)

Description: Sets the type

[const] string unit

Description: Gets the unit string

void unit=(string unit)

Description: Sets the unit string

The unit string is shown right to the edit fields for numeric parameters.