ILIAS  trunk Revision v13.0_alpha-62-g3b72d83f2e5
LSNavigator.php
Go to the documentation of this file.
1<?php
2
19declare(strict_types=1);
20
22
30interface LSNavigator
31{
36 public function getSuccessors(array $items, \LSLearnerItem $current): array;
37
46 public function getStructuralSuccessors(array $items, \LSItem $current): array;
47
52 public function getPredecessors(array $items, \LSLearnerItem $current): array;
53
57 public function canLeave(\LSLearnerItem $current): bool;
58
62 public function canEnter(\LSLearnerItem $target): bool;
63
70
76 public function canEnterFrom(\LSLearnerItem $current, \LSLearnerItem $target): bool;
77
85 public function preload(array $items): void;
86
93 public function getInputConditionIds(\LSLearnerItem $item): array;
94
101 public function getOutputConditionIds(\LSLearnerItem $item): array;
102}
Data holding class LSItem .
Definition: LSItem.php:25
Add learning progress and availability information to the LSItem.
Abstraction of the navigation between the objects of a learning sequence.
Definition: LSNavigator.php:31
canEnterIgnoringEdges(\LSLearnerItem $target)
Whether the target object may be entered, ignoring the input-conditions that merely encode the graph ...
canLeave(\LSLearnerItem $current)
Whether the current object may be left (output-condition).
getInputConditionIds(\LSLearnerItem $item)
The ids of all conditions that must be met to enter the given object.
getSuccessors(array $items, \LSLearnerItem $current)
canEnterFrom(\LSLearnerItem $current, \LSLearnerItem $target)
Whether the target object may be entered coming from $current, i.e.
getPredecessors(array $items, \LSLearnerItem $current)
preload(array $items)
Loads everything the navigator needs for the given items up front, so walking the graph does not hit ...
canEnter(\LSLearnerItem $target)
Whether the target object may be entered (input-condition).
getOutputConditionIds(\LSLearnerItem $item)
The ids of all conditions that must be met to leave the given object.
getStructuralSuccessors(array $items, \LSItem $current)
All objects that are connected to $current by an outgoing edge, regardless of whether they may curren...