module Configuration { type port gt1 message { inout integer } type component ct1 { var integer cv_s0; var ct1 cc_0; timer ct0; port gt1 g1 ; port gt1 g2 ; } function f_Configuration() { var integer v_s0; var integer v_s1; var integer v_s2 := 1; var integer v_s3; var integer v_s4; var ct1 tester ; var ct1 sut ; var ct1 testerControl ; tester := ct1.create ; // sut := ct1.create ; // testerControl := ct1.create ; connect ( sut : g1 , tester : g1 ) ; connect ( sut : g2 , tester : g2 ) ; map ( tester : g1 , testerControl : g2 ) ; unmap ( tester : g1 , testerControl : g2 ) ; disconnect ( sut : g1 , tester : g1 ) ; disconnect ( sut : g2 , tester : g2 ) ; tester.done; sut.done; tester.killed; sut.killed; tester.kill; sut.kill; tester.start(f_Component(v_s1, v_s2)); sut.start(f_Component(v_s1, v_s2)); tester.stop; sut.stop; } function f_Component (integer p1, integer p2) runs on ct1 { var integer v_s0 := cv_s0; cv_s0 := 1; ct0.start(5); cc_0 := ct1.create; cc_0.start(f_Component(v_s1, v_s2)); } }