Table of Contents

Class DynamicSourceMetadata

Namespace
EncDotNet.S100.DynamicSources
Assembly
EncDotNet.S100.Core.dll

Display metadata and renderer-resolution hints for a dynamic feature source. Carried by every IDynamicFeatureSource implementation and consumed by the viewer-side overlay glue to resolve the appropriate IDynamicFeatureRenderer and to populate the Layer Stack panel.

public sealed record DynamicSourceMetadata : IEquatable<DynamicSourceMetadata>
Inheritance
DynamicSourceMetadata
Implements
Inherited Members

Remarks

See docs/design/dynamic-feature-source.md §4.1 for the authoritative description of how RendererKey correlates a source instance with a class-level renderer registration via DI keyed services.

Properties

Description

Optional longer description shown in tooltips and settings panels. Not required.

public string? Description { get; init; }

Property Value

string

DisplayName

Human-readable label for the Layer Stack and the title bar.

public required string DisplayName { get; init; }

Property Value

string

Plane

The S-98 display plane the source's features belong to. Hosts use it to group the source with the other layers of that plane, for example in a layer stack. Defaults to DynamicArrows, the plane of own-ship and AIS targets.

public S98DisplayPlane Plane { get; init; }

Property Value

S98DisplayPlane

RendererKey

Lookup key for the IDynamicFeatureRenderer registered to draw features from this source. When null or unresolved, the viewer falls back to the default renderer.

public string? RendererKey { get; init; }

Property Value

string

Remarks

RendererKey is class-level — multiple source instances of the same kind (e.g. two AIS feeds) share a single renderer registration. Contrast with Id, which is instance-unique.

WithinPlanePriority

Ordering hint within Plane, ascending: lower draws first. Defaults to 0.

public int WithinPlanePriority { get; init; }

Property Value

int