public class FloatMultiDelay extends CompilableFloatStoredSignalSource implements Register
A single instance of this class is operationally equivalent to a chain of single-step delay operators. However, the computational costs of the former per clock tick are constant, whereas for the latter they grow linearly with the length of the chain.
FloatClockedSignalSource.AbstractRandom
Process.Proxy
out
STREAM_CHARACTERISTICS, STREAM_SIZE
Constructor and Description |
---|
FloatMultiDelay(float... initial) |
FloatMultiDelay(float[] initial,
FloatSignalSource in) |
FloatMultiDelay(float[] initial,
Function<? super FloatMultiDelay,? extends FloatSignalSource> in) |
Modifier and Type | Method and Description |
---|---|
Consumer<CompilationContext> |
compileControlFlow()
Compiles the state transition of this entity.
|
Consumer<CompilationContext> |
compileInitialization()
Compiles the initialization of this entity.
|
Process |
getLoadPhase() |
protected VariableContext.Variable |
getNextVariable(CompilationContext context) |
protected VariableContext.Variable |
getPhaseVariable(CompilationContext context) |
Process |
getStorePhase() |
void |
init()
Initializes the state of this process.
|
void |
setInput(FloatSignalSource in) |
void |
step(RealtimeContext context)
Signals a time event, executing a transition step for this process to the
next observable state.
|
compileDataFlow, compileSetStoredValueVariable, getStoredValueVariable, publishStoredValueVariable
getAsFloat
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
andMeanwhile, andMeanwhile
adHoc, after, clock, compile, cycle, dt, during, random, random, random, randomGaussian, randomGaussian, randomGaussian, rate
abs, add, choose, choose, choose, choose, clock, compileMainSignalSource, constant, defined, delayed, delayed, delayedFeedback, delayedFeedback, divide, equal, getConstantAsFloat, getValueClass, glidingAverage, glidingStandardDeviation, glidingSum, glidingVariance, greaterOrEqual, greaterThan, guard, hasConstantAsFloat, invariant, lessOrEqual, lessThan, map, max, min, modulo, multiply, negate, negative, nonEqual, nonnegative, nonpositive, nonzero, notANumber, positive, power, probe, relateWith, sampleAndHold, selectAffine, series, sqrt, stored, subtract, zero, zeroCrossing, zipWith
compileDataFlowTo, hasDataFlowIO
afterEvery, andThen, compileAsMainProcess, every, getProcess, hasControlFlowIO, hasInitializationIO, probe, sequence, sequence
@Undocumented public FloatMultiDelay(float... initial)
@Undocumented public FloatMultiDelay(float[] initial, FloatSignalSource in)
@Undocumented public FloatMultiDelay(float[] initial, Function<? super FloatMultiDelay,? extends FloatSignalSource> in)
@Undocumented public void setInput(FloatSignalSource in)
@Undocumented public Process getLoadPhase()
getLoadPhase
in interface Register
@Undocumented public Process getStorePhase()
getStorePhase
in interface Register
@Undocumented public void init()
Process
Process.step(RealtimeContext)
transitions to
the first specified observable state.
The default implementation does nothing.
@Undocumented public void step(RealtimeContext context)
Process
The state of the process after successful completion of this method
should be the n-th observable state, if Process.step(eu.bandm.sig.adlib2.RealtimeContext)
has been
invoked n times since the last initialization via Process.init()
.
The behavior of this method is unspecified if Process.init()
has not been
invoked before.
If this method completes abruptly by throwing an error or unchecked exception, the process state should be considered invalid.
@Undocumented protected VariableContext.Variable getNextVariable(CompilationContext context)
@Undocumented protected VariableContext.Variable getPhaseVariable(CompilationContext context)
@Undocumented public Consumer<CompilationContext> compileInitialization()
CompilableControlFlow
compileInitialization
in interface CompilableControlFlow
compileInitialization
in interface Process
compileInitialization
in class CompilableFloatStoredSignalSource
Process.hasInitializationIO(eu.bandm.sig.adlib2.compile.CompilationContext)
@Undocumented public Consumer<CompilationContext> compileControlFlow()
CompilableControlFlow
compileControlFlow
in interface CompilableControlFlow
compileControlFlow
in interface Process
compileControlFlow
in class CompilableFloatStoredSignalSource
Process.hasControlFlowIO(eu.bandm.sig.adlib2.compile.CompilationContext)