API reference - Class TileOutputReceiver

Notation used in Ruby API documentation

Description: A receiver abstraction for the tiling processor.

The tiling processor (TilingProcessor) is a framework for executing sequences of operations on tiles of a layout or multiple layouts. The TileOutputReceiver class is used to specify an output channel for the tiling processor. See TilingProcessor#output for more details.

This class has been introduced in version 0.23.

Public constructors

TileOutputReceivernewCreates a new object of this class

Public methods

[const]voidassign(const TileOutputReceiver other)Assign the contents of another object to self
[virtual]voidbegin(unsigned int nx,
unsigned int ny,
const DPoint p0,
double dx,
double dy)
Initiates the delivery
voidcreateEnsures the C++ object is created
voiddestroyExplicitly destroy the object
[const]booldestroyed?Returns a value indicating whether the object was already destroyed
[const]TileOutputReceiverdupCreates a copy of self
[virtual]voidfinishIndicates the end of the execution
[const]boolis_const_object?Returns a value indicating whether the reference is a const reference
[virtual]voidput(unsigned int ix,
unsigned int iy,
const Box tile,
variant obj,
double dbu,
bool clip)
Delivers data for one tile

Detailed description

[const] void assign(const TileOutputReceiver 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.

[virtual] void begin(unsigned int nx,unsigned int ny,const DPoint p0,double dx,double dy)

Description: Initiates the delivery

nx:The number of tiles in x direction
ny:The number of tiles in y direction
p0:The initial point
dx:The tile's x dimension
dy:The tile's y dimension

This method is called before the first tile delivers it's data.

The tile's coordinates will be p0+(ix*dx,iy*dy)..p0+((ix+1)*dx,(iy+1)*dy) where ix=0..nx-1, iy=0..ny-1.

All coordinates are given in micron. If tiles are not used, nx and ny are 0.

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

Description: Creates a copy of self

[virtual] void finish

Description: Indicates the end of the execution

This method is called when the tiling processor has finished the last tile and script item.

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

Description: Creates a new object of this class

[virtual] void put(unsigned int ix,unsigned int iy,const Box tile,variant obj,double dbu,bool clip)

Description: Delivers data for one tile

ix:The x index of the tile
iy:The y index of the tile
tile:The tile's box
obj:The object which is delivered
dbu:The database unit
clip:True if clipping at the tile box is requested

When the script's "_output" function is called, the data will be delivered through this method. "obj" is the data passed as the second argument to _output. The interpretation of the object remains subject to the implementation.

The obj and clip parameters are taken from the _output method call inside the script. If clip is set to true, this usually means that output shall be clipped to the tile.