DefaultIndoorViewModel

class DefaultIndoorViewModel(map: Map, markedLevels: Set<LevelId> = setOf()) : IndoorViewModel

Default implementation of IndoorViewModel backed by IndoorControlModel.

Subscribes to the map's indoor level changes and exposes them as a StateFlow. Allows setting markedLevels to highlight specific floors.

Parameters

map

The map instance to observe indoor state from.

markedLevels

The set of level IDs that should be visually marked.

Constructors

Link copied to clipboard
constructor(map: Map, markedLevels: Set<LevelId> = setOf())

Properties

Link copied to clipboard
open override val indoorState: StateFlow<IndoorState>

Observable state of the indoor levels control.

Functions

Link copied to clipboard
open override fun isLevelMarked(index: Int): Boolean

Checks whether the level at the given index is marked.

Link copied to clipboard
open override fun onCleared()

Releases resources when the view model is no longer needed.

Link copied to clipboard
open override fun selectLevel(index: Int?)

Called when the user selects a level.