iflTileIter(3) Image Format Library C++ Reference Manual iflTileIter(3)
iflTileIter - tile iterator
iflTile3D
#include <il/iflTileIter.h>
This class is primarily used to iterate through the pages covering a
tile. It assumes that pages are fixed size and that the origin of the
first page is aligned with (0,0). The alignment assumption can be
overridden by setting the tileAligned flag, either in the constructor or
in the setTile() method. Pages are assumed to be abutted unless the page
border attribute is set using setPageBorder(); in this case, the page
origins will be altered so that each page overlaps its neigbors by twice
the page border and the first page will have it's origin at (-bx,-by,-
bz).
The iflTileIter class contains eight public member variables, six of
which are derived from iflTile3D, that together specify the current page:
int (x,y,z,c) The origin of the current page.
int (nx,ny,nz,nc) The size of the current page. (These
values are constant.)
Constructors [Toc] [Back]
iflTileIter(const iflTile3Dint& parent, const iflSize& pageSize,
int cSize, const iflConfig* cfg=NULL, int tileAligned=0)
iflTileIter(const iflTile3Dint& parent, int cSize,
const iflConfig* cfg=NULL, int tileAligned=FALSE)
iflTileIter() protected
Iteration [Toc] [Back]
int more()
int getCount()
Initialization [Toc] [Back]
void setPageSize(const iflSize& pageSize)
void setTile(const iflTile3Dint& parent, int cSize,
const iflConfig* cfg=NULL, int tileAligned=0)
void setPageBorder(const iflXYZint& border, int includeBorder=FALSE)
Page 1
iflTileIter(3) Image Format Library C++ Reference Manual iflTileIter(3)
FUNCTION DESCRIPTIONS [Toc] [Back] iflTileIter()
iflTileIter(const iflTile3Dint& parent, const iflSize& pageSize,
int cSize, const iflConfig* cfg=NULL, int tileAligned=0)
iflTileIter(const iflTile3Dint& parent, int cSize,
const iflConfig* cfg=NULL, int tileAligned=FALSE)
iflTileIter() protected
The first constructor takes a parent tile and a page size
(pageSize). This will make a tile with same size as the page that
can be stepped across the parent tile in a row by row fashion. The
constructed tile will have its origin aligned to a multiple of its
size (unless tileAligned is TRUE, in which case this tile will have
is origin aligned to the parent's origin). The constructor also
takes the number of channels int the parent tile, cSize, and a
channel list/channel offset (in cfg), to control stepping in the
channel dimension.
The second version of the constructor defers setting the page size
to a later call to setPageSize().
The protected constructor is used by derived classes, which are
responsible initializing the object.
getCount()
int getCount()
This method returns the total number of pages that will be iterated
through for the current parameter values.
more()
int more()
This method is used to iterate through the page locations that cover
the parent tile. It must be called prior to accessing the first page
location. It will return FALSE when there are no more page locations
to iterate through, TRUE otherwise. After each call to more() the
public member variables, (x,y,z,c), will indicate to origin of the
next page.
setPageBorder()
void setPageBorder(const iflXYZint& border, int includeBorder=FALSE)
Page 2
iflTileIter(3) Image Format Library C++ Reference Manual iflTileIter(3)
This method is used to apply a page border, (border) to this tile;
this will cause the iterated locations to overlap by twice the page
border in each dimension; reflecting the way pages with borders are
stored in an image cache. If includeBorder is TRUE then pages that
only supply border data will be included (useful when iterating for
write access to a cache).
setPageSize()
void setPageSize(const iflSize& pageSize)
This method sets the size of this tile (i.e. the page size that will
be iterated).
setTile()
void setTile(const iflTile3Dint& parent, int cSize,
const iflConfig* cfg=NULL, int tileAligned=0)
This method resets the dimensions of the parent tile that will be
iterated across. The parameters have the same meanings as on the
constructor.
INHERITED MEMBER FUNCTIONS [Toc] [Back] Inherited from iflTile3D
boundingBox(), contains(), grow(), init(), intersect(), operator!=(),
operator+=(), operator-=(), operator==(), shrink()
iflTile3D, ilTileIter
PPPPaaaaggggeeee 3333 [ Back ]
|