X-Git-Url: https://gerrit.simantics.org/r/gitweb?p=simantics%2Fplatform.git;a=blobdiff_plain;f=bundles%2Forg.simantics.simulation.sequences%2Ftests%2Forg%2Fsimantics%2Fsimulation%2Fsequences%2Ftests%2FDummyActionContext.java;fp=bundles%2Forg.simantics.simulation.sequences%2Ftests%2Forg%2Fsimantics%2Fsimulation%2Fsequences%2Ftests%2FDummyActionContext.java;h=a84ee0bb6c1833f1529e08de1c93b29959b920a1;hp=75fb6765173641bfa09dc58c508d2a7cd22e4b95;hb=0ae2b770234dfc3cbb18bd38f324125cf0faca07;hpb=24e2b34260f219f0d1644ca7a138894980e25b14 diff --git a/bundles/org.simantics.simulation.sequences/tests/org/simantics/simulation/sequences/tests/DummyActionContext.java b/bundles/org.simantics.simulation.sequences/tests/org/simantics/simulation/sequences/tests/DummyActionContext.java index 75fb67651..a84ee0bb6 100644 --- a/bundles/org.simantics.simulation.sequences/tests/org/simantics/simulation/sequences/tests/DummyActionContext.java +++ b/bundles/org.simantics.simulation.sequences/tests/org/simantics/simulation/sequences/tests/DummyActionContext.java @@ -1,45 +1,45 @@ -package org.simantics.simulation.sequences.tests; - -import gnu.trove.map.hash.TObjectDoubleHashMap; - -import org.simantics.databoard.Bindings; -import org.simantics.databoard.adapter.AdaptException; -import org.simantics.databoard.binding.Binding; -import org.simantics.scl.runtime.function.Function1; -import org.simantics.scl.runtime.tuple.Tuple0; -import org.simantics.simulation.sequences.action.AbstractActionContext; - -public class DummyActionContext extends AbstractActionContext { - - TObjectDoubleHashMap variables = new TObjectDoubleHashMap(); - - @Override - public Object get(String variableName, Binding binding) { - try { - return Bindings.adapt(variables.get(variableName), Bindings.DOUBLE, binding); - } catch (AdaptException e) { - throw new IllegalArgumentException("Invalid binding " + binding.toString() + " for a double value", e); - } - } - - @Override - public void set(String variableName, Object value, Binding binding) { - try { - variables.put(variableName, (Double)Bindings.adapt(value, binding, Bindings.DOUBLE)); - } catch (AdaptException e) { - throw new IllegalArgumentException("Invalid binding " + binding.toString() + " for a double value", e); - } - } - - public static void testDriveAction(Function1 action) { - DummyActionContext actionContext = new DummyActionContext(); - actionContext.scheduleNextStep(action); - - double curTime = 0.0; - while(!actionContext.isStopped()) { - double maxNextTime = actionContext.handleStep(curTime); - curTime = Math.min(curTime+0.1, maxNextTime); - } - } - -} +package org.simantics.simulation.sequences.tests; + +import gnu.trove.map.hash.TObjectDoubleHashMap; + +import org.simantics.databoard.Bindings; +import org.simantics.databoard.adapter.AdaptException; +import org.simantics.databoard.binding.Binding; +import org.simantics.scl.runtime.function.Function1; +import org.simantics.scl.runtime.tuple.Tuple0; +import org.simantics.simulation.sequences.action.AbstractActionContext; + +public class DummyActionContext extends AbstractActionContext { + + TObjectDoubleHashMap variables = new TObjectDoubleHashMap(); + + @Override + public Object get(String variableName, Binding binding) { + try { + return Bindings.adapt(variables.get(variableName), Bindings.DOUBLE, binding); + } catch (AdaptException e) { + throw new IllegalArgumentException("Invalid binding " + binding.toString() + " for a double value", e); + } + } + + @Override + public void set(String variableName, Object value, Binding binding) { + try { + variables.put(variableName, (Double)Bindings.adapt(value, binding, Bindings.DOUBLE)); + } catch (AdaptException e) { + throw new IllegalArgumentException("Invalid binding " + binding.toString() + " for a double value", e); + } + } + + public static void testDriveAction(Function1 action) { + DummyActionContext actionContext = new DummyActionContext(); + actionContext.scheduleNextStep(action); + + double curTime = 0.0; + while(!actionContext.isStopped()) { + double maxNextTime = actionContext.handleStep(curTime); + curTime = Math.min(curTime+0.1, maxNextTime); + } + } + +}