/* CIF ProcessDiagram */ /* CIF Page State_IDLE (2650,1800) */ /* CIF Frame (0,0),(2650,1800) */ /* CIF Page State_PhaseA_T_PhaseB_T (2650,1800) */ /* CIF Frame (0,0),(2650,1800) */ /* CIF Specific SDT Version 1.0 */ /* CIF Specific SDT OriginalFileName '/home/asker/etoxod/pretty/ToyExample.spr' */ /* CIF Specific SDT Page State_IDLE Scale 100 Grid (250,150) */ /* CIF Specific SDT Page State_PhaseA_T_PhaseB_T Scale 101 Grid (250,150) */ Process ToyExample; /* CIF DefaultSize (200,100) */ /* CIF CurrentPage State_IDLE */ /* CIF Text (1050,50) */ DCL Line Int8; DCL BBQ Number; DCL CallerId Key; DCL CB int8_T; SIGNAL Callsetup(line); SIGNAL CED(CallerId,Line,BBQ,SelfId); SIGNAL b; /* CIF End Text */ /* CIF CurrentPage State_IDLE */ /* CIF Start (250,100) */ start ; /* CIF Line (350,200),(350,250) */ /* CIF NextState (250,250) */ nextstate IDLE; /* CIF State (250,250) */ state IDLE; /* CIF Line (350,350),(350,400) */ /* CIF Input (250,400) Right */ input Callsetup (Line) ; /* CIF Line (350,500),(350,550) */ /* CIF Output (250,550) Right */ output CED (CallerId, Line, BBQ, SelfId) TO Central ; /* CIF Line (350,650),(350,850) */ /* CIF Decision (250,850) */ decision CB < 2; /* CIF Answer InvisibleBrackets */ /* CIF Line (350,950),(350,1050) */ /* CIF TextPosition (375,975) */ (True): /* CIF NextState (250,1050) */ nextstate PhaseA_T; /* CIF Answer Right InvisibleBrackets */ /* CIF Line (450,900),(700,900),(700,1050) */ /* CIF TextPosition (725,925) */ (False): /* CIF Join (650,1050),(100,100) */ join SubA; /* CIF End Decision */ enddecision; /* CIF Line (350,350),(350,375),(1000,375),(1000,400) */ /* CIF Input (900,400) Right */ input Callfax (FaxNo) /* CIF Comment (1150,400) Right */ /* CIF Line (1150,450),(1100,450) Dashed */ comment 'From: Caller' ; /* CIF Line (1000,500),(1000,550) */ /* CIF Output (900,550) Right */ output Callsetup (Line) VIA Central; /* CIF Line (1000,650),(1000,750) */ /* CIF NextState (900,750) */ nextstate PhaseB_T; /* CIF End State */ endstate; /* CIF Label (1400,1000),(100,100) */ connection SubA: /* CIF Line (1450,1100),(1450,1150) */ /* CIF Extendedtask (1350,1150) */ task {CB := 1;}; /* CIF Line (1450,1250),(1450,1350) */ /* CIF Output (1350,1350) Right */ output Terminate; /* CIF Line (1450,1450),(1450,1550) */ /* CIF NextState (1350,1550) */ nextstate IDLE; /* CIF End Label */ endconnection SubA; /* CIF CurrentPage State_PhaseA_T_PhaseB_T */ /* CIF State (300,100) */ state PhaseA_T; /* CIF Line (400,200),(400,250) */ /* CIF Input (300,250) Right */ input CED_OK; /* CIF Line (400,350),(400,400) */ /* CIF Output (300,400) Right */ output Setup_OK /* CIF Comment (550,400) Right */ /* CIF Line (550,450),(500,450) Dashed */ comment 'TO: Caller' ; /* CIF Line (400,500),(400,650) */ /* CIF NextState (300,650) */ nextstate PhaseA_T2; /* CIF Line (400,200),(400,225),(950,225),(950,250) */ /* CIF Input (850,250) Right */ input CED_NOK; /* CIF Line (950,350),(950,400) */ /* CIF Output (850,400) Right */ output Setup_NOK TO Caller; /* CIF Line (950,500),(950,550) */ /* CIF NextState (850,550) */ nextstate IDLE; /* CIF Line (400,200),(400,225),(1350,225),(1350,250) */ /* CIF Save (1250,250) */ save Callsetup, Callfax; /* CIF End State */ endstate; /* CIF State (300,650) */ state PhaseA_T2; /* CIF Line (400,750),(400,800) */ /* CIF Input (300,800) Right */ input Terminate; /* CIF Line (400,900),(400,1000) */ /* CIF Output (300,1000) Right */ output TerminateAcc (CallerId) ; /* CIF Line (400,1100),(400,1150) */ /* CIF Output (300,1150) Right */ output EndCall TO Central; /* CIF Line (400,1250),(400,1550) */ /* CIF NextState (300,1550) */ nextstate IDLE; /* CIF Line (400,750),(400,775),(950,775),(950,800) */ /* CIF Input (850,800) Right */ input DIS; /* CIF Line (950,900),(950,950) */ /* CIF Output (850,950) Right */ output DisFound TO Central; /* CIF Line (950,1050),(950,1100) */ /* CIF NextState (850,1100) */ nextstate PhaseA_T3; /* CIF Line (400,750),(400,775),(1350,775),(1350,800) */ /* CIF Save (1250,800) */ save Callsetup, Callfax; /* CIF End State */ endstate; /* CIF State (850,1100) */ state PhaseA_T3; /* CIF Line (950,1200),(950,1250) */ /* CIF Input (850,1250) Right */ input Terminate; /* CIF Line (950,1350),(950,1400) */ /* CIF Output (850,1400) Right */ output TerminateAcc TO Central; /* CIF Line (950,1500),(950,1550) */ /* CIF NextState (850,1550) */ nextstate IDLE; /* CIF Line (950,1200),(950,1225),(1350,1225),(1350,1250) */ /* CIF Save (1250,1250) */ save Callsetup, Callfax; /* CIF End State */ endstate; /* CIF State (1600,100) */ state PhaseB_T; /* CIF Line (1700,200),(1700,250) */ /* CIF Input (1600,250) Right */ input CED_OK; /* CIF Line (1700,350),(1700,400) */ /* CIF Output (1600,400) Right */ output Setup_OK ; /* CIF Line (1700,500),(1700,550) */ /* CIF NextState (1600,550) */ nextstate PhaseB_T2; /* CIF Line (1700,200),(1700,225),(2100,225),(2100,250) */ /* CIF Save (2000,250) */ save Callsetup, Callfax; /* CIF End State */ endstate; /* CIF State (1600,550) */ state PhaseB_T2; /* CIF Line (1700,650),(1700,700) */ /* CIF Input (1600,700) Right */ input Terminate; /* CIF Line (1700,800),(1700,850) */ /* CIF Output (1600,850) Right */ output Terminate_OK ; /* CIF Line (1700,950),(1700,1000) */ /* CIF Output (1600,1000) Right */ output EndCall TO Central; /* CIF Line (1700,1100),(1700,1200) */ /* CIF NextState (1600,1200) */ nextstate IDLE; /* CIF Line (1700,650),(1700,675),(2100,675),(2100,700) */ /* CIF Save (2000,700) */ save Callsetup, Callfax; /* CIF End State */ endstate; /* CIF End ProcessDiagram */ endprocess ToyExample;