Table of Contents

Namespace EncDotNet.S100.Hdf5

Classes

CompoundMemberInfo

Describes a single member of a compound HDF5 datatype as observed on disk. Used to project RawCompoundDataset rows into product-specific value types when member naming or numeric width varies between producers.

ExceptionMessageFormatter

Shared message-text helpers used by S100DatasetSchemaException, S100DatasetNotSupportedException, and dataset readers that need to construct a "not yet supported" message with the canonical four-piece shape (product, file, feature, spec ref).

Hdf5DeclaredExtent

Reads the extent an S-100 HDF5 dataset declares, for the axis-order check (AxisOrderCheck, issue #650).

Hdf5RequiredAttributeExtensions

Extension methods that translate PureHDF's Could not find attribute '{name}' failure (and equivalent "missing" exceptions from other backends) into typed S100DatasetSchemaExceptions carrying spec context. Reader implementations call these for attributes that are required by the spec; optional attributes should still be guarded with AttributeExists(string).

RawCompoundDataset

A compound dataset returned in raw form: the bytes are laid out exactly as on disk (record-major), and the members describe where each field lives within a record. Callers project rows into their own value types so that small spec-conforming variations (member renames, numeric width changes) can be tolerated without changing public value-struct layouts.

S100DatasetNotSupportedException

Thrown when an S-100 dataset uses an optional spec feature (data-coding format, CRS variant, attribute encoding, etc.) that the current reader does not yet implement. Distinct from S100DatasetSchemaException: the file is conforming; it just exercises a region of the spec we haven't built yet.

S100DatasetSchemaException

Thrown when a required HDF5 attribute, dataset, or group is missing from a location that the S-100 spec requires it on, or is present but malformed in a way that cannot be reasonably tolerated. The exception carries the product, file (when known), the HDF5 group path that was being read, the offending attribute/dataset name (when applicable), and a citation into the relevant spec section so that callers can produce actionable diagnostics.

Interfaces

IHdf5File

Abstraction over an HDF5 file, providing access to the root group.

IHdf5Group

Abstraction over an HDF5 group, providing navigation and typed data access.

Enums

CompoundMemberKind

Classifies a compound member's on-disk numeric kind so callers can project it into a target .NET type without recompiling against PureHDF types.