/** * */ package eu.quanticol.carma.simulator2; import java.util.function.BiFunction; import java.util.function.Function; import java.util.function.Predicate; import org.apache.commons.math3.random.RandomGenerator; /** * @author loreti * */ public class OutputStepData { private final Predicate<Store> outputPredicate; private final Object outputValue; private final BiFunction<RandomGenerator,Store, Store> storeUpdate; private final int nextProcessId; /** * @param outputPredicate * @param outputValue * @param storeUpdate */ public OutputStepData(Predicate<Store> outputPredicate, Object outputValue, BiFunction<RandomGenerator, Store, Store> storeUpdate, int nextProcessId) { super(); this.outputPredicate = outputPredicate; this.outputValue = outputValue; this.storeUpdate = storeUpdate; this.nextProcessId = nextProcessId; } /** * @return the outputPredicate */ public Predicate<Store> getOutputPredicate() { return outputPredicate; } /** * @return the outputValue */ public Object getOutputValue() { return outputValue; } /** * @return the storeUpdate */ public BiFunction<RandomGenerator, Store, Store> getStoreUpdate() { return storeUpdate; } /** * @return the nextProcessId */ public int getNextProcessId() { return nextProcessId; } }