new DFSTreeAdapter()
- Description:
Adapter für Tiefensuche (DFS) mit Suchbaum-Visualisierung
Konvertiert Spielzustände in TreeVizEngine-Kommandos via postMessage. Unterstützt Backtracking-Visualisierung und State-Tracking.
- Source:
- Version:
- 2.3
Members
_bridge :IframeBridgeHost|null
Type:
- IframeBridgeHost | null
currentDepth :number
- Description:
Aktuelle Suchtiefe.
- Source:
Aktuelle Suchtiefe.
Type:
- number
iframe :HTMLIFrameElement
- Description:
Das iframe-Element mit der TreeVizEngine.
- Source:
Das iframe-Element mit der TreeVizEngine.
Type:
- HTMLIFrameElement
nodeIdCounter :number
- Description:
Zähler für eindeutige Node-IDs.
- Source:
Zähler für eindeutige Node-IDs.
Type:
- number
nodeMap :Map.<string, number>
- Description:
Mapping von State-Keys zu Node-IDs.
- Source:
Mapping von State-Keys zu Node-IDs.
Type:
- Map.<string, number>
onNodeClicked :function|null
- Description:
Callback bei Knoten-Klick aus TreeViz (nodeId, boardData)
- Source:
Callback bei Knoten-Klick aus TreeViz (nodeId, boardData)
Type:
- function | null
onNodeFocused :function|null
- Description:
Callback bei Expansion-Klick aus TreeViz (nodeId, boardData)
- Source:
Callback bei Expansion-Klick aus TreeViz (nodeId, boardData)
Type:
- function | null
ready :boolean
- Description:
Status, ob TreeVizEngine bereit ist.
- Source:
Status, ob TreeVizEngine bereit ist.
Type:
- boolean
Methods
(async) buildToDepth(initialState, maxDepth, options) → {Object}
- Description:
Baut einen DFS-Suchbaum bis zur angegebenen Tiefe auf.
- Source:
Parameters:
| Name | Type | Description |
|---|---|---|
initialState |
Object | Der initiale Spielzustand. |
maxDepth |
number | Maximale Suchtiefe. |
options |
Object | Zusätzliche Optionen (duplicates, backtracking). |
Returns:
Statistiken über den generierten Baum.
- Type
- Object
focusNode(stateKey)
- Description:
Fokussiert die Ansicht auf einen bestimmten Knoten.
- Source:
Parameters:
| Name | Type | Description |
|---|---|---|
stateKey |
string | State-Key des zu fokussierenden Knotens. |
getNodeCount()
- Description:
Get node count
- Source:
getStats() → {Object}
- Description:
Gibt aktuelle Statistiken über den Suchbaum zurück.
- Source:
Returns:
Statistiken (totalNodes, depth, duplicatesMarked).
- Type
- Object
highlightPath(statePath)
- Description:
Hebt einen Pfad durch den Baum farblich hervor.
- Source:
Parameters:
| Name | Type | Description |
|---|---|---|
statePath |
Array.<string> | Array von State-Keys die den Pfad bilden. |
(async) navigateInGame(targetNodeId, getCurrentNodeId, nodeParentMap, treeStructure, board, handleBack, createNode, generatePreviews, updateUI, isWarnsdorf) → {Promise.<boolean>}
- Description:
UNIFIED NAVIGATION: Navigate to a tree node and update game state accordingly. Works for both Warnsdorf and non-Warnsdorf modes.
CRITICAL FIX: currentNodeId ist eine globale Variable, die sich in createNode() ändert! Der Adapter erhält sie als Parameter, aber das ist nur der INITIAL-Wert! Solution: Wir nutzen einen Getter-Callback um den aktuellen Wert zu erhalten
- Source:
Parameters:
| Name | Type | Description |
|---|---|---|
targetNodeId |
number | Ziel-Node im Baum |
getCurrentNodeId |
function | Getter für aktuelle Node (weil sie sich ändert!) |
nodeParentMap |
Map | Baum-Struktur (WIRD GELESEN) |
treeStructure |
Map | Knoten-Details (WIRD GELESEN) |
board |
Object | Spielzustand (WIRD MODIFIZIERT) |
handleBack |
function | Undo-Callback (mit Tree-Sync) |
createNode |
function | Node-Erstell-Callback (ändert currentNodeId!) |
generatePreviews |
function | Preview-Erstell-Callback |
updateUI |
function | Render-Callback |
isWarnsdorf |
boolean | Spielmodus |
Returns:
Success/failure of navigation
- Type
- Promise.<boolean>
resetView()
- Description:
Setzt die Ansicht auf die Standard-Position zurück.
- Source:
startHandshake()
- Description:
Initiiert den Handshake mit der TreeVizEngine. Sendet CHECK_READY Kommandos bis eine Antwort empfangen wird.
- Source:
(async, generator) visualizeSearch(initialState, searchFn, options)
- Description:
Visualize a search with animated backtracking
- Source:
Parameters:
| Name | Type | Description |
|---|---|---|
initialState |
Object | Starting state |
searchFn |
function | Search function that yields steps |
options |
Object | Options |