Table of Contents

Class S131LuaRuleExecutor

Namespace
EncDotNet.S100.Datasets.S131
Assembly
EncDotNet.S100.Datasets.S131.dll

Executes the S-131 Lua portrayal stage (S-100 Part 9A) by composing the product-agnostic LuaRuleExecutor with the S-131-specific seams: an S131LuaDataProvider host bridge over GML-encoded features, and the S-131 context parameter bindings.

public sealed class S131LuaRuleExecutor : ILuaVectorRuleExecutor, IVectorRuleExecutor
Inheritance
S131LuaRuleExecutor
Implements
Inherited Members

Remarks

This is the GML+Lua bridge: S-131 features are parsed from GML by EncDotNet.S100.Datasets.S131.S131DatasetReader, then the Lua portrayal engine processes them identically to how it processes S-101 ISO 8211 features. The S131LuaDataProvider translates between the GML feature model and the Lua host API contract, including the GML-specific spatial shim.

Unlike S-101, S-131 applies no anchor provider (it has no augmented line geometry) and no post-parse transform (no SAFCON merger). Its portrayal catalogue declares TwoShades rather than S-101's FourShades, so the context-parameter binding inverts the mariner's four-shades flag.

Constructors

S131LuaRuleExecutor(ILuaEngine, S131Dataset, S131PortrayalCatalogue, FeatureCatalogue)

Initialises the S-131 Lua rule executor.

public S131LuaRuleExecutor(ILuaEngine luaEngine, S131Dataset dataset, S131PortrayalCatalogue catalogue, FeatureCatalogue featureCatalogue)

Parameters

luaEngine ILuaEngine

The sandboxed Lua engine (S-100 Part 9A).

dataset S131Dataset

The S-131 dataset (GML-encoded) to portray.

catalogue S131PortrayalCatalogue

The S-131 portrayal catalogue (Lua rule source).

featureCatalogue FeatureCatalogue

The S-131 feature catalogue (ISO 19110).

Methods

ExecuteAsync(MarinerSettings, CancellationToken)

Runs the rule stage and returns typed drawing instructions ready for the renderer.

public Task<IReadOnlyList<DrawingInstruction>> ExecuteAsync(MarinerSettings mariner, CancellationToken cancellationToken = default)

Parameters

mariner MarinerSettings

Mariner-configurable display preferences (S-100 Part 9 §4.2).

cancellationToken CancellationToken

Signals that the render has been cancelled. Script interpreters are generally not interruptible mid-evaluation, so implementations honour the token at coarse boundaries; the asynchronous shape exists to allow implementations to await catalogue asset loads (compiled XSLT, Lua source) before driving the synchronous engine.

Returns

Task<IReadOnlyList<DrawingInstruction>>

ExecuteRawAsync(MarinerSettings, CancellationToken)

Runs the Lua portrayal pass and returns the raw emitted drawing-instruction strings keyed by feature reference, without parsing or post-processing.

public Task<IReadOnlyList<EmittedInstruction>> ExecuteRawAsync(MarinerSettings mariner, CancellationToken cancellationToken = default)

Parameters

mariner MarinerSettings

Mariner-configurable display preferences (S-100 Part 9 §4.2).

cancellationToken CancellationToken

Honoured at coarse boundaries before Lua invocation.

Returns

Task<IReadOnlyList<EmittedInstruction>>