Terrain store conversion, parse, and checksum error. A :tile error keeps
its source path, original message, and complete nested Sidereon.Terrain.tile_error/0.
Summary
Types
@type t() :: %Sidereon.Terrain.MmapTerrain.TerrainStoreError{ datum: Sidereon.Terrain.horizontal_datum() | nil, error: Sidereon.Terrain.tile_error() | nil, expected: non_neg_integer() | nil, expected_tile_id: {integer(), integer()} | nil, field: String.t() | nil, found: non_neg_integer() | nil, found_tile_id: {integer(), integer()} | nil, kind: :io | :parse | :unsupported_version | :unsupported_datum | :duplicate_tile | :tile_id_mismatch | :checksum | :attested_checksum_mismatch | :tile_id_out_of_range | :tile_bounds_mismatch | :non_wgs84_tile | :tile, lat_index: integer() | nil, lon_index: integer() | nil, message: String.t() | nil, path: String.t() | nil, reason: String.t() | nil, tag: non_neg_integer() | nil, version: non_neg_integer() | nil }
Typed terrain store error.
:tile_id_out_of_range is an index record naming a tile id outside the
coordinate domain, and :tile_bounds_mismatch one whose bounds are not that
one-degree cell's edges (field names the bound). :non_wgs84_tile is a
DTED tile whose DSI names a horizontal datum other than WGS84 (datum),
refused by the converter because the store records no datum. :tile
retains the source path, original message, and nested tile error.