static class DoubleSignalSourceChooser.OfEnum<E extends Enum<E>> extends DoubleSignalSourceChooser
DoubleSignalSourceChooser.OfEnum<E extends Enum<E>>, DoubleSignalSourceChooser.OfEnumInt<E extends Enum<E>>, DoubleSignalSourceChooser.OfInt
Constructor and Description |
---|
OfEnum(SignalSource<E> selector,
EnumMap<E,? extends DoubleSignalSource> cases) |
Modifier and Type | Method and Description |
---|---|
protected DoubleSignalSource |
choose()
Returns the chosen the input signal source for the current
value.
|
protected Consumer<CompilationContext> |
compileConvertToInt()
Returns a code generator for converting a value that represents the current
selection to an index of type
int . |
protected Map<Integer,Consumer<CompilationContext>> |
getCases(VariableContext.Variable result)
Returns a map with
int -indexed code generators for branches to
choose from. |
protected SignalSource<E> |
getSelector()
Returns an entity that can be compiled to code that outputs a
value that represents the current selection.
|
compileDefaultValue, getAsDouble
alwaysThrow, compileDataFlow, compileOrDefault
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
abs, add, choose, choose, choose, choose, clock, compileDataFlow, compileMainSignalSource, constant, defined, delayed, delayed, delayedFeedback, delayedFeedback, divide, equal, getConstantAsDouble, getValueClass, glidingAverage, glidingStandardDeviation, glidingSum, glidingVariance, greaterOrEqual, greaterThan, guard, hasConstantAsDouble, invariant, lessOrEqual, lessThan, map, max, min, modulo, multiply, negate, negative, nonEqual, nonnegative, nonpositive, nonzero, notANumber, positive, power, probe, publishStoredValueVariable, relateWith, sampleAndHold, selectAffine, series, sqrt, stored, subtract, zero, zeroCrossing, zipWith
compileDataFlowTo, hasDataFlowIO
OfEnum(SignalSource<E> selector, EnumMap<E,? extends DoubleSignalSource> cases)
protected DoubleSignalSource choose()
DoubleSignalSourceChooser
choose
in class DoubleSignalSourceChooser
protected SignalSource<E> getSelector()
AbstractSignalSourceChooser
getSelector
in class AbstractSignalSourceChooser
CompilableDataFlow.getValueClass()
protected Map<Integer,Consumer<CompilationContext>> getCases(VariableContext.Variable result)
AbstractSignalSourceChooser
int
-indexed code generators for branches to
choose from. The returned map should contain an entry for every valid
index. The method AbstractSignalSourceChooser.compileOrDefault(eu.bandm.tools.lljava.live.VariableContext.Variable, eu.bandm.sig.adlib2.compile.CompilableDataFlow)
may be used to populate the map.getCases
in class AbstractSignalSourceChooser
result
- the variable that all branches should output toAbstractSignalSourceChooser.compileConvertToInt()
protected Consumer<CompilationContext> compileConvertToInt()
AbstractSignalSourceChooser
int
.compileConvertToInt
in class AbstractSignalSourceChooser