Table of Contents

Namespace EncDotNet.S100.Datasets.Pipelines.Catalog

Classes

CapDatasetData

The catalog payload of a CAP file: its warning areas, resolved and timed, and the dataset metadata the catalog entry is built from.

DatasetCatalogChangedEventArgs

Event payload for Changed.

DatasetCatalogNotReadyException

Thrown by an LoadAsync(string, string?, CancellationToken) implementation whose host load path is not yet initialised (e.g. the desktop viewer's dataset loader before the main window has wired it up).

DatasetIdJsonConverter

Serialises DatasetId as a bare JSON string so that the identifier round-trips symmetrically: every tool accepts a plain string datasetId argument, and every tool result therefore emits the same plain string rather than a wrapped {"value":"…"} object.

DatasetLoadOutcome

The outcome of a LoadAsync(string, string?, CancellationToken) call.

FileDatasetCatalog

A read-only, file-backed IDatasetCatalog built once from a fixed set of dataset files — the headless counterpart to the viewer's live catalog, used by the CLI identify command to run the same pick services (IdentifyFeaturesService / SampleCoverageService) the MCP surface exposes, without an open viewer or MCP server.

FileDatasetInput

One dataset file to load into a FileDatasetCatalog.

LoadedDataset

A single dataset currently loaded into an IDatasetCatalog.

LoadedDatasetData

Discriminated union over the typed payloads that a LoadedDataset may carry. Each spec contributes either a typed DataModel projection (vector products) or a coverage source (HDF5-encoded coverage products).

LoadedDatasetProjector

Projects a single S-100 dataset into the typed LoadedDataset carried by an IDatasetCatalog.

ProductDatasetData

The payload of a product that has no built-in LoadedDatasetData variant — a host's own product, or a non-S-100 format such as GRIB2 — returned by its OpenData. It carries the dataset's own DatasetMetadata, from which LoadedDatasetProjector takes the catalog entry's spec, bounds and time coverage, so the projector needs no case for the product. A coverage product's payload also implements ICoverageSampler, so the sample_coverage tools sample it with no tool changes.

S101DatasetData

S-101 Electronic Navigational Chart typed dataset.

S102CoverageData

S-102 Bathymetric Surface coverage handle.

S104CoverageData

S-104 Water Level coverage handle (dcf2 — regular grid).

S104StationSeriesData

S-104 Water Level station-series dataset (dcf8 — time series at fixed stations; see S-104 Edition 2.0.0 §10.2.3 / §10.2.7).

S111CoverageData

S-111 Surface Currents coverage handle.

S111StationSeriesData

S-111 Surface Currents station-series dataset (dcf8 — time series at fixed stations; see S-111 Edition 2.0.0 §10.2.3 / §10.2.7).

S122DatasetData

S-122 Marine Protected Areas typed model.

S124DatasetData

S-124 Navigational Warnings typed model.

S125DatasetData

S-125 Marine Aids to Navigation typed model.

S127DatasetData

S-127 Marine Resources and Services typed model.

S128DatasetData

S-128 Catalogue of Nautical Products typed model.

S129DatasetData

S-129 Under Keel Clearance typed model.

S131DatasetData

S-131 Marine Harbour Infrastructure typed model.

S201DatasetData

S-201 Aids to Navigation Information typed model.

S411DatasetData

S-411 Sea Ice Information typed model.

S421DatasetData

S-421 Route Plans typed model.

WeatherGridDatasetData

The catalog payload of a weather grid dataset (NetCDF-CF or GRIB2): a ProductDatasetData that describes itself and samples its grid, so sample_coverage and sample_coverage_along answer with wave heights and winds and their units with no MCP change (design note weather-sources.md §8.8).

Structs

DatasetId

Stable identifier for a dataset within an IDatasetCatalog.

TimeRange

An optional time interval associated with a loaded dataset.

Interfaces

IDatasetCatalog

Read-only view onto the set of datasets currently loaded by a host (e.g. a viewer, CLI, or headless service).

ILoadedDatasetProjection

Implemented by an IDatasetProcessor that can yield the query-tool payload for its already-parsed dataset, so a host can project a LoadedDataset from a resident processor rather than re-parsing the dataset bytes a second time.

IMutableDatasetCatalog

The write side of an IDatasetCatalog: a catalog whose contents a mutating host can change in-process. Backs the open_dataset, close_dataset, and close_all_datasets tools.

ITimeSteppedDatasetData

A catalog payload whose dataset has time steps of its own: a weather grid's valid times, or the times a CAP file's warnings start and end. The list_time_steps tool reads it, so a product that isn't S-104 or S-111 lists its steps without a change to the tool.

Enums

DatasetCatalogChangeKind

The kind of change reported by an IDatasetCatalog.

DatasetSourceKind

How a load path was classified.