IsolateMapfile class

An implementation of Datastore that runs a Mapfile instance in a separate isolate.

This is crucial for performance, as it offloads the heavy file I/O and parsing operations from the main UI thread, preventing jank and keeping the application responsive. It communicates with the Mapfile isolate using message passing.

Properties

hashCode → int
The hash code for this object.
no setterinherited
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited

Methods

dispose() → void
Releases resources held by the datastore. Should be called when the datastore is no longer needed.
getBoundingBox() → Future<BoundingBox>
Returns the geographic area covered by this datastore.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
readLabels(Tile upperLeft, Tile lowerRight) → Future<DatastoreBundle?>
Reads label data for a rectangular area defined by two corner tiles.
readLabelsSingle(Tile tile) → Future<DatastoreBundle?>
Reads label data for a single tile.
readMapData(Tile upperLeft, Tile lowerRight) → Future<DatastoreBundle>
Reads complete map data for a rectangular area.
readMapDataSingle(Tile tile) → Future<DatastoreBundle?>
Reads complete map data for a single tile.
readPoiData(Tile upperLeft, Tile lowerRight) → Future<DatastoreBundle?>
Reads POI data for a rectangular area defined by corner tiles.
readPoiDataSingle(Tile tile) → Future<DatastoreBundle?>
Reads Point of Interest (POI) data for a single tile.
supportsTile(Tile tile) → Future<bool>
Checks if the datastore contains data for the specified tile.
toString() → String
A string representation of this object.
inherited

Operators

operator ==(Object other) → bool
The equality operator.
inherited

Static Properties

filename ↔ String
The parameter needed to create a mapfile in the isolate
latefinal
mapFile ↔ Mapfile?
The instance of the mapfile in the isolate
getter/setter pair
preferredLanguage ↔ String?
latefinal

Static Methods

createFromFile({required String filename, String? preferredLanguage}) → Future<IsolateMapfile>
Creates a new IsolateMapfile instance.