Module de.learnlib.driver.simulator
Package de.learnlib.driver.simulator
Class ObservableMealySimulatorSUL<S,I,O>
- java.lang.Object
-
- de.learnlib.driver.simulator.MealySimulatorSUL<I,O>
-
- de.learnlib.driver.simulator.ObservableMealySimulatorSUL<S,I,O>
-
- All Implemented Interfaces:
ObservableSUL<S,I,O>
,SUL<I,O>
public class ObservableMealySimulatorSUL<S,I,O> extends MealySimulatorSUL<I,O> implements ObservableSUL<S,I,O>
-
-
Constructor Summary
Constructors Constructor Description ObservableMealySimulatorSUL(net.automatalib.automaton.transducer.MealyMachine<S,I,?,O> mealy)
ObservableMealySimulatorSUL(net.automatalib.automaton.transducer.MealyMachine<S,I,?,O> mealy, O noTransOut)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ObservableSUL<S,I,O>
fork()
Forks this SUL, if possible.S
getState()
Returns the current state of the system.-
Methods inherited from class de.learnlib.driver.simulator.MealySimulatorSUL
canFork, post, pre, step
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface de.learnlib.sul.ObservableSUL
deepCopies
-
-
-
-
Method Detail
-
getState
public S getState()
Description copied from interface:ObservableSUL
Returns the current state of the system.Implementation note: it is important that the returned Object has a well-defined
Object.equals(Object)
method, and a goodObject.hashCode()
function.- Specified by:
getState
in interfaceObservableSUL<S,I,O>
- Returns:
- the current state of the system.
-
fork
public ObservableSUL<S,I,O> fork()
Description copied from interface:SUL
Forks this SUL, if possible. The fork of a SUL is a copy which behaves exactly the same as this SUL. This method should always return a reseted SUL, regardless of whether this call is made between a call toSUL.pre()
andSUL.post()
.If
SUL.canFork()
returnstrue
, this method must return a non-null
object, which should behave exactly like this SUL (in particular, it must be forkable as well). Otherwise, aUnsupportedOperationException
must be thrown.Implementation note: if resetting a SUL changes the internal state of this object in a non-trivial way (e.g., incrementing a counter to ensure independent sessions), care must be taken that forks of this SUL manipulate the same internal state.
-
-