MPICollectiveBehavior.java
package dev.civl.mc.model.IF.contract;
import java.util.List;
import dev.civl.mc.model.IF.expression.Expression;
import dev.civl.mc.model.IF.variable.Variable;
public interface MPICollectiveBehavior extends FunctionBehavior {
public static enum MPICommunicationPattern {
P2P, COL
};
Expression communicator();
Variable[] agreedVariables();
void setAgreedVariables(Variable[] jointVariables);
MPICommunicationPattern mpiCommunicationPattern();
void addNamedBehaviors(NamedFunctionBehavior namedBehavior);
List<NamedFunctionBehavior> namedBehaviors();
NamedFunctionBehavior namedBahavior(String name);
}