certi-cvs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[certi-cvs] certi/doc CERTI-tickHandling.xml


From: certi-cvs
Subject: [certi-cvs] certi/doc CERTI-tickHandling.xml
Date: Fri, 19 Nov 2010 13:11:45 +0000

CVSROOT:        /sources/certi
Module name:    certi
Changes by:     Eric NOULARD <erk>      10/11/19 13:11:45

Modified files:
        doc            : CERTI-tickHandling.xml 

Log message:
        CERTI tick handling automaton
        (work in progress)

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/certi/doc/CERTI-tickHandling.xml?cvsroot=certi&r1=1.1&r2=1.2

Patches:
Index: CERTI-tickHandling.xml
===================================================================
RCS file: /sources/certi/certi/doc/CERTI-tickHandling.xml,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -b -r1.1 -r1.2
--- CERTI-tickHandling.xml      16 Aug 2010 06:17:19 -0000      1.1
+++ CERTI-tickHandling.xml      19 Nov 2010 13:11:45 -0000      1.2
@@ -1,21 +1,36 @@
 <?xml version="1.0" encoding="utf-8"?><!DOCTYPE nta PUBLIC '-//Uppaal 
Team//DTD Flat System 1.1//EN' 
'http://www.it.uu.se/research/group/darts/uppaal/flat-1_1.dtd'><nta><declaration>//
 Place global declarations here.
 const int nbFederate = 2;
-typedef int[0,nbFederate-1] RangeFederate;
+typedef int[1,nbFederate] RangeFederate;
 
-chan rq[RangeFederate];
-chan rqNext[RangeFederate];
-chan rqStop[RangeFederate];</declaration><template><name x="5" 
y="5">RTIA_Tick</name><parameter>int FedRank</parameter><declaration>// Place 
local declarations here.
+// Channel for sending M_Tick_Request
+chan Tick_rq[RangeFederate];
+
+// Channel for sending M_Tick_Request_Next
+chan Tick_rqNext[RangeFederate];
+
+// Channel for sending M_Tick_Request_Stop
+chan Tick_rqStop[RangeFederate];</declaration><template><name x="5" 
y="5">RTIA</name><parameter>RangeFederate FedRank</parameter><declaration>// 
Place local declarations here.
+
+// Does RTIA have to handle multiple Callback?
 bool multiple=false;
-bool result=false;
 
-int timeout =0; // 0 means timeout is not used
-int maxTicks=0; // 0 means maxTicks is not used
+// ??
+bool result  =false;
+
+// Does current tick has timeout?
+// 0 means timeout is not used
+int timeout =0; 
+
+ // 0 means maxTicks is not used
+int maxTicks=0;
+
+</declaration><location id="id0" x="0" y="-464"><name x="-42" 
y="-494">TICK_NEXT</name></location><location id="id1" x="-352" y="-160"><name 
x="-408" y="-136">TICK_CALLBACK</name></location><location id="id2" x="-320" 
y="-480"><name x="-376" y="-512">TICK_BLOCKING</name></location><location 
id="id3" x="8" y="-168"><name x="-30" 
y="-130">TICK_RETURN</name></location><location id="id4" x="-600" 
y="-312"><name x="-632" y="-344">NO_TICK</name></location><init 
ref="id4"/><transition><source ref="id0"/><target ref="id3"/><label 
kind="guard" x="16" 
y="-336">!(result==true)</label></transition><transition><source 
ref="id0"/><target ref="id1"/><label kind="guard" x="-168" 
y="-432">result==true</label></transition><transition><source 
ref="id2"/><target ref="id3"/></transition><transition><source 
ref="id1"/><target ref="id3"/></transition><transition><source 
ref="id4"/><target ref="id1"/><label kind="synchronisation" x="-592" 
y="-216">Tick_rq[FedRank]?</label><label kind="assignment" x="-592" 
y="-200">result=false</label></transition><transition><source 
ref="id4"/><target ref="id2"/><label kind="synchronisation" x="-592" 
y="-424">Tick_rq[FedRank]?</label><label kind="assignment" x="-576" 
y="-440">result=false</label></transition></template><template><name>libRTI</name><parameter>RangeFederate
 FedRank</parameter><location id="id5" x="232" y="-24"><name x="222" 
y="-54">HANDLE_CALLBACK</name></location><location id="id6" x="-64" 
y="184"><name x="-96" y="144">ASYNC_TICKING</name></location><location id="id7" 
x="24" y="-184"><name x="-24" y="-216">SYNC_TICKING</name></location><location 
id="id8" x="-320" y="24"><name x="-400" 
y="-16">NOT_TICKING</name></location><init ref="id8"/><transition><source 
ref="id5"/><target ref="id7"/><label kind="synchronisation" x="168" 
y="-240">Tick_rqNext[FedRank]!</label><nail x="256" y="-144"/><nail x="168" 
y="-216"/></transition><transition><source ref="id5"/><target ref="id8"/><label 
kind="synchronisation" x="-120" 
y="16">Tick_rqStop[FedRank]!</label></transition><transition><source 
ref="id7"/><target ref="id5"/></transition><transition><source 
ref="id7"/><target ref="id8"/><label kind="synchronisation" x="-176" 
y="-32">Tick_rq[FedRank]?</label><nail x="-72" y="-64"/><nail x="-176" 
y="-32"/></transition><transition><source ref="id8"/><target ref="id6"/><label 
kind="synchronisation" x="-296" 
y="112">Tick_rq[FedRank]!</label></transition><transition><source 
ref="id8"/><target ref="id7"/><label kind="synchronisation" x="-240" 
y="-120">Tick_rq[FedRank]!</label><nail x="-208" y="-72"/><nail x="-96" 
y="-104"/></transition></template><system>// Place template instantiations here.
+// We instantiate 2 federates (libRTIs) with their corresponding RTIAs
+libRTI_1 = libRTI(1);
+libRTI_2 = libRTI(2);
+RTIA_1 = RTIA(1);
+RTIA_2 = RTIA(2);
 
-</declaration><location id="id0" x="0" y="-464"><name x="-42" 
y="-494">TICK_NEXT</name></location><location id="id1" x="-352" y="-160"><name 
x="-408" y="-136">TICK_CALLBACK</name></location><location id="id2" x="-320" 
y="-480"><name x="-376" y="-512">TICK_BLOCKING</name></location><location 
id="id3" x="8" y="-168"><name x="-30" 
y="-130">TICK_RETURN</name></location><location id="id4" x="-600" 
y="-296"><name x="-632" y="-328">NO_TICK</name></location><init 
ref="id4"/><transition><source ref="id0"/><target ref="id3"/><label 
kind="guard" x="8" 
y="-336">!(result==true)</label></transition><transition><source 
ref="id0"/><target ref="id1"/><label kind="guard" x="-168" 
y="-416">result==true</label></transition><transition><source 
ref="id2"/><target ref="id3"/></transition><transition><source 
ref="id1"/><target ref="id3"/></transition><transition><source 
ref="id4"/><target ref="id1"/><label kind="synchronisation" x="-552" 
y="-232">rq[FedRank]?</label><label kind="assignment" x="-544" 
y="-208">result=false</label></transition><transition><source 
ref="id4"/><target ref="id2"/><label kind="synchronisation" x="-552" 
y="-416">rq[FedRank]?</label><label kind="assignment" x="-552" 
y="-432">result=false</label></transition></template><template><name>Request</name><declaration>bool
 multiple;
-int  minTickTime;
-int  maxTickTime;</declaration><location id="id5" x="0" y="0"></location><init 
ref="id5"/></template><template><name>RequestNext</name><location id="id6" 
x="0" y="0"></location><init 
ref="id6"/></template><template><name>RequestStop</name><location id="id7" 
x="0" y="0"></location><init ref="id7"/></template><system>// Place template 
instantiations here.
-RTIA_Tick1 = RTIA_Tick(1);
-RTIA_Tick2 = RTIA_Tick(2);
 
 // List one or more processes to be composed into a system.
-system RTIA_Tick1, RTIA_Tick2, Request, RequestNext, 
RequestStop;</system></nta>
\ No newline at end of file
+system libRTI_1, RTIA_1, libRTI_2, RTIA_2;</system></nta>
\ No newline at end of file



reply via email to

[Prev in Thread] Current Thread [Next in Thread]