Synopsis

#include <IceT.h>

int icetAddTile( IceTInt x,
IceTInt y,
IceTSizeType width,
IceTSizeType height,
int display_rank );

Description

Adds a tile to the tiled display. Every process, whether actually displaying a tile or not, must declare the tiles in the display and which processes drive them with icetResetTiles and icetAddTile. Thus, each process calls icetAddTile once for each tile in the display, and all processes must declare them in the same order.

The parameters x, y, width, and height define the tile's viewport in the logical global display much in the same way glViewport declares a region in a physical display in OpenGL .IceT places no limits on the extents of the logical global display. That is, there are no limits on the values of x and y. They can extend as far as they want in both the positive and negative directions.

IceT will project its images onto the region of the logical global display that just covers all of the tiles. Therefore, shifting all the tiles in the logical global display by the same amount will have no real overall effect.

The display_rank parameter identifies the rank of the process that will be displaying the given tile. It is assumed that the output of the rendering window of the given process is projected onto the space in a tiled display given by x, y, width, and height. Each tile must have a valid rank (between 0 and $ICET_NUM_PROCESSES - 1$). Furthermore, no process may be displaying more than one tile.

Return Value

Returns the index of the tile created or -1 if the tile could not be created.

Errors

ICET_INVALID_VALUE

Raised if display_rank is not a valid process rank, if display_rank is already assigned to another tile, or if width or height is smaller than 1. If this error is raised, nothing is done and -1 is returned.

Warnings

None.

Bugs

All processes must specify the same tiles in the same order. IceT will assume this even though it is not explicitly detected or enforced.

Copyright

Copyright (C)2003 Sandia Corporation

Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation, the U.S. Government retains certain rights in this software.

This source code is released under the New BSD License.

See Also