Table of Contents

Interface IMapDataProvider

Namespace
Map.Loading
Assembly
MapAssembly.dll

Interface for providing map data to the presentation layer Abstracts data source (files vs simulation) for clean separation of concerns

public interface IMapDataProvider

Methods

LoadFromFilesAsync(string, string, bool)

Load province map data directly from files (legacy/standalone method) Used when simulation layer is not available

Task<ProvinceMapProcessor.ProvinceMapResult?> LoadFromFilesAsync(string bitmapPath, string csvPath, bool useDefinition)

Parameters

bitmapPath string

Path to province bitmap file

csvPath string

Path to definition CSV file

useDefinition bool

Whether to use CSV definition file

Returns

Task<ProvinceMapProcessor.ProvinceMapResult?>

Province map result for presentation layer

LoadFromSimulationAsync(SimulationDataReadyEvent, string, string, bool)

Load province map data from simulation systems (preferred method) Follows dual-layer architecture by getting data from Core layer

Task<ProvinceMapProcessor.ProvinceMapResult?> LoadFromSimulationAsync(SimulationDataReadyEvent simulationData, string bitmapPath, string csvPath, bool useDefinition)

Parameters

simulationData SimulationDataReadyEvent

Event data containing simulation state

bitmapPath string

Path to province bitmap file

csvPath string

Path to definition CSV file

useDefinition bool

Whether to use CSV definition file

Returns

Task<ProvinceMapProcessor.ProvinceMapResult?>

Province map result for presentation layer