API reference - Class ParentInstArray

Notation used in Ruby API documentation

Description: A parent instance

A parent instance is basically an inverse instance: instead of pointing to the child cell, it is pointing to the parent cell and the transformation is representing the shift of the parent cell relative to the child cell. For memory performance, a parent instance is not stored as a instance but rather as a reference to a child instance and a reference to the cell which is the parent. The parent instance itself is computed on the fly. It is representative for a set of instances belonging to the same cell index. The special parent instance iterator takes care of producing the right sequence (Cell#each_parent_inst).

See The Database API for more details about the database objects.

Public constructors

ParentInstArraynewCreates a new object of this class

Public methods

[const]voidassign(const ParentInstArray other)Assign the contents of another object to self
[const]Instancechild_instRetrieve the child instance associated with this parent instance
voidcreateEnsures the C++ object is created
voiddestroyExplicitly destroy the object
[const]booldestroyed?Returns a value indicating whether the object was already destroyed
[const]ParentInstArraydupCreates a copy of self
[const]CellInstArrayinstCompute the inverse instance by which the parent is seen from the child
[const]boolis_const_object?Returns a value indicating whether the reference is a const reference
[const]unsigned intparent_cell_indexGets the index of the parent cell

Detailed description

[const] void assign(const ParentInstArray 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] Instance child_inst

Description: Retrieve the child instance associated with this parent instance

Starting with version 0.15, this method returns an Instance object rather than a CellInstArray reference.

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

Description: Creates a copy of self

[const] CellInstArray inst

Description: Compute the inverse instance by which the parent is seen from the child

[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] ParentInstArray new

Description: Creates a new object of this class

[const] unsigned int parent_cell_index

Description: Gets the index of the parent cell