TIFFSTRILEQUERY(3tiff) LibTIFF TIFFSTRILEQUERY(3tiff)
NAME
TIFFStrileQuery - get strile byte count and offset
SYNOPSIS
#include <tiffio.h>
uint64_t TIFFGetStrileByteCount(TIFF *tif, uint32_t strile);
uint64_t TIFFGetStrileOffset(TIFF *tif, uint32_t strile);
uint64_t TIFFGetStrileByteCountWithErr(TIFF *tif, uint32_t strile, int
*pbErr);
uint64_t TIFFGetStrileOffsetWithErr(TIFF *tif, uint32_t strile, int
*pbErr);
DESCRIPTION
Make defer strile offset/bytecount loading available at runtime and add
per-strile offset/bytecount loading capabilities. Part of this commit
makes the behaviour that was previously met when libtiff was compiled
with -DDEFER_STRILE_LOAD available for default builds.
When specifying the new D (Deferred) TIFFOpen() flag, the loading of
strile offset/bytecount is deferred. In that mode, the StripOffsets /
StripByteCounts or TileOffsets / TileByteCounts arrays are only loaded
when first accessed. This can speed-up the opening of files stored on
the network when just metadata retrieval is needed.
Another addition is the capability of loading only the values of the
offset/bytecount of the strile of interest instead of the whole array.
This is enabled with the new O (Ondemand) flag of TIFFOpen() (which
implies D).
The public TIFFGetStrileOffset(), TIFFGetStrileOffsetWithErr(),
TIFFGetStrileByteCount() and TIFFGetStrileByteCountWithErr() functions
have been added to API. They are of particular interest when using
sparse files (with offset == bytecount == 0) and you want to detect if
a strile is present or not without decompressing the data, or updating
an existing sparse file.
TIFFGetStrileByteCount() returns the value of the TileByteCounts /
StripByteCounts array for the specified tile/strile.
TIFFGetStrileByteCountWithErr() additionally provides pbErr as an int
pointer to an error return variable, which is set to "0" for successful
return or to "1" for an error return.
TIFFGetStrileOffset() returns the value of the TileOffsets /
StripOffsets array for the specified tile/strile.
TIFFGetStrileOffsetWithErr() additionally provides pbErr as an int
pointer to an error return variable, which is set to "0" for successful
return or to "1" for an error return.
DIAGNOSTICS
All error messages are directed to the TIFFErrorExtR() routine.
Likewise, warning messages are directed to the TIFFWarningExtR()
routine.
NOTE
This functionality was introduced with libtiff 4.1.
SEE ALSO
libtiff(3), TIFFOpen(3), TIFFDeferStrileArrayWriting(3)
AUTHOR
LibTIFF contributors
COPYRIGHT
1988-2025, LibTIFF contributors
4.7 September 11, 2025 TIFFSTRILEQUERY(3tiff)
tiff 4.7.1 - Generated Thu Sep 25 07:20:55 CDT 2025
