Table of Contents

Class S100Products

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

The built-in per-product ProductRegistrations for every S-100 product this library ships a processor for, and helpers to register them. This is the one place that knows how each product's processor is constructed, how its files are recognised, and its traits (metadata reader, catalog payload, default S-98 planes, portrayal basis); it replaces the former hard-coded switches in DatasetPipelineFactory and the hosts. A host that wants every product calls AddAllS100Products(ProductRegistry) (the default Default does this, and adds the weather formats of WeatherProducts); a host that wants a subset registers only the products it needs.

public static class S100Products
Inheritance
S100Products
Inherited Members

Properties

All

Every built-in product registration, in a single place. Both RegisterAll(ProductRegistry) and EncDotNet.S100.Datasets.Pipelines.S100Products.KnownSpecs derive from this list, so a new product is added here once.

public static IReadOnlyList<ProductRegistration> All { get; }

Property Value

IReadOnlyList<ProductRegistration>

S101

S-101 Electronic Navigational Chart.

public static ProductRegistration S101 { get; }

Property Value

ProductRegistration

S102

S-102 Bathymetric Surface.

public static ProductRegistration S102 { get; }

Property Value

ProductRegistration

S104

S-104 Water Level Information for Surface Navigation.

public static ProductRegistration S104 { get; }

Property Value

ProductRegistration

S104Portrayal

The S-104 portrayal: S-104 Edition 2.0.0 ยง9 defines none, so the station gauges and surface isolines are SoundCharts' own (see S104CoverageStyle).

public static PortrayalBasis S104Portrayal { get; }

Property Value

PortrayalBasis

S111

S-111 Surface Currents.

public static ProductRegistration S111 { get; }

Property Value

ProductRegistration

S122

S-122 Marine Protected Areas.

public static ProductRegistration S122 { get; }

Property Value

ProductRegistration

S124

S-124 Navigational Warnings.

public static ProductRegistration S124 { get; }

Property Value

ProductRegistration

S125

S-125 Marine Aids to Navigation.

public static ProductRegistration S125 { get; }

Property Value

ProductRegistration

S127

S-127 Marine Traffic Management.

public static ProductRegistration S127 { get; }

Property Value

ProductRegistration

S128

S-128 Catalogue of Nautical Products.

public static ProductRegistration S128 { get; }

Property Value

ProductRegistration

S129

S-129 Under Keel Clearance Management.

public static ProductRegistration S129 { get; }

Property Value

ProductRegistration

S131

S-131 Marine Harbour Infrastructure.

public static ProductRegistration S131 { get; }

Property Value

ProductRegistration

S201

S-201 Aids to Navigation Information.

public static ProductRegistration S201 { get; }

Property Value

ProductRegistration

S401

S-401 Inland ENC (IEHG). Shares the S-100 Part 10a ISO 8211 encoding and the Part 9A Lua portrayal model with S-101, so it reuses S101DatasetProcessor with its own Feature and Portrayal Catalogues rather than cloning the pipeline.

public static ProductRegistration S401 { get; }

Property Value

ProductRegistration

S411

S-411 Ice Information (JCOMM).

public static ProductRegistration S411 { get; }

Property Value

ProductRegistration

S421

S-421 Route Plan.

public static ProductRegistration S421 { get; }

Property Value

ProductRegistration

S57

Legacy S-57 ENC (translated in-memory to S-101).

public static ProductRegistration S57 { get; }

Property Value

ProductRegistration

Methods

CreateDefaultRegistry()

Creates a registry pre-loaded with every built-in product: the S-100 products here and the weather formats in WeatherProducts.

public static ProductRegistry CreateDefaultRegistry()

Returns

ProductRegistry

RegisterAll(ProductRegistry)

Registers every built-in product with registry.

public static void RegisterAll(ProductRegistry registry)

Parameters

registry ProductRegistry