package jcircus.parallelism; import java.util.List; import javax.swing.JOptionPane; import net.sourceforge.czt.circus.ast.ActionPara; import net.sourceforge.czt.circus.ast.BasicProcess; import net.sourceforge.czt.circus.ast.CircusStateAnn; import net.sourceforge.czt.circus.ast.OnTheFlyDefAnn; import net.sourceforge.czt.circus.ast.SkipAction; import net.sourceforge.czt.circus.util.Factory; import net.sourceforge.czt.z.ast.AxPara; import net.sourceforge.czt.z.ast.Box; import net.sourceforge.czt.z.ast.Decl; import net.sourceforge.czt.z.ast.ParaList; import net.sourceforge.czt.z.ast.TruePred; import net.sourceforge.czt.z.ast.ZDeclList; import net.sourceforge.czt.z.ast.ZNameList; import net.sourceforge.czt.z.ast.ZParaList; import net.sourceforge.czt.z.ast.ZSchText; public class TestBasicProcess { static Factory f = new Factory (); public static void main (String args []) { //Classe que cria um processo básico com main action válida e estado válido //*******************CRIAÇÃO DA MAIN ACTION DO PROCESSO BÁSICO OnTheFlyDefAnn otfda = f.createOnTheFlyDefAnn(); SkipAction mainAction = f.createSkipAction(); mainAction.getAnns().add(otfda); ActionPara mainActionPara = f.createActionPara(); mainActionPara.setName(f.createZName("$$mainAction")); mainActionPara.setCircusAction(mainAction); //*****************CRIAÇÃO DO ESTADO DO PROCESSO BÁSICO CircusStateAnn csa = f.createCircusStateAnn(); //Assinatura que deve ser colocada em AxPara newPara = f.createAxPara(); ZSchText st1 = f.createZSchText(); ZDeclList decllist1 = f.createZDeclList(); ZNameList namelist1 = f.createZNameList(); namelist1.add(f.createZName("$$defaultSt")); decllist1.add(f.createConstDecl(f.createZName("%%defaultSt"), f.createNumExpr())); newPara.setBox(Box.AxBox); newPara.setNameList(namelist1); //como demos um addAll(decllist2), é como se ele tivesse acrescentando as duas listas ZSchText zschtext = f.createZSchText(); zschtext.setDeclList(decllist1); TruePred truePred = f.createTruePred(); zschtext.setPred(truePred); newPara.setSchText(zschtext); AxPara statePara = newPara; statePara.getAnns().add(csa); //********************************************************** ZParaList paraList = f.createZParaList(); paraList.add(mainActionPara); paraList.add(statePara); BasicProcess bp = f.createBasicProcess(); bp.setParaList(paraList); //otfda. List ptfp = bp.getOnTheFlyPara(); } }