Table of Contents

Class S201DatasetProcessor

Namespace
EncDotNet.S100.Datasets.Pipelines
Assembly
EncDotNet.S100.Datasets.Pipelines.dll

Dataset processor that loads an S-201 Aids to Navigation Information GML dataset, executes the bundled XSLT portrayal pipeline, and produces a Mapsui layer ready for display in the viewer.

public sealed class S201DatasetProcessor : GmlDatasetProcessorBase<S201Feature>, IDatasetProcessor, IVectorPortrayalSource, IHeadlessImageRenderer, IDisplayModeAwareDatasetProcessor, ILoadedDatasetProjection
Inheritance
S201DatasetProcessor
Implements
Inherited Members

Constructors

S201DatasetProcessor(IAssetSource, string, PortrayalCatalogueManager, IDisplayPlaneAuthorityProvider, FeatureCatalogueManager?)

Initializes a new S201DatasetProcessor by reading the dataset file relativePath from source. Used by exchange-set bulk loading.

public S201DatasetProcessor(IAssetSource source, string relativePath, PortrayalCatalogueManager catalogueManager, IDisplayPlaneAuthorityProvider authorityProvider, FeatureCatalogueManager? featureCatalogueManager = null)

Parameters

source IAssetSource
relativePath string
catalogueManager PortrayalCatalogueManager
authorityProvider IDisplayPlaneAuthorityProvider
featureCatalogueManager FeatureCatalogueManager

S201DatasetProcessor(string, PortrayalCatalogueManager, IDisplayPlaneAuthorityProvider, FeatureCatalogueManager?)

Initializes a new S201DatasetProcessor.

public S201DatasetProcessor(string path, PortrayalCatalogueManager catalogueManager, IDisplayPlaneAuthorityProvider authorityProvider, FeatureCatalogueManager? featureCatalogueManager = null)

Parameters

path string
catalogueManager PortrayalCatalogueManager
authorityProvider IDisplayPlaneAuthorityProvider
featureCatalogueManager FeatureCatalogueManager

Properties

Features

The parsed features from the dataset.

protected override IReadOnlyList<S201Feature> Features { get; }

Property Value

IReadOnlyList<S201Feature>

ProductDescription

Human-readable product description for info strings (e.g. "Navigational Warnings", "Marine Aids to Navigation").

protected override string ProductDescription { get; }

Property Value

string

Methods

BuildFeatureReferences(S201Feature)

Builds feature references for the pick UI. Override to expose xlink/information references as navigable links.

protected override IReadOnlyList<FeatureReference> BuildFeatureReferences(S201Feature feature)

Parameters

feature S201Feature

Returns

IReadOnlyList<FeatureReference>

BuildInfoSuffix()

Appends spec-specific lines to the info string. Override to add counts like "Information types: N".

protected override string BuildInfoSuffix()

Returns

string

CreateFeatureXmlSource()

Creates the spec-appropriate feature XML source.

protected override IFeatureXmlSource CreateFeatureXmlSource()

Returns

IFeatureXmlSource

CreateLoadedData()

Allocates the LoadedDatasetData variant wrapping this processor's already-parsed model. Never re-reads the source bytes.

public override LoadedDatasetData CreateLoadedData()

Returns

LoadedDatasetData

The catalog payload wrapping the resident model (e.g. an S125DatasetData or S102CoverageData).

Remarks

Each GML subclass wraps its resident, already-parsed model in the matching LoadedDatasetData variant (e.g. new S125DatasetData(_dataset)) — no second parse.

ValidateDataset()

Runs the product's rule pack, or returns null when the product has none. Called once by Validate(), which caches the result.

protected override ValidationReport? ValidateDataset()

Returns

ValidationReport

Remarks

Overrides should typically delegate to ValidationRunner.Run(...) so that an InvalidOperationException from the typed projection (e.g. an empty dataset) surfaces as an empty report rather than propagating out of Validate().