Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/org.eclipse.etrice.doc/html/etrice-docse22.html')
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse22.html3756
1 files changed, 1939 insertions, 1817 deletions
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse22.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse22.html
index eac8e8896..8a1f54a10 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse22.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse22.html
@@ -10,7 +10,7 @@
<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
<!-- xhtml,3,next,html -->
<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2015-08-27 23:56:00" />
+<meta name="date" content="2015-08-28 18:10:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
@@ -21,7 +21,7 @@ href="etrice-docch7.html#tailetrice-docch7.html" >prev-tail</a>] [<a
href="#tailetrice-docse22.html">tail</a>] [<a
href="etrice-docch7.html#etrice-docse22.html" >up</a>] </p></div>
<h3 class="sectionHead"><span class="titlemark">7.1 </span> <a
- id="x31-1700001"></a>ROOMLanguage</h3>
+ id="x31-1660001"></a>ROOMLanguage</h3>
<!--l. 2--><p class="noindent" ><a
id="ref:ROOMLanguage"></a> The Real Time Object Oriented Modeling (ROOM).
</p><!--l. 5--><p class="noindent" >eTrice comprises several models:
@@ -46,76 +46,76 @@ src="images/080-models.jpg" alt="PIC"
<!--l. 20--><p class="noindent" ><span
class="ec-lmssbx-10">Features:</span>
<a
- id="x31-170001r1"></a></p>
-<!--l. 25--><div class="longtable"> <table id="TBL-20" class="longtable"
+ id="x31-166001r1"></a></p>
+<!--l. 25--><div class="longtable"> <table id="TBL-19" class="longtable"
cellspacing="0" cellpadding="0" rules="groups"
-><colgroup id="TBL-20-1g"><col
-id="TBL-20-1" /></colgroup><colgroup id="TBL-20-2g"><col
-id="TBL-20-2" /><col
-id="TBL-20-3" /></colgroup>
+><colgroup id="TBL-19-1g"><col
+id="TBL-19-1" /></colgroup><colgroup id="TBL-19-2g"><col
+id="TBL-19-2" /><col
+id="TBL-19-3" /></colgroup>
+
+
<tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-20-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-20-1-1"
-class="td11"> Contains: </td><td style="white-space:nowrap; text-align:left;" id="TBL-20-1-2"
+ style="vertical-align:baseline;" id="TBL-19-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-19-1-1"
+class="td11"> Contains: </td><td style="white-space:nowrap; text-align:left;" id="TBL-19-1-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:LogicalModel">LogicalModel</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-20-1-3"
+href="#ref:LogicalModel">LogicalModel</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-19-1-3"
class="td11">
<!--l. 25--><p class="noindent" >The LogicalModel describes the logical structure and
behavior of a ROOM application. </p></td>
-
-
</tr><tr
- style="vertical-align:baseline;" id="TBL-20-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-20-2-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-20-2-2"
+ style="vertical-align:baseline;" id="TBL-19-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-19-2-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-19-2-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:PhysicalModel">PhysicalModel</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-20-2-3"
+href="#ref:PhysicalModel">PhysicalModel</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-19-2-3"
class="td11">
<!--l. 26--><p class="noindent" >The PhysicalModel defines the setup of your nodes with
their attributes like threads and mode of execution. </p></td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-20-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-20-3-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-20-3-2"
+ style="vertical-align:baseline;" id="TBL-19-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-19-3-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-19-3-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:MappingModel">MappingModel</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-20-3-3"
+href="#ref:MappingModel">MappingModel</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-19-3-3"
class="td11">
<!--l. 27--><p class="noindent" >The MappingModel describes the mapping of elements of
the LogicalModel to elements of the PhysicalModel. </p></td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-20-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-20-4-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-20-4-2"
+ style="vertical-align:baseline;" id="TBL-19-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-19-4-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-19-4-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:ConfigModel">ConfigModel</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-20-4-3"
+href="#ref:ConfigModel">ConfigModel</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-19-4-3"
class="td11">
<!--l. 28--><p class="noindent" >The ConfigModel describes the Attribute configuration of
ActorInstances and PortInstances. </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-20-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-20-5-1"
+ style="vertical-align:baseline;" id="TBL-19-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-19-5-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-20-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-20-6-1"
+ style="vertical-align:baseline;" id="TBL-19-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-19-6-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-20-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-20-7-1"
+ style="vertical-align:baseline;" id="TBL-19-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-19-7-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-20-8-"><td style="white-space:nowrap; text-align:left;" id="TBL-20-8-1"
+ style="vertical-align:baseline;" id="TBL-19-8-"><td style="white-space:nowrap; text-align:left;" id="TBL-19-8-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-20-9-"><td style="white-space:nowrap; text-align:left;" id="TBL-20-9-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-20-9-2"
-class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-20-9-3"
+ style="vertical-align:baseline;" id="TBL-19-9-"><td style="white-space:nowrap; text-align:left;" id="TBL-19-9-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-19-9-2"
+class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-19-9-3"
class="td11">
</td></tr>
</table></div>
<a
- id="x31-170002r238"></a>
+ id="x31-166002r237"></a>
<h4 class="subsectionHead"><span class="titlemark">7.1.1 </span> <a
- id="x31-1710001"></a>ConfigModel</h4>
+ id="x31-1670001"></a>ConfigModel</h4>
<!--l. 34--><p class="noindent" ><a
id="ref:ConfigModel"></a> The ConfigModel describes the Attribute configuration of ActorInstances and PortInstances.
</p><!--l. 37--><p class="noindent" >The scope of this model is the configuration of Attributes of the LogicalModel. Thus it provides enhanced capabilities for
@@ -130,8 +130,8 @@ assigning default values to Attributes, which are: </p>
The configuration is available for actors and ports, thus ActorClasses/ActorRefs and ProtocolClasses/Ports.
</p>
<!--l. 47-->
-<div class="lstlisting" id="listing-52"><span class="label"><a
- id="x31-171001r1"></a></span><span
+<div class="lstlisting" id="listing-40"><span class="label"><a
+ id="x31-167001r1"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmssbx-10x-x-90">ConfigModel</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -139,7 +139,7 @@ class="ec-lmtt-9">ExampleConfig</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-171002r2"></a></span><span
+ id="x31-167002r2"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -156,9 +156,9 @@ class="ec-lmtt-9">.</span><span
class="ec-lmtt-9">room</span><span
class="ec-lmtt-9">"</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-171003r3"></a></span><span
+ id="x31-167003r3"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-171004r4"></a></span><span
+ id="x31-167004r4"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -168,7 +168,7 @@ class="ec-lmtt-9">ActorClass1</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-171005r5"></a></span><span
+ id="x31-167005r5"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -181,15 +181,15 @@ class="ec-lmtt-9">=</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">4</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-171006r6"></a></span><span
+ id="x31-167006r6"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-171007r7"></a></span><span
+ id="x31-167007r7"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-171008r8"></a></span><span
+ id="x31-167008r8"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -203,7 +203,7 @@ class="ec-lmtt-9">actor1</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-171009r9"></a></span><span
+ id="x31-167009r9"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -216,158 +216,158 @@ class="ec-lmtt-9">=</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">7</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-171010r10"></a></span><span
+ id="x31-167010r10"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-171011r11"></a></span><span
+ id="x31-167011r11"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span>
</div>
<!--l. 63--><p class="noindent" ><span
class="ec-lmssbx-10">Features:</span>
<a
- id="x31-171012r2"></a></p>
-<!--l. 68--><div class="longtable"> <table id="TBL-21" class="longtable"
+ id="x31-167012r2"></a></p>
+<!--l. 68--><div class="longtable"> <table id="TBL-20" class="longtable"
cellspacing="0" cellpadding="0" rules="groups"
-><colgroup id="TBL-21-1g"><col
-id="TBL-21-1" /></colgroup><colgroup id="TBL-21-2g"><col
-id="TBL-21-2" /><col
-id="TBL-21-3" /></colgroup>
+><colgroup id="TBL-20-1g"><col
+id="TBL-20-1" /></colgroup><colgroup id="TBL-20-2g"><col
+id="TBL-20-2" /><col
+id="TBL-20-3" /></colgroup>
<tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-21-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-21-1-1"
-class="td11"> Uses: </td><td style="white-space:nowrap; text-align:left;" id="TBL-21-1-2"
+ style="vertical-align:baseline;" id="TBL-20-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-20-1-1"
+class="td11"> Uses: </td><td style="white-space:nowrap; text-align:left;" id="TBL-20-1-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:Attribute">Attribute</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-21-1-3"
+href="#ref:Attribute">Attribute</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-20-1-3"
class="td11">
<!--l. 68--><p class="noindent" >An Attribute is a member variable of a class </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-21-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-21-2-1"
+ style="vertical-align:baseline;" id="TBL-20-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-20-2-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-21-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-21-3-1"
+ style="vertical-align:baseline;" id="TBL-20-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-20-3-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-21-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-21-4-1"
+ style="vertical-align:baseline;" id="TBL-20-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-20-4-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-21-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-21-5-1"
+ style="vertical-align:baseline;" id="TBL-20-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-20-5-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-21-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-21-6-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-21-6-2"
-class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-21-6-3"
+ style="vertical-align:baseline;" id="TBL-20-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-20-6-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-20-6-2"
+class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-20-6-3"
class="td11">
</td></tr>
</table></div>
<a
- id="x31-171013r242"></a>
+ id="x31-167013r241"></a>
<h4 class="subsectionHead"><span class="titlemark">7.1.2 </span> <a
- id="x31-1720002"></a>LogicalModel</h4>
+ id="x31-1680002"></a>LogicalModel</h4>
<!--l. 80--><p class="noindent" ><a
id="ref:LogicalModel"></a> The LogicalModel describes the logical structure and behavior of a ROOM application.
</p><!--l. 83--><p class="noindent" >The ROOM model defines DataTypes, ProtocolClasses, ActorClasses, SubSystemClasses and LogicalSystems. Thereby the
three latter form a hierarchy. The LogicalSystem is the top level element of the structure. It contains references to
SubSystemClass elements. The SubSystemClass in turn contains references to ActorClass elements which
-again contain (recursively) references to ActorClass elements. The complete structural hierarchy implies a tree
-which has the LogicalSystem as root and where each reference stands for a new node with possibly further
+again contain (recursively) references to ActorClass elements. The complete structural hierarchy implies a tree
+which has the LogicalSystem as root and where each reference stands for a new node with possibly further
branches.
</p><!--l. 93--><p class="noindent" ><span
class="ec-lmssbx-10">Features:</span>
<a
- id="x31-172001r3"></a></p>
-<!--l. 98--><div class="longtable"> <table id="TBL-22" class="longtable"
+ id="x31-168001r3"></a></p>
+<!--l. 98--><div class="longtable"> <table id="TBL-21" class="longtable"
cellspacing="0" cellpadding="0" rules="groups"
-><colgroup id="TBL-22-1g"><col
-id="TBL-22-1" /></colgroup><colgroup id="TBL-22-2g"><col
-id="TBL-22-2" /><col
-id="TBL-22-3" /></colgroup>
+><colgroup id="TBL-21-1g"><col
+id="TBL-21-1" /></colgroup><colgroup id="TBL-21-2g"><col
+id="TBL-21-2" /><col
+id="TBL-21-3" /></colgroup>
<tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-22-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-22-1-1"
-class="td11"> Contains: </td><td style="white-space:nowrap; text-align:left;" id="TBL-22-1-2"
+ style="vertical-align:baseline;" id="TBL-21-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-21-1-1"
+class="td11"> Contains: </td><td style="white-space:nowrap; text-align:left;" id="TBL-21-1-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:LogicalSystem">LogicalSystem</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-22-1-3"
+href="#ref:LogicalSystem">LogicalSystem</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-21-1-3"
class="td11">
<!--l. 98--><p class="noindent" >The LogicalSystem is the topmost structural class. It
assembles a distributed system by means of sub systems. </p></td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-22-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-22-2-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-22-2-2"
+ style="vertical-align:baseline;" id="TBL-21-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-21-2-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-21-2-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:SubSystemClass">SubSystemClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-22-2-3"
+href="#ref:SubSystemClass">SubSystemClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-21-2-3"
class="td11">
<!--l. 99--><p class="noindent" >A SubSystem is the topmost building block of the
executable part of an system. </p></td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-22-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-22-3-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-22-3-2"
+ style="vertical-align:baseline;" id="TBL-21-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-21-3-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-21-3-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:ActorClass">ActorClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-22-3-3"
+href="#ref:ActorClass">ActorClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-21-3-3"
class="td11">
<!--l. 100--><p class="noindent" >An actor is the basic structural building block for building
systems with ROOM. </p></td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-22-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-22-4-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-22-4-2"
+ style="vertical-align:baseline;" id="TBL-21-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-21-4-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-21-4-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:ProtocolClass">ProtocolClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-22-4-3"
+href="#ref:ProtocolClass">ProtocolClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-21-4-3"
class="td11">
<!--l. 101--><p class="noindent" >A ProtocolClass defines messages and is the interface
specification for a Port </p></td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-22-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-22-5-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-22-5-2"
+ style="vertical-align:baseline;" id="TBL-21-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-21-5-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-21-5-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:DataType">DataType</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-22-5-3"
+href="#ref:DataType">DataType</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-21-5-3"
class="td11">
<!--l. 102--><p class="noindent" >A DataType can take 4 forms and types data elements like
an Attribute or Operation argument. </p></td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-22-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-22-6-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-22-6-2"
+ style="vertical-align:baseline;" id="TBL-21-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-21-6-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-21-6-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:AnnotationType">AnnotationType</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-22-6-3"
+href="#ref:AnnotationType">AnnotationType</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-21-6-3"
class="td11">
<!--l. 103--><p class="noindent" >AnnotationTypes can be used to tag ROOM classes for
further custom processing. </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-22-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-22-7-1"
+ style="vertical-align:baseline;" id="TBL-21-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-21-7-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-22-8-"><td style="white-space:nowrap; text-align:left;" id="TBL-22-8-1"
+ style="vertical-align:baseline;" id="TBL-21-8-"><td style="white-space:nowrap; text-align:left;" id="TBL-21-8-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-22-9-"><td style="white-space:nowrap; text-align:left;" id="TBL-22-9-1"
+ style="vertical-align:baseline;" id="TBL-21-9-"><td style="white-space:nowrap; text-align:left;" id="TBL-21-9-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-22-10-"><td style="white-space:nowrap; text-align:left;" id="TBL-22-10-1"
+ style="vertical-align:baseline;" id="TBL-21-10-"><td style="white-space:nowrap; text-align:left;" id="TBL-21-10-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-22-11-"><td style="white-space:nowrap; text-align:left;" id="TBL-22-11-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-22-11-2"
-class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-22-11-3"
+ style="vertical-align:baseline;" id="TBL-21-11-"><td style="white-space:nowrap; text-align:left;" id="TBL-21-11-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-21-11-2"
+class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-21-11-3"
class="td11">
</td></tr>
</table></div>
<a
- id="x31-172002r123"></a>
+ id="x31-168002r122"></a>
<h5 class="subsubsectionHead"><span class="titlemark">7.1.2.1 </span> <a
- id="x31-1730001"></a>ActorClass</h5>
+ id="x31-1690001"></a>ActorClass</h5>
<!--l. 115--><p class="noindent" ><a
id="ref:ActorClass"></a> An actor is the basic structural building block for building systems with ROOM.
</p><!--l. 118--><p class="noindent" >An ActorClass consists of three main parts: </p>
@@ -388,8 +388,8 @@ class="ec-lmssbx-10">Behavior </span>is described by the StateMachine. It can re
<!--l. 125--><p class="noindent" ><img
src="images/040-ActorClass.png" alt="PIC"
/> </p><!--l. 126-->
-<div class="lstlisting" id="listing-53"><span class="label"><a
- id="x31-173001r1"></a></span><span
+<div class="lstlisting" id="listing-41"><span class="label"><a
+ id="x31-169001r1"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmssbx-10x-x-90">ActorClass</span><span
@@ -398,7 +398,7 @@ class="ec-lmtt-9">ExampleActorClass</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-173002r2"></a></span><span
+ id="x31-169002r2"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -406,7 +406,7 @@ class="ec-lmssbx-10x-x-90">Interface</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-173003r3"></a></span><span
+ id="x31-169003r3"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -419,7 +419,7 @@ class="ec-lmtt-9">:</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">ProtocolClass1</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-173004r4"></a></span><span
+ id="x31-169004r4"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -432,13 +432,13 @@ class="ec-lmtt-9">:</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">ProtocolClass1</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-173005r5"></a></span><span
+ id="x31-169005r5"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-173006r6"></a></span><span
+ id="x31-169006r6"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -446,7 +446,7 @@ class="ec-lmssbx-10x-x-90">Structure</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-173007r7"></a></span><span
+ id="x31-169007r7"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -458,7 +458,7 @@ class="ec-lmssbx-10x-x-90">Port</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">port1</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-173008r8"></a></span><span
+ id="x31-169008r8"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -473,7 +473,7 @@ class="ec-lmtt-9">:</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">ProtocolClass1</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-173009r9"></a></span><span
+ id="x31-169009r9"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -488,9 +488,9 @@ class="ec-lmtt-9">:</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">ProtocolClass1</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-173010r10"></a></span><span
+ id="x31-169010r10"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-173011r11"></a></span><span
+ id="x31-169011r11"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -503,7 +503,7 @@ class="ec-lmtt-9">:</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">ActorClass2</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-173012r12"></a></span><span
+ id="x31-169012r12"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -516,9 +516,9 @@ class="ec-lmtt-9">:</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">ActorClass3</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-173013r13"></a></span><span
+ id="x31-169013r13"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-173014r14"></a></span><span
+ id="x31-169014r14"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -534,7 +534,7 @@ class="ec-lmtt-9">ActorRef_A</span><span
class="ec-lmtt-9">.</span><span
class="ec-lmtt-9">port5</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-173015r15"></a></span><span
+ id="x31-169015r15"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -544,13 +544,13 @@ class="ec-lmtt-9">//</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">...</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-173016r16"></a></span><span
+ id="x31-169016r16"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-173017r17"></a></span><span
+ id="x31-169017r17"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -558,7 +558,7 @@ class="ec-lmssbx-10x-x-90">Behavior</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-173018r18"></a></span><span
+ id="x31-169018r18"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -568,13 +568,13 @@ class="ec-lmtt-9">//</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">...</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-173019r19"></a></span><span
+ id="x31-169019r19"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-173020r20"></a></span><span
+ id="x31-169020r20"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span>
@@ -582,321 +582,353 @@ class="ec-lmtt-9">}</span>
<!--l. 151--><p class="noindent" ><span
class="ec-lmssbx-10">Features:</span>
<a
- id="x31-173021r4"></a></p>
-<!--l. 156--><div class="longtable"> <table id="TBL-23" class="longtable"
+ id="x31-169021r4"></a></p>
+<!--l. 156--><div class="longtable"> <table id="TBL-22" class="longtable"
cellspacing="0" cellpadding="0" rules="groups"
-><colgroup id="TBL-23-1g"><col
-id="TBL-23-1" /></colgroup><colgroup id="TBL-23-2g"><col
-id="TBL-23-2" /><col
-id="TBL-23-3" /></colgroup>
+><colgroup id="TBL-22-1g"><col
+id="TBL-22-1" /></colgroup><colgroup id="TBL-22-2g"><col
+id="TBL-22-2" /><col
+id="TBL-22-3" /></colgroup>
+
+
<tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-23-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-23-1-1"
-class="td11"> Contains: </td><td style="white-space:nowrap; text-align:left;" id="TBL-23-1-2"
+ style="vertical-align:baseline;" id="TBL-22-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-22-1-1"
+class="td11"> Contains: </td><td style="white-space:nowrap; text-align:left;" id="TBL-22-1-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:ExecutionType">ExecutionType</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-23-1-3"
+href="#ref:ExecutionType">ExecutionType</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-22-1-3"
class="td11">
<!--l. 156--><p class="noindent" >Determines the execution type of an actor. </p></td>
-
-
</tr><tr
- style="vertical-align:baseline;" id="TBL-23-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-23-2-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-23-2-2"
+ style="vertical-align:baseline;" id="TBL-22-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-22-2-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-22-2-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:ActorRef">ActorRef</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-23-2-3"
+href="#ref:ActorRef">ActorRef</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-22-2-3"
class="td11">
<!--l. 157--><p class="noindent" >An ActorRef is an instance of an ActorClass. </p></td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-23-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-23-3-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-23-3-2"
+ style="vertical-align:baseline;" id="TBL-22-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-22-3-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-22-3-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:Port">Port</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-23-3-3"
+href="#ref:Port">Port</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-22-3-3"
class="td11">
<!--l. 158--><p class="noindent" >A Port is an instance of a ProtocolClass and the interface
for an ActorClass. </p></td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-23-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-23-4-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-23-4-2"
+ style="vertical-align:baseline;" id="TBL-22-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-22-4-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-22-4-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:SAP">SAP</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-23-4-3"
+href="#ref:SAP">SAP</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-22-4-3"
class="td11">
<!--l. 159--><p class="noindent" >A Service Access Point is similar to a Port, but uses a
LayerConnection for wiring. </p></td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-23-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-23-5-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-23-5-2"
+ style="vertical-align:baseline;" id="TBL-22-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-22-5-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-22-5-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:SPP">SPP</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-23-5-3"
+href="#ref:SPP">SPP</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-22-5-3"
class="td11">
<!--l. 160--><p class="noindent" >A Service Provision Point is the counterpart of a SAP </p></td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-23-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-23-6-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-23-6-2"
+ style="vertical-align:baseline;" id="TBL-22-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-22-6-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-22-6-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:Binding">Binding</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-23-6-3"
+href="#ref:Binding">Binding</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-22-6-3"
class="td11">
<!--l. 161--><p class="noindent" >A Binding connects two Ports with each other. </p></td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-23-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-23-7-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-23-7-2"
+ style="vertical-align:baseline;" id="TBL-22-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-22-7-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-22-7-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:LayerConnection">LayerConnection</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-23-7-3"
+href="#ref:LayerConnection">LayerConnection</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-22-7-3"
class="td11">
<!--l. 162--><p class="noindent" >A LayerConnection associates a SPP to an ActorRef,
resulting in an connection of all SAPs on its instance
hierarchy. </p></td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-23-8-"><td style="white-space:nowrap; text-align:left;" id="TBL-23-8-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-23-8-2"
+ style="vertical-align:baseline;" id="TBL-22-8-"><td style="white-space:nowrap; text-align:left;" id="TBL-22-8-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-22-8-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:Attribute">Attribute</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-23-8-3"
+href="#ref:Attribute">Attribute</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-22-8-3"
class="td11">
<!--l. 163--><p class="noindent" >An Attribute is a member variable of a class </p></td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-23-9-"><td style="white-space:nowrap; text-align:left;" id="TBL-23-9-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-23-9-2"
+ style="vertical-align:baseline;" id="TBL-22-9-"><td style="white-space:nowrap; text-align:left;" id="TBL-22-9-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-22-9-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:Operation">Operation</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-23-9-3"
+href="#ref:Operation">Operation</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-22-9-3"
class="td11">
<!--l. 164--><p class="noindent" >An Operation is a member function of a class. </p></td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-23-10-"><td style="white-space:nowrap; text-align:left;" id="TBL-23-10-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-23-10-2"
+ style="vertical-align:baseline;" id="TBL-22-10-"><td style="white-space:nowrap; text-align:left;" id="TBL-22-10-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-22-10-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:StateMachine">StateMachine</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-23-10-3"
+href="#ref:StateMachine">StateMachine</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-22-10-3"
class="td11">
<!--l. 165--><p class="noindent" >A StateMachine describes the state based, event driven
behavior of an ActorClass. </p></td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-23-11-"><td style="white-space:nowrap; text-align:left;" id="TBL-23-11-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-23-11-2"
+ style="vertical-align:baseline;" id="TBL-22-11-"><td style="white-space:nowrap; text-align:left;" id="TBL-22-11-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-22-11-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:Annotation">Annotation</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-23-11-3"
+href="#ref:Annotation">Annotation</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-22-11-3"
class="td11">
<!--l. 166--><p class="noindent" >An Annotation can be attached to a ROOM classes to
apply the properties of its AnnotationType. </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-23-12-"><td style="white-space:nowrap; text-align:left;" id="TBL-23-12-1"
-class="td11"> Uses: </td><td style="white-space:nowrap; text-align:left;" id="TBL-23-12-2"
+ style="vertical-align:baseline;" id="TBL-22-12-"><td style="white-space:nowrap; text-align:left;" id="TBL-22-12-1"
+class="td11"> Uses: </td><td style="white-space:nowrap; text-align:left;" id="TBL-22-12-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:Inheritance">Inheritance</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-23-12-3"
+href="#ref:Inheritance">Inheritance</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-22-12-3"
class="td11">
<!--l. 168--><p class="noindent" >A class can specify a super class and inherits elements from
the super class hierarchy. </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-23-13-"><td style="white-space:nowrap; text-align:left;" id="TBL-23-13-1"
+ style="vertical-align:baseline;" id="TBL-22-13-"><td style="white-space:nowrap; text-align:left;" id="TBL-22-13-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-23-14-"><td style="white-space:nowrap; text-align:left;" id="TBL-23-14-1"
+ style="vertical-align:baseline;" id="TBL-22-14-"><td style="white-space:nowrap; text-align:left;" id="TBL-22-14-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-23-15-"><td style="white-space:nowrap; text-align:left;" id="TBL-23-15-1"
+ style="vertical-align:baseline;" id="TBL-22-15-"><td style="white-space:nowrap; text-align:left;" id="TBL-22-15-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-23-16-"><td style="white-space:nowrap; text-align:left;" id="TBL-23-16-1"
+ style="vertical-align:baseline;" id="TBL-22-16-"><td style="white-space:nowrap; text-align:left;" id="TBL-22-16-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-23-17-"><td style="white-space:nowrap; text-align:left;" id="TBL-23-17-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-23-17-2"
-class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-23-17-3"
+ style="vertical-align:baseline;" id="TBL-22-17-"><td style="white-space:nowrap; text-align:left;" id="TBL-22-17-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-22-17-2"
+class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-22-17-3"
class="td11">
</td></tr>
</table></div>
<!--l. 174--><p class="noindent" ><span
class="ec-lmssbx-10">Feature Usage:</span>
<a
- id="x31-173022r5"></a></p>
-<!--l. 179--><div class="longtable"> <table id="TBL-24" class="longtable"
+ id="x31-169022r5"></a></p>
+<!--l. 179--><div class="longtable"> <table id="TBL-23" class="longtable"
cellspacing="0" cellpadding="0" rules="groups"
-><colgroup id="TBL-24-1g"><col
-id="TBL-24-1" /></colgroup><colgroup id="TBL-24-2g"><col
-id="TBL-24-2" /><col
-id="TBL-24-3" /></colgroup>
+><colgroup id="TBL-23-1g"><col
+id="TBL-23-1" /></colgroup><colgroup id="TBL-23-2g"><col
+id="TBL-23-2" /><col
+id="TBL-23-3" /></colgroup>
<tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-24-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-24-1-1"
-class="td11"> Typecasts: </td><td style="white-space:nowrap; text-align:left;" id="TBL-24-1-2"
+ style="vertical-align:baseline;" id="TBL-23-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-23-1-1"
+class="td11"> Typecasts: </td><td style="white-space:nowrap; text-align:left;" id="TBL-23-1-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:ActorRef">ActorRef</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-24-1-3"
+href="#ref:ActorRef">ActorRef</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-23-1-3"
class="td11">
<!--l. 179--><p class="noindent" >An ActorRef is an instance of an ActorClass. </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-24-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-24-2-1"
-class="td11"> Is contained in: </td><td style="white-space:nowrap; text-align:left;" id="TBL-24-2-2"
+ style="vertical-align:baseline;" id="TBL-23-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-23-2-1"
+class="td11"> Is contained in: </td><td style="white-space:nowrap; text-align:left;" id="TBL-23-2-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:LogicalModel">LogicalModel</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-24-2-3"
+href="#ref:LogicalModel">LogicalModel</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-23-2-3"
class="td11">
<!--l. 181--><p class="noindent" >The LogicalModel describes the logical structure and
behavior of a ROOM application. </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-24-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-24-3-1"
+ style="vertical-align:baseline;" id="TBL-23-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-23-3-1"
+class="td11"> Is edited by: </td><td style="white-space:nowrap; text-align:left;" id="TBL-23-3-2"
+class="td11"> &#x00A0;&#x00A0;<span
+class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
+href="etrice-docse23.html#ref:GraphicalStructureEditor">GraphicalStructureEditor</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-23-3-3"
+class="td11">
+ <!--l. 183--><p class="noindent" >The Structure Editor allows to edit the ActorClass&#8217;
+ Structure in a convenient way. It is possible to create and
+ arrange actor references and ports and to create bindings
+ and layer connections. </p></td>
+</tr><tr
+class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
+ style="vertical-align:baseline;" id="TBL-23-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-23-4-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-24-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-24-4-1"
+ style="vertical-align:baseline;" id="TBL-23-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-23-5-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-24-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-24-5-1"
+ style="vertical-align:baseline;" id="TBL-23-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-23-6-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-24-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-24-6-1"
+ style="vertical-align:baseline;" id="TBL-23-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-23-7-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-24-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-24-7-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-24-7-2"
-class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-24-7-3"
+ style="vertical-align:baseline;" id="TBL-23-8-"><td style="white-space:nowrap; text-align:left;" id="TBL-23-8-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-23-8-2"
+class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-23-8-3"
class="td11">
</td></tr>
</table></div>
-<!--l. 186--><p class="noindent" ><span
+<!--l. 188--><p class="noindent" ><span
class="ec-lmssbx-10">Example:</span>
<a
- id="x31-173023r244"></a>
+ id="x31-169023r243"></a>
</p>
<h5 class="subsubsectionHead"><span class="titlemark">7.1.2.2 </span> <a
- id="x31-1740002"></a>ActorRef</h5>
-<!--l. 195--><p class="noindent" ><a
+ id="x31-1700002"></a>ActorRef</h5>
+<!--l. 197--><p class="noindent" ><a
id="ref:ActorRef"></a> An ActorRef is an instance of an ActorClass.
+
+
</p>
<ul class="itemize1">
<li class="itemize">ActorClass: The type of the ActorRef
</li>
<li class="itemize">Multiplicity: The number of instances. A number greater than one can be seen as an array of instances
-
-
</li>
<li class="itemize">Reference Type: Can be fixed or optional. Fixed requires an integer multiplicity and results in an static
instantiation with an fixed number of instances during runtime . Optional denotes an dynamic instantiation,
where ActorRefs can be created in arbitrary number during runtime. In this case, the multiplicity has to be set
to &#8217;*&#8217;</li></ul>
-<!--l. 204--><p class="noindent" ><span
+<!--l. 206--><p class="noindent" ><span
class="ec-lmssbx-10">Properties:</span> </p>
<ul class="itemize1">
<li class="itemize">multiplicity : &#8217;<span class="obeylines-h"><span class="verb"><span
class="ec-lmtt-10">1..n</span></span></span>&#8217;, &#8217;<span class="obeylines-h"><span class="verb"><span
class="ec-lmtt-10">*</span></span></span>&#8217;</li></ul>
-<!--l. 210--><p class="noindent" ><span
+<!--l. 212--><p class="noindent" ><span
class="ec-lmssbx-10">Features:</span>
<a
- id="x31-174001r6"></a></p>
-<!--l. 215--><div class="longtable"> <table id="TBL-25" class="longtable"
+ id="x31-170001r6"></a></p>
+<!--l. 217--><div class="longtable"> <table id="TBL-24" class="longtable"
cellspacing="0" cellpadding="0" rules="groups"
-><colgroup id="TBL-25-1g"><col
-id="TBL-25-1" /></colgroup><colgroup id="TBL-25-2g"><col
-id="TBL-25-2" /><col
-id="TBL-25-3" /></colgroup>
+><colgroup id="TBL-24-1g"><col
+id="TBL-24-1" /></colgroup><colgroup id="TBL-24-2g"><col
+id="TBL-24-2" /><col
+id="TBL-24-3" /></colgroup>
<tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-25-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-25-1-1"
-class="td11"> Is of type: </td><td style="white-space:nowrap; text-align:left;" id="TBL-25-1-2"
+ style="vertical-align:baseline;" id="TBL-24-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-24-1-1"
+class="td11"> Is of type: </td><td style="white-space:nowrap; text-align:left;" id="TBL-24-1-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:ActorClass">ActorClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-25-1-3"
+href="#ref:ActorClass">ActorClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-24-1-3"
class="td11">
- <!--l. 215--><p class="noindent" >An actor is the basic structural building block for building
+ <!--l. 217--><p class="noindent" >An actor is the basic structural building block for building
systems with ROOM. </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-25-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-25-2-1"
-class="td11"> Uses: </td><td style="white-space:nowrap; text-align:left;" id="TBL-25-2-2"
+ style="vertical-align:baseline;" id="TBL-24-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-24-2-1"
+class="td11"> Uses: </td><td style="white-space:nowrap; text-align:left;" id="TBL-24-2-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:Replication">Replication</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-25-2-3"
+href="#ref:Replication">Replication</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-24-2-3"
class="td11">
- <!--l. 217--><p class="noindent" >Replication is mechanism for multi instantiation for
+ <!--l. 219--><p class="noindent" >Replication is mechanism for multi instantiation for
ActorRefs and Ports. </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-25-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-25-3-1"
+ style="vertical-align:baseline;" id="TBL-24-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-24-3-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-25-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-25-4-1"
+ style="vertical-align:baseline;" id="TBL-24-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-24-4-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-25-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-25-5-1"
+ style="vertical-align:baseline;" id="TBL-24-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-24-5-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-25-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-25-6-1"
+ style="vertical-align:baseline;" id="TBL-24-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-24-6-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-25-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-25-7-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-25-7-2"
-class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-25-7-3"
+ style="vertical-align:baseline;" id="TBL-24-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-24-7-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-24-7-2"
+class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-24-7-3"
class="td11">
</td></tr>
</table></div>
-<!--l. 223--><p class="noindent" ><span
+<!--l. 225--><p class="noindent" ><span
class="ec-lmssbx-10">Feature Usage:</span>
<a
- id="x31-174002r7"></a></p>
-<!--l. 228--><div class="longtable"> <table id="TBL-26" class="longtable"
+ id="x31-170002r7"></a></p>
+<!--l. 230--><div class="longtable"> <table id="TBL-25" class="longtable"
cellspacing="0" cellpadding="0" rules="groups"
-><colgroup id="TBL-26-1g"><col
-id="TBL-26-1" /></colgroup><colgroup id="TBL-26-2g"><col
-id="TBL-26-2" /><col
-id="TBL-26-3" /></colgroup>
+><colgroup id="TBL-25-1g"><col
+id="TBL-25-1" /></colgroup><colgroup id="TBL-25-2g"><col
+id="TBL-25-2" /><col
+id="TBL-25-3" /></colgroup>
<tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-26-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-26-1-1"
-class="td11"> Is contained in: </td><td style="white-space:nowrap; text-align:left;" id="TBL-26-1-2"
+ style="vertical-align:baseline;" id="TBL-25-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-25-1-1"
+class="td11"> Is contained in: </td><td style="white-space:nowrap; text-align:left;" id="TBL-25-1-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:ActorClass">ActorClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-26-1-3"
+href="#ref:ActorClass">ActorClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-25-1-3"
class="td11">
- <!--l. 228--><p class="noindent" >An actor is the basic structural building block for building
+ <!--l. 230--><p class="noindent" >An actor is the basic structural building block for building
systems with ROOM. </p></td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-26-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-26-2-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-26-2-2"
+ style="vertical-align:baseline;" id="TBL-25-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-25-2-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-25-2-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:SubSystemClass">SubSystemClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-26-2-3"
+href="#ref:SubSystemClass">SubSystemClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-25-2-3"
class="td11">
- <!--l. 229--><p class="noindent" >A SubSystem is the topmost building block of the
+ <!--l. 231--><p class="noindent" >A SubSystem is the topmost building block of the
executable part of an system. </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-26-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-26-3-1"
+ style="vertical-align:baseline;" id="TBL-25-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-25-3-1"
+class="td11"> Is edited by: </td><td style="white-space:nowrap; text-align:left;" id="TBL-25-3-2"
+class="td11"> &#x00A0;&#x00A0;<span
+class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
+href="etrice-docse23.html#ref:GraphicalStructureEditor">GraphicalStructureEditor</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-25-3-3"
+class="td11">
+ <!--l. 233--><p class="noindent" >The Structure Editor allows to edit the ActorClass&#8217;
+ Structure in a convenient way. It is possible to create and
+ arrange actor references and ports and to create bindings
+ and layer connections. </p></td>
+</tr><tr
+ style="vertical-align:baseline;" id="TBL-25-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-25-4-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-25-4-2"
+class="td11"> &#x00A0;&#x00A0;<span
+class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
+href="etrice-docse23.html#ref:ActorRefPropertyDialog">ActorRefPropertyDialog</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-25-4-3"
+class="td11">
+ <!--l. 234--><p class="noindent" >A dialog to edit properties of an ActorRef. </p></td>
+</tr><tr
+class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
+ style="vertical-align:baseline;" id="TBL-25-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-25-5-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-26-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-26-4-1"
+ style="vertical-align:baseline;" id="TBL-25-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-25-6-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-26-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-26-5-1"
+ style="vertical-align:baseline;" id="TBL-25-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-25-7-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-26-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-26-6-1"
+ style="vertical-align:baseline;" id="TBL-25-8-"><td style="white-space:nowrap; text-align:left;" id="TBL-25-8-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-26-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-26-7-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-26-7-2"
-class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-26-7-3"
+ style="vertical-align:baseline;" id="TBL-25-9-"><td style="white-space:nowrap; text-align:left;" id="TBL-25-9-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-25-9-2"
+class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-25-9-3"
class="td11">
</td></tr>
</table></div>
-<!--l. 234--><p class="noindent" ><span
+<!--l. 239--><p class="noindent" ><span
class="ec-lmssbx-10">Example:</span>
</p>
-<!--l. 236-->
-<div class="lstlisting" id="listing-54"><span class="label"><a
- id="x31-174003r1"></a></span><span
+<!--l. 241-->
+<div class="lstlisting" id="listing-42"><span class="label"><a
+ id="x31-170003r1"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -906,7 +938,7 @@ class="ec-lmtt-9">SubSystemExample</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-174004r2"></a></span><span
+ id="x31-170004r2"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -919,9 +951,9 @@ class="ec-lmtt-9">:</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">ActorClassExample</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-174005r3"></a></span><span
+ id="x31-170005r3"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-174006r4"></a></span><span
+ id="x31-170006r4"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -930,15 +962,15 @@ class="ec-lmssbx-10x-x-90">LogicalThread</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">default_thread</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-174007r5"></a></span><span
+ id="x31-170007r5"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-174008r6"></a></span><span
+ id="x31-170008r6"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-174009r7"></a></span><span
+ id="x31-170009r7"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -948,7 +980,7 @@ class="ec-lmtt-9">ActorClassExample</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-174010r8"></a></span><span
+ id="x31-170010r8"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -957,7 +989,7 @@ class="ec-lmssbx-10x-x-90">Structure</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-174011r9"></a></span><span
+ id="x31-170011r9"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -972,7 +1004,7 @@ class="ec-lmtt-9">:</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">Sender</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-174012r10"></a></span><span
+ id="x31-170012r10"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -987,9 +1019,9 @@ class="ec-lmtt-9">:</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">Receiver</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-174013r11"></a></span><span
+ id="x31-170013r11"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-174014r12"></a></span><span
+ id="x31-170014r12"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -1008,22 +1040,22 @@ class="ec-lmtt-9">sender</span><span
class="ec-lmtt-9">.</span><span
class="ec-lmtt-9">port</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-174015r13"></a></span><span
+ id="x31-170015r13"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-174016r14"></a></span><span
+ id="x31-170016r14"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-174017r15"></a></span><span
+ id="x31-170017r15"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-174018r16"></a></span><span
+ id="x31-170018r16"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -1033,7 +1065,7 @@ class="ec-lmtt-9">ActorClassExampleReplicated</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-174019r17"></a></span><span
+ id="x31-170019r17"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -1042,7 +1074,7 @@ class="ec-lmssbx-10x-x-90">Structure</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-174020r18"></a></span><span
+ id="x31-170020r18"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -1056,7 +1088,7 @@ class="ec-lmtt-9">[3]:</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">Sender</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-174021r19"></a></span><span
+ id="x31-170021r19"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -1072,9 +1104,9 @@ class="ec-lmtt-9">:</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">Receiver</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-174022r20"></a></span><span
+ id="x31-170022r20"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-174023r21"></a></span><span
+ id="x31-170023r21"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -1093,7 +1125,7 @@ class="ec-lmtt-9">sender</span><span
class="ec-lmtt-9">.</span><span
class="ec-lmtt-9">port</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-174024r22"></a></span><span
+ id="x31-170024r22"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -1107,7 +1139,7 @@ class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">to</span><span
class="ec-lmtt-9">:</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-174025r23"></a></span><span
+ id="x31-170025r23"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -1128,7 +1160,7 @@ class="ec-lmtt-9">sender</span><span
class="ec-lmtt-9">[1].</span><span
class="ec-lmtt-9">port</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-174026r24"></a></span><span
+ id="x31-170026r24"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -1149,7 +1181,7 @@ class="ec-lmtt-9">sender</span><span
class="ec-lmtt-9">[2].</span><span
class="ec-lmtt-9">port</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-174027r25"></a></span><span
+ id="x31-170027r25"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -1160,7 +1192,7 @@ class="ec-lmtt-9">*</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">....</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-174028r26"></a></span><span
+ id="x31-170028r26"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -1169,53 +1201,55 @@ class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">*/</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-174029r27"></a></span><span
+ id="x31-170029r27"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-174030r28"></a></span><span
+ id="x31-170030r28"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span>
</div>
+
+
<hr class="figure" /><div class="figure"
>
<a
- id="x31-174031r1"></a>
+ id="x31-170031r1"></a>
-<!--l. 267--><p class="noindent" ><img
+<!--l. 272--><p class="noindent" ><img
src="images/300-ActorRefInstanceDiagram.jpg" alt="PIC"
/>
<br /> </p><div class="caption"
><span class="id">Figure&#x00A0;7.1: </span><span
-class="content">*</span></div><!--tex4ht:label?: x31-174031r1 -->
+class="content">*</span></div><!--tex4ht:label?: x31-170031r1 -->
Instance hierarchy of ActorRef Example (System(System) not shown in code snippet)
</div><hr class="endfigure" />
<a
- id="x31-174032r245"></a>
+ id="x31-170032r244"></a>
<h5 class="subsubsectionHead"><span class="titlemark">7.1.2.3 </span> <a
- id="x31-1750003"></a>Annotation</h5>
-<!--l. 276--><p class="noindent" ><a
+ id="x31-1710003"></a>Annotation</h5>
+<!--l. 281--><p class="noindent" ><a
id="ref:Annotation"></a> An Annotation can be attached to a ROOM classes to apply the properties of its AnnotationType.
-</p><!--l. 279--><p class="noindent" >It refers to an AnnotationType and may have to pass key value pairs. Its notation is similar to Java: </p><!--l. 280-->
-<div class="lstlisting" id="listing-55"><span class="label"><a
- id="x31-175001r1"></a></span><span
+</p><!--l. 284--><p class="noindent" >It refers to an AnnotationType and may have to pass key value pairs. Its notation is similar to Java: </p><!--l. 285-->
+<div class="lstlisting" id="listing-43"><span class="label"><a
+ id="x31-171001r1"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">@AnnotationType1</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-175002r2"></a></span><span
+ id="x31-171002r2"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -1233,204 +1267,214 @@ class="ec-lmtt-9">=3,</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">...)</span>
</div>
-<!--l. 285--><p class="noindent" >See section Annotations for further reading.
-</p><!--l. 289--><p class="noindent" ><span
+<!--l. 290--><p class="noindent" >See section Annotations for further reading.
+</p><!--l. 294--><p class="noindent" ><span
class="ec-lmssbx-10">Features:</span>
<a
- id="x31-175003r8"></a></p>
-<!--l. 294--><div class="longtable"> <table id="TBL-27" class="longtable"
+ id="x31-171003r8"></a></p>
+<!--l. 299--><div class="longtable"> <table id="TBL-26" class="longtable"
cellspacing="0" cellpadding="0" rules="groups"
-><colgroup id="TBL-27-1g"><col
-id="TBL-27-1" /></colgroup><colgroup id="TBL-27-2g"><col
-id="TBL-27-2" /><col
-id="TBL-27-3" /></colgroup>
+><colgroup id="TBL-26-1g"><col
+id="TBL-26-1" /></colgroup><colgroup id="TBL-26-2g"><col
+id="TBL-26-2" /><col
+id="TBL-26-3" /></colgroup>
<tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-27-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-27-1-1"
-class="td11"> Is of type: </td><td style="white-space:nowrap; text-align:left;" id="TBL-27-1-2"
+ style="vertical-align:baseline;" id="TBL-26-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-26-1-1"
+class="td11"> Is of type: </td><td style="white-space:nowrap; text-align:left;" id="TBL-26-1-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:AnnotationType">AnnotationType</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-27-1-3"
+href="#ref:AnnotationType">AnnotationType</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-26-1-3"
class="td11">
- <!--l. 294--><p class="noindent" >AnnotationTypes can be used to tag ROOM classes for
+ <!--l. 299--><p class="noindent" >AnnotationTypes can be used to tag ROOM classes for
further custom processing. </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-27-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-27-2-1"
+ style="vertical-align:baseline;" id="TBL-26-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-26-2-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-27-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-27-3-1"
+ style="vertical-align:baseline;" id="TBL-26-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-26-3-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-27-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-27-4-1"
+ style="vertical-align:baseline;" id="TBL-26-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-26-4-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-27-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-27-5-1"
+ style="vertical-align:baseline;" id="TBL-26-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-26-5-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-27-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-27-6-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-27-6-2"
-class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-27-6-3"
+ style="vertical-align:baseline;" id="TBL-26-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-26-6-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-26-6-2"
+class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-26-6-3"
class="td11">
</td></tr>
</table></div>
-<!--l. 300--><p class="noindent" ><span
+<!--l. 305--><p class="noindent" ><span
class="ec-lmssbx-10">Feature Usage:</span>
<a
- id="x31-175004r9"></a></p>
-<!--l. 305--><div class="longtable"> <table id="TBL-28" class="longtable"
+ id="x31-171004r9"></a></p>
+<!--l. 310--><div class="longtable"> <table id="TBL-27" class="longtable"
cellspacing="0" cellpadding="0" rules="groups"
-><colgroup id="TBL-28-1g"><col
-id="TBL-28-1" /></colgroup><colgroup id="TBL-28-2g"><col
-id="TBL-28-2" /><col
-id="TBL-28-3" /></colgroup>
+><colgroup id="TBL-27-1g"><col
+id="TBL-27-1" /></colgroup><colgroup id="TBL-27-2g"><col
+id="TBL-27-2" /><col
+id="TBL-27-3" /></colgroup>
<tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-28-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-28-1-1"
-class="td11"> Is contained in: </td><td style="white-space:nowrap; text-align:left;" id="TBL-28-1-2"
+ style="vertical-align:baseline;" id="TBL-27-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-27-1-1"
+class="td11"> Is contained in: </td><td style="white-space:nowrap; text-align:left;" id="TBL-27-1-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:LogicalSystem">LogicalSystem</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-28-1-3"
+href="#ref:LogicalSystem">LogicalSystem</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-27-1-3"
class="td11">
- <!--l. 305--><p class="noindent" >The LogicalSystem is the topmost structural class. It
+ <!--l. 310--><p class="noindent" >The LogicalSystem is the topmost structural class. It
assembles a distributed system by means of sub systems. </p></td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-28-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-28-2-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-28-2-2"
+ style="vertical-align:baseline;" id="TBL-27-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-27-2-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-27-2-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:ActorClass">ActorClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-28-2-3"
+href="#ref:ActorClass">ActorClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-27-2-3"
class="td11">
- <!--l. 306--><p class="noindent" >An actor is the basic structural building block for building
+ <!--l. 311--><p class="noindent" >An actor is the basic structural building block for building
systems with ROOM. </p></td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-28-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-28-3-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-28-3-2"
+ style="vertical-align:baseline;" id="TBL-27-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-27-3-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-27-3-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:SubSystemClass">SubSystemClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-28-3-3"
+href="#ref:SubSystemClass">SubSystemClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-27-3-3"
class="td11">
- <!--l. 307--><p class="noindent" >A SubSystem is the topmost building block of the
+ <!--l. 312--><p class="noindent" >A SubSystem is the topmost building block of the
executable part of an system. </p></td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-28-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-28-4-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-28-4-2"
+ style="vertical-align:baseline;" id="TBL-27-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-27-4-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-27-4-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:ProtocolClass">ProtocolClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-28-4-3"
+href="#ref:ProtocolClass">ProtocolClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-27-4-3"
class="td11">
- <!--l. 308--><p class="noindent" >A ProtocolClass defines messages and is the interface
+ <!--l. 313--><p class="noindent" >A ProtocolClass defines messages and is the interface
specification for a Port </p></td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-28-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-28-5-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-28-5-2"
+ style="vertical-align:baseline;" id="TBL-27-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-27-5-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-27-5-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:DataClass">DataClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-28-5-3"
+href="#ref:DataClass">DataClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-27-5-3"
class="td11">
- <!--l. 309--><p class="noindent" >A DataClass is a composition of Attributes. </p></td>
+ <!--l. 314--><p class="noindent" >A DataClass is a composition of Attributes. </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-28-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-28-6-1"
+ style="vertical-align:baseline;" id="TBL-27-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-27-6-1"
+class="td11"> Is used by: </td><td style="white-space:nowrap; text-align:left;" id="TBL-27-6-2"
+class="td11"> &#x00A0;&#x00A0;<span
+class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
+href="etrice-docse24.html#ref:DataLogging">DataLogging</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-27-6-3"
+class="td11">
+ <!--l. 316--><p class="noindent" >Runtime logger for data-driven Messages with primtive
+ data. </p></td>
+</tr><tr
+class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
+ style="vertical-align:baseline;" id="TBL-27-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-27-7-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-28-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-28-7-1"
+ style="vertical-align:baseline;" id="TBL-27-8-"><td style="white-space:nowrap; text-align:left;" id="TBL-27-8-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-28-8-"><td style="white-space:nowrap; text-align:left;" id="TBL-28-8-1"
+ style="vertical-align:baseline;" id="TBL-27-9-"><td style="white-space:nowrap; text-align:left;" id="TBL-27-9-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-28-9-"><td style="white-space:nowrap; text-align:left;" id="TBL-28-9-1"
+ style="vertical-align:baseline;" id="TBL-27-10-"><td style="white-space:nowrap; text-align:left;" id="TBL-27-10-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-28-10-"><td style="white-space:nowrap; text-align:left;" id="TBL-28-10-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-28-10-2"
-class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-28-10-3"
+ style="vertical-align:baseline;" id="TBL-27-11-"><td style="white-space:nowrap; text-align:left;" id="TBL-27-11-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-27-11-2"
+class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-27-11-3"
class="td11">
</td></tr>
</table></div>
-<!--l. 314--><p class="noindent" ><span
+<!--l. 321--><p class="noindent" ><span
class="ec-lmssbx-10">Example:</span>
-</p><!--l. 316--><p class="noindent" >import room.basic.annotations.* from "../../org.eclipse.etrice.modellib.c/model/Annotations.room"
-</p><!--l. 318--><p class="noindent" >ActorClass ComponentAbstraction Interface conjugated Port port1: Protocol1 Structure external Port port1 Behavior //
+</p><!--l. 323--><p class="noindent" >import room.basic.annotations.* from "../../org.eclipse.etrice.modellib.c/model/Annotations.room"
+</p><!--l. 325--><p class="noindent" >ActorClass ComponentAbstraction Interface conjugated Port port1: Protocol1 Structure external Port port1 Behavior //
custom/external state machine implementation @BehaviorManual
-<a
- id="x31-175005r247"></a>
-</p>
+<a
+ id="x31-171005r246"></a>
+</p>
<h5 class="subsubsectionHead"><span class="titlemark">7.1.2.4 </span> <a
- id="x31-1760004"></a>AnnotationType</h5>
-<!--l. 336--><p class="noindent" ><a
+ id="x31-1720004"></a>AnnotationType</h5>
+<!--l. 343--><p class="noindent" ><a
id="ref:AnnotationType"></a> AnnotationTypes can be used to tag ROOM classes for further custom processing.
-</p><!--l. 339--><p class="noindent" >They provide the ability to associate custom properties to ROOM classes, that adjust or toogle features, like generation or
+</p><!--l. 346--><p class="noindent" >They provide the ability to associate custom properties to ROOM classes, that adjust or toogle features, like generation or
the runtime behavior. eTrice has some built-in annotations, which can be found in Annotations.room within the eTrice
modellib.
-</p><!--l. 342--><p class="noindent" >See section Annotations for further reading.
-</p><!--l. 347--><p class="noindent" ><span
+</p><!--l. 349--><p class="noindent" >See section Annotations for further reading.
+</p><!--l. 354--><p class="noindent" ><span
class="ec-lmssbx-10">Feature Usage:</span>
<a
- id="x31-176001r10"></a></p>
-<!--l. 352--><div class="longtable"> <table id="TBL-29" class="longtable"
+ id="x31-172001r10"></a></p>
+<!--l. 359--><div class="longtable"> <table id="TBL-28" class="longtable"
cellspacing="0" cellpadding="0" rules="groups"
-><colgroup id="TBL-29-1g"><col
-id="TBL-29-1" /></colgroup><colgroup id="TBL-29-2g"><col
-id="TBL-29-2" /><col
-id="TBL-29-3" /></colgroup>
+><colgroup id="TBL-28-1g"><col
+id="TBL-28-1" /></colgroup><colgroup id="TBL-28-2g"><col
+id="TBL-28-2" /><col
+id="TBL-28-3" /></colgroup>
<tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-29-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-29-1-1"
-class="td11"> Typecasts: </td><td style="white-space:nowrap; text-align:left;" id="TBL-29-1-2"
+ style="vertical-align:baseline;" id="TBL-28-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-28-1-1"
+class="td11"> Typecasts: </td><td style="white-space:nowrap; text-align:left;" id="TBL-28-1-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:Annotation">Annotation</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-29-1-3"
+href="#ref:Annotation">Annotation</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-28-1-3"
class="td11">
- <!--l. 352--><p class="noindent" >An Annotation can be attached to a ROOM classes to
+ <!--l. 359--><p class="noindent" >An Annotation can be attached to a ROOM classes to
apply the properties of its AnnotationType. </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-29-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-29-2-1"
-class="td11"> Is contained in: </td><td style="white-space:nowrap; text-align:left;" id="TBL-29-2-2"
+ style="vertical-align:baseline;" id="TBL-28-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-28-2-1"
+class="td11"> Is contained in: </td><td style="white-space:nowrap; text-align:left;" id="TBL-28-2-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:LogicalModel">LogicalModel</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-29-2-3"
+href="#ref:LogicalModel">LogicalModel</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-28-2-3"
class="td11">
- <!--l. 354--><p class="noindent" >The LogicalModel describes the logical structure and
+ <!--l. 361--><p class="noindent" >The LogicalModel describes the logical structure and
behavior of a ROOM application. </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-29-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-29-3-1"
+ style="vertical-align:baseline;" id="TBL-28-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-28-3-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-29-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-29-4-1"
+ style="vertical-align:baseline;" id="TBL-28-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-28-4-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-29-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-29-5-1"
+ style="vertical-align:baseline;" id="TBL-28-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-28-5-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-29-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-29-6-1"
+ style="vertical-align:baseline;" id="TBL-28-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-28-6-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-29-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-29-7-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-29-7-2"
-class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-29-7-3"
+ style="vertical-align:baseline;" id="TBL-28-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-28-7-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-28-7-2"
+class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-28-7-3"
class="td11">
</td></tr>
</table></div>
<a
- id="x31-176002r248"></a>
+ id="x31-172002r247"></a>
<h5 class="subsubsectionHead"><span class="titlemark">7.1.2.5 </span> <a
- id="x31-1770005"></a>Attribute</h5>
-<!--l. 365--><p class="noindent" ><a
+ id="x31-1730005"></a>Attribute</h5>
+<!--l. 372--><p class="noindent" ><a
id="ref:Attribute"></a> An Attribute is a member variable of a class
-</p><!--l. 368--><p class="noindent" >An Attribute can be be used to store arbitrary data. There are two common conceptual purpose of use:
+</p><!--l. 375--><p class="noindent" >An Attribute can be be used to store arbitrary data. There are two common conceptual purpose of use:
</p>
<ul class="itemize1">
<li class="itemize">model current system state (state machine variable)
</li>
<li class="itemize">store reference to more fine-grained components (e.g. c pointer to handle)</li></ul>
-<!--l. 374--><p class="noindent" >Attributes can be defined in several ROOM classes.
-</p><!--l. 376--><p class="noindent" ><span
+<!--l. 381--><p class="noindent" >Attributes can be defined in several ROOM classes.
+</p><!--l. 383--><p class="noindent" ><span
class="ec-lmssbx-10">Properties:</span> </p>
<ul class="itemize1">
<li class="itemize">defaultValueLiteral : &#8217;<span class="obeylines-h"><span class="verb"><span
@@ -1441,121 +1485,121 @@ class="ec-lmtt-10">&#x00A0;code&#x003E;</span></span></span>&#8217;
class="ec-lmtt-10">1..n</span></span></span>&#8217;
</li>
<li class="itemize">ref :</li></ul>
-<!--l. 384--><p class="noindent" ><span
+<!--l. 391--><p class="noindent" ><span
class="ec-lmssbx-10">Features:</span>
<a
- id="x31-177001r11"></a></p>
-<!--l. 389--><div class="longtable"> <table id="TBL-30" class="longtable"
+ id="x31-173001r11"></a></p>
+<!--l. 396--><div class="longtable"> <table id="TBL-29" class="longtable"
cellspacing="0" cellpadding="0" rules="groups"
-><colgroup id="TBL-30-1g"><col
-id="TBL-30-1" /></colgroup><colgroup id="TBL-30-2g"><col
-id="TBL-30-2" /><col
-id="TBL-30-3" /></colgroup>
+><colgroup id="TBL-29-1g"><col
+id="TBL-29-1" /></colgroup><colgroup id="TBL-29-2g"><col
+id="TBL-29-2" /><col
+id="TBL-29-3" /></colgroup>
<tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-30-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-30-1-1"
-class="td11"> Is of type: </td><td style="white-space:nowrap; text-align:left;" id="TBL-30-1-2"
+ style="vertical-align:baseline;" id="TBL-29-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-29-1-1"
+class="td11"> Is of type: </td><td style="white-space:nowrap; text-align:left;" id="TBL-29-1-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:DataType">DataType</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-30-1-3"
+href="#ref:DataType">DataType</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-29-1-3"
class="td11">
- <!--l. 389--><p class="noindent" >A DataType can take 4 forms and types data elements like
+ <!--l. 396--><p class="noindent" >A DataType can take 4 forms and types data elements like
an Attribute or Operation argument. </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-30-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-30-2-1"
+ style="vertical-align:baseline;" id="TBL-29-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-29-2-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-30-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-30-3-1"
+ style="vertical-align:baseline;" id="TBL-29-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-29-3-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-30-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-30-4-1"
+ style="vertical-align:baseline;" id="TBL-29-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-29-4-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-30-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-30-5-1"
+ style="vertical-align:baseline;" id="TBL-29-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-29-5-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-30-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-30-6-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-30-6-2"
-class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-30-6-3"
+ style="vertical-align:baseline;" id="TBL-29-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-29-6-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-29-6-2"
+class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-29-6-3"
class="td11">
</td></tr>
-</table></div>
-<!--l. 395--><p class="noindent" ><span
+</table></div>
+<!--l. 402--><p class="noindent" ><span
class="ec-lmssbx-10">Feature Usage:</span>
<a
- id="x31-177002r12"></a></p>
-<!--l. 400--><div class="longtable"> <table id="TBL-31" class="longtable"
+ id="x31-173002r12"></a></p>
+<!--l. 407--><div class="longtable"> <table id="TBL-30" class="longtable"
cellspacing="0" cellpadding="0" rules="groups"
-><colgroup id="TBL-31-1g"><col
-id="TBL-31-1" /></colgroup><colgroup id="TBL-31-2g"><col
-id="TBL-31-2" /><col
-id="TBL-31-3" /></colgroup>
+><colgroup id="TBL-30-1g"><col
+id="TBL-30-1" /></colgroup><colgroup id="TBL-30-2g"><col
+id="TBL-30-2" /><col
+id="TBL-30-3" /></colgroup>
<tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-31-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-31-1-1"
-class="td11"> Is contained in: </td><td style="white-space:nowrap; text-align:left;" id="TBL-31-1-2"
+ style="vertical-align:baseline;" id="TBL-30-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-30-1-1"
+class="td11"> Is contained in: </td><td style="white-space:nowrap; text-align:left;" id="TBL-30-1-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:ActorClass">ActorClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-31-1-3"
+href="#ref:ActorClass">ActorClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-30-1-3"
class="td11">
- <!--l. 400--><p class="noindent" >An actor is the basic structural building block for building
+ <!--l. 407--><p class="noindent" >An actor is the basic structural building block for building
systems with ROOM. </p></td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-31-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-31-2-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-31-2-2"
+ style="vertical-align:baseline;" id="TBL-30-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-30-2-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-30-2-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:ProtocolClass">ProtocolClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-31-2-3"
+href="#ref:ProtocolClass">ProtocolClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-30-2-3"
class="td11">
- <!--l. 401--><p class="noindent" >A ProtocolClass defines messages and is the interface
+ <!--l. 408--><p class="noindent" >A ProtocolClass defines messages and is the interface
specification for a Port </p></td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-31-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-31-3-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-31-3-2"
+ style="vertical-align:baseline;" id="TBL-30-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-30-3-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-30-3-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:DataClass">DataClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-31-3-3"
+href="#ref:DataClass">DataClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-30-3-3"
class="td11">
- <!--l. 402--><p class="noindent" >A DataClass is a composition of Attributes. </p></td>
+ <!--l. 409--><p class="noindent" >A DataClass is a composition of Attributes. </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-31-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-31-4-1"
-class="td11"> Is used by: </td><td style="white-space:nowrap; text-align:left;" id="TBL-31-4-2"
+ style="vertical-align:baseline;" id="TBL-30-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-30-4-1"
+class="td11"> Is used by: </td><td style="white-space:nowrap; text-align:left;" id="TBL-30-4-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:ConfigModel">ConfigModel</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-31-4-3"
+href="#ref:ConfigModel">ConfigModel</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-30-4-3"
class="td11">
- <!--l. 404--><p class="noindent" >The ConfigModel describes the Attribute configuration of
+ <!--l. 411--><p class="noindent" >The ConfigModel describes the Attribute configuration of
ActorInstances and PortInstances. </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-31-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-31-5-1"
+ style="vertical-align:baseline;" id="TBL-30-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-30-5-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-31-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-31-6-1"
+ style="vertical-align:baseline;" id="TBL-30-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-30-6-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-31-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-31-7-1"
+ style="vertical-align:baseline;" id="TBL-30-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-30-7-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-31-8-"><td style="white-space:nowrap; text-align:left;" id="TBL-31-8-1"
+ style="vertical-align:baseline;" id="TBL-30-8-"><td style="white-space:nowrap; text-align:left;" id="TBL-30-8-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-31-9-"><td style="white-space:nowrap; text-align:left;" id="TBL-31-9-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-31-9-2"
-class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-31-9-3"
+ style="vertical-align:baseline;" id="TBL-30-9-"><td style="white-space:nowrap; text-align:left;" id="TBL-30-9-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-30-9-2"
+class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-30-9-3"
class="td11">
</td></tr>
</table></div>
-<!--l. 409--><p class="noindent" ><span
+<!--l. 416--><p class="noindent" ><span
class="ec-lmssbx-10">Example:</span>
</p>
-<!--l. 411-->
-<div class="lstlisting" id="listing-56"><span class="label"><a
- id="x31-177003r1"></a></span><span
+<!--l. 418-->
+<div class="lstlisting" id="listing-44"><span class="label"><a
+ id="x31-173003r1"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -1590,9 +1634,9 @@ class="ec-lmtt-9">.</span><span
class="ec-lmtt-9">room</span><span
class="ec-lmtt-9">"</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-177004r2"></a></span><span
+ id="x31-173004r2"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-177005r3"></a></span><span
+ id="x31-173005r3"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -1603,7 +1647,7 @@ class="ec-lmtt-9">SimpleDataClass</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-177006r4"></a></span><span
+ id="x31-173006r4"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -1617,7 +1661,7 @@ class="ec-lmtt-9">:</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">int16</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-177007r5"></a></span><span
+ id="x31-173007r5"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -1631,16 +1675,16 @@ class="ec-lmtt-9">:</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">uint32</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-177008r6"></a></span><span
+ id="x31-173008r6"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-177009r7"></a></span><span
+ id="x31-173009r7"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-177010r8"></a></span><span
+ id="x31-173010r8"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -1651,7 +1695,7 @@ class="ec-lmtt-9">ActorClassWithAttributes</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-177011r9"></a></span><span
+ id="x31-173011r9"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -1662,7 +1706,7 @@ class="ec-lmssbx-10x-x-90">Structure</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-177012r10"></a></span><span
+ id="x31-173012r10"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -1690,7 +1734,7 @@ class="ec-lmtt-9">"</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">]</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-177013r11"></a></span><span
+ id="x31-173013r11"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -1719,7 +1763,7 @@ class="ec-lmtt-9">"</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">]</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-177014r12"></a></span><span
+ id="x31-173014r12"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -1728,16 +1772,16 @@ class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-177015r13"></a></span><span
+ id="x31-173015r13"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-177016r14"></a></span><span
+ id="x31-173016r14"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-177017r15"></a></span><span
+ id="x31-173017r15"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -1748,7 +1792,7 @@ class="ec-lmtt-9">ActorClassWithAttributes2</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-177018r16"></a></span><span
+ id="x31-173018r16"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -1759,7 +1803,7 @@ class="ec-lmssbx-10x-x-90">Structure</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-177019r17"></a></span><span
+ id="x31-173019r17"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -1787,7 +1831,7 @@ class="ec-lmtt-9">multiplicity</span><span
class="ec-lmtt-9">"</span><span
class="ec-lmtt-9">]</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-177020r18"></a></span><span
+ id="x31-173020r18"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -1824,7 +1868,7 @@ class="ec-lmtt-9">)</span><span
class="ec-lmtt-9">"</span><span
class="ec-lmtt-9">]</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-177021r19"></a></span><span
+ id="x31-173021r19"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -1833,16 +1877,16 @@ class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-177022r20"></a></span><span
+ id="x31-173022r20"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-177023r21"></a></span><span
+ id="x31-173023r21"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-177024r22"></a></span><span
+ id="x31-173024r22"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -1853,7 +1897,7 @@ class="ec-lmtt-9">ActorClassWithAttributeInitialization</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-177025r23"></a></span><span
+ id="x31-173025r23"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -1864,7 +1908,7 @@ class="ec-lmssbx-10x-x-90">Structure</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-177026r24"></a></span><span
+ id="x31-173026r24"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -1885,7 +1929,7 @@ class="ec-lmtt-9">"</span><span
class="ec-lmtt-9">3</span><span
class="ec-lmtt-9">"</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-177027r25"></a></span><span
+ id="x31-173027r25"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -1908,7 +1952,7 @@ class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">2}</span><span
class="ec-lmtt-9">"</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-177028r26"></a></span><span
+ id="x31-173028r26"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -1939,7 +1983,7 @@ class="ec-lmtt-9">{0,0,0,</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">...}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-177029r27"></a></span><span
+ id="x31-173029r27"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -1981,7 +2025,7 @@ class="ec-lmtt-9">state</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">machine</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-177030r28"></a></span><span
+ id="x31-173030r28"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -1990,7 +2034,7 @@ class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-177031r29"></a></span><span
+ id="x31-173031r29"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -1998,18 +2042,18 @@ class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span>
</div>
<a
- id="x31-177032r249"></a>
+ id="x31-173032r248"></a>
<h5 class="subsubsectionHead"><span class="titlemark">7.1.2.6 </span> <a
- id="x31-1780006"></a>Binding</h5>
-<!--l. 448--><p class="noindent" ><a
+ id="x31-1740006"></a>Binding</h5>
+<!--l. 455--><p class="noindent" ><a
id="ref:Binding"></a> A Binding connects two Ports with each other.
-</p><!--l. 451--><p class="noindent" >In essence, a binding is a abstraction for an underlying communication channel whose function is to convey messages from
+</p><!--l. 458--><p class="noindent" >In essence, a binding is a abstraction for an underlying communication channel whose function is to convey messages from
one port to the other. The precise semantics of these channels are not defined in the Binding. Instead, they are determined by
the ProtocolClasses that are associated with the Ports at the end of the Binding.
</p>
-<!--l. 454-->
-<div class="lstlisting" id="listing-57"><span class="label"><a
- id="x31-178001r1"></a></span><span
+<!--l. 461-->
+<div class="lstlisting" id="listing-45"><span class="label"><a
+ id="x31-174001r1"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -2019,7 +2063,7 @@ class="ec-lmtt-9">ExampleActorClass</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-178002r2"></a></span><span
+ id="x31-174002r2"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -2028,7 +2072,7 @@ class="ec-lmssbx-10x-x-90">Structure</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-178003r3"></a></span><span
+ id="x31-174003r3"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -2044,7 +2088,7 @@ class="ec-lmtt-9">:</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">ProtocolClass1</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-178004r4"></a></span><span
+ id="x31-174004r4"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -2058,9 +2102,9 @@ class="ec-lmtt-9">:</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">ActorClass2</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-178005r5"></a></span><span
+ id="x31-174005r5"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-178006r6"></a></span><span
+ id="x31-174006r6"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -2077,7 +2121,7 @@ class="ec-lmtt-9">actorRef</span><span
class="ec-lmtt-9">.</span><span
class="ec-lmtt-9">receiver</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-178007r7"></a></span><span
+ id="x31-174007r7"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -2085,123 +2129,136 @@ class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-178008r8"></a></span><span
+ id="x31-174008r8"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span>
</div>
-<!--l. 467--><p class="noindent" ><span
+<!--l. 474--><p class="noindent" ><span
class="ec-lmssbx-10">Features:</span>
<a
- id="x31-178009r13"></a></p>
-<!--l. 472--><div class="longtable"> <table id="TBL-32" class="longtable"
+ id="x31-174009r13"></a></p>
+<!--l. 479--><div class="longtable"> <table id="TBL-31" class="longtable"
cellspacing="0" cellpadding="0" rules="groups"
-><colgroup id="TBL-32-1g"><col
-id="TBL-32-1" /></colgroup><colgroup id="TBL-32-2g"><col
-id="TBL-32-2" /><col
-id="TBL-32-3" /></colgroup>
+><colgroup id="TBL-31-1g"><col
+id="TBL-31-1" /></colgroup><colgroup id="TBL-31-2g"><col
+id="TBL-31-2" /><col
+id="TBL-31-3" /></colgroup>
<tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-32-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-32-1-1"
-class="td11"> Uses: </td><td style="white-space:nowrap; text-align:left;" id="TBL-32-1-2"
+ style="vertical-align:baseline;" id="TBL-31-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-31-1-1"
+class="td11"> Uses: </td><td style="white-space:nowrap; text-align:left;" id="TBL-31-1-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:Port">Port</a> : endpoint1 </td><td style="white-space:wrap; text-align:left;" id="TBL-32-1-3"
+href="#ref:Port">Port</a> : endpoint1 </td><td style="white-space:wrap; text-align:left;" id="TBL-31-1-3"
class="td11">
- <!--l. 472--><p class="noindent" >A Port is an instance of a ProtocolClass and the interface
+ <!--l. 479--><p class="noindent" >A Port is an instance of a ProtocolClass and the interface
for an ActorClass. </p></td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-32-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-32-2-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-32-2-2"
+ style="vertical-align:baseline;" id="TBL-31-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-31-2-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-31-2-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:Port">Port</a> : endpoint2 </td><td style="white-space:wrap; text-align:left;" id="TBL-32-2-3"
+href="#ref:Port">Port</a> : endpoint2 </td><td style="white-space:wrap; text-align:left;" id="TBL-31-2-3"
class="td11">
- <!--l. 473--><p class="noindent" >A Port is an instance of a ProtocolClass and the interface
+ <!--l. 480--><p class="noindent" >A Port is an instance of a ProtocolClass and the interface
for an ActorClass. </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-32-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-32-3-1"
+ style="vertical-align:baseline;" id="TBL-31-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-31-3-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-32-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-32-4-1"
+ style="vertical-align:baseline;" id="TBL-31-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-31-4-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-32-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-32-5-1"
+ style="vertical-align:baseline;" id="TBL-31-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-31-5-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-32-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-32-6-1"
+ style="vertical-align:baseline;" id="TBL-31-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-31-6-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-32-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-32-7-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-32-7-2"
-class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-32-7-3"
+ style="vertical-align:baseline;" id="TBL-31-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-31-7-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-31-7-2"
+class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-31-7-3"
class="td11">
</td></tr>
</table></div>
-<!--l. 479--><p class="noindent" ><span
+<!--l. 486--><p class="noindent" ><span
class="ec-lmssbx-10">Feature Usage:</span>
<a
- id="x31-178010r14"></a></p><!--l. 484--><div class="longtable"> <table id="TBL-33" class="longtable"
+ id="x31-174010r14"></a></p>
+<!--l. 491--><div class="longtable"> <table id="TBL-32" class="longtable"
cellspacing="0" cellpadding="0" rules="groups"
-><colgroup id="TBL-33-1g"><col
-id="TBL-33-1" /></colgroup><colgroup id="TBL-33-2g"><col
-id="TBL-33-2" /><col
-id="TBL-33-3" /></colgroup>
+><colgroup id="TBL-32-1g"><col
+id="TBL-32-1" /></colgroup><colgroup id="TBL-32-2g"><col
+id="TBL-32-2" /><col
+id="TBL-32-3" /></colgroup>
<tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-33-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-33-1-1"
-class="td11"> Is contained in: </td><td style="white-space:nowrap; text-align:left;" id="TBL-33-1-2"
+ style="vertical-align:baseline;" id="TBL-32-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-32-1-1"
+class="td11"> Is contained in: </td><td style="white-space:nowrap; text-align:left;" id="TBL-32-1-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:ActorClass">ActorClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-33-1-3"
+href="#ref:ActorClass">ActorClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-32-1-3"
class="td11">
- <!--l. 484--><p class="noindent" >An actor is the basic structural building block for building
+ <!--l. 491--><p class="noindent" >An actor is the basic structural building block for building
systems with ROOM. </p></td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-33-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-33-2-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-33-2-2"
+ style="vertical-align:baseline;" id="TBL-32-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-32-2-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-32-2-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:SubSystemClass">SubSystemClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-33-2-3"
+href="#ref:SubSystemClass">SubSystemClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-32-2-3"
class="td11">
- <!--l. 485--><p class="noindent" >A SubSystem is the topmost building block of the
+ <!--l. 492--><p class="noindent" >A SubSystem is the topmost building block of the
executable part of an system. </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-33-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-33-3-1"
+ style="vertical-align:baseline;" id="TBL-32-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-32-3-1"
+class="td11"> Is edited by: </td><td style="white-space:nowrap; text-align:left;" id="TBL-32-3-2"
+class="td11"> &#x00A0;&#x00A0;<span
+class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
+href="etrice-docse23.html#ref:GraphicalStructureEditor">GraphicalStructureEditor</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-32-3-3"
+class="td11">
+ <!--l. 494--><p class="noindent" >The Structure Editor allows to edit the ActorClass&#8217;
+ Structure in a convenient way. It is possible to create and
+ arrange actor references and ports and to create bindings
+ and layer connections. </p></td>
+</tr><tr
+class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
+ style="vertical-align:baseline;" id="TBL-32-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-32-4-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-33-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-33-4-1"
+ style="vertical-align:baseline;" id="TBL-32-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-32-5-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-33-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-33-5-1"
+ style="vertical-align:baseline;" id="TBL-32-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-32-6-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-33-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-33-6-1"
+ style="vertical-align:baseline;" id="TBL-32-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-32-7-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-33-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-33-7-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-33-7-2"
-class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-33-7-3"
+ style="vertical-align:baseline;" id="TBL-32-8-"><td style="white-space:nowrap; text-align:left;" id="TBL-32-8-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-32-8-2"
+class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-32-8-3"
class="td11">
</td></tr>
</table></div>
<a
- id="x31-178011r250"></a>
+ id="x31-174011r249"></a>
<h5 class="subsubsectionHead"><span class="titlemark">7.1.2.7 </span> <a
- id="x31-1790007"></a>CommunicationType</h5>
-<!--l. 496--><p class="noindent" ><a
+ id="x31-1750007"></a>CommunicationType</h5>
+<!--l. 505--><p class="noindent" ><a
id="ref:CommunicationType"></a> The CommunicationType defines the communication semantics of a ProtocolClass.
-</p><!--l. 499--><p class="noindent" >Since from ROOM models executable code can be generated, it is important to define the way the actors are
+</p><!--l. 508--><p class="noindent" >Since from ROOM models executable code can be generated, it is important to define the way the actors are
executed and communicate with each other. The combination of communication and execution is called the
<span
class="ec-lmsso-10">execution model</span>. Therefore the ExecutionType of an actor and the CommunicationType of the ports has to be
considered.
-</p><!--l. 503--><p class="noindent" >The CommunicationType of a ProtocolClass (and thus of a Port) specifies in which way the communication should
+</p><!--l. 512--><p class="noindent" >The CommunicationType of a ProtocolClass (and thus of a Port) specifies in which way the communication should
happen:
</p>
<ul class="itemize1">
@@ -2220,75 +2277,75 @@ class="ec-lmssbo-10">function call </span><span
class="ec-lmsso-10">&#8211; synchronous, blocking, return value:</span><br
class="newline" /><span
class="ec-lmsso-10">Regular function call as known in most programming languages. </span>(not supported yet)</li></ul>
-<!--l. 514--><p class="noindent" >CommunicationType relates with the <a
+<!--l. 523--><p class="noindent" >CommunicationType relates with the <a
href="#ref:ExecutionType">ExecutionType</a> of an ActorClass, e.g. a data-driven port needs a cyclic thread, that polls
the shared data.
-</p><!--l. 516--><p class="noindent" ><span
+</p><!--l. 525--><p class="noindent" ><span
class="ec-lmssbx-10">Properties:</span> </p>
<ul class="itemize1">
<li class="itemize">type : &#8217;<span class="obeylines-h"><span class="verb"><span
class="ec-lmtt-10">eventdriven</span></span></span>&#8217;, &#8217;<span class="obeylines-h"><span class="verb"><span
class="ec-lmtt-10">datadriven</span></span></span>&#8217;, &#8217;<span class="obeylines-h"><span class="verb"><span
class="ec-lmtt-10">sync</span></span></span>&#8217;</li></ul>
-<!--l. 523--><p class="noindent" ><span
+<!--l. 532--><p class="noindent" ><span
class="ec-lmssbx-10">Feature Usage:</span>
<a
- id="x31-179001r15"></a></p>
-<!--l. 528--><div class="longtable"> <table id="TBL-34" class="longtable"
+ id="x31-175001r15"></a></p>
+<!--l. 537--><div class="longtable"> <table id="TBL-33" class="longtable"
cellspacing="0" cellpadding="0" rules="groups"
-><colgroup id="TBL-34-1g"><col
-id="TBL-34-1" /></colgroup><colgroup id="TBL-34-2g"><col
-id="TBL-34-2" /><col
-id="TBL-34-3" /></colgroup>
+><colgroup id="TBL-33-1g"><col
+id="TBL-33-1" /></colgroup><colgroup id="TBL-33-2g"><col
+id="TBL-33-2" /><col
+id="TBL-33-3" /></colgroup>
+
+
<tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-34-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-34-1-1"
-class="td11"> Is contained in: </td><td style="white-space:nowrap; text-align:left;" id="TBL-34-1-2"
+ style="vertical-align:baseline;" id="TBL-33-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-33-1-1"
+class="td11"> Is contained in: </td><td style="white-space:nowrap; text-align:left;" id="TBL-33-1-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:ProtocolClass">ProtocolClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-34-1-3"
+href="#ref:ProtocolClass">ProtocolClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-33-1-3"
class="td11">
- <!--l. 528--><p class="noindent" >A ProtocolClass defines messages and is the interface
+ <!--l. 537--><p class="noindent" >A ProtocolClass defines messages and is the interface
specification for a Port </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-34-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-34-2-1"
-class="td11"> Is used by: </td><td style="white-space:nowrap; text-align:left;" id="TBL-34-2-2"
+ style="vertical-align:baseline;" id="TBL-33-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-33-2-1"
+class="td11"> Is used by: </td><td style="white-space:nowrap; text-align:left;" id="TBL-33-2-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:ExecutionType">ExecutionType</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-34-2-3"
+href="#ref:ExecutionType">ExecutionType</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-33-2-3"
class="td11">
- <!--l. 530--><p class="noindent" >Determines the execution type of an actor. </p></td>
+ <!--l. 539--><p class="noindent" >Determines the execution type of an actor. </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-34-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-34-3-1"
+ style="vertical-align:baseline;" id="TBL-33-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-33-3-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-34-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-34-4-1"
+ style="vertical-align:baseline;" id="TBL-33-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-33-4-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-34-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-34-5-1"
+ style="vertical-align:baseline;" id="TBL-33-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-33-5-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-34-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-34-6-1"
+ style="vertical-align:baseline;" id="TBL-33-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-33-6-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-34-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-34-7-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-34-7-2"
-class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-34-7-3"
+ style="vertical-align:baseline;" id="TBL-33-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-33-7-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-33-7-2"
+class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-33-7-3"
class="td11">
</td></tr>
-
-
</table></div>
-<!--l. 535--><p class="noindent" ><span
+<!--l. 544--><p class="noindent" ><span
class="ec-lmssbx-10">Example:</span>
</p>
-<!--l. 537-->
-<div class="lstlisting" id="listing-58"><span class="label"><a
- id="x31-179002r1"></a></span><span
+<!--l. 546-->
+<div class="lstlisting" id="listing-46"><span class="label"><a
+ id="x31-175002r1"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-179003r2"></a></span><span
+ id="x31-175003r2"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -2323,9 +2380,9 @@ class="ec-lmtt-9">.</span><span
class="ec-lmtt-9">room</span><span
class="ec-lmtt-9">"</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-179004r3"></a></span><span
+ id="x31-175004r3"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-179005r4"></a></span><span
+ id="x31-175005r4"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -2348,7 +2405,7 @@ class="ec-lmtt-9">]</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-179006r5"></a></span><span
+ id="x31-175006r5"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -2368,7 +2425,7 @@ class="ec-lmtt-9">EventdrivenProtocolClass</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-179007r6"></a></span><span
+ id="x31-175007r6"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -2379,7 +2436,7 @@ class="ec-lmssbx-10x-x-90">incoming</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-179008r7"></a></span><span
+ id="x31-175008r7"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -2402,7 +2459,7 @@ class="ec-lmtt-9">data</span><span
class="ec-lmtt-9">"</span><span
class="ec-lmtt-9">]</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-179009r8"></a></span><span
+ id="x31-175009r8"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -2430,7 +2487,7 @@ class="ec-lmtt-9">data</span><span
class="ec-lmtt-9">"</span><span
class="ec-lmtt-9">]</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-179010r9"></a></span><span
+ id="x31-175010r9"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -2439,7 +2496,7 @@ class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-179011r10"></a></span><span
+ id="x31-175011r10"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -2450,7 +2507,7 @@ class="ec-lmssbx-10x-x-90">outgoing</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-179012r11"></a></span><span
+ id="x31-175012r11"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -2483,7 +2540,7 @@ class="ec-lmtt-9">directions</span><span
class="ec-lmtt-9">"</span><span
class="ec-lmtt-9">]</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-179013r12"></a></span><span
+ id="x31-175013r12"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -2492,16 +2549,16 @@ class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-179014r13"></a></span><span
+ id="x31-175014r13"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-179015r14"></a></span><span
+ id="x31-175015r14"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-179016r15"></a></span><span
+ id="x31-175016r15"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -2514,7 +2571,7 @@ class="ec-lmtt-9">DatadrivenProtocolClass</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-179017r16"></a></span><span
+ id="x31-175017r16"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -2525,7 +2582,7 @@ class="ec-lmssbx-10x-x-90">incoming</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-179018r17"></a></span><span
+ id="x31-175018r17"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -2558,7 +2615,7 @@ class="ec-lmtt-9">data</span><span
class="ec-lmtt-9">"</span><span
class="ec-lmtt-9">]</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-179019r18"></a></span><span
+ id="x31-175019r18"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -2567,7 +2624,7 @@ class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-179020r19"></a></span><span
+ id="x31-175020r19"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -2594,16 +2651,16 @@ class="ec-lmtt-9">(</span><span
class="ec-lmtt-9">signals</span><span
class="ec-lmtt-9">)</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-179021r20"></a></span><span
+ id="x31-175021r20"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-179022r21"></a></span><span
+ id="x31-175022r21"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-179023r22"></a></span><span
+ id="x31-175023r22"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -2620,7 +2677,7 @@ class="ec-lmtt-9">supported</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">yet</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-179024r23"></a></span><span
+ id="x31-175024r23"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -2634,14 +2691,14 @@ class="ec-lmtt-9">SyncProtcolClass</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-179025r24"></a></span><span
+ id="x31-175025r24"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">//</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-179026r25"></a></span><span
+ id="x31-175026r25"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -2650,17 +2707,17 @@ class="ec-lmtt-9">//</span><span
class="ec-lmtt-9">}</span>
</div>
<a
- id="x31-179027r251"></a>
+ id="x31-175027r250"></a>
<h5 class="subsubsectionHead"><span class="titlemark">7.1.2.8 </span> <a
- id="x31-1800008"></a>DataClass</h5>
-<!--l. 570--><p class="noindent" ><a
+ id="x31-1760008"></a>DataClass</h5>
+<!--l. 579--><p class="noindent" ><a
id="ref:DataClass"></a> A DataClass is a composition of Attributes.
-</p><!--l. 573--><p class="noindent" >Intended to model a type that primarily consists of data, which is usually grouped together in some manner. DataClasses
+</p><!--l. 582--><p class="noindent" >Intended to model a type that primarily consists of data, which is usually grouped together in some manner. DataClasses
roughly translate to Java classes without interaction or C structs.
</p>
-<!--l. 575-->
-<div class="lstlisting" id="listing-59"><span class="label"><a
- id="x31-180001r1"></a></span><span
+<!--l. 584-->
+<div class="lstlisting" id="listing-47"><span class="label"><a
+ id="x31-176001r1"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmssbx-10x-x-90">DataClass</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -2668,7 +2725,7 @@ class="ec-lmtt-9">TCPConnectionData</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-180002r2"></a></span><span
+ id="x31-176002r2"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -2679,7 +2736,7 @@ class="ec-lmtt-9">:</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">string</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-180003r3"></a></span><span
+ id="x31-176003r3"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -2690,92 +2747,92 @@ class="ec-lmtt-9">:</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">int32</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-180004r4"></a></span><span
+ id="x31-176004r4"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span>
</div>
-<!--l. 584--><p class="noindent" ><span
+<!--l. 593--><p class="noindent" ><span
class="ec-lmssbx-10">Features:</span>
<a
- id="x31-180005r16"></a></p>
-<!--l. 589--><div class="longtable"> <table id="TBL-35" class="longtable"
+ id="x31-176005r16"></a></p>
+<!--l. 598--><div class="longtable"> <table id="TBL-34" class="longtable"
cellspacing="0" cellpadding="0" rules="groups"
-><colgroup id="TBL-35-1g"><col
-id="TBL-35-1" /></colgroup><colgroup id="TBL-35-2g"><col
-id="TBL-35-2" /><col
-id="TBL-35-3" /></colgroup>
+><colgroup id="TBL-34-1g"><col
+id="TBL-34-1" /></colgroup><colgroup id="TBL-34-2g"><col
+id="TBL-34-2" /><col
+id="TBL-34-3" /></colgroup>
<tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-35-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-35-1-1"
-class="td11"> Is a: </td><td style="white-space:nowrap; text-align:left;" id="TBL-35-1-2"
+ style="vertical-align:baseline;" id="TBL-34-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-34-1-1"
+class="td11"> Is a: </td><td style="white-space:nowrap; text-align:left;" id="TBL-34-1-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:DataType">DataType</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-35-1-3"
+href="#ref:DataType">DataType</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-34-1-3"
class="td11">
- <!--l. 589--><p class="noindent" >A DataType can take 4 forms and types data elements like
+ <!--l. 598--><p class="noindent" >A DataType can take 4 forms and types data elements like
an Attribute or Operation argument. </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-35-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-35-2-1"
-class="td11"> Contains: </td><td style="white-space:nowrap; text-align:left;" id="TBL-35-2-2"
+ style="vertical-align:baseline;" id="TBL-34-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-34-2-1"
+class="td11"> Contains: </td><td style="white-space:nowrap; text-align:left;" id="TBL-34-2-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:Attribute">Attribute</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-35-2-3"
+href="#ref:Attribute">Attribute</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-34-2-3"
class="td11">
- <!--l. 591--><p class="noindent" >An Attribute is a member variable of a class </p></td>
+ <!--l. 600--><p class="noindent" >An Attribute is a member variable of a class </p></td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-35-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-35-3-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-35-3-2"
+ style="vertical-align:baseline;" id="TBL-34-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-34-3-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-34-3-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:Operation">Operation</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-35-3-3"
+href="#ref:Operation">Operation</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-34-3-3"
class="td11">
- <!--l. 592--><p class="noindent" >An Operation is a member function of a class. </p></td>
+ <!--l. 601--><p class="noindent" >An Operation is a member function of a class. </p></td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-35-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-35-4-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-35-4-2"
+ style="vertical-align:baseline;" id="TBL-34-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-34-4-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-34-4-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:Annotation">Annotation</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-35-4-3"
+href="#ref:Annotation">Annotation</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-34-4-3"
class="td11">
- <!--l. 593--><p class="noindent" >An Annotation can be attached to a ROOM classes to
+ <!--l. 602--><p class="noindent" >An Annotation can be attached to a ROOM classes to
apply the properties of its AnnotationType. </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-35-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-35-5-1"
-class="td11"> Uses: </td><td style="white-space:nowrap; text-align:left;" id="TBL-35-5-2"
+ style="vertical-align:baseline;" id="TBL-34-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-34-5-1"
+class="td11"> Uses: </td><td style="white-space:nowrap; text-align:left;" id="TBL-34-5-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:Inheritance">Inheritance</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-35-5-3"
+href="#ref:Inheritance">Inheritance</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-34-5-3"
class="td11">
- <!--l. 595--><p class="noindent" >A class can specify a super class and inherits elements from
+ <!--l. 604--><p class="noindent" >A class can specify a super class and inherits elements from
the super class hierarchy. </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-35-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-35-6-1"
+ style="vertical-align:baseline;" id="TBL-34-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-34-6-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-35-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-35-7-1"
+ style="vertical-align:baseline;" id="TBL-34-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-34-7-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-35-8-"><td style="white-space:nowrap; text-align:left;" id="TBL-35-8-1"
+ style="vertical-align:baseline;" id="TBL-34-8-"><td style="white-space:nowrap; text-align:left;" id="TBL-34-8-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-35-9-"><td style="white-space:nowrap; text-align:left;" id="TBL-35-9-1"
+ style="vertical-align:baseline;" id="TBL-34-9-"><td style="white-space:nowrap; text-align:left;" id="TBL-34-9-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-35-10-"><td style="white-space:nowrap; text-align:left;" id="TBL-35-10-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-35-10-2"
-class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-35-10-3"
+ style="vertical-align:baseline;" id="TBL-34-10-"><td style="white-space:nowrap; text-align:left;" id="TBL-34-10-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-34-10-2"
+class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-34-10-3"
class="td11">
</td></tr>
</table></div>
-<!--l. 601--><p class="noindent" ><span
+<!--l. 610--><p class="noindent" ><span
class="ec-lmssbx-10">Example:</span>
</p>
-<!--l. 603-->
-<div class="lstlisting" id="listing-60"><span class="label"><a
- id="x31-180006r1"></a></span><span
+<!--l. 612-->
+<div class="lstlisting" id="listing-48"><span class="label"><a
+ id="x31-176006r1"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -2785,7 +2842,7 @@ class="ec-lmtt-9">SimpleDataClass</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-180007r2"></a></span><span
+ id="x31-176007r2"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -2797,7 +2854,7 @@ class="ec-lmtt-9">:</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">uint16</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-180008r3"></a></span><span
+ id="x31-176008r3"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -2809,15 +2866,15 @@ class="ec-lmtt-9">:</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">uint32</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-180009r4"></a></span><span
+ id="x31-176009r4"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-180010r5"></a></span><span
+ id="x31-176010r5"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-180011r6"></a></span><span
+ id="x31-176011r6"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -2827,7 +2884,7 @@ class="ec-lmtt-9">DataClassExample</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-180012r7"></a></span><span
+ id="x31-176012r7"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -2839,7 +2896,7 @@ class="ec-lmtt-9">:</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">uint32</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-180013r8"></a></span><span
+ id="x31-176013r8"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -2851,7 +2908,7 @@ class="ec-lmtt-9">:</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">SimpleDataClass</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-180014r9"></a></span><span
+ id="x31-176014r9"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -2865,9 +2922,9 @@ class="ec-lmtt-9">voidType</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmssbx-10x-x-90">ref</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-180015r10"></a></span><span
+ id="x31-176015r10"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-180016r11"></a></span><span
+ id="x31-176016r11"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -2893,7 +2950,7 @@ class="ec-lmtt-9">boolean</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-180017r12"></a></span><span
+ id="x31-176017r12"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -2907,178 +2964,180 @@ class="ec-lmtt-9">true</span><span
class="ec-lmtt-9">;</span><span
class="ec-lmtt-9">"</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-180018r13"></a></span><span
+ id="x31-176018r13"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-180019r14"></a></span><span
+ id="x31-176019r14"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span>
+
+
</div>
<a
- id="x31-180020r252"></a>
+ id="x31-176020r251"></a>
<h5 class="subsubsectionHead"><span class="titlemark">7.1.2.9 </span> <a
- id="x31-1810009"></a>DataType</h5>
-<!--l. 625--><p class="noindent" ><a
+ id="x31-1770009"></a>DataType</h5>
+<!--l. 634--><p class="noindent" ><a
id="ref:DataType"></a> A DataType can take 4 forms and types data elements like an Attribute or Operation argument.
-
-
-</p><!--l. 632--><p class="noindent" ><span
+</p><!--l. 641--><p class="noindent" ><span
class="ec-lmssbx-10">Feature Usage:</span>
<a
- id="x31-181001r17"></a></p>
-<!--l. 637--><div class="longtable"> <table id="TBL-36" class="longtable"
+ id="x31-177001r17"></a></p>
+<!--l. 646--><div class="longtable"> <table id="TBL-35" class="longtable"
cellspacing="0" cellpadding="0" rules="groups"
-><colgroup id="TBL-36-1g"><col
-id="TBL-36-1" /></colgroup><colgroup id="TBL-36-2g"><col
-id="TBL-36-2" /><col
-id="TBL-36-3" /></colgroup>
+><colgroup id="TBL-35-1g"><col
+id="TBL-35-1" /></colgroup><colgroup id="TBL-35-2g"><col
+id="TBL-35-2" /><col
+id="TBL-35-3" /></colgroup>
<tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-36-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-36-1-1"
-class="td11"> Inheriting features: </td><td style="white-space:nowrap; text-align:left;" id="TBL-36-1-2"
+ style="vertical-align:baseline;" id="TBL-35-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-35-1-1"
+class="td11"> Inheriting features: </td><td style="white-space:nowrap; text-align:left;" id="TBL-35-1-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:PrimitiveType">PrimitiveType</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-36-1-3"
+href="#ref:PrimitiveType">PrimitiveType</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-35-1-3"
class="td11">
- <!--l. 637--><p class="noindent" >A PrimitiveType is an abstraction of a target language&#8217;s
+ <!--l. 646--><p class="noindent" >A PrimitiveType is an abstraction of a target language&#8217;s
basic type (e.g. integer or boolean). </p></td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-36-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-36-2-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-36-2-2"
+ style="vertical-align:baseline;" id="TBL-35-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-35-2-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-35-2-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:Enumeration">Enumeration</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-36-2-3"
+href="#ref:Enumeration">Enumeration</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-35-2-3"
class="td11">
- <!--l. 638--><p class="noindent" >An EnumerationType declares an enumeration similar to
+ <!--l. 647--><p class="noindent" >An EnumerationType declares an enumeration similar to
most well-known languages. </p></td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-36-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-36-3-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-36-3-2"
+ style="vertical-align:baseline;" id="TBL-35-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-35-3-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-35-3-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:DataClass">DataClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-36-3-3"
+href="#ref:DataClass">DataClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-35-3-3"
class="td11">
- <!--l. 639--><p class="noindent" >A DataClass is a composition of Attributes. </p></td>
+ <!--l. 648--><p class="noindent" >A DataClass is a composition of Attributes. </p></td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-36-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-36-4-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-36-4-2"
+ style="vertical-align:baseline;" id="TBL-35-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-35-4-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-35-4-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:ExternalType">ExternalType</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-36-4-3"
+href="#ref:ExternalType">ExternalType</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-35-4-3"
class="td11">
- <!--l. 640--><p class="noindent" >An ExternalType is used to make an target language type
+ <!--l. 649--><p class="noindent" >An ExternalType is used to make an target language type
accessible in ROOM. </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-36-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-36-5-1"
-class="td11"> Typecasts: </td><td style="white-space:nowrap; text-align:left;" id="TBL-36-5-2"
+ style="vertical-align:baseline;" id="TBL-35-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-35-5-1"
+class="td11"> Typecasts: </td><td style="white-space:nowrap; text-align:left;" id="TBL-35-5-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:Attribute">Attribute</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-36-5-3"
+href="#ref:Attribute">Attribute</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-35-5-3"
class="td11">
- <!--l. 642--><p class="noindent" >An Attribute is a member variable of a class </p></td>
+ <!--l. 651--><p class="noindent" >An Attribute is a member variable of a class </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-36-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-36-6-1"
-class="td11"> Is contained in: </td><td style="white-space:nowrap; text-align:left;" id="TBL-36-6-2"
+ style="vertical-align:baseline;" id="TBL-35-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-35-6-1"
+class="td11"> Is contained in: </td><td style="white-space:nowrap; text-align:left;" id="TBL-35-6-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:LogicalModel">LogicalModel</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-36-6-3"
+href="#ref:LogicalModel">LogicalModel</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-35-6-3"
class="td11">
- <!--l. 644--><p class="noindent" >The LogicalModel describes the logical structure and
+ <!--l. 653--><p class="noindent" >The LogicalModel describes the logical structure and
behavior of a ROOM application. </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-36-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-36-7-1"
-class="td11"> Is used by: </td><td style="white-space:nowrap; text-align:left;" id="TBL-36-7-2"
+ style="vertical-align:baseline;" id="TBL-35-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-35-7-1"
+class="td11"> Is used by: </td><td style="white-space:nowrap; text-align:left;" id="TBL-35-7-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:Operation">Operation</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-36-7-3"
+href="#ref:Operation">Operation</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-35-7-3"
class="td11">
- <!--l. 646--><p class="noindent" >An Operation is a member function of a class. </p></td>
+ <!--l. 655--><p class="noindent" >An Operation is a member function of a class. </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-36-8-"><td style="white-space:nowrap; text-align:left;" id="TBL-36-8-1"
+ style="vertical-align:baseline;" id="TBL-35-8-"><td style="white-space:nowrap; text-align:left;" id="TBL-35-8-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-36-9-"><td style="white-space:nowrap; text-align:left;" id="TBL-36-9-1"
+ style="vertical-align:baseline;" id="TBL-35-9-"><td style="white-space:nowrap; text-align:left;" id="TBL-35-9-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-36-10-"><td style="white-space:nowrap; text-align:left;" id="TBL-36-10-1"
+ style="vertical-align:baseline;" id="TBL-35-10-"><td style="white-space:nowrap; text-align:left;" id="TBL-35-10-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-36-11-"><td style="white-space:nowrap; text-align:left;" id="TBL-36-11-1"
+ style="vertical-align:baseline;" id="TBL-35-11-"><td style="white-space:nowrap; text-align:left;" id="TBL-35-11-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-36-12-"><td style="white-space:nowrap; text-align:left;" id="TBL-36-12-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-36-12-2"
-class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-36-12-3"
+ style="vertical-align:baseline;" id="TBL-35-12-"><td style="white-space:nowrap; text-align:left;" id="TBL-35-12-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-35-12-2"
+class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-35-12-3"
class="td11">
</td></tr>
</table></div>
<a
- id="x31-181002r253"></a>
+ id="x31-177002r252"></a>
<h5 class="subsubsectionHead"><span class="titlemark">7.1.2.10 </span> <a
- id="x31-18200010"></a>Enumeration</h5>
-<!--l. 657--><p class="noindent" ><a
+ id="x31-17800010"></a>Enumeration</h5>
+<!--l. 666--><p class="noindent" ><a
id="ref:Enumeration"></a> An EnumerationType declares an enumeration similar to most well-known languages.
-</p><!--l. 661--><p class="noindent" ><span
+</p><!--l. 670--><p class="noindent" ><span
class="ec-lmssbx-10">Properties:</span> </p>
<ul class="itemize1">
<li class="itemize">literals : &#8217;<span class="obeylines-h"><span class="verb"><span
class="ec-lmtt-10">&#x003C;name&#x003E;</span></span></span>&#8217;</li></ul>
-<!--l. 667--><p class="noindent" ><span
+<!--l. 676--><p class="noindent" ><span
class="ec-lmssbx-10">Features:</span>
<a
- id="x31-182001r18"></a></p>
-<!--l. 672--><div class="longtable"> <table id="TBL-37" class="longtable"
+ id="x31-178001r18"></a></p>
+<!--l. 681--><div class="longtable"> <table id="TBL-36" class="longtable"
cellspacing="0" cellpadding="0" rules="groups"
-><colgroup id="TBL-37-1g"><col
-id="TBL-37-1" /></colgroup><colgroup id="TBL-37-2g"><col
-id="TBL-37-2" /><col
-id="TBL-37-3" /></colgroup>
+><colgroup id="TBL-36-1g"><col
+id="TBL-36-1" /></colgroup><colgroup id="TBL-36-2g"><col
+id="TBL-36-2" /><col
+id="TBL-36-3" /></colgroup>
<tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-37-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-37-1-1"
-class="td11"> Is a: </td><td style="white-space:nowrap; text-align:left;" id="TBL-37-1-2"
+ style="vertical-align:baseline;" id="TBL-36-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-36-1-1"
+class="td11"> Is a: </td><td style="white-space:nowrap; text-align:left;" id="TBL-36-1-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:DataType">DataType</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-37-1-3"
+href="#ref:DataType">DataType</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-36-1-3"
class="td11">
- <!--l. 672--><p class="noindent" >A DataType can take 4 forms and types data elements like
+ <!--l. 681--><p class="noindent" >A DataType can take 4 forms and types data elements like
an Attribute or Operation argument. </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-37-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-37-2-1"
+ style="vertical-align:baseline;" id="TBL-36-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-36-2-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-37-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-37-3-1"
+ style="vertical-align:baseline;" id="TBL-36-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-36-3-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-37-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-37-4-1"
+ style="vertical-align:baseline;" id="TBL-36-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-36-4-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-37-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-37-5-1"
+ style="vertical-align:baseline;" id="TBL-36-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-36-5-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-37-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-37-6-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-37-6-2"
-class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-37-6-3"
+ style="vertical-align:baseline;" id="TBL-36-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-36-6-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-36-6-2"
+class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-36-6-3"
class="td11">
</td></tr>
</table></div>
-<!--l. 678--><p class="noindent" ><span
+<!--l. 687--><p class="noindent" ><span
class="ec-lmssbx-10">Example:</span>
</p>
-<!--l. 680-->
-<div class="lstlisting" id="listing-61"><span class="label"><a
- id="x31-182002r1"></a></span><span
+<!--l. 689-->
+
+
+<div class="lstlisting" id="listing-49"><span class="label"><a
+ id="x31-178002r1"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -3088,7 +3147,7 @@ class="ec-lmtt-9">EOnOff</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-182003r2"></a></span><span
+ id="x31-178003r2"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -3106,7 +3165,7 @@ class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">value</span><span
class="ec-lmtt-9">=0</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-182004r3"></a></span><span
+ id="x31-178004r3"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -3124,15 +3183,15 @@ class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">value</span><span
class="ec-lmtt-9">=1</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-182005r4"></a></span><span
+ id="x31-178005r4"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-182006r5"></a></span><span
+ id="x31-178006r5"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-182007r6"></a></span><span
+ id="x31-178007r6"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -3142,7 +3201,7 @@ class="ec-lmtt-9">EDay</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-182008r7"></a></span><span
+ id="x31-178008r7"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -3150,7 +3209,7 @@ class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">SUN</span><span
class="ec-lmtt-9">,</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-182009r8"></a></span><span
+ id="x31-178009r8"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -3158,7 +3217,7 @@ class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">MON</span><span
class="ec-lmtt-9">,</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-182010r9"></a></span><span
+ id="x31-178010r9"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -3166,7 +3225,7 @@ class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">TUE</span><span
class="ec-lmtt-9">,</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-182011r10"></a></span><span
+ id="x31-178011r10"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -3174,7 +3233,7 @@ class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">WED</span><span
class="ec-lmtt-9">,</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-182012r11"></a></span><span
+ id="x31-178012r11"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -3182,7 +3241,7 @@ class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">THU</span><span
class="ec-lmtt-9">,</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-182013r12"></a></span><span
+ id="x31-178013r12"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -3190,7 +3249,7 @@ class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">FRI</span><span
class="ec-lmtt-9">,</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-182014r13"></a></span><span
+ id="x31-178014r13"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -3205,26 +3264,24 @@ class="ec-lmtt-9">enumeration</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">0..6</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-182015r14"></a></span><span
+ id="x31-178015r14"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span>
</div>
<a
- id="x31-182016r254"></a>
-
-
+ id="x31-178016r253"></a>
<h5 class="subsubsectionHead"><span class="titlemark">7.1.2.11 </span> <a
- id="x31-18300011"></a>ExecutionType</h5>
-<!--l. 702--><p class="noindent" ><a
+ id="x31-17900011"></a>ExecutionType</h5>
+<!--l. 711--><p class="noindent" ><a
id="ref:ExecutionType"></a> Determines the execution type of an actor.
-</p><!--l. 705--><p class="noindent" >Since from ROOM models executable code can be generated, it is important to define the way the actors are
+</p><!--l. 714--><p class="noindent" >Since from ROOM models executable code can be generated, it is important to define the way the actors are
executed and communicate with each other. The combination of communication and execution is called the
<span
class="ec-lmsso-10">execution model</span>. Therefore the ExecutionType of an actor and the CommunicationType of the ports has to be
considered.
-</p><!--l. 709--><p class="noindent" >The ExecutionType of an ActorClass specifies in which way its instance (ActorRef) should be executed: </p>
+</p><!--l. 718--><p class="noindent" >The ExecutionType of an ActorClass specifies in which way its instance (ActorRef) should be executed: </p>
<ul class="itemize1">
<li class="itemize"><span
class="ec-lmssbx-10">execution by receive event</span>: The message queue or the event dispatcher calls a <span
@@ -3241,15 +3298,15 @@ class="ec-lmsso-10">: The caller executes the called object via function call </
</li>
<li class="itemize"><span
class="ec-lmssbx-10">mixture</span>: An asynchronous execution combines an event dispachter and a polled execution.</li></ul>
-<!--l. 718--><p class="noindent" >Thereby the ExecutionType determines the execution mode of the actor&#8217;s logical thread: <img
+<!--l. 727--><p class="noindent" >Thereby the ExecutionType determines the execution mode of the actor&#8217;s logical thread: <img
src="images/010-RoomIntroduction03.png" alt="PIC"
/>
-</p><!--l. 721--><p class="noindent" >The actual execution of the underlying physical thread can be specified in the PhysicalModel in conjunction with the
+</p><!--l. 730--><p class="noindent" >The actual execution of the underlying physical thread can be specified in the PhysicalModel in conjunction with the
MappingModel.
-</p><!--l. 723--><p class="noindent" >ExecutionType relates to the <a
+</p><!--l. 732--><p class="noindent" >ExecutionType relates to the <a
href="#ref:CommunicationType">CommunicationType</a>, e.g. if an actor uses data-driven ports, it should support an polled
execution.
-</p><!--l. 725--><p class="noindent" ><span
+</p><!--l. 734--><p class="noindent" ><span
class="ec-lmssbx-10">Properties:</span> </p>
<ul class="itemize1">
<li class="itemize">mode : &#8217;<span class="obeylines-h"><span class="verb"><span
@@ -3257,92 +3314,94 @@ class="ec-lmtt-10">eventdriven</span></span></span>&#8217;, &#8217;<span class="
class="ec-lmtt-10">datadriven</span></span></span>&#8217;, &#8217;<span class="obeylines-h"><span class="verb"><span
class="ec-lmtt-10">async</span></span></span>&#8217;, &#8217;<span class="obeylines-h"><span class="verb"><span
class="ec-lmtt-10">sync</span></span></span>&#8217;</li></ul>
-<!--l. 731--><p class="noindent" ><span
+<!--l. 740--><p class="noindent" ><span
class="ec-lmssbx-10">Features:</span>
<a
- id="x31-183001r19"></a></p>
-<!--l. 736--><div class="longtable"> <table id="TBL-38" class="longtable"
+ id="x31-179001r19"></a></p>
+<!--l. 745--><div class="longtable"> <table id="TBL-37" class="longtable"
cellspacing="0" cellpadding="0" rules="groups"
-><colgroup id="TBL-38-1g"><col
-id="TBL-38-1" /></colgroup><colgroup id="TBL-38-2g"><col
-id="TBL-38-2" /><col
-id="TBL-38-3" /></colgroup>
+><colgroup id="TBL-37-1g"><col
+id="TBL-37-1" /></colgroup><colgroup id="TBL-37-2g"><col
+id="TBL-37-2" /><col
+id="TBL-37-3" /></colgroup>
<tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-38-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-38-1-1"
-class="td11"> Uses: </td><td style="white-space:nowrap; text-align:left;" id="TBL-38-1-2"
+ style="vertical-align:baseline;" id="TBL-37-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-37-1-1"
+class="td11"> Uses: </td><td style="white-space:nowrap; text-align:left;" id="TBL-37-1-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:CommunicationType">CommunicationType</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-38-1-3"
+href="#ref:CommunicationType">CommunicationType</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-37-1-3"
class="td11">
- <!--l. 736--><p class="noindent" >The CommunicationType defines the communication
+ <!--l. 745--><p class="noindent" >The CommunicationType defines the communication
semantics of a ProtocolClass. </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-38-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-38-2-1"
+ style="vertical-align:baseline;" id="TBL-37-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-37-2-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-38-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-38-3-1"
+ style="vertical-align:baseline;" id="TBL-37-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-37-3-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-38-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-38-4-1"
+ style="vertical-align:baseline;" id="TBL-37-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-37-4-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-38-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-38-5-1"
+ style="vertical-align:baseline;" id="TBL-37-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-37-5-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-38-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-38-6-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-38-6-2"
-class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-38-6-3"
+ style="vertical-align:baseline;" id="TBL-37-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-37-6-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-37-6-2"
+class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-37-6-3"
class="td11">
</td></tr>
</table></div>
-<!--l. 742--><p class="noindent" ><span
+<!--l. 751--><p class="noindent" ><span
class="ec-lmssbx-10">Feature Usage:</span>
<a
- id="x31-183002r20"></a></p>
-<!--l. 747--><div class="longtable"> <table id="TBL-39" class="longtable"
+ id="x31-179002r20"></a></p>
+<!--l. 756--><div class="longtable"> <table id="TBL-38" class="longtable"
cellspacing="0" cellpadding="0" rules="groups"
-><colgroup id="TBL-39-1g"><col
-id="TBL-39-1" /></colgroup><colgroup id="TBL-39-2g"><col
-id="TBL-39-2" /><col
-id="TBL-39-3" /></colgroup>
+><colgroup id="TBL-38-1g"><col
+id="TBL-38-1" /></colgroup><colgroup id="TBL-38-2g"><col
+id="TBL-38-2" /><col
+id="TBL-38-3" /></colgroup>
<tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-39-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-39-1-1"
-class="td11"> Is contained in: </td><td style="white-space:nowrap; text-align:left;" id="TBL-39-1-2"
+ style="vertical-align:baseline;" id="TBL-38-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-38-1-1"
+class="td11"> Is contained in: </td><td style="white-space:nowrap; text-align:left;" id="TBL-38-1-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:ActorClass">ActorClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-39-1-3"
+href="#ref:ActorClass">ActorClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-38-1-3"
class="td11">
- <!--l. 747--><p class="noindent" >An actor is the basic structural building block for building
+ <!--l. 756--><p class="noindent" >An actor is the basic structural building block for building
systems with ROOM. </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-39-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-39-2-1"
+ style="vertical-align:baseline;" id="TBL-38-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-38-2-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-39-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-39-3-1"
+ style="vertical-align:baseline;" id="TBL-38-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-38-3-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-39-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-39-4-1"
+ style="vertical-align:baseline;" id="TBL-38-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-38-4-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-39-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-39-5-1"
+ style="vertical-align:baseline;" id="TBL-38-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-38-5-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-39-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-39-6-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-39-6-2"
-class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-39-6-3"
+ style="vertical-align:baseline;" id="TBL-38-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-38-6-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-38-6-2"
+class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-38-6-3"
class="td11">
</td></tr>
+
+
</table></div>
-<!--l. 752--><p class="noindent" ><span
+<!--l. 761--><p class="noindent" ><span
class="ec-lmssbx-10">Example:</span>
</p>
-<!--l. 754-->
-<div class="lstlisting" id="listing-62"><span class="label"><a
- id="x31-183003r1"></a></span><span
+<!--l. 763-->
+<div class="lstlisting" id="listing-50"><span class="label"><a
+ id="x31-179003r1"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -3364,7 +3423,7 @@ class="ec-lmtt-9">]</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-183004r2"></a></span><span
+ id="x31-179004r2"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -3385,15 +3444,15 @@ class="ec-lmtt-9">ActorRefs</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">allowed</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-183005r3"></a></span><span
+ id="x31-179005r3"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-183006r4"></a></span><span
+ id="x31-179006r4"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-183007r5"></a></span><span
+ id="x31-179007r5"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -3405,7 +3464,7 @@ class="ec-lmtt-9">DatadrivenActor</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-183008r6"></a></span><span
+ id="x31-179008r6"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -3426,15 +3485,15 @@ class="ec-lmtt-9">ActorRefs</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">allowed</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-183009r7"></a></span><span
+ id="x31-179009r7"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-183010r8"></a></span><span
+ id="x31-179010r8"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-183011r9"></a></span><span
+ id="x31-179011r9"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -3445,7 +3504,7 @@ class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">MixedActor</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-183012r10"></a></span><span
+ id="x31-179012r10"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -3468,24 +3527,22 @@ class="ec-lmtt-9">ActorRefs</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">allowed</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-183013r11"></a></span><span
+ id="x31-179013r11"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span>
-
-
</div>
<a
- id="x31-183014r255"></a>
+ id="x31-179014r254"></a>
<h5 class="subsubsectionHead"><span class="titlemark">7.1.2.12 </span> <a
- id="x31-18400012"></a>ExternalEndPort</h5>
-<!--l. 773--><p class="noindent" ><a
+ id="x31-18000012"></a>ExternalEndPort</h5>
+<!--l. 782--><p class="noindent" ><a
id="ref:ExternalEndPort"></a> A ExternalEndPort is an interface Port, that is made accessible to the internal interface of an ActorClass.
</p>
-<!--l. 776-->
-<div class="lstlisting" id="listing-63"><span class="label"><a
- id="x31-184001r1"></a></span><span
+<!--l. 785-->
+<div class="lstlisting" id="listing-51"><span class="label"><a
+ id="x31-180001r1"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmssbx-10x-x-90">ActorClass</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -3493,7 +3550,7 @@ class="ec-lmtt-9">ExternalEndPortExample</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-184002r2"></a></span><span
+ id="x31-180002r2"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -3501,7 +3558,7 @@ class="ec-lmssbx-10x-x-90">Interface</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-184003r3"></a></span><span
+ id="x31-180003r3"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -3536,7 +3593,7 @@ class="ec-lmtt-9">containing</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">ActorClass</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-184004r4"></a></span><span
+ id="x31-180004r4"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -3549,13 +3606,13 @@ class="ec-lmtt-9">:</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">PSimpleProtocol</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-184005r5"></a></span><span
+ id="x31-180005r5"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-184006r6"></a></span><span
+ id="x31-180006r6"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -3563,7 +3620,7 @@ class="ec-lmssbx-10x-x-90">Structure</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-184007r7"></a></span><span
+ id="x31-180007r7"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -3574,13 +3631,13 @@ class="ec-lmssbx-10x-x-90">Port</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">externalEndPort</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-184008r8"></a></span><span
+ id="x31-180008r8"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-184009r9"></a></span><span
+ id="x31-180009r9"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -3588,7 +3645,7 @@ class="ec-lmssbx-10x-x-90">Behavior</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-184010r10"></a></span><span
+ id="x31-180010r10"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -3605,114 +3662,116 @@ class="ec-lmtt-9">from</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">externalEndPort</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-184011r11"></a></span><span
+ id="x31-180011r11"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-184012r12"></a></span><span
+ id="x31-180012r12"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span>
</div>
-<!--l. 793--><p class="noindent" ><span
+<!--l. 802--><p class="noindent" ><span
class="ec-lmssbx-10">Features:</span>
<a
- id="x31-184013r21"></a></p>
-<!--l. 798--><div class="longtable"> <table id="TBL-40" class="longtable"
+ id="x31-180013r21"></a></p>
+<!--l. 807--><div class="longtable"> <table id="TBL-39" class="longtable"
cellspacing="0" cellpadding="0" rules="groups"
-><colgroup id="TBL-40-1g"><col
-id="TBL-40-1" /></colgroup><colgroup id="TBL-40-2g"><col
-id="TBL-40-2" /><col
-id="TBL-40-3" /></colgroup>
+><colgroup id="TBL-39-1g"><col
+id="TBL-39-1" /></colgroup><colgroup id="TBL-39-2g"><col
+id="TBL-39-2" /><col
+id="TBL-39-3" /></colgroup>
<tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-40-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-40-1-1"
-class="td11"> Is a: </td><td style="white-space:nowrap; text-align:left;" id="TBL-40-1-2"
+ style="vertical-align:baseline;" id="TBL-39-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-39-1-1"
+class="td11"> Is a: </td><td style="white-space:nowrap; text-align:left;" id="TBL-39-1-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:Port">Port</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-40-1-3"
+href="#ref:Port">Port</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-39-1-3"
class="td11">
- <!--l. 798--><p class="noindent" >A Port is an instance of a ProtocolClass and the interface
+ <!--l. 807--><p class="noindent" >A Port is an instance of a ProtocolClass and the interface
for an ActorClass. </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-40-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-40-2-1"
+ style="vertical-align:baseline;" id="TBL-39-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-39-2-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-40-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-40-3-1"
+ style="vertical-align:baseline;" id="TBL-39-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-39-3-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-40-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-40-4-1"
+ style="vertical-align:baseline;" id="TBL-39-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-39-4-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-40-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-40-5-1"
+ style="vertical-align:baseline;" id="TBL-39-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-39-5-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-40-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-40-6-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-40-6-2"
-class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-40-6-3"
+ style="vertical-align:baseline;" id="TBL-39-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-39-6-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-39-6-2"
+class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-39-6-3"
class="td11">
</td></tr>
</table></div>
<a
- id="x31-184014r256"></a>
+ id="x31-180014r255"></a>
<h5 class="subsubsectionHead"><span class="titlemark">7.1.2.13 </span> <a
- id="x31-18500013"></a>ExternalType</h5>
-<!--l. 810--><p class="noindent" ><a
+ id="x31-18100013"></a>ExternalType</h5>
+<!--l. 819--><p class="noindent" ><a
id="ref:ExternalType"></a> An ExternalType is used to make an target language type accessible in ROOM.
-</p><!--l. 814--><p class="noindent" ><span
+</p><!--l. 823--><p class="noindent" ><span
class="ec-lmssbx-10">Properties:</span> </p>
<ul class="itemize1">
<li class="itemize">targetName : &#8217;<span class="obeylines-h"><span class="verb"><span
class="ec-lmtt-10">&#x003C;identifier</span><span
class="ec-lmtt-10">&#x00A0;name&#x003E;</span></span></span>&#8217;</li></ul>
-<!--l. 820--><p class="noindent" ><span
+<!--l. 829--><p class="noindent" ><span
class="ec-lmssbx-10">Features:</span>
<a
- id="x31-185001r22"></a></p>
-<!--l. 825--><div class="longtable"> <table id="TBL-41" class="longtable"
+ id="x31-181001r22"></a></p>
+<!--l. 834--><div class="longtable"> <table id="TBL-40" class="longtable"
cellspacing="0" cellpadding="0" rules="groups"
-><colgroup id="TBL-41-1g"><col
-id="TBL-41-1" /></colgroup><colgroup id="TBL-41-2g"><col
-id="TBL-41-2" /><col
-id="TBL-41-3" /></colgroup>
+><colgroup id="TBL-40-1g"><col
+id="TBL-40-1" /></colgroup><colgroup id="TBL-40-2g"><col
+id="TBL-40-2" /><col
+id="TBL-40-3" /></colgroup>
<tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-41-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-41-1-1"
-class="td11"> Is a: </td><td style="white-space:nowrap; text-align:left;" id="TBL-41-1-2"
+ style="vertical-align:baseline;" id="TBL-40-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-40-1-1"
+class="td11"> Is a: </td><td style="white-space:nowrap; text-align:left;" id="TBL-40-1-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:DataType">DataType</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-41-1-3"
+href="#ref:DataType">DataType</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-40-1-3"
class="td11">
- <!--l. 825--><p class="noindent" >A DataType can take 4 forms and types data elements like
+ <!--l. 834--><p class="noindent" >A DataType can take 4 forms and types data elements like
an Attribute or Operation argument. </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-41-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-41-2-1"
+ style="vertical-align:baseline;" id="TBL-40-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-40-2-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-41-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-41-3-1"
+ style="vertical-align:baseline;" id="TBL-40-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-40-3-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-41-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-41-4-1"
+ style="vertical-align:baseline;" id="TBL-40-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-40-4-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-41-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-41-5-1"
+ style="vertical-align:baseline;" id="TBL-40-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-40-5-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-41-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-41-6-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-41-6-2"
-class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-41-6-3"
+ style="vertical-align:baseline;" id="TBL-40-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-40-6-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-40-6-2"
+class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-40-6-3"
class="td11">
</td></tr>
</table></div>
-<!--l. 831--><p class="noindent" ><span
+<!--l. 840--><p class="noindent" ><span
class="ec-lmssbx-10">Example:</span>
</p>
-<!--l. 833-->
-<div class="lstlisting" id="listing-64"><span class="label"><a
- id="x31-185002r1"></a></span><span
+
+
+<!--l. 842-->
+<div class="lstlisting" id="listing-52"><span class="label"><a
+ id="x31-181002r1"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -3739,7 +3798,7 @@ class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">ActorClassWithExternalType</span><span
class="ec-lmtt-9">)</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-185003r2"></a></span><span
+ id="x31-181003r2"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -3755,9 +3814,9 @@ class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">FILE_HANDLE</span><span
class="ec-lmtt-9">"</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-185004r3"></a></span><span
+ id="x31-181004r3"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-185005r4"></a></span><span
+ id="x31-181005r4"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -3766,7 +3825,7 @@ class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">ActorClassWithExternalType</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-185006r5"></a></span><span
+ id="x31-181006r5"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -3775,7 +3834,7 @@ class="ec-lmssbx-10x-x-90">Structure</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-185007r6"></a></span><span
+ id="x31-181007r6"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -3786,7 +3845,7 @@ class="ec-lmssbx-10x-x-90">usercode1</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-185008r7"></a></span><span
+ id="x31-181008r7"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -3816,7 +3875,7 @@ class="ec-lmtt-9">here</span><span
class="ec-lmtt-9">*/</span><span
class="ec-lmtt-9">"</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-185009r8"></a></span><span
+ id="x31-181009r8"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -3825,7 +3884,7 @@ class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-185010r9"></a></span><span
+ id="x31-181010r9"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -3848,14 +3907,14 @@ class="ec-lmtt-9">needs</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">include</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-185011r10"></a></span><span
+ id="x31-181011r10"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-185012r11"></a></span><span
+ id="x31-181012r11"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -3864,7 +3923,7 @@ class="ec-lmssbx-10x-x-90">Behavior</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-185013r12"></a></span><span
+ id="x31-181013r12"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -3883,7 +3942,7 @@ class="ec-lmtt-9">)</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-185014r13"></a></span><span
+ id="x31-181014r13"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -3907,7 +3966,7 @@ class="ec-lmtt-9">need</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">includes</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-185015r14"></a></span><span
+ id="x31-181015r14"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -3926,7 +3985,7 @@ class="ec-lmtt-9">)</span><span
class="ec-lmtt-9">;</span><span
class="ec-lmtt-9">"</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-185016r15"></a></span><span
+ id="x31-181016r15"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -3935,34 +3994,32 @@ class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-185017r16"></a></span><span
+ id="x31-181017r16"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-185018r17"></a></span><span
+ id="x31-181018r17"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span>
</div>
-
-
<a
- id="x31-185019r257"></a>
+ id="x31-181019r256"></a>
<h5 class="subsubsectionHead"><span class="titlemark">7.1.2.14 </span> <a
- id="x31-18600014"></a>Inheritance</h5>
-<!--l. 858--><p class="noindent" ><a
+ id="x31-18200014"></a>Inheritance</h5>
+<!--l. 867--><p class="noindent" ><a
id="ref:Inheritance"></a> A class can specify a super class and inherits elements from the super class hierarchy.
-</p><!--l. 861--><p class="noindent" >When a ROOM class specifies a super class, it generally inherits all elements and properties. In several cases, it is possible, to
+</p><!--l. 870--><p class="noindent" >When a ROOM class specifies a super class, it generally inherits all elements and properties. In several cases, it is possible, to
override these inherited elements. Generally, eTrice has two semantics of overriding: refinement and replacement. Refinement
is used in most cases (e.g. StateMachine) and realizes an extension of the overridden elements. In this case, if a sub
class overrides a piece of logic from a super class, it will always be executed subsequently to the inherited.
Contrary to this, replacement is applied to overridden Operations, similar to programming languages C++ and
Java.
-</p><!--l. 867--><p class="noindent" >A formal definition of overriding is given below: </p>
+</p><!--l. 876--><p class="noindent" >A formal definition of overriding is given below: </p>
<ul class="itemize1">
<li class="itemize">early or late resolve - if element is overriden, which one should super class use by default - own or override ?
</li>
@@ -3971,12 +4028,12 @@ Java.
<li class="itemize">(non_)accessible - if element is overriden, is super class&#8217; original accessible from sub class ? e.g. super.foo()
</li>
<li class="itemize">implict or explicit - does it use distinct model element / keyword?</li></ul>
-<!--l. 875--><p class="noindent" >Examples programming languages:<br
+<!--l. 884--><p class="noindent" >Examples programming languages:<br
class="newline" />c++ virtual function and java override &#x003C;==&#x003E; accessible explicit late replacing<br
class="newline" />c++ function redefine &#x003C;==&#x003E; accessible implict early replacing<br
class="newline" />c++ dtor &#x003C;==&#x003E; late refinement<br
class="newline" />
-</p><!--l. 880--><p class="noindent" >eTrice override of model elements:<br
+</p><!--l. 889--><p class="noindent" >eTrice override of model elements:<br
class="newline" />Operations (C generation) &#x003C;==&#x003E; non_accessible explicit late replacing<br
class="newline" />Operations (Java generation) &#x003C;==&#x003E; accessible explicit late replacing<br
class="newline" />State and Transitions &#x003C;==&#x003E; non_accessible explicit late refinement<br
@@ -3984,78 +4041,80 @@ class="newline" />ctor/dtor &#x003C;==&#x003E; non_accessible implicit late refi
class="newline" />StateMachine &#x003C;==&#x003E; non_accessible implicit late refinement<br
class="newline" />UserCode &#x003C;==&#x003E; non_accessible implicit late refinement<br
class="newline" />
-</p><!--l. 891--><p class="noindent" ><span
+</p><!--l. 900--><p class="noindent" ><span
class="ec-lmssbx-10">Feature Usage:</span>
<a
- id="x31-186001r23"></a></p>
-<!--l. 896--><div class="longtable"> <table id="TBL-42" class="longtable"
+ id="x31-182001r23"></a></p>
+<!--l. 905--><div class="longtable"> <table id="TBL-41" class="longtable"
cellspacing="0" cellpadding="0" rules="groups"
-><colgroup id="TBL-42-1g"><col
-id="TBL-42-1" /></colgroup><colgroup id="TBL-42-2g"><col
-id="TBL-42-2" /><col
-id="TBL-42-3" /></colgroup>
+><colgroup id="TBL-41-1g"><col
+id="TBL-41-1" /></colgroup><colgroup id="TBL-41-2g"><col
+id="TBL-41-2" /><col
+id="TBL-41-3" /></colgroup>
<tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-42-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-42-1-1"
-class="td11"> Is used by: </td><td style="white-space:nowrap; text-align:left;" id="TBL-42-1-2"
+ style="vertical-align:baseline;" id="TBL-41-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-41-1-1"
+class="td11"> Is used by: </td><td style="white-space:nowrap; text-align:left;" id="TBL-41-1-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:ActorClass">ActorClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-42-1-3"
+href="#ref:ActorClass">ActorClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-41-1-3"
class="td11">
- <!--l. 896--><p class="noindent" >An actor is the basic structural building block for building
+ <!--l. 905--><p class="noindent" >An actor is the basic structural building block for building
systems with ROOM. </p></td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-42-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-42-2-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-42-2-2"
+ style="vertical-align:baseline;" id="TBL-41-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-41-2-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-41-2-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:StateMachine">StateMachine</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-42-2-3"
+href="#ref:StateMachine">StateMachine</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-41-2-3"
class="td11">
- <!--l. 897--><p class="noindent" >A StateMachine describes the state based, event driven
+ <!--l. 906--><p class="noindent" >A StateMachine describes the state based, event driven
behavior of an ActorClass. </p></td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-42-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-42-3-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-42-3-2"
+ style="vertical-align:baseline;" id="TBL-41-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-41-3-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-41-3-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:ProtocolClass">ProtocolClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-42-3-3"
+href="#ref:ProtocolClass">ProtocolClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-41-3-3"
class="td11">
- <!--l. 898--><p class="noindent" >A ProtocolClass defines messages and is the interface
+ <!--l. 907--><p class="noindent" >A ProtocolClass defines messages and is the interface
specification for a Port </p></td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-42-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-42-4-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-42-4-2"
+ style="vertical-align:baseline;" id="TBL-41-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-41-4-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-41-4-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:DataClass">DataClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-42-4-3"
+href="#ref:DataClass">DataClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-41-4-3"
class="td11">
- <!--l. 899--><p class="noindent" >A DataClass is a composition of Attributes. </p></td>
+ <!--l. 908--><p class="noindent" >A DataClass is a composition of Attributes. </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-42-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-42-5-1"
+ style="vertical-align:baseline;" id="TBL-41-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-41-5-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-42-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-42-6-1"
+ style="vertical-align:baseline;" id="TBL-41-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-41-6-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-42-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-42-7-1"
+ style="vertical-align:baseline;" id="TBL-41-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-41-7-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-42-8-"><td style="white-space:nowrap; text-align:left;" id="TBL-42-8-1"
+ style="vertical-align:baseline;" id="TBL-41-8-"><td style="white-space:nowrap; text-align:left;" id="TBL-41-8-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-42-9-"><td style="white-space:nowrap; text-align:left;" id="TBL-42-9-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-42-9-2"
-class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-42-9-3"
+ style="vertical-align:baseline;" id="TBL-41-9-"><td style="white-space:nowrap; text-align:left;" id="TBL-41-9-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-41-9-2"
+class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-41-9-3"
class="td11">
</td></tr>
+
+
</table></div>
-<!--l. 904--><p class="noindent" ><span
+<!--l. 913--><p class="noindent" ><span
class="ec-lmssbx-10">Example:</span>
</p>
-<!--l. 906-->
-<div class="lstlisting" id="listing-65"><span class="label"><a
- id="x31-186002r1"></a></span><span
+<!--l. 915-->
+<div class="lstlisting" id="listing-53"><span class="label"><a
+ id="x31-182002r1"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -4070,7 +4129,7 @@ class="ec-lmtt-9">ActorBaseClass</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-186003r2"></a></span><span
+ id="x31-182003r2"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -4093,16 +4152,16 @@ class="ec-lmtt-9">type</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">hierarchy</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-186004r3"></a></span><span
+ id="x31-182004r3"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-186005r4"></a></span><span
+ id="x31-182005r4"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-186006r5"></a></span><span
+ id="x31-182006r5"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -4113,7 +4172,7 @@ class="ec-lmtt-9">ActorBaseClass</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-186007r6"></a></span><span
+ id="x31-182007r6"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -4124,7 +4183,7 @@ class="ec-lmssbx-10x-x-90">Interface</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-186008r7"></a></span><span
+ id="x31-182008r7"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -4140,7 +4199,7 @@ class="ec-lmtt-9">:</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">ProtocolBaseClass</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-186009r8"></a></span><span
+ id="x31-182009r8"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -4149,7 +4208,7 @@ class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-186010r9"></a></span><span
+ id="x31-182010r9"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -4160,7 +4219,7 @@ class="ec-lmssbx-10x-x-90">Structure</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-186011r10"></a></span><span
+ id="x31-182011r10"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -4176,7 +4235,7 @@ class="ec-lmtt-9">:</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">uint32</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-186012r11"></a></span><span
+ id="x31-182012r11"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -4185,7 +4244,7 @@ class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-186013r12"></a></span><span
+ id="x31-182013r12"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -4196,7 +4255,7 @@ class="ec-lmssbx-10x-x-90">Behavior</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-186014r13"></a></span><span
+ id="x31-182014r13"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -4210,7 +4269,7 @@ class="ec-lmtt-9">operation1</span><span
class="ec-lmtt-9">()</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-186015r14"></a></span><span
+ id="x31-182015r14"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -4225,7 +4284,7 @@ class="ec-lmtt-9">return</span><span
class="ec-lmtt-9">;</span><span
class="ec-lmtt-9">"</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-186016r15"></a></span><span
+ id="x31-182016r15"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -4235,7 +4294,7 @@ class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-186017r16"></a></span><span
+ id="x31-182017r16"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -4244,16 +4303,16 @@ class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-186018r17"></a></span><span
+ id="x31-182018r17"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-186019r18"></a></span><span
+ id="x31-182019r18"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-186020r19"></a></span><span
+ id="x31-182020r19"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -4268,7 +4327,7 @@ class="ec-lmtt-9">ProtocolBaseClass</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-186021r20"></a></span><span
+ id="x31-182021r20"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -4291,16 +4350,16 @@ class="ec-lmtt-9">type</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">hierarchy</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-186022r21"></a></span><span
+ id="x31-182022r21"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-186023r22"></a></span><span
+ id="x31-182023r22"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-186024r23"></a></span><span
+ id="x31-182024r23"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -4311,7 +4370,7 @@ class="ec-lmtt-9">ProtocolBaseClass</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-186025r24"></a></span><span
+ id="x31-182025r24"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -4322,7 +4381,7 @@ class="ec-lmssbx-10x-x-90">incoming</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-186026r25"></a></span><span
+ id="x31-182026r25"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -4335,7 +4394,7 @@ class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">message1</span><span
class="ec-lmtt-9">()</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-186027r26"></a></span><span
+ id="x31-182027r26"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -4344,16 +4403,16 @@ class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-186028r27"></a></span><span
+ id="x31-182028r27"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-186029r28"></a></span><span
+ id="x31-182029r28"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-186030r29"></a></span><span
+ id="x31-182030r29"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -4368,7 +4427,7 @@ class="ec-lmtt-9">DataBaseClass</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-186031r30"></a></span><span
+ id="x31-182031r30"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -4391,16 +4450,16 @@ class="ec-lmtt-9">type</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">hierarchy</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-186032r31"></a></span><span
+ id="x31-182032r31"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-186033r32"></a></span><span
+ id="x31-182033r32"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-186034r33"></a></span><span
+ id="x31-182034r33"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -4411,7 +4470,7 @@ class="ec-lmtt-9">DataBaseClass</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-186035r34"></a></span><span
+ id="x31-182035r34"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -4426,25 +4485,23 @@ class="ec-lmtt-9">:</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">uint32</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-186036r35"></a></span><span
+ id="x31-182036r35"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span>
-
-
</div>
<a
- id="x31-186037r258"></a>
+ id="x31-182037r257"></a>
<h5 class="subsubsectionHead"><span class="titlemark">7.1.2.15 </span> <a
- id="x31-18700015"></a>InternalEndPort</h5>
-<!--l. 949--><p class="noindent" ><a
+ id="x31-18300015"></a>InternalEndPort</h5>
+<!--l. 958--><p class="noindent" ><a
id="ref:InternalEndPort"></a> A InternalEndPort is an local Port, that is declared in the internal interface of an ActorClass.
</p>
-<!--l. 952-->
-<div class="lstlisting" id="listing-66"><span class="label"><a
- id="x31-187001r1"></a></span><span
+<!--l. 961-->
+<div class="lstlisting" id="listing-54"><span class="label"><a
+ id="x31-183001r1"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmssbx-10x-x-90">ActorClass</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -4452,7 +4509,7 @@ class="ec-lmtt-9">InternalEndPortExample</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-187002r2"></a></span><span
+ id="x31-183002r2"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -4460,7 +4517,7 @@ class="ec-lmssbx-10x-x-90">Structure</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-187003r3"></a></span><span
+ id="x31-183003r3"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -4473,7 +4530,7 @@ class="ec-lmtt-9">:</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">PSimpleProtocol</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-187004r4"></a></span><span
+ id="x31-183004r4"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -4486,9 +4543,9 @@ class="ec-lmtt-9">:</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">SimpleActorClass</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-187005r5"></a></span><span
+ id="x31-183005r5"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-187006r6"></a></span><span
+ id="x31-183006r6"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -4505,7 +4562,7 @@ class="ec-lmtt-9">&#8217;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">and</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-187007r7"></a></span><span
+ id="x31-183007r7"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -4530,7 +4587,7 @@ class="ec-lmtt-9">a</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">ActorRef</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-187008r8"></a></span><span
+ id="x31-183008r8"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -4545,13 +4602,13 @@ class="ec-lmtt-9">actorRef1</span><span
class="ec-lmtt-9">.</span><span
class="ec-lmtt-9">externalPort2</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-187009r9"></a></span><span
+ id="x31-183009r9"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-187010r10"></a></span><span
+ id="x31-183010r10"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -4559,7 +4616,7 @@ class="ec-lmssbx-10x-x-90">Behavior</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-187011r11"></a></span><span
+ id="x31-183011r11"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -4576,64 +4633,64 @@ class="ec-lmtt-9">from</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">internalEndPorts</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-187012r12"></a></span><span
+ id="x31-183012r12"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-187013r13"></a></span><span
+ id="x31-183013r13"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span>
</div>
-<!--l. 967--><p class="noindent" ><img
+<!--l. 976--><p class="noindent" ><img
src="images/300-InternalEndPort.png" alt="PIC"
/>
-</p><!--l. 971--><p class="noindent" ><span
+</p><!--l. 980--><p class="noindent" ><span
class="ec-lmssbx-10">Features:</span>
<a
- id="x31-187014r24"></a></p>
-<!--l. 976--><div class="longtable"> <table id="TBL-43" class="longtable"
+ id="x31-183014r24"></a></p>
+<!--l. 985--><div class="longtable"> <table id="TBL-42" class="longtable"
cellspacing="0" cellpadding="0" rules="groups"
-><colgroup id="TBL-43-1g"><col
-id="TBL-43-1" /></colgroup><colgroup id="TBL-43-2g"><col
-id="TBL-43-2" /><col
-id="TBL-43-3" /></colgroup>
+><colgroup id="TBL-42-1g"><col
+id="TBL-42-1" /></colgroup><colgroup id="TBL-42-2g"><col
+id="TBL-42-2" /><col
+id="TBL-42-3" /></colgroup>
<tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-43-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-43-1-1"
-class="td11"> Is a: </td><td style="white-space:nowrap; text-align:left;" id="TBL-43-1-2"
+ style="vertical-align:baseline;" id="TBL-42-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-42-1-1"
+class="td11"> Is a: </td><td style="white-space:nowrap; text-align:left;" id="TBL-42-1-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:Port">Port</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-43-1-3"
+href="#ref:Port">Port</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-42-1-3"
class="td11">
- <!--l. 976--><p class="noindent" >A Port is an instance of a ProtocolClass and the interface
+ <!--l. 985--><p class="noindent" >A Port is an instance of a ProtocolClass and the interface
for an ActorClass. </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-43-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-43-2-1"
+ style="vertical-align:baseline;" id="TBL-42-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-42-2-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-43-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-43-3-1"
+ style="vertical-align:baseline;" id="TBL-42-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-42-3-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-43-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-43-4-1"
+ style="vertical-align:baseline;" id="TBL-42-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-42-4-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-43-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-43-5-1"
+ style="vertical-align:baseline;" id="TBL-42-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-42-5-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-43-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-43-6-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-43-6-2"
-class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-43-6-3"
+ style="vertical-align:baseline;" id="TBL-42-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-42-6-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-42-6-2"
+class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-42-6-3"
class="td11">
</td></tr>
</table></div>
<a
- id="x31-187015r259"></a>
+ id="x31-183015r258"></a>
<h5 class="subsubsectionHead"><span class="titlemark">7.1.2.16 </span> <a
- id="x31-18800016"></a>LayerConnection</h5>
-<!--l. 988--><p class="noindent" ><a
+ id="x31-18400016"></a>LayerConnection</h5>
+<!--l. 997--><p class="noindent" ><a
id="ref:LayerConnection"></a> A LayerConnection associates a SPP to an ActorRef, resulting in an connection of all SAPs on its instance
hierarchy.
</p>
@@ -4645,221 +4702,233 @@ hierarchy.
</li>
<li class="itemize">For a given actor hierarchy, a LayerConnection defines which SAP will be satisfied by (connected to) which
SPP</li></ul>
-<!--l. 999--><p class="noindent" ><span
+<!--l. 1008--><p class="noindent" ><span
class="ec-lmssbx-10">Features:</span>
<a
- id="x31-188001r25"></a></p>
-<!--l. 1004--><div class="longtable"> <table id="TBL-44" class="longtable"
+ id="x31-184001r25"></a></p>
+<!--l. 1013--><div class="longtable"> <table id="TBL-43" class="longtable"
cellspacing="0" cellpadding="0" rules="groups"
-><colgroup id="TBL-44-1g"><col
-id="TBL-44-1" /></colgroup><colgroup id="TBL-44-2g"><col
-id="TBL-44-2" /><col
-id="TBL-44-3" /></colgroup>
+><colgroup id="TBL-43-1g"><col
+id="TBL-43-1" /></colgroup><colgroup id="TBL-43-2g"><col
+id="TBL-43-2" /><col
+id="TBL-43-3" /></colgroup>
+
+
<tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-44-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-44-1-1"
-class="td11"> Uses: </td><td style="white-space:nowrap; text-align:left;" id="TBL-44-1-2"
+ style="vertical-align:baseline;" id="TBL-43-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-43-1-1"
+class="td11"> Uses: </td><td style="white-space:nowrap; text-align:left;" id="TBL-43-1-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:SAP">SAP</a> : SAPoint </td><td style="white-space:wrap; text-align:left;" id="TBL-44-1-3"
+href="#ref:SAP">SAP</a> : SAPoint </td><td style="white-space:wrap; text-align:left;" id="TBL-43-1-3"
class="td11">
- <!--l. 1004--><p class="noindent" >A Service Access Point is similar to a Port, but uses a
+ <!--l. 1013--><p class="noindent" >A Service Access Point is similar to a Port, but uses a
LayerConnection for wiring. </p></td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-44-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-44-2-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-44-2-2"
+ style="vertical-align:baseline;" id="TBL-43-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-43-2-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-43-2-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:SPP">SPP</a> : SPPoint </td><td style="white-space:wrap; text-align:left;" id="TBL-44-2-3"
+href="#ref:SPP">SPP</a> : SPPoint </td><td style="white-space:wrap; text-align:left;" id="TBL-43-2-3"
class="td11">
- <!--l. 1005--><p class="noindent" >A Service Provision Point is the counterpart of a SAP </p></td>
+ <!--l. 1014--><p class="noindent" >A Service Provision Point is the counterpart of a SAP </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-44-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-44-3-1"
+ style="vertical-align:baseline;" id="TBL-43-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-43-3-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-44-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-44-4-1"
+ style="vertical-align:baseline;" id="TBL-43-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-43-4-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-44-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-44-5-1"
+ style="vertical-align:baseline;" id="TBL-43-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-43-5-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-44-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-44-6-1"
+ style="vertical-align:baseline;" id="TBL-43-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-43-6-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-44-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-44-7-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-44-7-2"
-class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-44-7-3"
+ style="vertical-align:baseline;" id="TBL-43-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-43-7-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-43-7-2"
+class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-43-7-3"
class="td11">
</td></tr>
-
-
</table></div>
-<!--l. 1011--><p class="noindent" ><span
+<!--l. 1020--><p class="noindent" ><span
class="ec-lmssbx-10">Feature Usage:</span>
<a
- id="x31-188002r26"></a></p>
-<!--l. 1016--><div class="longtable"> <table id="TBL-45" class="longtable"
+ id="x31-184002r26"></a></p>
+<!--l. 1025--><div class="longtable"> <table id="TBL-44" class="longtable"
cellspacing="0" cellpadding="0" rules="groups"
-><colgroup id="TBL-45-1g"><col
-id="TBL-45-1" /></colgroup><colgroup id="TBL-45-2g"><col
-id="TBL-45-2" /><col
-id="TBL-45-3" /></colgroup>
+><colgroup id="TBL-44-1g"><col
+id="TBL-44-1" /></colgroup><colgroup id="TBL-44-2g"><col
+id="TBL-44-2" /><col
+id="TBL-44-3" /></colgroup>
<tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-45-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-45-1-1"
-class="td11"> Is contained in: </td><td style="white-space:nowrap; text-align:left;" id="TBL-45-1-2"
+ style="vertical-align:baseline;" id="TBL-44-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-44-1-1"
+class="td11"> Is contained in: </td><td style="white-space:nowrap; text-align:left;" id="TBL-44-1-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:ActorClass">ActorClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-45-1-3"
+href="#ref:ActorClass">ActorClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-44-1-3"
class="td11">
- <!--l. 1016--><p class="noindent" >An actor is the basic structural building block for building
+ <!--l. 1025--><p class="noindent" >An actor is the basic structural building block for building
systems with ROOM. </p></td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-45-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-45-2-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-45-2-2"
+ style="vertical-align:baseline;" id="TBL-44-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-44-2-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-44-2-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:SubSystemClass">SubSystemClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-45-2-3"
+href="#ref:SubSystemClass">SubSystemClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-44-2-3"
class="td11">
- <!--l. 1017--><p class="noindent" >A SubSystem is the topmost building block of the
+ <!--l. 1026--><p class="noindent" >A SubSystem is the topmost building block of the
executable part of an system. </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-45-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-45-3-1"
+ style="vertical-align:baseline;" id="TBL-44-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-44-3-1"
+class="td11"> Is edited by: </td><td style="white-space:nowrap; text-align:left;" id="TBL-44-3-2"
+class="td11"> &#x00A0;&#x00A0;<span
+class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
+href="etrice-docse23.html#ref:GraphicalStructureEditor">GraphicalStructureEditor</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-44-3-3"
+class="td11">
+ <!--l. 1028--><p class="noindent" >The Structure Editor allows to edit the ActorClass&#8217;
+ Structure in a convenient way. It is possible to create and
+ arrange actor references and ports and to create bindings
+ and layer connections. </p></td>
+</tr><tr
+class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
+ style="vertical-align:baseline;" id="TBL-44-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-44-4-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-45-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-45-4-1"
+ style="vertical-align:baseline;" id="TBL-44-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-44-5-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-45-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-45-5-1"
+ style="vertical-align:baseline;" id="TBL-44-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-44-6-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-45-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-45-6-1"
+ style="vertical-align:baseline;" id="TBL-44-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-44-7-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-45-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-45-7-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-45-7-2"
-class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-45-7-3"
+ style="vertical-align:baseline;" id="TBL-44-8-"><td style="white-space:nowrap; text-align:left;" id="TBL-44-8-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-44-8-2"
+class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-44-8-3"
class="td11">
</td></tr>
</table></div>
<a
- id="x31-188003r260"></a>
+ id="x31-184003r259"></a>
<h5 class="subsubsectionHead"><span class="titlemark">7.1.2.17 </span> <a
- id="x31-18900017"></a>LogicalSystem</h5>
-<!--l. 1028--><p class="noindent" ><a
+ id="x31-18500017"></a>LogicalSystem</h5>
+<!--l. 1039--><p class="noindent" ><a
id="ref:LogicalSystem"></a> The LogicalSystem is the topmost structural class. It assembles a distributed system by means of sub systems.
-</p><!--l. 1031--><p class="noindent" >It describes the logical topology of your distributed system and is composed of sub systems (SubSystemRefs). Thus it is the
+</p><!--l. 1042--><p class="noindent" >It describes the logical topology of your distributed system and is composed of sub systems (SubSystemRefs). Thus it is the
notationally root of every instance path or actor hierarchy.
-</p><!--l. 1035--><p class="noindent" ><span
+</p><!--l. 1046--><p class="noindent" ><span
class="ec-lmssbx-10">Features:</span>
<a
- id="x31-189001r27"></a></p>
-<!--l. 1040--><div class="longtable"> <table id="TBL-46" class="longtable"
+ id="x31-185001r27"></a></p>
+<!--l. 1051--><div class="longtable"> <table id="TBL-45" class="longtable"
cellspacing="0" cellpadding="0" rules="groups"
-><colgroup id="TBL-46-1g"><col
-id="TBL-46-1" /></colgroup><colgroup id="TBL-46-2g"><col
-id="TBL-46-2" /><col
-id="TBL-46-3" /></colgroup>
+><colgroup id="TBL-45-1g"><col
+id="TBL-45-1" /></colgroup><colgroup id="TBL-45-2g"><col
+id="TBL-45-2" /><col
+id="TBL-45-3" /></colgroup>
<tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-46-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-46-1-1"
-class="td11"> Contains: </td><td style="white-space:nowrap; text-align:left;" id="TBL-46-1-2"
+ style="vertical-align:baseline;" id="TBL-45-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-45-1-1"
+class="td11"> Contains: </td><td style="white-space:nowrap; text-align:left;" id="TBL-45-1-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:SubSystemRef">SubSystemRef</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-46-1-3"
+href="#ref:SubSystemRef">SubSystemRef</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-45-1-3"
class="td11">
- <!--l. 1040--><p class="noindent" >A Sub System Reference is an instance of an
+ <!--l. 1051--><p class="noindent" >A Sub System Reference is an instance of an
SubSystemClass </p></td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-46-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-46-2-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-46-2-2"
+ style="vertical-align:baseline;" id="TBL-45-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-45-2-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-45-2-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:Annotation">Annotation</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-46-2-3"
+href="#ref:Annotation">Annotation</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-45-2-3"
class="td11">
- <!--l. 1041--><p class="noindent" >An Annotation can be attached to a ROOM classes to
+ <!--l. 1052--><p class="noindent" >An Annotation can be attached to a ROOM classes to
apply the properties of its AnnotationType. </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-46-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-46-3-1"
+ style="vertical-align:baseline;" id="TBL-45-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-45-3-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-46-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-46-4-1"
+ style="vertical-align:baseline;" id="TBL-45-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-45-4-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-46-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-46-5-1"
+ style="vertical-align:baseline;" id="TBL-45-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-45-5-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-46-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-46-6-1"
+ style="vertical-align:baseline;" id="TBL-45-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-45-6-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-46-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-46-7-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-46-7-2"
-class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-46-7-3"
+ style="vertical-align:baseline;" id="TBL-45-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-45-7-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-45-7-2"
+class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-45-7-3"
class="td11">
</td></tr>
</table></div>
-<!--l. 1047--><p class="noindent" ><span
+<!--l. 1058--><p class="noindent" ><span
class="ec-lmssbx-10">Feature Usage:</span>
<a
- id="x31-189002r28"></a></p>
-<!--l. 1052--><div class="longtable"> <table id="TBL-47" class="longtable"
+ id="x31-185002r28"></a></p>
+<!--l. 1063--><div class="longtable"> <table id="TBL-46" class="longtable"
cellspacing="0" cellpadding="0" rules="groups"
-><colgroup id="TBL-47-1g"><col
-id="TBL-47-1" /></colgroup><colgroup id="TBL-47-2g"><col
-id="TBL-47-2" /><col
-id="TBL-47-3" /></colgroup>
+><colgroup id="TBL-46-1g"><col
+id="TBL-46-1" /></colgroup><colgroup id="TBL-46-2g"><col
+id="TBL-46-2" /><col
+id="TBL-46-3" /></colgroup>
+
+
<tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-47-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-47-1-1"
-class="td11"> Is contained in: </td><td style="white-space:nowrap; text-align:left;" id="TBL-47-1-2"
+ style="vertical-align:baseline;" id="TBL-46-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-46-1-1"
+class="td11"> Is contained in: </td><td style="white-space:nowrap; text-align:left;" id="TBL-46-1-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:LogicalModel">LogicalModel</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-47-1-3"
+href="#ref:LogicalModel">LogicalModel</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-46-1-3"
class="td11">
- <!--l. 1052--><p class="noindent" >The LogicalModel describes the logical structure and
+ <!--l. 1063--><p class="noindent" >The LogicalModel describes the logical structure and
behavior of a ROOM application. </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-47-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-47-2-1"
-class="td11"> Is used by: </td><td style="white-space:nowrap; text-align:left;" id="TBL-47-2-2"
+ style="vertical-align:baseline;" id="TBL-46-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-46-2-1"
+class="td11"> Is used by: </td><td style="white-space:nowrap; text-align:left;" id="TBL-46-2-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:MappingModel">MappingModel</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-47-2-3"
+href="#ref:MappingModel">MappingModel</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-46-2-3"
class="td11">
- <!--l. 1054--><p class="noindent" >The MappingModel describes the mapping of elements of
+ <!--l. 1065--><p class="noindent" >The MappingModel describes the mapping of elements of
the LogicalModel to elements of the PhysicalModel. </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-47-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-47-3-1"
+ style="vertical-align:baseline;" id="TBL-46-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-46-3-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-47-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-47-4-1"
+ style="vertical-align:baseline;" id="TBL-46-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-46-4-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-47-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-47-5-1"
+ style="vertical-align:baseline;" id="TBL-46-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-46-5-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-47-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-47-6-1"
+ style="vertical-align:baseline;" id="TBL-46-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-46-6-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-47-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-47-7-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-47-7-2"
-class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-47-7-3"
+ style="vertical-align:baseline;" id="TBL-46-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-46-7-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-46-7-2"
+class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-46-7-3"
class="td11">
</td></tr>
</table></div>
<a
- id="x31-189003r261"></a>
-
-
+ id="x31-185003r260"></a>
<h5 class="subsubsectionHead"><span class="titlemark">7.1.2.18 </span> <a
- id="x31-19000018"></a>Operation</h5>
-<!--l. 1065--><p class="noindent" ><a
+ id="x31-18600018"></a>Operation</h5>
+<!--l. 1076--><p class="noindent" ><a
id="ref:Operation"></a> An Operation is a member function of a class.
-</p><!--l. 1068--><p class="noindent" >Operations can be used to define a piece of reusable logic. The definition consists of: </p>
+</p><!--l. 1079--><p class="noindent" >Operations can be used to define a piece of reusable logic. The definition consists of: </p>
<ul class="itemize1">
<li class="itemize">Arbitrary amount of arguments
</li>
@@ -4868,7 +4937,7 @@ class="td11">
<li class="itemize">User code body, which can access the structural part of the containing class (e.g. attributes)
</li>
<li class="itemize">&#8217;override&#8217; keyword, replaces the logic of the inherited operation having the same signature</li></ul>
-<!--l. 1076--><p class="noindent" ><span
+<!--l. 1087--><p class="noindent" ><span
class="ec-lmssbx-10">Properties:</span> </p>
<ul class="itemize1">
<li class="itemize">returnType : &#8217;<span class="obeylines-h"><span class="verb"><span
@@ -4878,109 +4947,111 @@ class="ec-lmtt-10">&#x003C;DataType&#x003E;</span></span></span>&#8217;
class="ec-lmtt-10">&#x003C;name&#x003E;</span><span
class="ec-lmtt-10">&#x00A0;:</span><span
class="ec-lmtt-10">&#x00A0;&#x003C;DataType&#x003E;</span></span></span>&#8217;</li></ul>
-<!--l. 1083--><p class="noindent" ><span
+<!--l. 1094--><p class="noindent" ><span
class="ec-lmssbx-10">Features:</span>
<a
- id="x31-190001r29"></a></p>
-<!--l. 1088--><div class="longtable"> <table id="TBL-48" class="longtable"
+ id="x31-186001r29"></a></p>
+<!--l. 1099--><div class="longtable"> <table id="TBL-47" class="longtable"
cellspacing="0" cellpadding="0" rules="groups"
-><colgroup id="TBL-48-1g"><col
-id="TBL-48-1" /></colgroup><colgroup id="TBL-48-2g"><col
-id="TBL-48-2" /><col
-id="TBL-48-3" /></colgroup>
+><colgroup id="TBL-47-1g"><col
+id="TBL-47-1" /></colgroup><colgroup id="TBL-47-2g"><col
+id="TBL-47-2" /><col
+id="TBL-47-3" /></colgroup>
<tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-48-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-48-1-1"
-class="td11"> Uses: </td><td style="white-space:nowrap; text-align:left;" id="TBL-48-1-2"
+ style="vertical-align:baseline;" id="TBL-47-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-47-1-1"
+class="td11"> Uses: </td><td style="white-space:nowrap; text-align:left;" id="TBL-47-1-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:DataType">DataType</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-48-1-3"
+href="#ref:DataType">DataType</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-47-1-3"
class="td11">
- <!--l. 1088--><p class="noindent" >A DataType can take 4 forms and types data elements like
+ <!--l. 1099--><p class="noindent" >A DataType can take 4 forms and types data elements like
an Attribute or Operation argument. </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-48-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-48-2-1"
+ style="vertical-align:baseline;" id="TBL-47-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-47-2-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-48-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-48-3-1"
+ style="vertical-align:baseline;" id="TBL-47-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-47-3-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-48-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-48-4-1"
+ style="vertical-align:baseline;" id="TBL-47-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-47-4-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-48-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-48-5-1"
+ style="vertical-align:baseline;" id="TBL-47-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-47-5-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-48-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-48-6-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-48-6-2"
-class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-48-6-3"
+ style="vertical-align:baseline;" id="TBL-47-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-47-6-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-47-6-2"
+class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-47-6-3"
class="td11">
</td></tr>
</table></div>
-<!--l. 1094--><p class="noindent" ><span
+<!--l. 1105--><p class="noindent" ><span
class="ec-lmssbx-10">Feature Usage:</span>
<a
- id="x31-190002r30"></a></p>
-<!--l. 1099--><div class="longtable"> <table id="TBL-49" class="longtable"
+ id="x31-186002r30"></a></p>
+<!--l. 1110--><div class="longtable"> <table id="TBL-48" class="longtable"
cellspacing="0" cellpadding="0" rules="groups"
-><colgroup id="TBL-49-1g"><col
-id="TBL-49-1" /></colgroup><colgroup id="TBL-49-2g"><col
-id="TBL-49-2" /><col
-id="TBL-49-3" /></colgroup>
+><colgroup id="TBL-48-1g"><col
+id="TBL-48-1" /></colgroup><colgroup id="TBL-48-2g"><col
+id="TBL-48-2" /><col
+id="TBL-48-3" /></colgroup>
<tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-49-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-49-1-1"
-class="td11"> Is contained in: </td><td style="white-space:nowrap; text-align:left;" id="TBL-49-1-2"
+ style="vertical-align:baseline;" id="TBL-48-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-48-1-1"
+class="td11"> Is contained in: </td><td style="white-space:nowrap; text-align:left;" id="TBL-48-1-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:ActorClass">ActorClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-49-1-3"
+href="#ref:ActorClass">ActorClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-48-1-3"
class="td11">
- <!--l. 1099--><p class="noindent" >An actor is the basic structural building block for building
+ <!--l. 1110--><p class="noindent" >An actor is the basic structural building block for building
systems with ROOM. </p></td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-49-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-49-2-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-49-2-2"
+ style="vertical-align:baseline;" id="TBL-48-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-48-2-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-48-2-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:ProtocolClass">ProtocolClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-49-2-3"
+href="#ref:ProtocolClass">ProtocolClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-48-2-3"
class="td11">
- <!--l. 1100--><p class="noindent" >A ProtocolClass defines messages and is the interface
+ <!--l. 1111--><p class="noindent" >A ProtocolClass defines messages and is the interface
specification for a Port </p></td>
+
+
</tr><tr
- style="vertical-align:baseline;" id="TBL-49-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-49-3-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-49-3-2"
+ style="vertical-align:baseline;" id="TBL-48-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-48-3-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-48-3-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:DataClass">DataClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-49-3-3"
+href="#ref:DataClass">DataClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-48-3-3"
class="td11">
- <!--l. 1101--><p class="noindent" >A DataClass is a composition of Attributes. </p></td>
+ <!--l. 1112--><p class="noindent" >A DataClass is a composition of Attributes. </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-49-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-49-4-1"
+ style="vertical-align:baseline;" id="TBL-48-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-48-4-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-49-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-49-5-1"
+ style="vertical-align:baseline;" id="TBL-48-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-48-5-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-49-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-49-6-1"
+ style="vertical-align:baseline;" id="TBL-48-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-48-6-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-49-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-49-7-1"
+ style="vertical-align:baseline;" id="TBL-48-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-48-7-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-49-8-"><td style="white-space:nowrap; text-align:left;" id="TBL-49-8-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-49-8-2"
-class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-49-8-3"
+ style="vertical-align:baseline;" id="TBL-48-8-"><td style="white-space:nowrap; text-align:left;" id="TBL-48-8-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-48-8-2"
+class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-48-8-3"
class="td11">
</td></tr>
</table></div>
-<!--l. 1106--><p class="noindent" ><span
+<!--l. 1117--><p class="noindent" ><span
class="ec-lmssbx-10">Example:</span>
</p>
-<!--l. 1108-->
-<div class="lstlisting" id="listing-67"><span class="label"><a
- id="x31-190003r1"></a></span><span
+<!--l. 1119-->
+<div class="lstlisting" id="listing-55"><span class="label"><a
+ id="x31-186003r1"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -5015,9 +5086,9 @@ class="ec-lmtt-9">.</span><span
class="ec-lmtt-9">room</span><span
class="ec-lmtt-9">"</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-190004r2"></a></span><span
+ id="x31-186004r2"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-190005r3"></a></span><span
+ id="x31-186005r3"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -5028,7 +5099,7 @@ class="ec-lmtt-9">DataClassWithOperation</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-190006r4"></a></span><span
+ id="x31-186006r4"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -5043,9 +5114,9 @@ class="ec-lmtt-9">:</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">uint32</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-190007r5"></a></span><span
+ id="x31-186007r5"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-190008r6"></a></span><span
+ id="x31-186008r6"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -5073,7 +5144,7 @@ class="ec-lmtt-9">boolean</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-190009r7"></a></span><span
+ id="x31-186009r7"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -5098,7 +5169,7 @@ class="ec-lmtt-9">)</span><span
class="ec-lmtt-9">;</span><span
class="ec-lmtt-9">"</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-190010r8"></a></span><span
+ id="x31-186010r8"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -5107,16 +5178,16 @@ class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-190011r9"></a></span><span
+ id="x31-186011r9"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-190012r10"></a></span><span
+ id="x31-186012r10"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-190013r11"></a></span><span
+ id="x31-186013r11"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -5127,7 +5198,7 @@ class="ec-lmtt-9">ActorClassWithOperation</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-190014r12"></a></span><span
+ id="x31-186014r12"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -5138,7 +5209,7 @@ class="ec-lmssbx-10x-x-90">Structure</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-190015r13"></a></span><span
+ id="x31-186015r13"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -5154,7 +5225,7 @@ class="ec-lmtt-9">:</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">uint32</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-190016r14"></a></span><span
+ id="x31-186016r14"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -5163,7 +5234,7 @@ class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-190017r15"></a></span><span
+ id="x31-186017r15"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -5174,7 +5245,7 @@ class="ec-lmssbx-10x-x-90">Behavior</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-190018r16"></a></span><span
+ id="x31-186018r16"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -5203,7 +5274,7 @@ class="ec-lmtt-9">boolean</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-190019r17"></a></span><span
+ id="x31-186019r17"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -5230,7 +5301,7 @@ class="ec-lmtt-9">)</span><span
class="ec-lmtt-9">;</span><span
class="ec-lmtt-9">"</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-190020r18"></a></span><span
+ id="x31-186020r18"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -5240,7 +5311,7 @@ class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-190021r19"></a></span><span
+ id="x31-186021r19"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -5249,16 +5320,16 @@ class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-190022r20"></a></span><span
+ id="x31-186022r20"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-190023r21"></a></span><span
+ id="x31-186023r21"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-190024r22"></a></span><span
+ id="x31-186024r22"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -5269,7 +5340,7 @@ class="ec-lmtt-9">ActorClassWithOperation2</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-190025r23"></a></span><span
+ id="x31-186025r23"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -5280,7 +5351,7 @@ class="ec-lmssbx-10x-x-90">Structure</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-190026r24"></a></span><span
+ id="x31-186026r24"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -5292,7 +5363,7 @@ class="ec-lmssbx-10x-x-90">usercode1</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-190027r25"></a></span><span
+ id="x31-186027r25"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -5324,7 +5395,7 @@ class="ec-lmtt-9">here</span><span
class="ec-lmtt-9">*/</span><span
class="ec-lmtt-9">"</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-190028r26"></a></span><span
+ id="x31-186028r26"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -5334,7 +5405,7 @@ class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-190029r27"></a></span><span
+ id="x31-186029r27"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -5352,7 +5423,7 @@ class="ec-lmtt-9">voidType</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmssbx-10x-x-90">ref</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-190030r28"></a></span><span
+ id="x31-186030r28"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -5361,7 +5432,7 @@ class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-190031r29"></a></span><span
+ id="x31-186031r29"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -5372,7 +5443,7 @@ class="ec-lmssbx-10x-x-90">Behavior</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-190032r30"></a></span><span
+ id="x31-186032r30"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -5392,7 +5463,7 @@ class="ec-lmtt-9">)</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-190033r31"></a></span><span
+ id="x31-186033r31"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -5418,7 +5489,7 @@ class="ec-lmtt-9">need</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">includes</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-190034r32"></a></span><span
+ id="x31-186034r32"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -5439,7 +5510,7 @@ class="ec-lmtt-9">)</span><span
class="ec-lmtt-9">;</span><span
class="ec-lmtt-9">"</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-190035r33"></a></span><span
+ id="x31-186035r33"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -5449,7 +5520,7 @@ class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-190036r34"></a></span><span
+ id="x31-186036r34"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -5458,29 +5529,27 @@ class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-190037r35"></a></span><span
+ id="x31-186037r35"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span>
</div>
-
-
<a
- id="x31-190038r262"></a>
+ id="x31-186038r261"></a>
<h5 class="subsubsectionHead"><span class="titlemark">7.1.2.19 </span> <a
- id="x31-19100019"></a>Port</h5>
-<!--l. 1151--><p class="noindent" ><a
+ id="x31-18700019"></a>Port</h5>
+<!--l. 1162--><p class="noindent" ><a
id="ref:Port"></a> A Port is an instance of a ProtocolClass and the interface for an ActorClass.
-</p><!--l. 1154--><p class="noindent" >Once a ProtocolClass has been created, it can be used to define actor interfaces. This is accomplished by means of Ports. A
+</p><!--l. 1165--><p class="noindent" >Once a ProtocolClass has been created, it can be used to define actor interfaces. This is accomplished by means of Ports. A
Port is a declaration that the set of messages defined by its ProtocolClass is now part of the actor&#8217;s interface. It provides
strong decoupling of ActorClasses from each other, thus enabling easy testability, reusability and deployment of actors to
different threads or nodes.
</p>
-<!--l. 1158-->
-<div class="lstlisting" id="listing-68"><span class="label"><a
- id="x31-191001r1"></a></span><span
+<!--l. 1169-->
+<div class="lstlisting" id="listing-56"><span class="label"><a
+ id="x31-187001r1"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmssbx-10x-x-90">ActorClass</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -5488,14 +5557,14 @@ class="ec-lmtt-9">Example</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-191002r2"></a></span><span
+ id="x31-187002r2"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmssbx-10x-x-90">Structure</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-191003r3"></a></span><span
+ id="x31-187003r3"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -5508,13 +5577,13 @@ class="ec-lmtt-9">:</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">ProtocolClass1</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-191004r4"></a></span><span
+ id="x31-187004r4"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-191005r5"></a></span><span
+ id="x31-187005r5"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -5522,7 +5591,7 @@ class="ec-lmssbx-10x-x-90">Behavior</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-191006r6"></a></span><span
+ id="x31-187006r6"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -5539,17 +5608,17 @@ class="ec-lmtt-9">from</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">port0</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-191007r7"></a></span><span
+ id="x31-187007r7"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-191008r8"></a></span><span
+ id="x31-187008r8"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span>
</div>
-<!--l. 1169--><p class="noindent" >For communication between two actors to take place, a connection must be established between a port on one of the
+<!--l. 1180--><p class="noindent" >For communication between two actors to take place, a connection must be established between a port on one of the
actors and a port on the other. One condition is, that both Ports have compatible ProtocolClasses. In most
cases the Ports simply refer to the same protocol. In addition, a ProtocolClass has an imposed directionality -
it defines one subset of messages as incoming and the complementary subset as outgoing. Which subset is
@@ -5558,8 +5627,8 @@ defining. Therefore Ports can be &#8217;regular&#8217; and &#8217;conjugated&#82
Ports, one Port has to be regular and the other conjugated. The ProtocolClass&#8217; incoming messages are on
one side received by the regular Port and on the other sent by the conjugated Port (outgoing message vice
versa).
-</p><!--l. 1176--><p class="noindent" >A connection of Ports is denoted by a Binding.
-</p><!--l. 1178--><p class="noindent" ><span
+</p><!--l. 1187--><p class="noindent" >A connection of Ports is denoted by a Binding.
+</p><!--l. 1189--><p class="noindent" ><span
class="ec-lmssbx-10">Properties:</span> </p>
<ul class="itemize1">
<li class="itemize">conjugated : &#8217;<span class="obeylines-h"><span class="verb"><span
@@ -5569,201 +5638,223 @@ class="ec-lmtt-10">conjugated</span></span></span>&#8217;
<li class="itemize">multiplicity : &#8217;<span class="obeylines-h"><span class="verb"><span
class="ec-lmtt-10">1..n</span></span></span>&#8217;, &#8217;<span class="obeylines-h"><span class="verb"><span
class="ec-lmtt-10">*</span></span></span>&#8217;</li></ul>
-<!--l. 1185--><p class="noindent" ><span
+<!--l. 1196--><p class="noindent" ><span
class="ec-lmssbx-10">Features:</span>
<a
- id="x31-191009r31"></a></p>
-<!--l. 1190--><div class="longtable"> <table id="TBL-50" class="longtable"
+ id="x31-187009r31"></a></p>
+<!--l. 1201--><div class="longtable"> <table id="TBL-49" class="longtable"
cellspacing="0" cellpadding="0" rules="groups"
-><colgroup id="TBL-50-1g"><col
-id="TBL-50-1" /></colgroup><colgroup id="TBL-50-2g"><col
-id="TBL-50-2" /><col
-id="TBL-50-3" /></colgroup>
+><colgroup id="TBL-49-1g"><col
+id="TBL-49-1" /></colgroup><colgroup id="TBL-49-2g"><col
+id="TBL-49-2" /><col
+id="TBL-49-3" /></colgroup>
<tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-50-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-50-1-1"
-class="td11"> Is of type: </td><td style="white-space:nowrap; text-align:left;" id="TBL-50-1-2"
+ style="vertical-align:baseline;" id="TBL-49-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-49-1-1"
+class="td11"> Is of type: </td><td style="white-space:nowrap; text-align:left;" id="TBL-49-1-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:ProtocolClass">ProtocolClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-50-1-3"
+href="#ref:ProtocolClass">ProtocolClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-49-1-3"
class="td11">
- <!--l. 1190--><p class="noindent" >A ProtocolClass defines messages and is the interface
+ <!--l. 1201--><p class="noindent" >A ProtocolClass defines messages and is the interface
specification for a Port </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-50-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-50-2-1"
-class="td11"> Uses: </td><td style="white-space:nowrap; text-align:left;" id="TBL-50-2-2"
+ style="vertical-align:baseline;" id="TBL-49-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-49-2-1"
+class="td11"> Uses: </td><td style="white-space:nowrap; text-align:left;" id="TBL-49-2-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:Replication">Replication</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-50-2-3"
+href="#ref:Replication">Replication</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-49-2-3"
class="td11">
- <!--l. 1192--><p class="noindent" >Replication is mechanism for multi instantiation for
+ <!--l. 1203--><p class="noindent" >Replication is mechanism for multi instantiation for
ActorRefs and Ports. </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-50-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-50-3-1"
+ style="vertical-align:baseline;" id="TBL-49-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-49-3-1"
class="td11"> </td>
+
+
</tr><tr
- style="vertical-align:baseline;" id="TBL-50-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-50-4-1"
+ style="vertical-align:baseline;" id="TBL-49-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-49-4-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-50-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-50-5-1"
+ style="vertical-align:baseline;" id="TBL-49-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-49-5-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-50-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-50-6-1"
+ style="vertical-align:baseline;" id="TBL-49-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-49-6-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-50-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-50-7-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-50-7-2"
-class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-50-7-3"
+ style="vertical-align:baseline;" id="TBL-49-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-49-7-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-49-7-2"
+class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-49-7-3"
class="td11">
</td></tr>
</table></div>
-<!--l. 1198--><p class="noindent" ><span
+<!--l. 1209--><p class="noindent" ><span
class="ec-lmssbx-10">Feature Usage:</span>
<a
- id="x31-191010r32"></a></p>
-<!--l. 1203--><div class="longtable"> <table id="TBL-51" class="longtable"
+ id="x31-187010r32"></a></p>
+<!--l. 1214--><div class="longtable"> <table id="TBL-50" class="longtable"
cellspacing="0" cellpadding="0" rules="groups"
-><colgroup id="TBL-51-1g"><col
-id="TBL-51-1" /></colgroup><colgroup id="TBL-51-2g"><col
-id="TBL-51-2" /><col
-id="TBL-51-3" /></colgroup>
+><colgroup id="TBL-50-1g"><col
+id="TBL-50-1" /></colgroup><colgroup id="TBL-50-2g"><col
+id="TBL-50-2" /><col
+id="TBL-50-3" /></colgroup>
<tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-51-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-51-1-1"
-class="td11"> Inheriting features: </td><td style="white-space:nowrap; text-align:left;" id="TBL-51-1-2"
+ style="vertical-align:baseline;" id="TBL-50-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-50-1-1"
+class="td11"> Inheriting features: </td><td style="white-space:nowrap; text-align:left;" id="TBL-50-1-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:RelayPort">RelayPort</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-51-1-3"
+href="#ref:RelayPort">RelayPort</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-50-1-3"
class="td11">
- <!--l. 1203--><p class="noindent" >A RelayPort forwards its messages without exposing them
+ <!--l. 1214--><p class="noindent" >A RelayPort forwards its messages without exposing them
to the internal interface of the ActorClass. </p></td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-51-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-51-2-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-51-2-2"
+ style="vertical-align:baseline;" id="TBL-50-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-50-2-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-50-2-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:ExternalEndPort">ExternalEndPort</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-51-2-3"
+href="#ref:ExternalEndPort">ExternalEndPort</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-50-2-3"
class="td11">
- <!--l. 1204--><p class="noindent" >A ExternalEndPort is an interface Port, that is made
+ <!--l. 1215--><p class="noindent" >A ExternalEndPort is an interface Port, that is made
accessible to the internal interface of an ActorClass. </p></td>
-
-
</tr><tr
- style="vertical-align:baseline;" id="TBL-51-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-51-3-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-51-3-2"
+ style="vertical-align:baseline;" id="TBL-50-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-50-3-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-50-3-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:InternalEndPort">InternalEndPort</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-51-3-3"
+href="#ref:InternalEndPort">InternalEndPort</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-50-3-3"
class="td11">
- <!--l. 1205--><p class="noindent" >A InternalEndPort is an local Port, that is declared in the
+ <!--l. 1216--><p class="noindent" >A InternalEndPort is an local Port, that is declared in the
internal interface of an ActorClass. </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-51-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-51-4-1"
-class="td11"> Is contained in: </td><td style="white-space:nowrap; text-align:left;" id="TBL-51-4-2"
+ style="vertical-align:baseline;" id="TBL-50-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-50-4-1"
+class="td11"> Is contained in: </td><td style="white-space:nowrap; text-align:left;" id="TBL-50-4-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:ActorClass">ActorClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-51-4-3"
+href="#ref:ActorClass">ActorClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-50-4-3"
class="td11">
- <!--l. 1207--><p class="noindent" >An actor is the basic structural building block for building
+ <!--l. 1218--><p class="noindent" >An actor is the basic structural building block for building
systems with ROOM. </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-51-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-51-5-1"
-class="td11"> Is used by: </td><td style="white-space:nowrap; text-align:left;" id="TBL-51-5-2"
+ style="vertical-align:baseline;" id="TBL-50-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-50-5-1"
+class="td11"> Is edited by: </td><td style="white-space:nowrap; text-align:left;" id="TBL-50-5-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:Binding">Binding</a> : endpoint1 </td><td style="white-space:wrap; text-align:left;" id="TBL-51-5-3"
+href="etrice-docse23.html#ref:GraphicalStructureEditor">GraphicalStructureEditor</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-50-5-3"
class="td11">
- <!--l. 1209--><p class="noindent" >A Binding connects two Ports with each other. </p></td>
+ <!--l. 1220--><p class="noindent" >The Structure Editor allows to edit the ActorClass&#8217;
+ Structure in a convenient way. It is possible to create and
+ arrange actor references and ports and to create bindings
+ and layer connections. </p></td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-51-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-51-6-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-51-6-2"
+ style="vertical-align:baseline;" id="TBL-50-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-50-6-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-50-6-2"
+class="td11"> &#x00A0;&#x00A0;<span
+class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
+href="etrice-docse23.html#ref:PortPropertyDialog">PortPropertyDialog</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-50-6-3"
+class="td11">
+ <!--l. 1221--><p class="noindent" >A dialog to edit properties of an Port. </p></td>
+</tr><tr
+class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
+ style="vertical-align:baseline;" id="TBL-50-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-50-7-1"
+class="td11"> Is used by: </td><td style="white-space:nowrap; text-align:left;" id="TBL-50-7-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:Binding">Binding</a> : endpoint2 </td><td style="white-space:wrap; text-align:left;" id="TBL-51-6-3"
+href="#ref:Binding">Binding</a> : endpoint1 </td><td style="white-space:wrap; text-align:left;" id="TBL-50-7-3"
class="td11">
- <!--l. 1210--><p class="noindent" >A Binding connects two Ports with each other. </p></td>
+ <!--l. 1223--><p class="noindent" >A Binding connects two Ports with each other. </p></td>
+</tr><tr
+ style="vertical-align:baseline;" id="TBL-50-8-"><td style="white-space:nowrap; text-align:left;" id="TBL-50-8-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-50-8-2"
+class="td11"> &#x00A0;&#x00A0;<span
+class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
+href="#ref:Binding">Binding</a> : endpoint2 </td><td style="white-space:wrap; text-align:left;" id="TBL-50-8-3"
+class="td11">
+ <!--l. 1224--><p class="noindent" >A Binding connects two Ports with each other. </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-51-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-51-7-1"
+ style="vertical-align:baseline;" id="TBL-50-9-"><td style="white-space:nowrap; text-align:left;" id="TBL-50-9-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-51-8-"><td style="white-space:nowrap; text-align:left;" id="TBL-51-8-1"
+ style="vertical-align:baseline;" id="TBL-50-10-"><td style="white-space:nowrap; text-align:left;" id="TBL-50-10-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-51-9-"><td style="white-space:nowrap; text-align:left;" id="TBL-51-9-1"
+ style="vertical-align:baseline;" id="TBL-50-11-"><td style="white-space:nowrap; text-align:left;" id="TBL-50-11-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-51-10-"><td style="white-space:nowrap; text-align:left;" id="TBL-51-10-1"
+ style="vertical-align:baseline;" id="TBL-50-12-"><td style="white-space:nowrap; text-align:left;" id="TBL-50-12-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-51-11-"><td style="white-space:nowrap; text-align:left;" id="TBL-51-11-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-51-11-2"
-class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-51-11-3"
+ style="vertical-align:baseline;" id="TBL-50-13-"><td style="white-space:nowrap; text-align:left;" id="TBL-50-13-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-50-13-2"
+class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-50-13-3"
class="td11">
</td></tr>
</table></div>
<a
- id="x31-191011r263"></a>
+ id="x31-187011r262"></a>
<h5 class="subsubsectionHead"><span class="titlemark">7.1.2.20 </span> <a
- id="x31-19200020"></a>PrimitiveType</h5>
-<!--l. 1221--><p class="noindent" ><a
+ id="x31-18800020"></a>PrimitiveType</h5>
+<!--l. 1235--><p class="noindent" ><a
id="ref:PrimitiveType"></a> A PrimitiveType is an abstraction of a target language&#8217;s basic type (e.g. integer or boolean).
-</p><!--l. 1225--><p class="noindent" ><span
+</p><!--l. 1239--><p class="noindent" ><span
class="ec-lmssbx-10">Properties:</span> </p>
<ul class="itemize1">
<li class="itemize">targetName : &#8217;<span class="obeylines-h"><span class="verb"><span
class="ec-lmtt-10">&#x003C;identifer</span><span
class="ec-lmtt-10">&#x00A0;name&#x003E;</span></span></span>&#8217;</li></ul>
-<!--l. 1231--><p class="noindent" ><span
+<!--l. 1245--><p class="noindent" ><span
class="ec-lmssbx-10">Features:</span>
<a
- id="x31-192001r33"></a></p>
-<!--l. 1236--><div class="longtable"> <table id="TBL-52" class="longtable"
+ id="x31-188001r33"></a></p>
+<!--l. 1250--><div class="longtable"> <table id="TBL-51" class="longtable"
cellspacing="0" cellpadding="0" rules="groups"
-><colgroup id="TBL-52-1g"><col
-id="TBL-52-1" /></colgroup><colgroup id="TBL-52-2g"><col
-id="TBL-52-2" /><col
-id="TBL-52-3" /></colgroup>
+><colgroup id="TBL-51-1g"><col
+id="TBL-51-1" /></colgroup><colgroup id="TBL-51-2g"><col
+id="TBL-51-2" /><col
+id="TBL-51-3" /></colgroup>
<tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-52-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-52-1-1"
-class="td11"> Is a: </td><td style="white-space:nowrap; text-align:left;" id="TBL-52-1-2"
+ style="vertical-align:baseline;" id="TBL-51-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-51-1-1"
+class="td11"> Is a: </td><td style="white-space:nowrap; text-align:left;" id="TBL-51-1-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:DataType">DataType</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-52-1-3"
+href="#ref:DataType">DataType</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-51-1-3"
class="td11">
- <!--l. 1236--><p class="noindent" >A DataType can take 4 forms and types data elements like
+ <!--l. 1250--><p class="noindent" >A DataType can take 4 forms and types data elements like
an Attribute or Operation argument. </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-52-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-52-2-1"
+ style="vertical-align:baseline;" id="TBL-51-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-51-2-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-52-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-52-3-1"
+ style="vertical-align:baseline;" id="TBL-51-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-51-3-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-52-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-52-4-1"
+ style="vertical-align:baseline;" id="TBL-51-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-51-4-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-52-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-52-5-1"
+ style="vertical-align:baseline;" id="TBL-51-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-51-5-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-52-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-52-6-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-52-6-2"
-class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-52-6-3"
+ style="vertical-align:baseline;" id="TBL-51-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-51-6-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-51-6-2"
+class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-51-6-3"
class="td11">
</td></tr>
</table></div>
-<!--l. 1242--><p class="noindent" ><span
+<!--l. 1256--><p class="noindent" ><span
class="ec-lmssbx-10">Example:</span>
-</p><!--l. 1244--><p class="noindent" >The eTrice built-in types can be found in the org.eclipse.etrice.modellib project. In most cases the Types.room is already
-included: </p><!--l. 1245-->
-<div class="lstlisting" id="listing-69"><span class="label"><a
- id="x31-192002r1"></a></span><span
+</p><!--l. 1258--><p class="noindent" >The eTrice built-in types can be found in the org.eclipse.etrice.modellib project. In most cases the Types.room is already
+
+
+included: </p><!--l. 1259-->
+<div class="lstlisting" id="listing-57"><span class="label"><a
+ id="x31-188002r1"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -5783,7 +5874,7 @@ class="ec-lmtt-9">(</span><span
class="ec-lmtt-9">F3</span><span
class="ec-lmtt-9">)</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-192003r2"></a></span><span
+ id="x31-188003r2"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -5818,18 +5909,18 @@ class="ec-lmtt-9">room</span><span
class="ec-lmtt-9">"</span>
</div>
<a
- id="x31-192004r264"></a>
+ id="x31-188004r263"></a>
<h5 class="subsubsectionHead"><span class="titlemark">7.1.2.21 </span> <a
- id="x31-19300021"></a>ProtocolClass</h5>
-<!--l. 1255--><p class="noindent" ><a
+ id="x31-18900021"></a>ProtocolClass</h5>
+<!--l. 1269--><p class="noindent" ><a
id="ref:ProtocolClass"></a> A ProtocolClass defines messages and is the interface specification for a Port
-</p><!--l. 1258--><p class="noindent" >A ProtocolClass provides a reusable interface specification for ports. It defines a set of incoming and outgoing Messages that
+</p><!--l. 1272--><p class="noindent" >A ProtocolClass provides a reusable interface specification for ports. It defines a set of incoming and outgoing Messages that
can be exchanged between two ports. The exact semantics of a message is defined by the CommunicationType. Protocol
classes have only textual notation.
</p>
-<!--l. 1262-->
-<div class="lstlisting" id="listing-70"><span class="label"><a
- id="x31-193001r1"></a></span><span
+<!--l. 1276-->
+<div class="lstlisting" id="listing-58"><span class="label"><a
+ id="x31-189001r1"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmssbx-10x-x-90">ProtocolClass</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -5837,7 +5928,7 @@ class="ec-lmtt-9">SimpleProtocolClass</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-193002r2"></a></span><span
+ id="x31-189002r2"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -5845,7 +5936,7 @@ class="ec-lmssbx-10x-x-90">incoming</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-193003r3"></a></span><span
+ id="x31-189003r3"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -5860,7 +5951,7 @@ class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">int32</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-193004r4"></a></span><span
+ id="x31-189004r4"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -5870,13 +5961,13 @@ class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">msg2</span><span
class="ec-lmtt-9">()</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-193005r5"></a></span><span
+ id="x31-189005r5"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-193006r6"></a></span><span
+ id="x31-189006r6"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -5884,7 +5975,7 @@ class="ec-lmssbx-10x-x-90">outgoing</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-193007r7"></a></span><span
+ id="x31-189007r7"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -5899,7 +5990,7 @@ class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">DataClass1</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-193008r8"></a></span><span
+ id="x31-189008r8"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -5909,166 +6000,166 @@ class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">msg4</span><span
class="ec-lmtt-9">()</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-193009r9"></a></span><span
+ id="x31-189009r9"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-193010r10"></a></span><span
+ id="x31-189010r10"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span>
-
-
</div>
-<!--l. 1277--><p class="noindent" ><span
+<!--l. 1291--><p class="noindent" ><span
class="ec-lmssbx-10">Features:</span>
<a
- id="x31-193011r34"></a></p>
-<!--l. 1282--><div class="longtable"> <table id="TBL-53" class="longtable"
+ id="x31-189011r34"></a></p>
+<!--l. 1296--><div class="longtable"> <table id="TBL-52" class="longtable"
cellspacing="0" cellpadding="0" rules="groups"
-><colgroup id="TBL-53-1g"><col
-id="TBL-53-1" /></colgroup><colgroup id="TBL-53-2g"><col
-id="TBL-53-2" /><col
-id="TBL-53-3" /></colgroup>
+><colgroup id="TBL-52-1g"><col
+id="TBL-52-1" /></colgroup><colgroup id="TBL-52-2g"><col
+id="TBL-52-2" /><col
+id="TBL-52-3" /></colgroup>
<tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-53-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-53-1-1"
-class="td11"> Contains: </td><td style="white-space:nowrap; text-align:left;" id="TBL-53-1-2"
+ style="vertical-align:baseline;" id="TBL-52-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-52-1-1"
+class="td11"> Contains: </td><td style="white-space:nowrap; text-align:left;" id="TBL-52-1-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:CommunicationType">CommunicationType</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-53-1-3"
+href="#ref:CommunicationType">CommunicationType</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-52-1-3"
class="td11">
- <!--l. 1282--><p class="noindent" >The CommunicationType defines the communication
+ <!--l. 1296--><p class="noindent" >The CommunicationType defines the communication
semantics of a ProtocolClass. </p></td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-53-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-53-2-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-53-2-2"
+ style="vertical-align:baseline;" id="TBL-52-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-52-2-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-52-2-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:Attribute">Attribute</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-53-2-3"
+href="#ref:Attribute">Attribute</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-52-2-3"
class="td11">
- <!--l. 1283--><p class="noindent" >An Attribute is a member variable of a class </p></td>
+ <!--l. 1297--><p class="noindent" >An Attribute is a member variable of a class </p></td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-53-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-53-3-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-53-3-2"
+ style="vertical-align:baseline;" id="TBL-52-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-52-3-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-52-3-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:Operation">Operation</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-53-3-3"
+href="#ref:Operation">Operation</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-52-3-3"
class="td11">
- <!--l. 1284--><p class="noindent" >An Operation is a member function of a class. </p></td>
+ <!--l. 1298--><p class="noindent" >An Operation is a member function of a class. </p></td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-53-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-53-4-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-53-4-2"
+ style="vertical-align:baseline;" id="TBL-52-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-52-4-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-52-4-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:Annotation">Annotation</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-53-4-3"
+href="#ref:Annotation">Annotation</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-52-4-3"
class="td11">
- <!--l. 1285--><p class="noindent" >An Annotation can be attached to a ROOM classes to
+ <!--l. 1299--><p class="noindent" >An Annotation can be attached to a ROOM classes to
apply the properties of its AnnotationType. </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-53-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-53-5-1"
-class="td11"> Uses: </td><td style="white-space:nowrap; text-align:left;" id="TBL-53-5-2"
+ style="vertical-align:baseline;" id="TBL-52-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-52-5-1"
+class="td11"> Uses: </td><td style="white-space:nowrap; text-align:left;" id="TBL-52-5-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:Inheritance">Inheritance</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-53-5-3"
+href="#ref:Inheritance">Inheritance</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-52-5-3"
class="td11">
- <!--l. 1287--><p class="noindent" >A class can specify a super class and inherits elements from
+ <!--l. 1301--><p class="noindent" >A class can specify a super class and inherits elements from
the super class hierarchy. </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-53-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-53-6-1"
+ style="vertical-align:baseline;" id="TBL-52-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-52-6-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-53-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-53-7-1"
+ style="vertical-align:baseline;" id="TBL-52-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-52-7-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-53-8-"><td style="white-space:nowrap; text-align:left;" id="TBL-53-8-1"
+ style="vertical-align:baseline;" id="TBL-52-8-"><td style="white-space:nowrap; text-align:left;" id="TBL-52-8-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-53-9-"><td style="white-space:nowrap; text-align:left;" id="TBL-53-9-1"
+ style="vertical-align:baseline;" id="TBL-52-9-"><td style="white-space:nowrap; text-align:left;" id="TBL-52-9-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-53-10-"><td style="white-space:nowrap; text-align:left;" id="TBL-53-10-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-53-10-2"
-class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-53-10-3"
+ style="vertical-align:baseline;" id="TBL-52-10-"><td style="white-space:nowrap; text-align:left;" id="TBL-52-10-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-52-10-2"
+class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-52-10-3"
class="td11">
</td></tr>
</table></div>
-<!--l. 1293--><p class="noindent" ><span
+<!--l. 1307--><p class="noindent" ><span
class="ec-lmssbx-10">Feature Usage:</span>
<a
- id="x31-193012r35"></a></p>
-<!--l. 1298--><div class="longtable"> <table id="TBL-54" class="longtable"
+ id="x31-189012r35"></a></p>
+<!--l. 1312--><div class="longtable"> <table id="TBL-53" class="longtable"
cellspacing="0" cellpadding="0" rules="groups"
-><colgroup id="TBL-54-1g"><col
-id="TBL-54-1" /></colgroup><colgroup id="TBL-54-2g"><col
-id="TBL-54-2" /><col
-id="TBL-54-3" /></colgroup>
+><colgroup id="TBL-53-1g"><col
+id="TBL-53-1" /></colgroup><colgroup id="TBL-53-2g"><col
+id="TBL-53-2" /><col
+id="TBL-53-3" /></colgroup>
<tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-54-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-54-1-1"
-class="td11"> Typecasts: </td><td style="white-space:nowrap; text-align:left;" id="TBL-54-1-2"
+ style="vertical-align:baseline;" id="TBL-53-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-53-1-1"
+class="td11"> Typecasts: </td><td style="white-space:nowrap; text-align:left;" id="TBL-53-1-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:Port">Port</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-54-1-3"
+href="#ref:Port">Port</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-53-1-3"
class="td11">
- <!--l. 1298--><p class="noindent" >A Port is an instance of a ProtocolClass and the interface
+ <!--l. 1312--><p class="noindent" >A Port is an instance of a ProtocolClass and the interface
for an ActorClass. </p></td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-54-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-54-2-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-54-2-2"
+ style="vertical-align:baseline;" id="TBL-53-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-53-2-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-53-2-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:SAP">SAP</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-54-2-3"
+href="#ref:SAP">SAP</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-53-2-3"
class="td11">
- <!--l. 1299--><p class="noindent" >A Service Access Point is similar to a Port, but uses a
+ <!--l. 1313--><p class="noindent" >A Service Access Point is similar to a Port, but uses a
LayerConnection for wiring. </p></td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-54-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-54-3-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-54-3-2"
+ style="vertical-align:baseline;" id="TBL-53-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-53-3-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-53-3-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:SPP">SPP</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-54-3-3"
+href="#ref:SPP">SPP</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-53-3-3"
class="td11">
- <!--l. 1300--><p class="noindent" >A Service Provision Point is the counterpart of a SAP </p></td>
+ <!--l. 1314--><p class="noindent" >A Service Provision Point is the counterpart of a SAP </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-54-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-54-4-1"
-class="td11"> Is contained in: </td><td style="white-space:nowrap; text-align:left;" id="TBL-54-4-2"
+ style="vertical-align:baseline;" id="TBL-53-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-53-4-1"
+class="td11"> Is contained in: </td><td style="white-space:nowrap; text-align:left;" id="TBL-53-4-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:LogicalModel">LogicalModel</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-54-4-3"
+href="#ref:LogicalModel">LogicalModel</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-53-4-3"
class="td11">
- <!--l. 1302--><p class="noindent" >The LogicalModel describes the logical structure and
+ <!--l. 1316--><p class="noindent" >The LogicalModel describes the logical structure and
behavior of a ROOM application. </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-54-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-54-5-1"
+ style="vertical-align:baseline;" id="TBL-53-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-53-5-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-54-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-54-6-1"
+ style="vertical-align:baseline;" id="TBL-53-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-53-6-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-54-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-54-7-1"
+ style="vertical-align:baseline;" id="TBL-53-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-53-7-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-54-8-"><td style="white-space:nowrap; text-align:left;" id="TBL-54-8-1"
+ style="vertical-align:baseline;" id="TBL-53-8-"><td style="white-space:nowrap; text-align:left;" id="TBL-53-8-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-54-9-"><td style="white-space:nowrap; text-align:left;" id="TBL-54-9-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-54-9-2"
-class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-54-9-3"
+ style="vertical-align:baseline;" id="TBL-53-9-"><td style="white-space:nowrap; text-align:left;" id="TBL-53-9-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-53-9-2"
+class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-53-9-3"
class="td11">
</td></tr>
+
+
</table></div>
-<!--l. 1307--><p class="noindent" ><span
+<!--l. 1321--><p class="noindent" ><span
class="ec-lmssbx-10">Example:</span>
</p>
-<!--l. 1309-->
-<div class="lstlisting" id="listing-71"><span class="label"><a
- id="x31-193013r1"></a></span><span
+<!--l. 1323-->
+<div class="lstlisting" id="listing-59"><span class="label"><a
+ id="x31-189013r1"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -6102,9 +6193,9 @@ class="ec-lmtt-9">.</span><span
class="ec-lmtt-9">room</span><span
class="ec-lmtt-9">"</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-193014r2"></a></span><span
+ id="x31-189014r2"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-193015r3"></a></span><span
+ id="x31-189015r3"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -6125,7 +6216,7 @@ class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">bidirectional</span><span
class="ec-lmtt-9">)</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-193016r4"></a></span><span
+ id="x31-189016r4"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -6137,7 +6228,7 @@ class="ec-lmtt-9">ProtocolClassEvt</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-193017r5"></a></span><span
+ id="x31-189017r5"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -6166,7 +6257,7 @@ class="ec-lmtt-9">is</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">default</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-193018r6"></a></span><span
+ id="x31-189018r6"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -6175,7 +6266,7 @@ class="ec-lmssbx-10x-x-90">incoming</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-193019r7"></a></span><span
+ id="x31-189019r7"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -6210,7 +6301,7 @@ class="ec-lmtt-9">conjugated</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">port</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-193020r8"></a></span><span
+ id="x31-189020r8"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -6230,7 +6321,7 @@ class="ec-lmtt-9">without</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">data</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-193021r9"></a></span><span
+ id="x31-189021r9"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -6257,7 +6348,7 @@ class="ec-lmtt-9">simple</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">data</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-193022r10"></a></span><span
+ id="x31-189022r10"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -6288,16 +6379,16 @@ class="ec-lmtt-9">(</span><span
class="ec-lmtt-9">DataClass</span><span
class="ec-lmtt-9">)</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-193023r11"></a></span><span
+ id="x31-189023r11"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-193024r12"></a></span><span
+ id="x31-189024r12"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-193025r13"></a></span><span
+ id="x31-189025r13"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -6306,7 +6397,7 @@ class="ec-lmssbx-10x-x-90">outgoing</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-193026r14"></a></span><span
+ id="x31-189026r14"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -6339,7 +6430,7 @@ class="ec-lmtt-9">conjugated</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">port</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-193027r15"></a></span><span
+ id="x31-189027r15"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -6384,22 +6475,22 @@ class="ec-lmtt-9">symmetric</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">protocols</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-193028r16"></a></span><span
+ id="x31-189028r16"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-193029r17"></a></span><span
+ id="x31-189029r17"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-193030r18"></a></span><span
+ id="x31-189030r18"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-193031r19"></a></span><span
+ id="x31-189031r19"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -6419,7 +6510,7 @@ class="ec-lmtt-9">via</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">message</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-193032r20"></a></span><span
+ id="x31-189032r20"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -6429,7 +6520,7 @@ class="ec-lmtt-9">DMessageData</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-193033r21"></a></span><span
+ id="x31-189033r21"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -6441,7 +6532,7 @@ class="ec-lmtt-9">:</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">int16</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-193034r22"></a></span><span
+ id="x31-189034r22"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -6453,15 +6544,15 @@ class="ec-lmtt-9">:</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">int32</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-193035r23"></a></span><span
+ id="x31-189035r23"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-193036r24"></a></span><span
+ id="x31-189036r24"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-193037r25"></a></span><span
+ id="x31-189037r25"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -6482,7 +6573,7 @@ class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">unidirectional</span><span
class="ec-lmtt-9">)</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-193038r26"></a></span><span
+ id="x31-189038r26"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -6494,7 +6585,7 @@ class="ec-lmtt-9">ProtocolClassData</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-193039r27"></a></span><span
+ id="x31-189039r27"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -6503,7 +6594,7 @@ class="ec-lmssbx-10x-x-90">incoming</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-193040r28"></a></span><span
+ id="x31-189040r28"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -6538,7 +6629,7 @@ class="ec-lmtt-9">conjugated</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">port</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-193041r29"></a></span><span
+ id="x31-189041r29"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -6573,7 +6664,7 @@ class="ec-lmtt-9">needs</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">data</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-193042r30"></a></span><span
+ id="x31-189042r30"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -6602,7 +6693,7 @@ class="ec-lmtt-9">simple</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">data</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-193043r31"></a></span><span
+ id="x31-189043r31"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -6635,16 +6726,16 @@ class="ec-lmtt-9">(</span><span
class="ec-lmtt-9">DataClass</span><span
class="ec-lmtt-9">)</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-193044r32"></a></span><span
+ id="x31-189044r32"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-193045r33"></a></span><span
+ id="x31-189045r33"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-193046r34"></a></span><span
+ id="x31-189046r34"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -6665,29 +6756,29 @@ class="ec-lmtt-9">ports</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">allowed</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-193047r35"></a></span><span
+ id="x31-189047r35"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span>
</div>
<a
- id="x31-193048r265"></a>
+ id="x31-189048r264"></a>
<h5 class="subsubsectionHead"><span class="titlemark">7.1.2.22 </span> <a
- id="x31-19400022"></a>RelayPort</h5>
-<!--l. 1352--><p class="noindent" ><a
+ id="x31-19000022"></a>RelayPort</h5>
+<!--l. 1366--><p class="noindent" ><a
id="ref:RelayPort"></a> A RelayPort forwards its messages without exposing them to the internal interface of the ActorClass.
</p>
-<!--l. 1355-->
-<div class="lstlisting" id="listing-72"><span class="label"><a
- id="x31-194001r1"></a></span><span
+<!--l. 1369-->
+<div class="lstlisting" id="listing-60"><span class="label"><a
+ id="x31-190001r1"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmssbx-10x-x-90">ActorClass</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">RelayPortExample</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-194002r2"></a></span><span
+ id="x31-190002r2"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -6695,7 +6786,7 @@ class="ec-lmssbx-10x-x-90">Interface</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-194003r3"></a></span><span
+ id="x31-190003r3"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -6708,13 +6799,13 @@ class="ec-lmtt-9">:</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">PSimpleProtocol</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-194004r4"></a></span><span
+ id="x31-190004r4"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-194005r5"></a></span><span
+ id="x31-190005r5"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -6722,7 +6813,7 @@ class="ec-lmssbx-10x-x-90">Structure</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-194006r6"></a></span><span
+ id="x31-190006r6"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -6735,9 +6826,9 @@ class="ec-lmtt-9">:</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">SimpleActorClass2</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-194007r7"></a></span><span
+ id="x31-190007r7"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-194008r8"></a></span><span
+ id="x31-190008r8"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -6762,7 +6853,7 @@ class="ec-lmtt-9">an</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">ActorRef</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-194009r9"></a></span><span
+ id="x31-190009r9"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -6777,13 +6868,13 @@ class="ec-lmtt-9">actorRef1</span><span
class="ec-lmtt-9">.</span><span
class="ec-lmtt-9">externalPort</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-194010r10"></a></span><span
+ id="x31-190010r10"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-194011r11"></a></span><span
+ id="x31-190011r11"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -6791,7 +6882,7 @@ class="ec-lmssbx-10x-x-90">Behavior</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-194012r12"></a></span><span
+ id="x31-190012r12"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -6806,72 +6897,70 @@ class="ec-lmtt-9">available</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">!</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-194013r13"></a></span><span
+ id="x31-190013r13"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-194014r14"></a></span><span
+ id="x31-190014r14"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span>
-
-
</div>
-<!--l. 1371--><p class="noindent" ><img
+<!--l. 1385--><p class="noindent" ><img
src="images/300-RelayPort.png" alt="PIC"
/>
-</p><!--l. 1375--><p class="noindent" ><span
+</p><!--l. 1389--><p class="noindent" ><span
class="ec-lmssbx-10">Features:</span>
<a
- id="x31-194015r36"></a></p>
-<!--l. 1380--><div class="longtable"> <table id="TBL-55" class="longtable"
+ id="x31-190015r36"></a></p>
+<!--l. 1394--><div class="longtable"> <table id="TBL-54" class="longtable"
cellspacing="0" cellpadding="0" rules="groups"
-><colgroup id="TBL-55-1g"><col
-id="TBL-55-1" /></colgroup><colgroup id="TBL-55-2g"><col
-id="TBL-55-2" /><col
-id="TBL-55-3" /></colgroup>
+><colgroup id="TBL-54-1g"><col
+id="TBL-54-1" /></colgroup><colgroup id="TBL-54-2g"><col
+id="TBL-54-2" /><col
+id="TBL-54-3" /></colgroup>
<tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-55-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-55-1-1"
-class="td11"> Is a: </td><td style="white-space:nowrap; text-align:left;" id="TBL-55-1-2"
+ style="vertical-align:baseline;" id="TBL-54-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-54-1-1"
+class="td11"> Is a: </td><td style="white-space:nowrap; text-align:left;" id="TBL-54-1-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:Port">Port</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-55-1-3"
+href="#ref:Port">Port</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-54-1-3"
class="td11">
- <!--l. 1380--><p class="noindent" >A Port is an instance of a ProtocolClass and the interface
+ <!--l. 1394--><p class="noindent" >A Port is an instance of a ProtocolClass and the interface
for an ActorClass. </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-55-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-55-2-1"
+ style="vertical-align:baseline;" id="TBL-54-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-54-2-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-55-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-55-3-1"
+ style="vertical-align:baseline;" id="TBL-54-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-54-3-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-55-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-55-4-1"
+ style="vertical-align:baseline;" id="TBL-54-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-54-4-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-55-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-55-5-1"
+ style="vertical-align:baseline;" id="TBL-54-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-54-5-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-55-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-55-6-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-55-6-2"
-class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-55-6-3"
+ style="vertical-align:baseline;" id="TBL-54-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-54-6-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-54-6-2"
+class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-54-6-3"
class="td11">
</td></tr>
</table></div>
<a
- id="x31-194016r266"></a>
+ id="x31-190016r265"></a>
<h5 class="subsubsectionHead"><span class="titlemark">7.1.2.23 </span> <a
- id="x31-19500023"></a>Replication</h5>
-<!--l. 1392--><p class="noindent" ><a
+ id="x31-19100023"></a>Replication</h5>
+<!--l. 1406--><p class="noindent" ><a
id="ref:Replication"></a> Replication is mechanism for multi instantiation for ActorRefs and Ports.
-</p><!--l. 1395--><p class="noindent" >ActorRefs and Ports can be instantiated several times under the same name. The notation is similar to arrays in programming
+</p><!--l. 1409--><p class="noindent" >ActorRefs and Ports can be instantiated several times under the same name. The notation is similar to arrays in programming
languages.
-</p><!--l. 1397--><p class="noindent" >This possibility provides an elegant way of scaling of your system without redundancy. </p><!--l. 1398-->
-<div class="lstlisting" id="listing-73"><span class="label"><a
- id="x31-195001r1"></a></span><span
+</p><!--l. 1411--><p class="noindent" >This possibility provides an elegant way of scaling of your system without redundancy. </p><!--l. 1412-->
+<div class="lstlisting" id="listing-61"><span class="label"><a
+ id="x31-191001r1"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -6890,7 +6979,7 @@ class="ec-lmtt-9">one</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">instance</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-195002r2"></a></span><span
+ id="x31-191002r2"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -6909,7 +6998,7 @@ class="ec-lmtt-9">one</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">instance</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-195003r3"></a></span><span
+ id="x31-191003r3"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -6928,10 +7017,10 @@ class="ec-lmtt-9">five</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">instances</span>
</div>
-<!--l. 1404--><p class="noindent" >Replication can also applied to Ports. One use case is to establish a communication with multiple actors through one port
-interface. </p><!--l. 1405-->
-<div class="lstlisting" id="listing-74"><span class="label"><a
- id="x31-195004r1"></a></span><span
+<!--l. 1418--><p class="noindent" >Replication can also applied to Ports. One use case is to establish a communication with multiple actors through one port
+interface. </p><!--l. 1419-->
+<div class="lstlisting" id="listing-62"><span class="label"><a
+ id="x31-191004r1"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -6951,7 +7040,7 @@ class="ec-lmtt-9">five</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">instances</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-195005r2"></a></span><span
+ id="x31-191005r2"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -6975,167 +7064,181 @@ class="ec-lmtt-9">as</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">needed</span>
</div>
-<!--l. 1413--><p class="noindent" ><span
+<!--l. 1427--><p class="noindent" ><span
class="ec-lmssbx-10">Feature Usage:</span>
<a
- id="x31-195006r37"></a></p>
-<!--l. 1418--><div class="longtable"> <table id="TBL-56" class="longtable"
+ id="x31-191006r37"></a></p>
+<!--l. 1432--><div class="longtable"> <table id="TBL-55" class="longtable"
cellspacing="0" cellpadding="0" rules="groups"
-><colgroup id="TBL-56-1g"><col
-id="TBL-56-1" /></colgroup><colgroup id="TBL-56-2g"><col
-id="TBL-56-2" /><col
-id="TBL-56-3" /></colgroup>
+><colgroup id="TBL-55-1g"><col
+id="TBL-55-1" /></colgroup><colgroup id="TBL-55-2g"><col
+id="TBL-55-2" /><col
+id="TBL-55-3" /></colgroup>
+
+
<tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-56-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-56-1-1"
-class="td11"> Is used by: </td><td style="white-space:nowrap; text-align:left;" id="TBL-56-1-2"
+ style="vertical-align:baseline;" id="TBL-55-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-55-1-1"
+class="td11"> Is used by: </td><td style="white-space:nowrap; text-align:left;" id="TBL-55-1-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:ActorRef">ActorRef</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-56-1-3"
+href="#ref:ActorRef">ActorRef</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-55-1-3"
class="td11">
- <!--l. 1418--><p class="noindent" >An ActorRef is an instance of an ActorClass. </p></td>
+ <!--l. 1432--><p class="noindent" >An ActorRef is an instance of an ActorClass. </p></td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-56-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-56-2-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-56-2-2"
+ style="vertical-align:baseline;" id="TBL-55-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-55-2-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-55-2-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:Port">Port</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-56-2-3"
+href="#ref:Port">Port</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-55-2-3"
class="td11">
- <!--l. 1419--><p class="noindent" >A Port is an instance of a ProtocolClass and the interface
+ <!--l. 1433--><p class="noindent" >A Port is an instance of a ProtocolClass and the interface
for an ActorClass. </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-56-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-56-3-1"
+ style="vertical-align:baseline;" id="TBL-55-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-55-3-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-56-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-56-4-1"
+ style="vertical-align:baseline;" id="TBL-55-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-55-4-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-56-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-56-5-1"
+ style="vertical-align:baseline;" id="TBL-55-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-55-5-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-56-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-56-6-1"
+ style="vertical-align:baseline;" id="TBL-55-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-55-6-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-56-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-56-7-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-56-7-2"
-class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-56-7-3"
+ style="vertical-align:baseline;" id="TBL-55-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-55-7-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-55-7-2"
+class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-55-7-3"
class="td11">
</td></tr>
</table></div>
<a
- id="x31-195007r267"></a>
+ id="x31-191007r266"></a>
<h5 class="subsubsectionHead"><span class="titlemark">7.1.2.24 </span> <a
- id="x31-19600024"></a>SAP</h5>
-<!--l. 1430--><p class="noindent" ><a
+ id="x31-19200024"></a>SAP</h5>
+<!--l. 1444--><p class="noindent" ><a
id="ref:SAP"></a> A Service Access Point is similar to a Port, but uses a LayerConnection for wiring.
</p>
<ul class="itemize1">
<li class="itemize">An actor class can define a Service Provision Point (SPP) to publish a specific service, defined by a protocol
class
-
-
</li>
<li class="itemize">An actor class can define a Service Access Point (SAP) if it needs a service, defined by a protocol class
</li>
<li class="itemize">For a given actor hierarchy, a LayerConnection defines which SAP will be satisfied by (connected to) which
SPP</li></ul>
-<!--l. 1441--><p class="noindent" ><span
+<!--l. 1455--><p class="noindent" ><span
class="ec-lmssbx-10">Features:</span>
<a
- id="x31-196001r38"></a></p>
-<!--l. 1446--><div class="longtable"> <table id="TBL-57" class="longtable"
+ id="x31-192001r38"></a></p>
+<!--l. 1460--><div class="longtable"> <table id="TBL-56" class="longtable"
cellspacing="0" cellpadding="0" rules="groups"
-><colgroup id="TBL-57-1g"><col
-id="TBL-57-1" /></colgroup><colgroup id="TBL-57-2g"><col
-id="TBL-57-2" /><col
-id="TBL-57-3" /></colgroup>
+><colgroup id="TBL-56-1g"><col
+id="TBL-56-1" /></colgroup><colgroup id="TBL-56-2g"><col
+id="TBL-56-2" /><col
+id="TBL-56-3" /></colgroup>
<tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-57-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-57-1-1"
-class="td11"> Is of type: </td><td style="white-space:nowrap; text-align:left;" id="TBL-57-1-2"
+ style="vertical-align:baseline;" id="TBL-56-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-56-1-1"
+class="td11"> Is of type: </td><td style="white-space:nowrap; text-align:left;" id="TBL-56-1-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:ProtocolClass">ProtocolClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-57-1-3"
+href="#ref:ProtocolClass">ProtocolClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-56-1-3"
class="td11">
- <!--l. 1446--><p class="noindent" >A ProtocolClass defines messages and is the interface
+ <!--l. 1460--><p class="noindent" >A ProtocolClass defines messages and is the interface
specification for a Port </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-57-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-57-2-1"
+ style="vertical-align:baseline;" id="TBL-56-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-56-2-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-57-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-57-3-1"
+ style="vertical-align:baseline;" id="TBL-56-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-56-3-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-57-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-57-4-1"
+ style="vertical-align:baseline;" id="TBL-56-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-56-4-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-57-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-57-5-1"
+ style="vertical-align:baseline;" id="TBL-56-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-56-5-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-57-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-57-6-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-57-6-2"
-class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-57-6-3"
+ style="vertical-align:baseline;" id="TBL-56-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-56-6-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-56-6-2"
+class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-56-6-3"
class="td11">
</td></tr>
</table></div>
-<!--l. 1452--><p class="noindent" ><span
+<!--l. 1466--><p class="noindent" ><span
class="ec-lmssbx-10">Feature Usage:</span>
<a
- id="x31-196002r39"></a></p>
-<!--l. 1457--><div class="longtable"> <table id="TBL-58" class="longtable"
+ id="x31-192002r39"></a></p>
+<!--l. 1471--><div class="longtable"> <table id="TBL-57" class="longtable"
cellspacing="0" cellpadding="0" rules="groups"
-><colgroup id="TBL-58-1g"><col
-id="TBL-58-1" /></colgroup><colgroup id="TBL-58-2g"><col
-id="TBL-58-2" /><col
-id="TBL-58-3" /></colgroup>
+><colgroup id="TBL-57-1g"><col
+id="TBL-57-1" /></colgroup><colgroup id="TBL-57-2g"><col
+id="TBL-57-2" /><col
+id="TBL-57-3" /></colgroup>
<tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-58-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-58-1-1"
-class="td11"> Is contained in: </td><td style="white-space:nowrap; text-align:left;" id="TBL-58-1-2"
+ style="vertical-align:baseline;" id="TBL-57-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-57-1-1"
+class="td11"> Is contained in: </td><td style="white-space:nowrap; text-align:left;" id="TBL-57-1-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:ActorClass">ActorClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-58-1-3"
+href="#ref:ActorClass">ActorClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-57-1-3"
class="td11">
- <!--l. 1457--><p class="noindent" >An actor is the basic structural building block for building
+ <!--l. 1471--><p class="noindent" >An actor is the basic structural building block for building
systems with ROOM. </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-58-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-58-2-1"
-class="td11"> Is used by: </td><td style="white-space:nowrap; text-align:left;" id="TBL-58-2-2"
+ style="vertical-align:baseline;" id="TBL-57-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-57-2-1"
+class="td11"> Is edited by: </td><td style="white-space:nowrap; text-align:left;" id="TBL-57-2-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:LayerConnection">LayerConnection</a> : SAPoint </td><td style="white-space:wrap; text-align:left;" id="TBL-58-2-3"
+href="etrice-docse23.html#ref:GraphicalStructureEditor">GraphicalStructureEditor</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-57-2-3"
class="td11">
- <!--l. 1459--><p class="noindent" >A LayerConnection associates a SPP to an ActorRef,
+ <!--l. 1473--><p class="noindent" >The Structure Editor allows to edit the ActorClass&#8217;
+ Structure in a convenient way. It is possible to create and
+ arrange actor references and ports and to create bindings
+ and layer connections. </p></td>
+</tr><tr
+class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
+ style="vertical-align:baseline;" id="TBL-57-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-57-3-1"
+class="td11"> Is used by: </td><td style="white-space:nowrap; text-align:left;" id="TBL-57-3-2"
+class="td11"> &#x00A0;&#x00A0;<span
+class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
+href="#ref:LayerConnection">LayerConnection</a> : SAPoint </td><td style="white-space:wrap; text-align:left;" id="TBL-57-3-3"
+class="td11">
+ <!--l. 1475--><p class="noindent" >A LayerConnection associates a SPP to an ActorRef,
resulting in an connection of all SAPs on its instance
hierarchy. </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-58-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-58-3-1"
+ style="vertical-align:baseline;" id="TBL-57-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-57-4-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-58-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-58-4-1"
+ style="vertical-align:baseline;" id="TBL-57-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-57-5-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-58-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-58-5-1"
+ style="vertical-align:baseline;" id="TBL-57-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-57-6-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-58-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-58-6-1"
+ style="vertical-align:baseline;" id="TBL-57-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-57-7-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-58-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-58-7-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-58-7-2"
-class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-58-7-3"
+ style="vertical-align:baseline;" id="TBL-57-8-"><td style="white-space:nowrap; text-align:left;" id="TBL-57-8-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-57-8-2"
+class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-57-8-3"
class="td11">
</td></tr>
</table></div>
+
+
<a
- id="x31-196003r268"></a>
+ id="x31-192003r267"></a>
<h5 class="subsubsectionHead"><span class="titlemark">7.1.2.25 </span> <a
- id="x31-19700025"></a>SPP</h5>
-<!--l. 1470--><p class="noindent" ><a
+ id="x31-19300025"></a>SPP</h5>
+<!--l. 1486--><p class="noindent" ><a
id="ref:SPP"></a> A Service Provision Point is the counterpart of a SAP
</p>
<ul class="itemize1">
@@ -7146,454 +7249,475 @@ class="td11">
</li>
<li class="itemize">For a given actor hierarchy, a LayerConnection defines which SAP will be satisfied by (connected to) which
SPP</li></ul>
-<!--l. 1481--><p class="noindent" ><span
+<!--l. 1497--><p class="noindent" ><span
class="ec-lmssbx-10">Features:</span>
<a
- id="x31-197001r40"></a></p>
-<!--l. 1486--><div class="longtable"> <table id="TBL-59" class="longtable"
+ id="x31-193001r40"></a></p>
+<!--l. 1502--><div class="longtable"> <table id="TBL-58" class="longtable"
cellspacing="0" cellpadding="0" rules="groups"
-><colgroup id="TBL-59-1g"><col
-id="TBL-59-1" /></colgroup><colgroup id="TBL-59-2g"><col
-id="TBL-59-2" /><col
-id="TBL-59-3" /></colgroup>
+><colgroup id="TBL-58-1g"><col
+id="TBL-58-1" /></colgroup><colgroup id="TBL-58-2g"><col
+id="TBL-58-2" /><col
+id="TBL-58-3" /></colgroup>
<tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-59-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-59-1-1"
-class="td11"> Is of type: </td><td style="white-space:nowrap; text-align:left;" id="TBL-59-1-2"
+ style="vertical-align:baseline;" id="TBL-58-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-58-1-1"
+class="td11"> Is of type: </td><td style="white-space:nowrap; text-align:left;" id="TBL-58-1-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:ProtocolClass">ProtocolClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-59-1-3"
+href="#ref:ProtocolClass">ProtocolClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-58-1-3"
class="td11">
- <!--l. 1486--><p class="noindent" >A ProtocolClass defines messages and is the interface
+ <!--l. 1502--><p class="noindent" >A ProtocolClass defines messages and is the interface
specification for a Port </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-59-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-59-2-1"
+ style="vertical-align:baseline;" id="TBL-58-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-58-2-1"
class="td11"> </td>
-
-
</tr><tr
- style="vertical-align:baseline;" id="TBL-59-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-59-3-1"
+ style="vertical-align:baseline;" id="TBL-58-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-58-3-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-59-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-59-4-1"
+ style="vertical-align:baseline;" id="TBL-58-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-58-4-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-59-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-59-5-1"
+ style="vertical-align:baseline;" id="TBL-58-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-58-5-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-59-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-59-6-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-59-6-2"
-class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-59-6-3"
+ style="vertical-align:baseline;" id="TBL-58-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-58-6-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-58-6-2"
+class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-58-6-3"
class="td11">
</td></tr>
</table></div>
-<!--l. 1492--><p class="noindent" ><span
+<!--l. 1508--><p class="noindent" ><span
class="ec-lmssbx-10">Feature Usage:</span>
<a
- id="x31-197002r41"></a></p>
-<!--l. 1497--><div class="longtable"> <table id="TBL-60" class="longtable"
+ id="x31-193002r41"></a></p>
+<!--l. 1513--><div class="longtable"> <table id="TBL-59" class="longtable"
cellspacing="0" cellpadding="0" rules="groups"
-><colgroup id="TBL-60-1g"><col
-id="TBL-60-1" /></colgroup><colgroup id="TBL-60-2g"><col
-id="TBL-60-2" /><col
-id="TBL-60-3" /></colgroup>
+><colgroup id="TBL-59-1g"><col
+id="TBL-59-1" /></colgroup><colgroup id="TBL-59-2g"><col
+id="TBL-59-2" /><col
+id="TBL-59-3" /></colgroup>
<tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-60-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-60-1-1"
-class="td11"> Is contained in: </td><td style="white-space:nowrap; text-align:left;" id="TBL-60-1-2"
+ style="vertical-align:baseline;" id="TBL-59-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-59-1-1"
+class="td11"> Is contained in: </td><td style="white-space:nowrap; text-align:left;" id="TBL-59-1-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:ActorClass">ActorClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-60-1-3"
+href="#ref:ActorClass">ActorClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-59-1-3"
class="td11">
- <!--l. 1497--><p class="noindent" >An actor is the basic structural building block for building
+ <!--l. 1513--><p class="noindent" >An actor is the basic structural building block for building
systems with ROOM. </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-60-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-60-2-1"
-class="td11"> Is used by: </td><td style="white-space:nowrap; text-align:left;" id="TBL-60-2-2"
+ style="vertical-align:baseline;" id="TBL-59-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-59-2-1"
+class="td11"> Is edited by: </td><td style="white-space:nowrap; text-align:left;" id="TBL-59-2-2"
+class="td11"> &#x00A0;&#x00A0;<span
+class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
+href="etrice-docse23.html#ref:SPPPropertyDialog">SPPPropertyDialog</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-59-2-3"
+class="td11">
+ <!--l. 1515--><p class="noindent" >A dialog to edit properties of a SPP. </p></td>
+</tr><tr
+class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
+ style="vertical-align:baseline;" id="TBL-59-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-59-3-1"
+class="td11"> Is used by: </td><td style="white-space:nowrap; text-align:left;" id="TBL-59-3-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:LayerConnection">LayerConnection</a> : SPPoint </td><td style="white-space:wrap; text-align:left;" id="TBL-60-2-3"
+href="#ref:LayerConnection">LayerConnection</a> : SPPoint </td><td style="white-space:wrap; text-align:left;" id="TBL-59-3-3"
class="td11">
- <!--l. 1499--><p class="noindent" >A LayerConnection associates a SPP to an ActorRef,
+ <!--l. 1517--><p class="noindent" >A LayerConnection associates a SPP to an ActorRef,
resulting in an connection of all SAPs on its instance
hierarchy. </p></td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-60-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-60-3-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-60-3-2"
+ style="vertical-align:baseline;" id="TBL-59-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-59-4-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-59-4-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:ServiceImplementation">ServiceImplementation</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-60-3-3"
+href="#ref:ServiceImplementation">ServiceImplementation</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-59-4-3"
class="td11">
- <!--l. 1500--><p class="noindent" >The implementation of an Service Provision Point (SPP). </p></td>
+ <!--l. 1518--><p class="noindent" >The implementation of an Service Provision Point (SPP). </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-60-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-60-4-1"
+ style="vertical-align:baseline;" id="TBL-59-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-59-5-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-60-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-60-5-1"
+ style="vertical-align:baseline;" id="TBL-59-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-59-6-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-60-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-60-6-1"
+ style="vertical-align:baseline;" id="TBL-59-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-59-7-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-60-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-60-7-1"
+ style="vertical-align:baseline;" id="TBL-59-8-"><td style="white-space:nowrap; text-align:left;" id="TBL-59-8-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-60-8-"><td style="white-space:nowrap; text-align:left;" id="TBL-60-8-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-60-8-2"
-class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-60-8-3"
+ style="vertical-align:baseline;" id="TBL-59-9-"><td style="white-space:nowrap; text-align:left;" id="TBL-59-9-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-59-9-2"
+class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-59-9-3"
class="td11">
</td></tr>
</table></div>
<a
- id="x31-197003r269"></a>
+ id="x31-193003r268"></a>
<h5 class="subsubsectionHead"><span class="titlemark">7.1.2.26 </span> <a
- id="x31-19800026"></a>StateMachine</h5>
-<!--l. 1511--><p class="noindent" ><a
+ id="x31-19400026"></a>StateMachine</h5>
+<!--l. 1529--><p class="noindent" ><a
id="ref:StateMachine"></a> A StateMachine describes the state based, event driven behavior of an ActorClass.
-</p><!--l. 1514--><p class="noindent" >In ROOM each actor class can implement its behavior using a state machine. Events occurring at the end ports of
+</p><!--l. 1532--><p class="noindent" >In ROOM each actor class can implement its behavior using a state machine. Events occurring at the end ports of
an actor will be forwarded to and processed by the state machine. Events possibly trigger state transitions.
</p>
<div class="center"
>
-<!--l. 1515--><p class="noindent" >
-</p><!--l. 1516--><p class="noindent" ><img
+<!--l. 1533--><p class="noindent" >
+
+
+</p><!--l. 1534--><p class="noindent" ><img
src="images/300-PingPongReceiverFSM.png" alt="PIC"
/></p></div>
-<!--l. 1521--><p class="noindent" ><span
+<!--l. 1539--><p class="noindent" ><span
class="ec-lmssbx-10">Features:</span>
<a
- id="x31-198001r42"></a></p>
-<!--l. 1526--><div class="longtable"> <table id="TBL-61" class="longtable"
+ id="x31-194001r42"></a></p>
+<!--l. 1544--><div class="longtable"> <table id="TBL-60" class="longtable"
cellspacing="0" cellpadding="0" rules="groups"
-><colgroup id="TBL-61-1g"><col
-id="TBL-61-1" /></colgroup><colgroup id="TBL-61-2g"><col
-id="TBL-61-2" /><col
-id="TBL-61-3" /></colgroup>
+><colgroup id="TBL-60-1g"><col
+id="TBL-60-1" /></colgroup><colgroup id="TBL-60-2g"><col
+id="TBL-60-2" /><col
+id="TBL-60-3" /></colgroup>
<tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-61-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-61-1-1"
-class="td11"> Uses: </td><td style="white-space:nowrap; text-align:left;" id="TBL-61-1-2"
+ style="vertical-align:baseline;" id="TBL-60-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-60-1-1"
+class="td11"> Uses: </td><td style="white-space:nowrap; text-align:left;" id="TBL-60-1-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:Inheritance">Inheritance</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-61-1-3"
+href="#ref:Inheritance">Inheritance</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-60-1-3"
class="td11">
- <!--l. 1526--><p class="noindent" >A class can specify a super class and inherits elements from
+ <!--l. 1544--><p class="noindent" >A class can specify a super class and inherits elements from
the super class hierarchy. </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-61-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-61-2-1"
+ style="vertical-align:baseline;" id="TBL-60-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-60-2-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-61-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-61-3-1"
+ style="vertical-align:baseline;" id="TBL-60-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-60-3-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-61-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-61-4-1"
+ style="vertical-align:baseline;" id="TBL-60-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-60-4-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-61-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-61-5-1"
+ style="vertical-align:baseline;" id="TBL-60-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-60-5-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-61-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-61-6-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-61-6-2"
-class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-61-6-3"
+ style="vertical-align:baseline;" id="TBL-60-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-60-6-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-60-6-2"
+class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-60-6-3"
class="td11">
</td></tr>
</table></div>
-<!--l. 1532--><p class="noindent" ><span
+<!--l. 1550--><p class="noindent" ><span
class="ec-lmssbx-10">Feature Usage:</span>
<a
- id="x31-198002r43"></a></p>
-<!--l. 1537--><div class="longtable"> <table id="TBL-62" class="longtable"
+ id="x31-194002r43"></a></p>
+<!--l. 1555--><div class="longtable"> <table id="TBL-61" class="longtable"
cellspacing="0" cellpadding="0" rules="groups"
-><colgroup id="TBL-62-1g"><col
-id="TBL-62-1" /></colgroup><colgroup id="TBL-62-2g"><col
-id="TBL-62-2" /><col
-id="TBL-62-3" /></colgroup>
+><colgroup id="TBL-61-1g"><col
+id="TBL-61-1" /></colgroup><colgroup id="TBL-61-2g"><col
+id="TBL-61-2" /><col
+id="TBL-61-3" /></colgroup>
<tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-62-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-62-1-1"
-class="td11"> Is contained in: </td><td style="white-space:nowrap; text-align:left;" id="TBL-62-1-2"
+ style="vertical-align:baseline;" id="TBL-61-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-61-1-1"
+class="td11"> Is contained in: </td><td style="white-space:nowrap; text-align:left;" id="TBL-61-1-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:ActorClass">ActorClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-62-1-3"
+href="#ref:ActorClass">ActorClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-61-1-3"
class="td11">
- <!--l. 1537--><p class="noindent" >An actor is the basic structural building block for building
+ <!--l. 1555--><p class="noindent" >An actor is the basic structural building block for building
systems with ROOM. </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-62-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-62-2-1"
+ style="vertical-align:baseline;" id="TBL-61-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-61-2-1"
+class="td11"> Is edited by: </td><td style="white-space:nowrap; text-align:left;" id="TBL-61-2-2"
+class="td11"> &#x00A0;&#x00A0;<span
+class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
+href="etrice-docse23.html#ref:GraphicalBehaviorEditor">GraphicalBehaviorEditor</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-61-2-3"
+class="td11">
+ <!--l. 1557--><p class="noindent" >The GraphicalBehaviorEditor allows to edit the ActorClass&#8217;
+ StateMachine. It is possible to create (hierarchical) states
+ and transitions to model complex behavior in a convenient
+ way. </p></td>
+</tr><tr
+class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
+ style="vertical-align:baseline;" id="TBL-61-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-61-3-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-62-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-62-3-1"
+ style="vertical-align:baseline;" id="TBL-61-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-61-4-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-62-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-62-4-1"
+ style="vertical-align:baseline;" id="TBL-61-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-61-5-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-62-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-62-5-1"
+ style="vertical-align:baseline;" id="TBL-61-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-61-6-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-62-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-62-6-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-62-6-2"
-class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-62-6-3"
+ style="vertical-align:baseline;" id="TBL-61-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-61-7-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-61-7-2"
+class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-61-7-3"
class="td11">
</td></tr>
-
-
</table></div>
<a
- id="x31-198003r270"></a>
+ id="x31-194003r269"></a>
<h5 class="subsubsectionHead"><span class="titlemark">7.1.2.27 </span> <a
- id="x31-19900027"></a>SubSystemClass</h5>
-<!--l. 1548--><p class="noindent" ><a
+ id="x31-19500027"></a>SubSystemClass</h5>
+<!--l. 1568--><p class="noindent" ><a
id="ref:SubSystemClass"></a> A SubSystem is the topmost building block of the executable part of an system.
-</p><!--l. 1551--><p class="noindent" >It represents a class for an logical node in a distributed system. An instantiation translates to an executable application, that
+</p><!--l. 1571--><p class="noindent" >It represents a class for an logical node in a distributed system. An instantiation translates to an executable application, that
runs on a node or process. A SubSystemClass is the structural starting point of an ROOM application. Thus it declares the
topmost actor instances (ActorRefs).
-</p><!--l. 1556--><p class="noindent" ><span
+</p><!--l. 1576--><p class="noindent" ><span
class="ec-lmssbx-10">Features:</span>
<a
- id="x31-199001r44"></a></p>
-<!--l. 1561--><div class="longtable"> <table id="TBL-63" class="longtable"
+ id="x31-195001r44"></a></p>
+<!--l. 1581--><div class="longtable"> <table id="TBL-62" class="longtable"
cellspacing="0" cellpadding="0" rules="groups"
-><colgroup id="TBL-63-1g"><col
-id="TBL-63-1" /></colgroup><colgroup id="TBL-63-2g"><col
-id="TBL-63-2" /><col
-id="TBL-63-3" /></colgroup>
+><colgroup id="TBL-62-1g"><col
+id="TBL-62-1" /></colgroup><colgroup id="TBL-62-2g"><col
+id="TBL-62-2" /><col
+id="TBL-62-3" /></colgroup>
<tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-63-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-63-1-1"
-class="td11"> Contains: </td><td style="white-space:nowrap; text-align:left;" id="TBL-63-1-2"
+ style="vertical-align:baseline;" id="TBL-62-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-62-1-1"
+class="td11"> Contains: </td><td style="white-space:nowrap; text-align:left;" id="TBL-62-1-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:ActorRef">ActorRef</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-63-1-3"
+href="#ref:ActorRef">ActorRef</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-62-1-3"
class="td11">
- <!--l. 1561--><p class="noindent" >An ActorRef is an instance of an ActorClass. </p></td>
+ <!--l. 1581--><p class="noindent" >An ActorRef is an instance of an ActorClass. </p></td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-63-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-63-2-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-63-2-2"
+ style="vertical-align:baseline;" id="TBL-62-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-62-2-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-62-2-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:Binding">Binding</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-63-2-3"
+href="#ref:Binding">Binding</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-62-2-3"
class="td11">
- <!--l. 1562--><p class="noindent" >A Binding connects two Ports with each other. </p></td>
+ <!--l. 1582--><p class="noindent" >A Binding connects two Ports with each other. </p></td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-63-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-63-3-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-63-3-2"
+ style="vertical-align:baseline;" id="TBL-62-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-62-3-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-62-3-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:LayerConnection">LayerConnection</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-63-3-3"
+href="#ref:LayerConnection">LayerConnection</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-62-3-3"
class="td11">
- <!--l. 1563--><p class="noindent" >A LayerConnection associates a SPP to an ActorRef,
+ <!--l. 1583--><p class="noindent" >A LayerConnection associates a SPP to an ActorRef,
resulting in an connection of all SAPs on its instance
hierarchy. </p></td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-63-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-63-4-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-63-4-2"
+ style="vertical-align:baseline;" id="TBL-62-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-62-4-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-62-4-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:Annotation">Annotation</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-63-4-3"
+href="#ref:Annotation">Annotation</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-62-4-3"
class="td11">
- <!--l. 1564--><p class="noindent" >An Annotation can be attached to a ROOM classes to
+ <!--l. 1584--><p class="noindent" >An Annotation can be attached to a ROOM classes to
apply the properties of its AnnotationType. </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-63-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-63-5-1"
+ style="vertical-align:baseline;" id="TBL-62-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-62-5-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-63-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-63-6-1"
+ style="vertical-align:baseline;" id="TBL-62-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-62-6-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-63-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-63-7-1"
+ style="vertical-align:baseline;" id="TBL-62-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-62-7-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-63-8-"><td style="white-space:nowrap; text-align:left;" id="TBL-63-8-1"
+ style="vertical-align:baseline;" id="TBL-62-8-"><td style="white-space:nowrap; text-align:left;" id="TBL-62-8-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-63-9-"><td style="white-space:nowrap; text-align:left;" id="TBL-63-9-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-63-9-2"
-class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-63-9-3"
+ style="vertical-align:baseline;" id="TBL-62-9-"><td style="white-space:nowrap; text-align:left;" id="TBL-62-9-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-62-9-2"
+class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-62-9-3"
class="td11">
</td></tr>
+
+
</table></div>
-<!--l. 1570--><p class="noindent" ><span
+<!--l. 1590--><p class="noindent" ><span
class="ec-lmssbx-10">Feature Usage:</span>
<a
- id="x31-199002r45"></a></p>
-<!--l. 1575--><div class="longtable"> <table id="TBL-64" class="longtable"
+ id="x31-195002r45"></a></p>
+<!--l. 1595--><div class="longtable"> <table id="TBL-63" class="longtable"
cellspacing="0" cellpadding="0" rules="groups"
-><colgroup id="TBL-64-1g"><col
-id="TBL-64-1" /></colgroup><colgroup id="TBL-64-2g"><col
-id="TBL-64-2" /><col
-id="TBL-64-3" /></colgroup>
+><colgroup id="TBL-63-1g"><col
+id="TBL-63-1" /></colgroup><colgroup id="TBL-63-2g"><col
+id="TBL-63-2" /><col
+id="TBL-63-3" /></colgroup>
<tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-64-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-64-1-1"
-class="td11"> Typecasts: </td><td style="white-space:nowrap; text-align:left;" id="TBL-64-1-2"
+ style="vertical-align:baseline;" id="TBL-63-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-63-1-1"
+class="td11"> Typecasts: </td><td style="white-space:nowrap; text-align:left;" id="TBL-63-1-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:SubSystemRef">SubSystemRef</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-64-1-3"
+href="#ref:SubSystemRef">SubSystemRef</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-63-1-3"
class="td11">
- <!--l. 1575--><p class="noindent" >A Sub System Reference is an instance of an
+ <!--l. 1595--><p class="noindent" >A Sub System Reference is an instance of an
SubSystemClass </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-64-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-64-2-1"
-class="td11"> Is contained in: </td><td style="white-space:nowrap; text-align:left;" id="TBL-64-2-2"
+ style="vertical-align:baseline;" id="TBL-63-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-63-2-1"
+class="td11"> Is contained in: </td><td style="white-space:nowrap; text-align:left;" id="TBL-63-2-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:LogicalModel">LogicalModel</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-64-2-3"
+href="#ref:LogicalModel">LogicalModel</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-63-2-3"
class="td11">
- <!--l. 1577--><p class="noindent" >The LogicalModel describes the logical structure and
+ <!--l. 1597--><p class="noindent" >The LogicalModel describes the logical structure and
behavior of a ROOM application. </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-64-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-64-3-1"
+ style="vertical-align:baseline;" id="TBL-63-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-63-3-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-64-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-64-4-1"
+ style="vertical-align:baseline;" id="TBL-63-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-63-4-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-64-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-64-5-1"
+ style="vertical-align:baseline;" id="TBL-63-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-63-5-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-64-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-64-6-1"
+ style="vertical-align:baseline;" id="TBL-63-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-63-6-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-64-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-64-7-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-64-7-2"
-class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-64-7-3"
+ style="vertical-align:baseline;" id="TBL-63-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-63-7-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-63-7-2"
+class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-63-7-3"
class="td11">
</td></tr>
</table></div>
<a
- id="x31-199003r271"></a>
+ id="x31-195003r270"></a>
<h5 class="subsubsectionHead"><span class="titlemark">7.1.2.28 </span> <a
- id="x31-20000028"></a>SubSystemRef</h5>
-<!--l. 1588--><p class="noindent" ><a
+ id="x31-19600028"></a>SubSystemRef</h5>
+<!--l. 1608--><p class="noindent" ><a
id="ref:SubSystemRef"></a> A Sub System Reference is an instance of an SubSystemClass
-</p><!--l. 1591--><p class="noindent" >It represent a logical node in the structural view of a distributed system. An instantiation translates to an executable
+</p><!--l. 1611--><p class="noindent" >It represent a logical node in the structural view of a distributed system. An instantiation translates to an executable
application, that runs on a node or process.
-</p><!--l. 1593--><p class="noindent" >To be executable, a SubSystemRef has first to be mapped to a physical node, which defines the executional properties. A
+</p><!--l. 1613--><p class="noindent" >To be executable, a SubSystemRef has first to be mapped to a physical node, which defines the executional properties. A
physical node is denoted by a NodeClass and NodeRef in the PhysicalModel. The mapping is defined in the MappingModel.
</p>
<div class="center"
>
-<!--l. 1595--><p class="noindent" >
-
-
+<!--l. 1615--><p class="noindent" >
-</p><!--l. 1596--><p class="noindent" ><img
+</p><!--l. 1616--><p class="noindent" ><img
src="images/300-SubSystemRefOverview.png" alt="PIC"
/></p></div>
-<!--l. 1601--><p class="noindent" ><span
+<!--l. 1621--><p class="noindent" ><span
class="ec-lmssbx-10">Features:</span>
<a
- id="x31-200001r46"></a></p>
-<!--l. 1606--><div class="longtable"> <table id="TBL-65" class="longtable"
+ id="x31-196001r46"></a></p>
+<!--l. 1626--><div class="longtable"> <table id="TBL-64" class="longtable"
cellspacing="0" cellpadding="0" rules="groups"
-><colgroup id="TBL-65-1g"><col
-id="TBL-65-1" /></colgroup><colgroup id="TBL-65-2g"><col
-id="TBL-65-2" /><col
-id="TBL-65-3" /></colgroup>
+><colgroup id="TBL-64-1g"><col
+id="TBL-64-1" /></colgroup><colgroup id="TBL-64-2g"><col
+id="TBL-64-2" /><col
+id="TBL-64-3" /></colgroup>
<tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-65-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-65-1-1"
-class="td11"> Is of type: </td><td style="white-space:nowrap; text-align:left;" id="TBL-65-1-2"
+ style="vertical-align:baseline;" id="TBL-64-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-64-1-1"
+class="td11"> Is of type: </td><td style="white-space:nowrap; text-align:left;" id="TBL-64-1-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:SubSystemClass">SubSystemClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-65-1-3"
+href="#ref:SubSystemClass">SubSystemClass</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-64-1-3"
class="td11">
- <!--l. 1606--><p class="noindent" >A SubSystem is the topmost building block of the
+ <!--l. 1626--><p class="noindent" >A SubSystem is the topmost building block of the
executable part of an system. </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-65-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-65-2-1"
+ style="vertical-align:baseline;" id="TBL-64-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-64-2-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-65-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-65-3-1"
+ style="vertical-align:baseline;" id="TBL-64-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-64-3-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-65-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-65-4-1"
+ style="vertical-align:baseline;" id="TBL-64-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-64-4-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-65-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-65-5-1"
+ style="vertical-align:baseline;" id="TBL-64-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-64-5-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-65-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-65-6-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-65-6-2"
-class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-65-6-3"
+ style="vertical-align:baseline;" id="TBL-64-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-64-6-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-64-6-2"
+class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-64-6-3"
class="td11">
</td></tr>
</table></div>
-<!--l. 1612--><p class="noindent" ><span
+<!--l. 1632--><p class="noindent" ><span
class="ec-lmssbx-10">Feature Usage:</span>
<a
- id="x31-200002r47"></a></p>
-<!--l. 1617--><div class="longtable"> <table id="TBL-66" class="longtable"
+ id="x31-196002r47"></a></p>
+<!--l. 1637--><div class="longtable"> <table id="TBL-65" class="longtable"
cellspacing="0" cellpadding="0" rules="groups"
-><colgroup id="TBL-66-1g"><col
-id="TBL-66-1" /></colgroup><colgroup id="TBL-66-2g"><col
-id="TBL-66-2" /><col
-id="TBL-66-3" /></colgroup>
+><colgroup id="TBL-65-1g"><col
+id="TBL-65-1" /></colgroup><colgroup id="TBL-65-2g"><col
+id="TBL-65-2" /><col
+id="TBL-65-3" /></colgroup>
<tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-66-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-66-1-1"
-class="td11"> Is contained in: </td><td style="white-space:nowrap; text-align:left;" id="TBL-66-1-2"
+ style="vertical-align:baseline;" id="TBL-65-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-65-1-1"
+class="td11"> Is contained in: </td><td style="white-space:nowrap; text-align:left;" id="TBL-65-1-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:LogicalSystem">LogicalSystem</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-66-1-3"
+href="#ref:LogicalSystem">LogicalSystem</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-65-1-3"
class="td11">
- <!--l. 1617--><p class="noindent" >The LogicalSystem is the topmost structural class. It
+ <!--l. 1637--><p class="noindent" >The LogicalSystem is the topmost structural class. It
assembles a distributed system by means of sub systems. </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-66-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-66-2-1"
-class="td11"> Is used by: </td><td style="white-space:nowrap; text-align:left;" id="TBL-66-2-2"
+ style="vertical-align:baseline;" id="TBL-65-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-65-2-1"
+class="td11"> Is used by: </td><td style="white-space:nowrap; text-align:left;" id="TBL-65-2-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:MappingModel">MappingModel</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-66-2-3"
+href="#ref:MappingModel">MappingModel</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-65-2-3"
class="td11">
- <!--l. 1619--><p class="noindent" >The MappingModel describes the mapping of elements of
+ <!--l. 1639--><p class="noindent" >The MappingModel describes the mapping of elements of
the LogicalModel to elements of the PhysicalModel. </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-66-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-66-3-1"
+ style="vertical-align:baseline;" id="TBL-65-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-65-3-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-66-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-66-4-1"
+ style="vertical-align:baseline;" id="TBL-65-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-65-4-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-66-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-66-5-1"
+ style="vertical-align:baseline;" id="TBL-65-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-65-5-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-66-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-66-6-1"
+ style="vertical-align:baseline;" id="TBL-65-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-65-6-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-66-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-66-7-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-66-7-2"
-class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-66-7-3"
+ style="vertical-align:baseline;" id="TBL-65-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-65-7-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-65-7-2"
+class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-65-7-3"
class="td11">
</td></tr>
+
+
</table></div>
<a
- id="x31-200003r243"></a>
+ id="x31-196003r242"></a>
<h4 class="subsectionHead"><span class="titlemark">7.1.3 </span> <a
- id="x31-2010003"></a>MappingModel</h4>
-<!--l. 1630--><p class="noindent" ><a
+ id="x31-1970003"></a>MappingModel</h4>
+<!--l. 1650--><p class="noindent" ><a
id="ref:MappingModel"></a> The MappingModel describes the mapping of elements of the LogicalModel to elements of the PhysicalModel.
-</p><!--l. 1633--><p class="noindent" >It enables the complete decoupling of the LogicalModel and the PhysicalModel, thus providing a maximum flexibility and
+</p><!--l. 1653--><p class="noindent" >It enables the complete decoupling of the LogicalModel and the PhysicalModel, thus providing a maximum flexibility and
reuse for the models.
-</p><!--l. 1635--><p class="noindent" >The model starts with an import part, where you can import .room and .etphys models. They must contain at least one
+</p><!--l. 1655--><p class="noindent" >The model starts with an import part, where you can import .room and .etphys models. They must contain at least one
LogicalSystem and one PhysicalSystem. A Mapping entry puts both in relation, meaning that all sub systems of the
LogicalSystem will be distributed to the nodes of the PhysicalSystem. This is carried out by a SubSystemMapping, that maps
a SubSystemRef (logical node) to a NodeRef (physical node). In the next step, ThreadMappings provide the same action for
-the logical and physical threads. </p><!--l. 1639-->
-<div class="lstlisting" id="listing-75"><span class="label"><a
- id="x31-201001r1"></a></span><span
+the logical and physical threads. </p><!--l. 1659-->
+<div class="lstlisting" id="listing-63"><span class="label"><a
+ id="x31-197001r1"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmssbx-10x-x-90">MappingModel</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -7601,7 +7725,7 @@ class="ec-lmtt-9">PingPongMapping</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-201002r2"></a></span><span
+ id="x31-197002r2"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -7618,7 +7742,7 @@ class="ec-lmtt-9">.</span><span
class="ec-lmtt-9">room</span><span
class="ec-lmtt-9">"</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-201003r3"></a></span><span
+ id="x31-197003r3"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -7635,9 +7759,9 @@ class="ec-lmtt-9">.</span><span
class="ec-lmtt-9">etphys</span><span
class="ec-lmtt-9">"</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-201004r4"></a></span><span
+ id="x31-197004r4"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-201005r5"></a></span><span
+ id="x31-197005r5"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -7651,7 +7775,7 @@ class="ec-lmtt-9">PhysSys1</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-201006r6"></a></span><span
+ id="x31-197006r6"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -7666,7 +7790,7 @@ class="ec-lmtt-9">nodeRef1</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-201007r7"></a></span><span
+ id="x31-197007r7"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -7681,94 +7805,92 @@ class="ec-lmtt-9">-&#x003E;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">PhysicalThread1</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-201008r8"></a></span><span
+ id="x31-197008r8"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-201009r9"></a></span><span
+ id="x31-197009r9"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-201010r10"></a></span><span
+ id="x31-197010r10"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-201011r11"></a></span><span
+ id="x31-197011r11"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span>
</div>
-<!--l. 1655--><p class="noindent" ><span
+<!--l. 1675--><p class="noindent" ><span
class="ec-lmssbx-10">Features:</span>
<a
- id="x31-201012r48"></a></p>
-<!--l. 1660--><div class="longtable"> <table id="TBL-67" class="longtable"
+ id="x31-197012r48"></a></p>
+<!--l. 1680--><div class="longtable"> <table id="TBL-66" class="longtable"
cellspacing="0" cellpadding="0" rules="groups"
-><colgroup id="TBL-67-1g"><col
-id="TBL-67-1" /></colgroup><colgroup id="TBL-67-2g"><col
-id="TBL-67-2" /><col
-id="TBL-67-3" /></colgroup>
+><colgroup id="TBL-66-1g"><col
+id="TBL-66-1" /></colgroup><colgroup id="TBL-66-2g"><col
+id="TBL-66-2" /><col
+id="TBL-66-3" /></colgroup>
<tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-67-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-67-1-1"
-class="td11"> Uses: </td><td style="white-space:nowrap; text-align:left;" id="TBL-67-1-2"
+ style="vertical-align:baseline;" id="TBL-66-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-66-1-1"
+class="td11"> Uses: </td><td style="white-space:nowrap; text-align:left;" id="TBL-66-1-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:LogicalSystem">LogicalSystem</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-67-1-3"
+href="#ref:LogicalSystem">LogicalSystem</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-66-1-3"
class="td11">
- <!--l. 1660--><p class="noindent" >The LogicalSystem is the topmost structural class. It
+ <!--l. 1680--><p class="noindent" >The LogicalSystem is the topmost structural class. It
assembles a distributed system by means of sub systems. </p></td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-67-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-67-2-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-67-2-2"
+ style="vertical-align:baseline;" id="TBL-66-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-66-2-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-66-2-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:SubSystemRef">SubSystemRef</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-67-2-3"
+href="#ref:SubSystemRef">SubSystemRef</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-66-2-3"
class="td11">
- <!--l. 1661--><p class="noindent" >A Sub System Reference is an instance of an
+ <!--l. 1681--><p class="noindent" >A Sub System Reference is an instance of an
SubSystemClass </p></td>
-
-
</tr><tr
- style="vertical-align:baseline;" id="TBL-67-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-67-3-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-67-3-2"
+ style="vertical-align:baseline;" id="TBL-66-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-66-3-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-66-3-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:PhysicalModel">PhysicalModel</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-67-3-3"
+href="#ref:PhysicalModel">PhysicalModel</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-66-3-3"
class="td11">
- <!--l. 1662--><p class="noindent" >The PhysicalModel defines the setup of your nodes with
+ <!--l. 1682--><p class="noindent" >The PhysicalModel defines the setup of your nodes with
their attributes like threads and mode of execution. </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-67-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-67-4-1"
+ style="vertical-align:baseline;" id="TBL-66-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-66-4-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-67-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-67-5-1"
+ style="vertical-align:baseline;" id="TBL-66-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-66-5-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-67-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-67-6-1"
+ style="vertical-align:baseline;" id="TBL-66-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-66-6-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-67-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-67-7-1"
+ style="vertical-align:baseline;" id="TBL-66-7-"><td style="white-space:nowrap; text-align:left;" id="TBL-66-7-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-67-8-"><td style="white-space:nowrap; text-align:left;" id="TBL-67-8-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-67-8-2"
-class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-67-8-3"
+ style="vertical-align:baseline;" id="TBL-66-8-"><td style="white-space:nowrap; text-align:left;" id="TBL-66-8-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-66-8-2"
+class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-66-8-3"
class="td11">
</td></tr>
</table></div>
<a
- id="x31-201013r273"></a>
+ id="x31-197013r272"></a>
<h4 class="subsectionHead"><span class="titlemark">7.1.4 </span> <a
- id="x31-2020004"></a>PhysicalModel</h4>
-<!--l. 1674--><p class="noindent" ><a
+ id="x31-1980004"></a>PhysicalModel</h4>
+<!--l. 1694--><p class="noindent" ><a
id="ref:PhysicalModel"></a> The PhysicalModel defines the setup of your nodes with their attributes like threads and mode of execution.
-</p><!--l. 1677--><p class="noindent" >The model describes the physical view of your system: </p><!--l. 1678-->
-<div class="lstlisting" id="listing-76"><span class="label"><a
- id="x31-202001r1"></a></span><span
+</p><!--l. 1697--><p class="noindent" >The model describes the physical view of your system: </p><!--l. 1698-->
+<div class="lstlisting" id="listing-64"><span class="label"><a
+ id="x31-198001r1"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmssbx-10x-x-90">PhysicalSystem</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -7776,7 +7898,7 @@ class="ec-lmtt-9">PhysSys1</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-202002r2"></a></span><span
+ id="x31-198002r2"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -7788,7 +7910,7 @@ class="ec-lmtt-9">:</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">NodeClass1</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-202003r3"></a></span><span
+ id="x31-198003r3"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -7800,17 +7922,17 @@ class="ec-lmtt-9">:</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">NodeClass2</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-202004r4"></a></span><span
+ id="x31-198004r4"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span>
</div>
-<!--l. 1685--><p class="noindent" >The central element is a NodeClass, that models the executional aspects of a device (node). At first, it can be associated
+<!--l. 1705--><p class="noindent" >The central element is a NodeClass, that models the executional aspects of a device (node). At first, it can be associated
with a RuntimeClass, which specifies if your device supports multiple threads. &#8217;priomin&#8217; and &#8217;priomax&#8217; define the range of
priorities, that can be assigned to threads.
</p>
-<!--l. 1689-->
-<div class="lstlisting" id="listing-77"><span class="label"><a
- id="x31-202005r1"></a></span><span
+<!--l. 1709-->
+<div class="lstlisting" id="listing-65"><span class="label"><a
+ id="x31-198005r1"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmssbx-10x-x-90">NodeClass</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -7818,7 +7940,7 @@ class="ec-lmtt-9">NodeClass1</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-202006r2"></a></span><span
+ id="x31-198006r2"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -7828,7 +7950,7 @@ class="ec-lmtt-9">=</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">RuntimeClass1</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-202007r3"></a></span><span
+ id="x31-198007r3"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -7838,7 +7960,7 @@ class="ec-lmtt-9">=</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">-10</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-202008r4"></a></span><span
+ id="x31-198008r4"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -7848,9 +7970,9 @@ class="ec-lmtt-9">=</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">10</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-202009r5"></a></span><span
+ id="x31-198009r5"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-202010r6"></a></span><span
+ id="x31-198010r6"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -7862,13 +7984,13 @@ class="ec-lmtt-9">definitions</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">...</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-202011r7"></a></span><span
+ id="x31-198011r7"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-202012r8"></a></span><span
+ id="x31-198012r8"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-202013r9"></a></span><span
+ id="x31-198013r9"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmssbx-10x-x-90">RuntimeClass</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -7876,7 +7998,7 @@ class="ec-lmtt-9">RuntimeClass1</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-202014r10"></a></span><span
+ id="x31-198014r10"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -7892,11 +8014,13 @@ class="ec-lmtt-9">or</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">singleThreaded</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-202015r11"></a></span><span
+ id="x31-198015r11"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span>
</div>
-<!--l. 1703--><p class="noindent" >A thread has to specify the following properties: </p>
+<!--l. 1723--><p class="noindent" >A thread has to specify the following properties: </p>
+
+
<ul class="itemize1">
<li class="itemize"><span
class="ec-lmssbx-10">execmode</span>: defines the execution type, see more at ExecutionType
@@ -7913,13 +8037,13 @@ class="ec-lmssbx-10">msgblocksize</span>: the size in bytes of a message
</li>
<li class="itemize"><span
class="ec-lmssbx-10">msgpoolsize</span>: the amount of messages, that the thread&#8217;s message queue can store</li></ul>
-<!--l. 1714--><p class="noindent" >Note: &#8217;msgblocksize&#8217; and &#8217;msgpoolsize&#8217; also apply to the polled execution due the internal implementation via
+<!--l. 1734--><p class="noindent" >Note: &#8217;msgblocksize&#8217; and &#8217;msgpoolsize&#8217; also apply to the polled execution due the internal implementation via
message passing. The size of the message queue can be calculated as follows: msgpoolsize * msgblocksize
bytes
</p>
-<!--l. 1717-->
-<div class="lstlisting" id="listing-78"><span class="label"><a
- id="x31-202016r1"></a></span><span
+<!--l. 1737-->
+<div class="lstlisting" id="listing-66"><span class="label"><a
+ id="x31-198016r1"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmssbx-10x-x-90">DefaultThread</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -7927,7 +8051,7 @@ class="ec-lmtt-9">ThreadMessaging</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-202017r2"></a></span><span
+ id="x31-198017r2"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -7937,7 +8061,7 @@ class="ec-lmtt-9">=</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmssbx-10x-x-90">polled</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-202018r3"></a></span><span
+ id="x31-198018r3"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -7947,7 +8071,7 @@ class="ec-lmtt-9">=</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">0</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-202019r4"></a></span><span
+ id="x31-198019r4"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -7957,7 +8081,7 @@ class="ec-lmtt-9">=</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">1024</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-202020r5"></a></span><span
+ id="x31-198020r5"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -7967,7 +8091,7 @@ class="ec-lmtt-9">=</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">32</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-202021r6"></a></span><span
+ id="x31-198021r6"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -7977,13 +8101,13 @@ class="ec-lmtt-9">=</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">10</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-202022r7"></a></span><span
+ id="x31-198022r7"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-202023r8"></a></span><span
+ id="x31-198023r8"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-202024r9"></a></span><span
+ id="x31-198024r9"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmssbx-10x-x-90">Thread</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -7991,7 +8115,7 @@ class="ec-lmtt-9">ThreadPolled</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">{</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-202025r10"></a></span><span
+ id="x31-198025r10"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -8001,7 +8125,7 @@ class="ec-lmtt-9">=</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmssbx-10x-x-90">polled</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-202026r11"></a></span><span
+ id="x31-198026r11"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -8011,7 +8135,7 @@ class="ec-lmtt-9">=</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">0</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-202027r12"></a></span><span
+ id="x31-198027r12"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -8022,7 +8146,7 @@ class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">100</span><span
class="ec-lmssbx-10x-x-90">ms</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-202028r13"></a></span><span
+ id="x31-198028r13"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -8032,7 +8156,7 @@ class="ec-lmtt-9">=</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">1024</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-202029r14"></a></span><span
+ id="x31-198029r14"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -8042,7 +8166,7 @@ class="ec-lmtt-9">=</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">32</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-202030r15"></a></span><span
+ id="x31-198030r15"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">&#x00A0;</span><span
@@ -8052,67 +8176,65 @@ class="ec-lmtt-9">=</span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">10</span><span
class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
- id="x31-202031r16"></a></span><span
+ id="x31-198031r16"></a></span><span
class="ec-lmtt-9">&#x00A0;</span><span
class="ec-lmtt-9">}</span>
</div>
<div class="center"
>
-<!--l. 1735--><p class="noindent" >
+<!--l. 1755--><p class="noindent" >
-
-
-</p><!--l. 1736--><p class="noindent" ><img
+</p><!--l. 1756--><p class="noindent" ><img
src="images/300-PhysicalModelOverview.png" alt="PIC"
/></p></div>
-<!--l. 1742--><p class="noindent" ><span
+<!--l. 1762--><p class="noindent" ><span
class="ec-lmssbx-10">Feature Usage:</span>
<a
- id="x31-202032r49"></a></p>
-<!--l. 1747--><div class="longtable"> <table id="TBL-68" class="longtable"
+ id="x31-198032r49"></a></p>
+<!--l. 1767--><div class="longtable"> <table id="TBL-67" class="longtable"
cellspacing="0" cellpadding="0" rules="groups"
-><colgroup id="TBL-68-1g"><col
-id="TBL-68-1" /></colgroup><colgroup id="TBL-68-2g"><col
-id="TBL-68-2" /><col
-id="TBL-68-3" /></colgroup>
+><colgroup id="TBL-67-1g"><col
+id="TBL-67-1" /></colgroup><colgroup id="TBL-67-2g"><col
+id="TBL-67-2" /><col
+id="TBL-67-3" /></colgroup>
<tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-68-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-68-1-1"
-class="td11"> Is used by: </td><td style="white-space:nowrap; text-align:left;" id="TBL-68-1-2"
+ style="vertical-align:baseline;" id="TBL-67-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-67-1-1"
+class="td11"> Is used by: </td><td style="white-space:nowrap; text-align:left;" id="TBL-67-1-2"
class="td11"> &#x00A0;&#x00A0;<span
class="cmsy-10">&#x2219;</span>&#x00A0;&#x00A0;<a
-href="#ref:MappingModel">MappingModel</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-68-1-3"
+href="#ref:MappingModel">MappingModel</a> </td><td style="white-space:wrap; text-align:left;" id="TBL-67-1-3"
class="td11">
- <!--l. 1747--><p class="noindent" >The MappingModel describes the mapping of elements of
+ <!--l. 1767--><p class="noindent" >The MappingModel describes the mapping of elements of
the LogicalModel to elements of the PhysicalModel. </p></td>
</tr><tr
class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-68-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-68-2-1"
+ style="vertical-align:baseline;" id="TBL-67-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-67-2-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-68-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-68-3-1"
+ style="vertical-align:baseline;" id="TBL-67-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-67-3-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-68-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-68-4-1"
+ style="vertical-align:baseline;" id="TBL-67-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-67-4-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-68-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-68-5-1"
+ style="vertical-align:baseline;" id="TBL-67-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-67-5-1"
class="td11"> </td>
</tr><tr
- style="vertical-align:baseline;" id="TBL-68-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-68-6-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-68-6-2"
-class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-68-6-3"
+ style="vertical-align:baseline;" id="TBL-67-6-"><td style="white-space:nowrap; text-align:left;" id="TBL-67-6-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:left;" id="TBL-67-6-2"
+class="td11"> </td><td style="white-space:wrap; text-align:left;" id="TBL-67-6-3"
class="td11">
</td></tr>
</table></div>
-<!--l. 1757--><div class="crosslinks"><p class="noindent">[<a
+<!--l. 1777--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docse23.html" >next</a>] [<a
href="etrice-docch7.html" >prev</a>] [<a
href="etrice-docch7.html#tailetrice-docch7.html" >prev-tail</a>] [<a
href="etrice-docse22.html" >front</a>] [<a
href="etrice-docch7.html#etrice-docse22.html" >up</a>] </p></div>
-<!--l. 1757--><p class="noindent" ><a
+<!--l. 1777--><p class="noindent" ><a
id="tailetrice-docse22.html"></a></p>
</body></html>

Back to the top