//COM A SOLUÇÃO DO PARALELISMO COM MUDANÇA DA AST, ESTE AMBIENTE NÃO É MAIS NECESSÁRIO.
package jcircus.complementaryenvs;
import java.util.HashMap;
import java.util.LinkedHashMap;
import jcircus.visitor.EnvLoadingVisitor;
import net.sourceforge.czt.circus.ast.IndexedProcess;
import net.sourceforge.czt.circus.ast.InterleaveProcess;
import net.sourceforge.czt.circus.ast.ParProcess;
public class ChanForcedInterleavingEnv {
private HashMap <String, Boolean> _map;
public ChanForcedInterleavingEnv () {
this._map = new LinkedHashMap <String, Boolean> ();
}
public void update (String channelName, boolean b) {
if (_map.containsKey (channelName)) {
_map.remove (channelName);
}
this._map.put (channelName, b);
}
public boolean get (String channelName) {
if (this._map.containsKey(channelName))
return this._map.get (channelName);
else
return false;
}
/*public static boolean isChanForced (String channel, ParProcess parProcess, EnvLoadingVisitor evl) {
String [] visibleLeft = evl.get
if (parProcess.getLeftProcess() instanceof ParProcess || parProcess.getRightProcess() instanceof ParProcess) {
return false; //NA VERDADE, NÃO NOS INTERESSAM ParProcesses cujos processos direito e esquerdo sejam ParProcesses
}
if (parProcess instanceof InterleaveProcess) {
return true;
}
else {
}
return false; //TODO
}*/
}