update UML

This commit is contained in:
Rémi Heredero 2023-06-15 21:12:49 +02:00
parent 75aa68bae2
commit 1f091485ac
2 changed files with 215 additions and 32 deletions

183
02-UML/ST_BLINKER.uxf Normal file
View File

@ -0,0 +1,183 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<diagram program="umlet" version="15.1">
<zoom_level>17</zoom_level>
<element>
<id>UMLSpecialState</id>
<coordinates>
<x>646</x>
<y>51</y>
<w>34</w>
<h>34</h>
</coordinates>
<panel_attributes>type=initial</panel_attributes>
<additional_attributes/>
</element>
<element>
<id>Relation</id>
<coordinates>
<x>646</x>
<y>68</y>
<w>153</w>
<h>153</h>
</coordinates>
<panel_attributes>lt=-&gt;
evBLInit</panel_attributes>
<additional_attributes>10.0;10.0;10.0;70.0</additional_attributes>
</element>
<element>
<id>UMLState</id>
<coordinates>
<x>510</x>
<y>187</y>
<w>306</w>
<h>85</h>
</coordinates>
<panel_attributes>ST_WAIT
--
remainBlinks = 3;</panel_attributes>
<additional_attributes/>
</element>
<element>
<id>UMLState</id>
<coordinates>
<x>510</x>
<y>374</y>
<w>306</w>
<h>102</h>
</coordinates>
<panel_attributes>ST_ON
--
if(blink3) remainBlinks--
-.
/ entry: turnOn()</panel_attributes>
<additional_attributes/>
</element>
<element>
<id>Relation</id>
<coordinates>
<x>646</x>
<y>459</y>
<w>153</w>
<h>136</h>
</coordinates>
<panel_attributes>lt=-&gt;
evTimer</panel_attributes>
<additional_attributes>10.0;10.0;10.0;60.0</additional_attributes>
</element>
<element>
<id>UMLState</id>
<coordinates>
<x>544</x>
<y>561</y>
<w>238</w>
<h>102</h>
</coordinates>
<panel_attributes>ST_OFF
--
-.
/ entry: turnOff()</panel_attributes>
<additional_attributes/>
</element>
<element>
<id>Relation</id>
<coordinates>
<x>646</x>
<y>646</y>
<w>153</w>
<h>153</h>
</coordinates>
<panel_attributes>lt=-&gt;
evTimer</panel_attributes>
<additional_attributes>10.0;10.0;10.0;70.0</additional_attributes>
</element>
<element>
<id>Relation</id>
<coordinates>
<x>527</x>
<y>255</y>
<w>272</w>
<h>153</h>
</coordinates>
<panel_attributes>lt=-&gt;
m1=evBlinkN
m2=/ nBlinkIsOn = true</panel_attributes>
<additional_attributes>10.0;10.0;10.0;70.0</additional_attributes>
</element>
<element>
<id>Relation</id>
<coordinates>
<x>765</x>
<y>255</y>
<w>289</w>
<h>153</h>
</coordinates>
<panel_attributes>lt=-&gt;
m1=evBlink
m2=/ nBlinkIsOn = false</panel_attributes>
<additional_attributes>10.0;10.0;10.0;70.0</additional_attributes>
</element>
<element>
<id>UMLSpecialState</id>
<coordinates>
<x>629</x>
<y>765</y>
<w>68</w>
<h>68</h>
</coordinates>
<panel_attributes>type=decision</panel_attributes>
<additional_attributes/>
</element>
<element>
<id>Relation</id>
<coordinates>
<x>442</x>
<y>408</y>
<w>221</w>
<h>442</h>
</coordinates>
<panel_attributes>lt=-&gt;
m1=[else]</panel_attributes>
<additional_attributes>110.0;230.0;10.0;230.0;10.0;10.0;40.0;10.0</additional_attributes>
</element>
<element>
<id>Relation</id>
<coordinates>
<x>680</x>
<y>204</y>
<w>391</w>
<h>646</h>
</coordinates>
<panel_attributes>lt=-&gt;
m1=[remainBlinks==0]</panel_attributes>
<additional_attributes>10.0;350.0;210.0;350.0;210.0;10.0;80.0;10.0</additional_attributes>
</element>
<element>
<id>UMLClass</id>
<coordinates>
<x>1462</x>
<y>0</y>
<w>952</w>
<h>527</h>
</coordinates>
<panel_attributes>BLINKER
--
+state: BLINKER_STATES
+tON: uint16_t
+tOFF: uint16_t
+blink3: bool
+nBlink: uint8_t
+turnOn: blinkerCallBack
+turnOff: blinkerCallBack
--
+BLINKER_init(me: BLINKER*): void
+BLINKER_defineCallBack(f: fBlinkerCallBack, param: void*): blinkerCallBack
+BLINKER_starBehaviour(me: BLINKER*): void
+BLINKER_setTurnOn(me: BLINKER*, callBack: blinkerCallBack): void
+BLINKER_setTurnOff(me: BLINKER*, callBack: blinkerCallBack): void
+BLINKER_blink3(me: BLINKER*): void
+BLINKER_blink(me: BLINKER*): void
+BLINKER_processEvent(mev: Event*): bool
+BLINKER_endBlink(me: BLINKER*): void</panel_attributes>
<additional_attributes/>
</element>
</diagram>

View File

@ -4,8 +4,8 @@
<element> <element>
<id>UMLSpecialState</id> <id>UMLSpecialState</id>
<coordinates> <coordinates>
<x>1160</x> <x>860</x>
<y>200</y> <y>80</y>
<w>40</w> <w>40</w>
<h>40</h> <h>40</h>
</coordinates> </coordinates>
@ -15,8 +15,8 @@
<element> <element>
<id>UMLState</id> <id>UMLState</id>
<coordinates> <coordinates>
<x>680</x> <x>380</x>
<y>520</y> <y>400</y>
<w>280</w> <w>280</w>
<h>80</h> <h>80</h>
</coordinates> </coordinates>
@ -26,8 +26,8 @@
<element> <element>
<id>UMLState</id> <id>UMLState</id>
<coordinates> <coordinates>
<x>1400</x> <x>1100</x>
<y>520</y> <y>400</y>
<w>280</w> <w>280</w>
<h>80</h> <h>80</h>
</coordinates> </coordinates>
@ -37,8 +37,8 @@
<element> <element>
<id>Relation</id> <id>Relation</id>
<coordinates> <coordinates>
<x>1520</x> <x>1220</x>
<y>580</y> <y>460</y>
<w>180</w> <w>180</w>
<h>240</h> <h>240</h>
</coordinates> </coordinates>
@ -49,8 +49,8 @@ evPBPoll</panel_attributes>
<element> <element>
<id>Relation</id> <id>Relation</id>
<coordinates> <coordinates>
<x>1160</x> <x>860</x>
<y>220</y> <y>100</y>
<w>180</w> <w>180</w>
<h>180</h> <h>180</h>
</coordinates> </coordinates>
@ -61,8 +61,8 @@ evPBInit</panel_attributes>
<element> <element>
<id>UMLSpecialState</id> <id>UMLSpecialState</id>
<coordinates> <coordinates>
<x>1140</x> <x>840</x>
<y>360</y> <y>240</y>
<w>80</w> <w>80</w>
<h>80</h> <h>80</h>
</coordinates> </coordinates>
@ -72,8 +72,8 @@ evPBInit</panel_attributes>
<element> <element>
<id>Relation</id> <id>Relation</id>
<coordinates> <coordinates>
<x>800</x> <x>500</x>
<y>380</y> <y>260</y>
<w>380</w> <w>380</w>
<h>180</h> <h>180</h>
</coordinates> </coordinates>
@ -84,8 +84,8 @@ m1=[pB==1]</panel_attributes>
<element> <element>
<id>Relation</id> <id>Relation</id>
<coordinates> <coordinates>
<x>800</x> <x>500</x>
<y>580</y> <y>460</y>
<w>180</w> <w>180</w>
<h>180</h> <h>180</h>
</coordinates> </coordinates>
@ -96,8 +96,8 @@ evPBPoll</panel_attributes>
<element> <element>
<id>Relation</id> <id>Relation</id>
<coordinates> <coordinates>
<x>1200</x> <x>900</x>
<y>380</y> <y>260</y>
<w>380</w> <w>380</w>
<h>180</h> <h>180</h>
</coordinates> </coordinates>
@ -108,8 +108,8 @@ m1=[pB==0]</panel_attributes>
<element> <element>
<id>UMLSpecialState</id> <id>UMLSpecialState</id>
<coordinates> <coordinates>
<x>780</x> <x>480</x>
<y>720</y> <y>600</y>
<w>80</w> <w>80</w>
<h>80</h> <h>80</h>
</coordinates> </coordinates>
@ -119,8 +119,8 @@ m1=[pB==0]</panel_attributes>
<element> <element>
<id>UMLSpecialState</id> <id>UMLSpecialState</id>
<coordinates> <coordinates>
<x>1500</x> <x>1200</x>
<y>780</y> <y>660</y>
<w>80</w> <w>80</w>
<h>80</h> <h>80</h>
</coordinates> </coordinates>
@ -130,8 +130,8 @@ m1=[pB==0]</panel_attributes>
<element> <element>
<id>Relation</id> <id>Relation</id>
<coordinates> <coordinates>
<x>880</x> <x>580</x>
<y>440</y> <y>320</y>
<w>660</w> <w>660</w>
<h>440</h> <h>440</h>
</coordinates> </coordinates>
@ -142,8 +142,8 @@ m1=[pB==1] / pbPress()</panel_attributes>
<element> <element>
<id>Relation</id> <id>Relation</id>
<coordinates> <coordinates>
<x>840</x> <x>540</x>
<y>440</y> <y>320</y>
<w>660</w> <w>660</w>
<h>380</h> <h>380</h>
</coordinates> </coordinates>
@ -155,8 +155,8 @@ m1=[pB==0] / pbRelease()</panel_attributes>
<element> <element>
<id>Relation</id> <id>Relation</id>
<coordinates> <coordinates>
<x>600</x> <x>300</x>
<y>440</y> <y>320</y>
<w>220</w> <w>220</w>
<h>380</h> <h>380</h>
</coordinates> </coordinates>
@ -167,8 +167,8 @@ m1=[else]</panel_attributes>
<element> <element>
<id>Relation</id> <id>Relation</id>
<coordinates> <coordinates>
<x>1560</x> <x>1260</x>
<y>440</y> <y>320</y>
<w>220</w> <w>220</w>
<h>440</h> <h>440</h>
</coordinates> </coordinates>
@ -179,8 +179,8 @@ m1=[else]</panel_attributes>
<element> <element>
<id>UMLNote</id> <id>UMLNote</id>
<coordinates> <coordinates>
<x>1000</x> <x>700</x>
<y>880</y> <y>760</y>
<w>400</w> <w>400</w>
<h>100</h> <h>100</h>
</coordinates> </coordinates>