TiffDirectory

One parsed TIFF Image File Directory — a single raster in the file. A pyramided GeoTIFF (a COG, or anything gdaladdo has touched) holds the full-resolution image in the first IFD and each successively coarser overview in its own IFD; GeoTiffDataset keeps them as a resolution ladder and picks one per rendered tile.

Strip-organized rasters are normalized to the tiled shape: a strip is just a block as wide as the image and blockHeight rows tall, so block indexing and decoding stay on one path.

Properties

Link copied to clipboard

Index of the alpha band within a chunky pixel, or -1 when the raster has no alpha.

Link copied to clipboard

Bits of the first sample — the elevation / gray band, and the width every band shares in the layouts we decode.

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard

Uncompressed byte size of a full block — what the decompressors size their output to.

Link copied to clipboard

Block height in pixels — TileLength, or RowsPerStrip for strips.

Link copied to clipboard
Link copied to clipboard

Number of blocks across the raster.

Link copied to clipboard

Number of blocks down the raster.

Link copied to clipboard

Block width in pixels — TileWidth, or the image width for strips.

Link copied to clipboard

Bytes one pixel occupies in a decoded block (all samples, chunky layout).

Link copied to clipboard

ColorMap palette as 16-bit R,G,B runs, or null when the raster isn't palettized.

Link copied to clipboard
Link copied to clipboard

ExtraSamples — a first entry of 1 (associated) or 2 (unassociated) marks an alpha band.

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard

GeoKey directory flattened to key -> value. Keys stored in the double-parameter array resolve to their referenced entry; ASCII keys are skipped, since none of the keys the engine acts on are textual.

Link copied to clipboard

True when the raster carries a vertical CRS — the one place GeoTIFF states outright that its pixels are heights, since only a height field is georeferenced vertically. Absent from most DEMs all the same, so it confirms elevation rather than ruling it out.

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard

True when this IFD is a transparency / per-band mask rather than imagery.

Link copied to clipboard

True when this IFD is a reduced-resolution overview of the full-size image.

Link copied to clipboard

True when the raster is tiled (TileOffsets), false when striped (StripOffsets).

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard

GDAL_NODATA, parsed from its ASCII payload; null when the tag is absent.

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard

Per-sample SampleFormat (unsigned / signed / IEEE float), defaulted to unsigned.

Link copied to clipboard
Link copied to clipboard

NewSubfileType bit field: bit 0 = reduced-resolution overview, bit 2 = transparency mask.

Functions

Link copied to clipboard
fun blockIndex(blockX: Int, blockY: Int): Int