e887c3bad5
Work-Package: M03-RND-STREAMING-PLANNER-001 Agent: sindo-main-codex Tests: planner/facade/focus/coordinate/manifest/shutdown contracts, seven-checkpoint dry-run, repository gates Fidelity: preserves wanted/retained radii, boundary prefetch, editor preview, queue priority and cache/render behavior
38 lines
1.1 KiB
GDScript
38 lines
1.1 KiB
GDScript
class_name StreamingTargetPlan
|
|
extends RefCounted
|
|
|
|
## Immutable result of one runtime or editor target-planning operation.
|
|
## Tile-key sets use the streamer's existing `<tile_x>_<tile_y>` representation.
|
|
|
|
var focus_tile: AdtTileCoordinate:
|
|
get:
|
|
return _focus_tile
|
|
|
|
var _focus_tile: AdtTileCoordinate
|
|
var _wanted_tile_keys: Dictionary
|
|
var _retained_tile_keys: Dictionary
|
|
|
|
|
|
## Takes ownership of planner-created sets and freezes them. The planner creates
|
|
## these dictionaries independently from its catalog input, so no copy is needed.
|
|
func _init(
|
|
focus_tile_value: AdtTileCoordinate,
|
|
wanted_tile_keys_value: Dictionary,
|
|
retained_tile_keys_value: Dictionary
|
|
) -> void:
|
|
_focus_tile = focus_tile_value
|
|
_wanted_tile_keys = wanted_tile_keys_value
|
|
_retained_tile_keys = retained_tile_keys_value
|
|
_wanted_tile_keys.make_read_only()
|
|
_retained_tile_keys.make_read_only()
|
|
|
|
|
|
## Returns the immutable wanted tile-key set.
|
|
func wanted_tile_keys() -> Dictionary:
|
|
return _wanted_tile_keys
|
|
|
|
|
|
## Returns the immutable retained tile-key set.
|
|
func retained_tile_keys() -> Dictionary:
|
|
return _retained_tile_keys
|