Subtree

class Subtree

One decoded .subtree file. Carries the availability bitstreams the layer's traversal code consults when expanding implicit children.

Spec subtree file layout (header is 24 bytes little-endian):

  • bytes 0..3: magic "subt"

  • bytes 4..7: version (uint32, currently 1)

  • bytes 8..15: JSON chunk byte length (uint64)

  • bytes 16..23: binary chunk byte length (uint64)

  • bytes 24..: JSON chunk

  • bytes 24+jsonLen..: binary chunk

The JSON describes which bytes of the binary chunk hold which availability bitstream; see SubtreeReader.parse for the actual bit-extraction logic.

Properties

Link copied to clipboard

Bit i = 1 iff the i-th leaf of this subtree has a child subtree at the next level boundary. Used to know which {level}/{x}/{y}.subtree URIs to fetch recursively. Empty when no children exist.

Link copied to clipboard

Per-content-slot availability. Most implicit tilesets have a single content slot; some publish multiple (mesh + point cloud, etc.) where each slot has its own bit pattern. Empty list = no content available in this subtree.

Link copied to clipboard

Bit i = 1 iff the i-th tile in level-order traversal of this subtree exists. Always non-null; constant 1 when the subtree's metadata says all tiles exist.