Table of Contents

Interface IMapPresentationController

Namespace
EncDotNet.S100.Maps
Assembly
EncDotNet.S100.Core.dll

Applies immutable map-wide presentation state to the datasets owned by a map host or session.

public interface IMapPresentationController

Remarks

The contract is renderer- and UI-framework-neutral. Implementations retain ownership of their processors, rendered layers, and refresh lifecycle; passing a MapPresentationState does not transfer ownership.

A long-lived map host or session normally owns one controller for the same lifetime as its loaded dataset collection. Implementations may coalesce overlapping calls, but the most recently supplied state must remain authoritative.

Methods

SetDepthAdjustmentAsync(MapPresentationState, CancellationToken)

Applies presentation when only its DepthAdjustment changed, re-rendering just the datasets whose depths it adjusts. The default re-applies the whole presentation.

Task<bool> SetDepthAdjustmentAsync(MapPresentationState presentation, CancellationToken cancellationToken = default)

Parameters

presentation MapPresentationState

The presentation carrying the new adjustment.

cancellationToken CancellationToken

Cancels the refresh.

Returns

Task<bool>

true when the map now shows this adjustment, or false when a newer one superseded it.

SetPresentationAsync(MapPresentationState, CancellationToken)

Asynchronously applies presentation to every loaded dataset.

Task SetPresentationAsync(MapPresentationState presentation, CancellationToken cancellationToken = default)

Parameters

presentation MapPresentationState

The immutable map-wide presentation snapshot to apply.

cancellationToken CancellationToken

Cancels the requested application.

Returns

Task

A task that completes when the presentation has been applied.