API reference - Class InstElement

Notation used in Ruby API documentation

Description: An element in an instantiation path

This objects are used to reference a single instance in a instantiation path. The object is composed of a CellInstArray object (accessible through the cell_inst accessor) that describes the basic instance, which may be an array. The particular instance within the array can be further retrieved using the array_member_trans, specific_trans or specific_cplx_trans methods.

Public constructors

new InstElementnewDefault constructor
new InstElementnew(const Instance inst)Create an instance element from a single instance alone
new InstElementnew(const Instance inst,
unsigned long a_index,
unsigned long b_indexStarting with version 0.15)
Create an instance element from an array instance pointing into a certain array member

Public methods

[const]bool!=(const InstElement b)Inequality of two InstElement objects
[const]bool<(const InstElement b)Provide an order criterion for two InstElement objects
[const]bool==(const InstElement b)Equality of two InstElement objects
[const]Transarray_member_transReturns the transformation for this array member
[const]voidassign(const InstElement other)Assign the contents of another object to self
[const]const CellInstArray ptrcell_instAccessor to the cell instance (array).
voidcreateEnsures the C++ object is created
voiddestroyExplicitly destroy the object
[const]booldestroyed?Returns a value indicating whether the object was already destroyed
[const]InstElementdupCreates a copy of self
[const]boolis_const_object?Returns a value indicating whether the reference is a const reference
[const]unsigned intprop_idAccessor to the property attached to this instance.
[const]CplxTransspecific_cplx_transReturns the specific complex transformation for this instance
[const]Transspecific_transReturns the specific transformation for this instance

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

[static]new InstElementnew_i(const Instance inst)Use of this method is deprecated. Use new instead
[static]new InstElementnew_iab(const Instance inst,
unsigned long a_index,
unsigned long b_indexStarting with version 0.15)
Use of this method is deprecated. Use new instead

Detailed description

[const] bool !=(const InstElement b)

Description: Inequality of two InstElement objects

Warning: this operator returns true if both instance elements refer to the same instance, not just identical ones.

[const] bool <(const InstElement b)

Description: Provide an order criterion for two InstElement objects

Warning: this operator is just provided to establish any order, not a particular one.

[const] bool ==(const InstElement b)

Description: Equality of two InstElement objects

See the hint on the < operator.

[const] Trans array_member_trans

Description: Returns the transformation for this array member

The array member transformation is the one applicable in addition to the global transformation for the member selected from an array. If this instance is not an array instance, the specific transformation is a unit transformation without displacement.

[const] void assign(const InstElement 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] const CellInstArray ptr cell_inst

Description: Accessor to the cell instance (array).

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.

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] InstElement dup

Description: Creates a copy of self

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

[static] new InstElement new

Description: Default constructor

[static] new InstElement new(const Instance inst)

Description: Create an instance element from a single instance alone

Starting with version 0.15, this method takes an Instance object (an instance reference) as the argument.

[static] new InstElement new(const Instance inst,unsigned long a_index,unsigned long b_indexStarting with version 0.15)

Description: Create an instance element from an array instance pointing into a certain array member

[static] new InstElement new_i(const Instance inst)

Description: Create an instance element from a single instance alone

This method is deprecated. Use method 'new' instead

[static] new InstElement new_iab(const Instance inst,unsigned long a_index,unsigned long b_indexStarting with version 0.15)

Description: Create an instance element from an array instance pointing into a certain array member

This method is deprecated. Use method 'new' instead

[const] unsigned int prop_id

Description: Accessor to the property attached to this instance.

[const] CplxTrans specific_cplx_trans

Description: Returns the specific complex transformation for this instance

The specific transformation is the one applicable for the member selected from an array. This is the effective transformation applied for this array member. array_member_trans gives the transformation applied additionally to the instances' global transformation (in other words, specific_cplx_trans = array_member_trans * cell_inst.cplx_trans).

[const] Trans specific_trans

Description: Returns the specific transformation for this instance

The specific transformation is the one applicable for the member selected from an array. This is the effective transformation applied for this array member. array_member_trans gives the transformation applied additionally to the instances' global transformation (in other words, specific_trans = array_member_trans * cell_inst.trans). This method delivers a simple transformation that does not include magnification components. To get these as well, use specific_cplx_trans.