icetAddTile(3)

πŸ’– icetAddTile(3) β€” IceT Reference πŸ’–

okay bestie, welcome to the tile-adding page of the IceT Reference, no cap πŸŽ€ this is where you tell IceT about the tiles in your tiled display, one by one, and it's honestly so much power.


✨ NAME ✨

icetAddTile β€” add a tile to the logical display. that's it, that's the vibe πŸ¦‹


🌸 Synopsis 🌸

#include <IceT.h>

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

πŸ’œ Description πŸ’œ

so like, this function adds a tile to the tiled display. and here's the thing β€” every process, whether it's actually displaying a tile or not, has to declare the tiles in the display and which processes drive them, using icetResetTiles and icetAddTile. like, no skipping, no lurking, everyone participates 🫢

so the deal is: each process calls icetAddTile once for each tile in the display, and all processes must declare them in the same order. same order, bestie. iykyk.

the parameters x, y, width, and height define the tile's viewport in the logical global display, kinda the same way glViewport declares a region in a physical display in OpenGL. and get this β€” IceT places no limits on the extents of the logical global display. that's right, 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. go off, honestly ✨

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

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$). and furthermore β€” no process may be displaying more than one tile. one tile per process, that's the rule, periodt πŸ’…


⭐ Return Value ⭐

returns the index of the tile created, or -1 if the tile could not be created. sad girl hours if it's -1 😭


πŸ”₯ 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. like, nothing happened, bestie, it just said no πŸ’€

🌈 Warnings 🌈

None. zero warnings, we love a clean record ✨


πŸ’€ 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. so like... it's not gonna catch you, it's just gonna trust you and then things might go sideways. be careful bestie πŸ™ˆ


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 πŸ¦‹


and that's the whole page, my love πŸ’– this was the IceT Reference take on icetAddTile(3), dated June 7, 2011 β€” yeah she's a lil vintage but she ate. mwah, go add some tiles πŸŽ€βœ¨