Class S101Dataset
An S-101 Electronic Navigational Chart dataset, parsed directly from ISO 8211 encoded records via EncDotNet.S100.Datasets.S101.S101DocumentReader.
public sealed class S101Dataset
- Inheritance
-
S101Dataset
- Inherited Members
Properties
CoordinateMultiplicationFactorX
Coordinate multiplication factor for X (longitude).
public uint CoordinateMultiplicationFactorX { get; }
Property Value
CoordinateMultiplicationFactorY
Coordinate multiplication factor for Y (latitude).
public uint CoordinateMultiplicationFactorY { get; }
Property Value
DatasetName
Dataset name from the DSID record.
public string DatasetName { get; }
Property Value
Document
The underlying parsed S-101 document.
public S101Document Document { get; }
Property Value
FeatureCount
Number of feature records in the dataset.
public int FeatureCount { get; }
Property Value
UpdateReport
Outcome of applying sequential updates when the dataset was opened via OpenWithUpdates(string, IReadOnlyList<string>); otherwise null.
public S101UpdateReport? UpdateReport { get; }
Property Value
Methods
FromDocument(S101Document)
Wraps an in-memory S101Document so it can be consumed by the rest of the S-101 pipeline.
public static S101Dataset FromDocument(S101Document document)
Parameters
documentS101Document
Returns
Remarks
Intended for adapters that translate from another product specification (for example, S-57) into the S-101 in-memory model in order to reuse the S-101 portrayal catalogue.
Open(Stream)
Opens an S-101 dataset from a stream.
public static S101Dataset Open(Stream stream)
Parameters
streamStream
Returns
Open(string)
Opens an S-101 dataset from a file path.
public static S101Dataset Open(string path)
Parameters
pathstring
Returns
OpenWithUpdates(string, IReadOnlyList<string>)
Opens an S-101 base cell and applies a set of sequential update files (best-effort) to produce an up-to-date dataset.
public static S101Dataset OpenWithUpdates(string basePath, IReadOnlyList<string> updatePaths)
Parameters
basePathstringPath to the base cell (
….000).updatePathsIReadOnlyList<string>Paths to the update files (
….001,….002, …). They are read, ordered by update number, and applied in sequence. A file that fails to read, or a non-contiguous / invalid update, is recorded in UpdateReport and never prevents the dataset from opening.
Returns
- S101Dataset
The dataset reflecting the base plus every successfully applied update, with UpdateReport populated.
ReadMetadata()
Produces the lightweight DatasetMetadata for this already
parsed dataset: declared specification, geographic extent, and the
DataCoverage display-scale window (issue #460).
public DatasetMetadata ReadMetadata()
Returns
ReadMetadata(Stream)
Reads only the lightweight DatasetMetadata for an S-101
cell from stream. See
ReadMetadata(string) for the phased-loading rationale.
public static DatasetMetadata ReadMetadata(Stream stream)
Parameters
streamStream
Returns
ReadMetadata(string)
Reads only the lightweight DatasetMetadata for an S-101
cell at path — its declared specification, geographic
extent, and intended display-scale window — for phased / deferred
loading (issue #460).
public static DatasetMetadata ReadMetadata(string path)
Parameters
pathstring
Returns
Remarks
Unlike the HDF5 products, the S-101 ISO 8211 encoding carries no
header-level minimum bounding rectangle, so the extent is still derived
by scanning the spatial records; the phased win over a full load is that
the feature graph is not resolved and — crucially — the portrayal
catalogue is never loaded or executed. The display-scale window is read
cheaply from the DataCoverage feature records
(S-101 FC §3.1.1 minimumDisplayScale / maximumDisplayScale).