Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJuergen Haug2018-11-06 04:40:31 -0500
committerJuergen Haug2018-11-06 04:46:13 -0500
commit1a7e3a0742e33197af239c92b3740b0348068759 (patch)
tree53f75e8cc0e3ea7edee2a1ff2dfbf5f377389dd6
parenta5c62e08bbd198483a0bd26b8a72c845a07a2e8b (diff)
downloadorg.eclipse.etrice-v_2.0.0-RC4.tar.gz
org.eclipse.etrice-v_2.0.0-RC4.tar.xz
org.eclipse.etrice-v_2.0.0-RC4.zip
[doc] regenerate of docv_2.0.0-RC4
-rw-r--r--plugins/org.eclipse.etrice.doc/featuremodel/development/draft.featurizer_ (renamed from plugins/org.eclipse.etrice.doc/featuremodel/development/draft.featurizer)0
-rw-r--r--plugins/org.eclipse.etrice.doc/featuremodel/development/markdown.featurizer_ (renamed from plugins/org.eclipse.etrice.doc/featuremodel/development/markdown.featurizer)0
-rw-r--r--plugins/org.eclipse.etrice.doc/online-doc/content/feature-reference.md236
-rw-r--r--plugins/org.eclipse.etrice.doc/targets/contextHelp.xml76
-rw-r--r--plugins/org.eclipse.etrice.doc/targets/eclipse-help/Dave-Integration.html128
-rw-r--r--plugins/org.eclipse.etrice.doc/targets/eclipse-help/feature-reference.html196
-rw-r--r--plugins/org.eclipse.etrice.doc/targets/eclipse-help/room-concepts.html36
7 files changed, 333 insertions, 339 deletions
diff --git a/plugins/org.eclipse.etrice.doc/featuremodel/development/draft.featurizer b/plugins/org.eclipse.etrice.doc/featuremodel/development/draft.featurizer_
index 54ae592e9..54ae592e9 100644
--- a/plugins/org.eclipse.etrice.doc/featuremodel/development/draft.featurizer
+++ b/plugins/org.eclipse.etrice.doc/featuremodel/development/draft.featurizer_
diff --git a/plugins/org.eclipse.etrice.doc/featuremodel/development/markdown.featurizer b/plugins/org.eclipse.etrice.doc/featuremodel/development/markdown.featurizer_
index 1558ffd88..1558ffd88 100644
--- a/plugins/org.eclipse.etrice.doc/featuremodel/development/markdown.featurizer
+++ b/plugins/org.eclipse.etrice.doc/featuremodel/development/markdown.featurizer_
diff --git a/plugins/org.eclipse.etrice.doc/online-doc/content/feature-reference.md b/plugins/org.eclipse.etrice.doc/online-doc/content/feature-reference.md
index e2c9c69d5..fd877a40f 100644
--- a/plugins/org.eclipse.etrice.doc/online-doc/content/feature-reference.md
+++ b/plugins/org.eclipse.etrice.doc/online-doc/content/feature-reference.md
@@ -874,24 +874,22 @@ DataClass TCPConnectionData {
**Example**:
-¦¦¦
- ```room
- DataClass SimpleDataClass {
- Attribute attribute1: uint16
- Attribute attribute2: uint32
- }
+```room
+DataClass SimpleDataClass {
+ Attribute attribute1: uint16
+ Attribute attribute2: uint32
+}
- DataClass DataClassExample {
- Attribute attribute1: uint32
- Attribute attribute2: SimpleDataClass
- Attribute attribute3: voidType ref
-
- Operation operation1(param1: uint32, param2: uint16): boolean '''
- return true;
- '''
- }
- ```
- ¦¦¦
+DataClass DataClassExample {
+ Attribute attribute1: uint32
+ Attribute attribute2: SimpleDataClass
+ Attribute attribute3: voidType ref
+
+ Operation operation1(param1: uint32, param2: uint16): boolean '''
+ return true;
+ '''
+}
+```
---
@@ -1180,27 +1178,25 @@ An ExternalType is used to make an target language type accessible in ROOM
**Example**:
-¦¦¦
- ```room
- // Include is needed when used (e.g. in ActorClassWithExternalType)
- ExternalType someStructType -> "struct FILE_HANDLE"
-
- ActorClass ActorClassWithExternalType{
- Structure {
- usercode1 '''
- // #include <___.h> /* User includes here*/
- '''
- Attribute someHandle : someStructType ref // needs include
- }
- Behavior {
- Operation operation1(param1: charPtr) '''
- // external calls or casts may need includes
- write(someHandle, param1);
- '''
- }
- }
- ```
- ¦¦¦
+```room
+// Include is needed when used (e.g. in ActorClassWithExternalType)
+ExternalType someStructType -> "struct FILE_HANDLE"
+
+ActorClass ActorClassWithExternalType{
+ Structure {
+ usercode1 '''
+ // #include <___.h> /* User includes here*/
+ '''
+ Attribute someHandle : someStructType ref // needs include
+ }
+ Behavior {
+ Operation operation1(param1: charPtr) '''
+ // external calls or casts may need includes
+ write(someHandle, param1);
+ '''
+ }
+}
+```
---
@@ -1270,45 +1266,43 @@ UserCode <==> non-accessible implicit late refinement
**Example**:
-¦¦¦
- ```room
- ActorClass ActorSubClass extends ActorBaseClass {
- // inherits all elements from super type hierarchy
- }
-
- ActorClass ActorBaseClass {
- Interface {
- Port port1 : ProtocolBaseClass
- }
- Structure {
- Attribute attribute1 : uint32
- }
- Behavior {
- Operation operation1() '''
- return;
- '''
- }
- }
-
- ProtocolClass ProtocolSubClass extends ProtocolBaseClass {
- // inherits all elements from super type hierarchy
- }
-
- ProtocolClass ProtocolBaseClass {
- incoming {
- Message message1()
- }
- }
-
- DataClass DataSubClass extends DataBaseClass {
- // inherits all elements from super type hierarchy
- }
-
- DataClass DataBaseClass {
- Attribute attribute1 : uint32
- }
- ```
- ¦¦¦
+```room
+ActorClass ActorSubClass extends ActorBaseClass {
+ // inherits all elements from super type hierarchy
+}
+
+ActorClass ActorBaseClass {
+ Interface {
+ Port port1 : ProtocolBaseClass
+ }
+ Structure {
+ Attribute attribute1 : uint32
+ }
+ Behavior {
+ Operation operation1() '''
+ return;
+ '''
+ }
+}
+
+ProtocolClass ProtocolSubClass extends ProtocolBaseClass {
+ // inherits all elements from super type hierarchy
+}
+
+ProtocolClass ProtocolBaseClass {
+ incoming {
+ Message message1()
+ }
+}
+
+DataClass DataSubClass extends DataBaseClass {
+ // inherits all elements from super type hierarchy
+}
+
+DataClass DataBaseClass {
+ Attribute attribute1 : uint32
+}
+```
---
@@ -1544,45 +1538,43 @@ Operations can be used to define a piece of reusable logic. The definition consi
**Example**:
-¦¦¦
- ```room
- import room.basic.types.* from "../../../org.eclipse.etrice.modellib.c/model/Types.room"
-
- DataClass DataClassWithOperation {
- Attribute attribute1 : uint32
-
- Operation operation1(param1: uint32, param2: int32): boolean '''
- return attribute1 > (param1 - param2);
- '''
- }
-
- ActorClass ActorClassWithOperation {
- Structure {
- Attribute attribute1 : uint32
- }
- Behavior {
- Operation operation1(param1: uint32, param2: int32): boolean '''
- return attribute1 > (param1 - param2);
- '''
- }
- }
-
- ActorClass ActorClassWithOperation2 {
- Structure {
- usercode1 '''
- // #include <___.h> /* User includes here */
- '''
- Attribute someHandle : voidType ref
- }
- Behavior {
- Operation operation1(param1: charPtr) '''
- // external calls or casts may need includes
- write(someHandle, param1);
- '''
- }
- }
- ```
- ¦¦¦
+```room
+import room.basic.types.* from "../../../org.eclipse.etrice.modellib.c/model/Types.room"
+
+DataClass DataClassWithOperation {
+ Attribute attribute1 : uint32
+
+ Operation operation1(param1: uint32, param2: int32): boolean '''
+ return attribute1 > (param1 - param2);
+ '''
+}
+
+ActorClass ActorClassWithOperation {
+ Structure {
+ Attribute attribute1 : uint32
+ }
+ Behavior {
+ Operation operation1(param1: uint32, param2: int32): boolean '''
+ return attribute1 > (param1 - param2);
+ '''
+ }
+}
+
+ActorClass ActorClassWithOperation2 {
+ Structure {
+ usercode1 '''
+ // #include <___.h> /* User includes here */
+ '''
+ Attribute someHandle : voidType ref
+ }
+ Behavior {
+ Operation operation1(param1: charPtr) '''
+ // external calls or casts may need includes
+ write(someHandle, param1);
+ '''
+ }
+}
+```
---
@@ -3150,6 +3142,12 @@ The MSCLogging is activated by default, but can be set manually in the [Generati
[SAP]: #sap
[ServiceImplementation]: #serviceimplementation
[SPP]: #spp
+[CCodeGenerator]: #ccodegenerator
+[JavaCodeGenerator]: #javacodegenerator
+[CPPCodeGenerator]: #cppcodegenerator
+[GenerationOptions]: #generationoptions
+[MSCLogging]: #msclogging
+[DataLogging]: #datalogging
[TextualROOMEditor]: #textualroomeditor
[OutlineView]: #outlineview
[GraphicalBehaviorEditor]: #graphicalbehavioreditor
@@ -3158,9 +3156,3 @@ The MSCLogging is activated by default, but can be set manually in the [Generati
[ActorRefPropertyDialog]: #actorrefpropertydialog
[PortPropertyDialog]: #portpropertydialog
[SPPPropertyDialog]: #spppropertydialog
-[CCodeGenerator]: #ccodegenerator
-[JavaCodeGenerator]: #javacodegenerator
-[CPPCodeGenerator]: #cppcodegenerator
-[GenerationOptions]: #generationoptions
-[MSCLogging]: #msclogging
-[DataLogging]: #datalogging
diff --git a/plugins/org.eclipse.etrice.doc/targets/contextHelp.xml b/plugins/org.eclipse.etrice.doc/targets/contextHelp.xml
index 996aae274..a712b3879 100644
--- a/plugins/org.eclipse.etrice.doc/targets/contextHelp.xml
+++ b/plugins/org.eclipse.etrice.doc/targets/contextHelp.xml
@@ -270,6 +270,44 @@
<topic href="targets/eclipse-help/feature-reference.html#spp" label="SPPPropertyDialog"/>
</context>
+<context id="featureContextHelp_CCodeGenerator" title="CCodeGenerator">
+<description></description>
+<topic href="targets/eclipse-help/feature-reference.html#ccodegenerator" label="CCodeGenerator"/>
+</context>
+
+<context id="featureContextHelp_JavaCodeGenerator" title="JavaCodeGenerator">
+<description></description>
+<topic href="targets/eclipse-help/feature-reference.html#javacodegenerator" label="JavaCodeGenerator"/>
+</context>
+
+<context id="featureContextHelp_CPPCodeGenerator" title="CPPCodeGenerator">
+<description></description>
+<topic href="targets/eclipse-help/feature-reference.html#cppcodegenerator" label="CPPCodeGenerator"/>
+</context>
+
+<context id="featureContextHelp_GenerationOptions" title="GenerationOptions">
+<description>Mechanism to adjust the generation.</description>
+<topic href="targets/eclipse-help/feature-reference.html#generationoptions" label="GenerationOptions"/>
+<topic href="targets/eclipse-help/feature-reference.html#generationoptions" label="CCodeGenerator"/>
+<topic href="targets/eclipse-help/feature-reference.html#generationoptions" label="JavaCodeGenerator"/>
+<topic href="targets/eclipse-help/feature-reference.html#generationoptions" label="MSCLogging"/>
+</context>
+
+<context id="featureContextHelp_MSCLogging" title="MSCLogging">
+<description>Runtime logger for event-driven Messages, represented as a Message Sequence Chart.</description>
+<topic href="targets/eclipse-help/feature-reference.html#msclogging" label="MSCLogging"/>
+<topic href="targets/eclipse-help/feature-reference.html#msclogging" label="GenerationOptions"/>
+<topic href="targets/eclipse-help/feature-reference.html#msclogging" label="CCodeGenerator"/>
+<topic href="targets/eclipse-help/feature-reference.html#msclogging" label="JavaCodeGenerator"/>
+</context>
+
+<context id="featureContextHelp_DataLogging" title="DataLogging">
+<description>Runtime logger for data-driven Messages with primitive data.</description>
+<topic href="targets/eclipse-help/feature-reference.html#datalogging" label="DataLogging"/>
+<topic href="targets/eclipse-help/feature-reference.html#datalogging" label="Annotation"/>
+<topic href="targets/eclipse-help/feature-reference.html#datalogging" label="CCodeGenerator"/>
+</context>
+
<context id="featureContextHelp_TextualROOMEditor" title="TextualROOMEditor">
<description>Textual model editor</description>
<topic href="targets/eclipse-help/feature-reference.html#textualroomeditor" label="TextualROOMEditor"/>
@@ -325,42 +363,4 @@
<topic href="targets/eclipse-help/feature-reference.html#spppropertydialog" label="SPP"/>
<topic href="targets/eclipse-help/feature-reference.html#spppropertydialog" label="GraphicalStructureEditor"/>
</context>
-
-<context id="featureContextHelp_CCodeGenerator" title="CCodeGenerator">
-<description></description>
-<topic href="targets/eclipse-help/feature-reference.html#ccodegenerator" label="CCodeGenerator"/>
-</context>
-
-<context id="featureContextHelp_JavaCodeGenerator" title="JavaCodeGenerator">
-<description></description>
-<topic href="targets/eclipse-help/feature-reference.html#javacodegenerator" label="JavaCodeGenerator"/>
-</context>
-
-<context id="featureContextHelp_CPPCodeGenerator" title="CPPCodeGenerator">
-<description></description>
-<topic href="targets/eclipse-help/feature-reference.html#cppcodegenerator" label="CPPCodeGenerator"/>
-</context>
-
-<context id="featureContextHelp_GenerationOptions" title="GenerationOptions">
-<description>Mechanism to adjust the generation.</description>
-<topic href="targets/eclipse-help/feature-reference.html#generationoptions" label="GenerationOptions"/>
-<topic href="targets/eclipse-help/feature-reference.html#generationoptions" label="CCodeGenerator"/>
-<topic href="targets/eclipse-help/feature-reference.html#generationoptions" label="JavaCodeGenerator"/>
-<topic href="targets/eclipse-help/feature-reference.html#generationoptions" label="MSCLogging"/>
-</context>
-
-<context id="featureContextHelp_MSCLogging" title="MSCLogging">
-<description>Runtime logger for event-driven Messages, represented as a Message Sequence Chart.</description>
-<topic href="targets/eclipse-help/feature-reference.html#msclogging" label="MSCLogging"/>
-<topic href="targets/eclipse-help/feature-reference.html#msclogging" label="GenerationOptions"/>
-<topic href="targets/eclipse-help/feature-reference.html#msclogging" label="CCodeGenerator"/>
-<topic href="targets/eclipse-help/feature-reference.html#msclogging" label="JavaCodeGenerator"/>
-</context>
-
-<context id="featureContextHelp_DataLogging" title="DataLogging">
-<description>Runtime logger for data-driven Messages with primitive data.</description>
-<topic href="targets/eclipse-help/feature-reference.html#datalogging" label="DataLogging"/>
-<topic href="targets/eclipse-help/feature-reference.html#datalogging" label="Annotation"/>
-<topic href="targets/eclipse-help/feature-reference.html#datalogging" label="CCodeGenerator"/>
-</context>
</contexts>
diff --git a/plugins/org.eclipse.etrice.doc/targets/eclipse-help/Dave-Integration.html b/plugins/org.eclipse.etrice.doc/targets/eclipse-help/Dave-Integration.html
index 3c17cae69..b04dbbfe5 100644
--- a/plugins/org.eclipse.etrice.doc/targets/eclipse-help/Dave-Integration.html
+++ b/plugins/org.eclipse.etrice.doc/targets/eclipse-help/Dave-Integration.html
@@ -96,9 +96,9 @@
<p>Open <em>BlinkyTutorial.room</em> and create a new Actor called AHWAbstraction by adding the following text:</p>
<pre><code class="room customHighlighted"><span class="keyword">ActorClass</span> AHWAbstraction {
<span class="keyword">Structure</span> {
- <span class="keyword">usercode1</span> '''
- #include <span class="string">"Dave.h"</span>
- '''
+ <span class="keyword">usercode1</span> <span class="string">'''
+ #include "Dave.h"
+ '''</span>
}
}
</code></pre>
@@ -130,9 +130,9 @@
<span class="keyword">Port</span> LED1: POnOff
}
<span class="keyword">Structure</span> {
- <span class="keyword">usercode1</span> '''
- #include <span class="string">"Dave.h"</span>
- '''
+ <span class="keyword">usercode1</span> <span class="string">'''
+ #include "Dave.h"
+ '''</span>
<span class="keyword">external</span> <span class="keyword">Port</span> LED1
}
<span class="keyword">Behavior</span> {
@@ -143,17 +143,17 @@
<span class="keyword">triggers</span> {
&lt;on: LED1&gt;
}
- <span class="keyword">action</span> '''
+ <span class="keyword">action</span> <span class="string">'''
DIGITAL_IO_SetOutputHigh(&amp;LED1_P5_9);
- '''
+ '''</span>
}
<span class="keyword">Transition</span> tr1: state0 -&gt; state0 {
<span class="keyword">triggers</span> {
&lt;off: LED1&gt;
}
- <span class="keyword">action</span> '''
+ <span class="keyword">action</span> <span class="string">'''
DIGITAL_IO_SetOutputLow(&amp;LED1_P5_9);
- '''
+ '''</span>
}
}
}
@@ -186,25 +186,25 @@
<span class="keyword">State</span> state0
<span class="keyword">State</span> state1
<span class="keyword">Transition</span> init: <span class="keyword">initial</span> -&gt; state0 {
- <span class="keyword">action</span> '''
+ <span class="keyword">action</span> <span class="string">'''
timer.startTimer(300);
- '''
+ '''</span>
}
<span class="keyword">Transition</span> tr0: state0 -&gt; state1 {
<span class="keyword">triggers</span> {
&lt;timeout: timer&gt;
}
- <span class="keyword">action</span> '''
+ <span class="keyword">action</span> <span class="string">'''
out.on();
- '''
+ '''</span>
}
<span class="keyword">Transition</span> tr1: state1 -&gt; state0 {
<span class="keyword">triggers</span> {
&lt;timeout: timer&gt;
}
- <span class="keyword">action</span> '''
+ <span class="keyword">action</span> <span class="string">'''
out.off();
- '''
+ '''</span>
}
}
}
@@ -243,25 +243,25 @@
<span class="keyword">State</span> state0
<span class="keyword">State</span> state1
<span class="keyword">Transition</span> init: <span class="keyword">initial</span> -&gt; state0 {
- <span class="keyword">action</span> '''
+ <span class="keyword">action</span> <span class="string">'''
timer.startTimer(300);
- '''
+ '''</span>
}
<span class="keyword">Transition</span> tr0: state0 -&gt; state1 {
<span class="keyword">triggers</span> {
&lt;timeout: timer&gt;
}
- <span class="keyword">action</span> '''
+ <span class="keyword">action</span> <span class="string">'''
out.on();
- '''
+ '''</span>
}
<span class="keyword">Transition</span> tr1: state1 -&gt; state0 {
<span class="keyword">triggers</span> {
&lt;timeout: timer&gt;
}
- <span class="keyword">action</span> '''
+ <span class="keyword">action</span> <span class="string">'''
out.off();
- '''
+ '''</span>
}
}
}
@@ -272,9 +272,9 @@
<span class="keyword">Port</span> LED1: POnOff
}
<span class="keyword">Structure</span> {
- <span class="keyword">usercode1</span> '''
- #include <span class="string">"Dave.h"</span>
- '''
+ <span class="keyword">usercode1</span> <span class="string">'''
+ #include "Dave.h"
+ '''</span>
<span class="keyword">external</span> <span class="keyword">Port</span> LED1
}
<span class="keyword">Behavior</span> {
@@ -285,17 +285,17 @@
<span class="keyword">triggers</span> {
&lt;on: LED1&gt;
}
- <span class="keyword">action</span> '''
+ <span class="keyword">action</span> <span class="string">'''
DIGITAL_IO_SetOutputHigh(&amp;LED1_P5_9);
- '''
+ '''</span>
}
<span class="keyword">Transition</span> tr1: state0 -&gt; state0 {
<span class="keyword">triggers</span> {
&lt;off: LED1&gt;
}
- <span class="keyword">action</span> '''
+ <span class="keyword">action</span> <span class="string">'''
DIGITAL_IO_SetOutputLow(&amp;LED1_P5_9);
- '''
+ '''</span>
}
}
}
@@ -378,14 +378,14 @@
<span class="keyword">State</span> blinking {
<span class="keyword">subgraph</span> {
<span class="keyword">State</span> on {
- <span class="keyword">entry</span> '''
+ <span class="keyword">entry</span> <span class="string">'''
out.on();
- '''
+ '''</span>
}
<span class="keyword">State</span> off {
- <span class="keyword">entry</span> '''
+ <span class="keyword">entry</span> <span class="string">'''
out.off();
- '''
+ '''</span>
}
<span class="keyword">EntryPoint</span> tp0
<span class="keyword">Transition</span> tr0: on -&gt; off {
@@ -399,9 +399,9 @@
}
}
<span class="keyword">Transition</span> tr2: <span class="keyword">my</span> tp0 -&gt; on {
- <span class="keyword">action</span> '''
+ <span class="keyword">action</span> <span class="string">'''
timer.startTimer(300);
- '''
+ '''</span>
}
}
}
@@ -417,10 +417,10 @@
<span class="keyword">triggers</span> {
&lt;off: ctrl&gt;
}
- <span class="keyword">action</span> '''
+ <span class="keyword">action</span> <span class="string">'''
timer.kill();
out.off();
- '''
+ '''</span>
}
}
}
@@ -434,9 +434,9 @@
<span class="keyword">conjugated</span> <span class="keyword">Port</span> BUTTON2: POnOff
}
<span class="keyword">Structure</span> {
- <span class="keyword">usercode1</span> '''
- #include <span class="string">"Dave.h"</span>
- '''
+ <span class="keyword">usercode1</span> <span class="string">'''
+ #include "Dave.h"
+ '''</span>
<span class="keyword">SAP</span> timer: PTimer
<span class="keyword">external</span> <span class="keyword">Port</span> LED1
<span class="keyword">external</span> <span class="keyword">Port</span> LED2
@@ -449,77 +449,77 @@
<span class="keyword">StateMachine</span> {
<span class="keyword">State</span> state0
<span class="keyword">Transition</span> init: <span class="keyword">initial</span> -&gt; state0 {
- <span class="keyword">action</span> '''
+ <span class="keyword">action</span> <span class="string">'''
timer.startTimer(50);
- '''
+ '''</span>
}
<span class="keyword">Transition</span> tr0: state0 -&gt; state0 {
<span class="keyword">triggers</span> {
&lt;on: LED1&gt;
}
- <span class="keyword">action</span> '''
+ <span class="keyword">action</span> <span class="string">'''
DIGITAL_IO_SetOutputHigh(&amp;LED1_P5_9);
- '''
+ '''</span>
}
<span class="keyword">Transition</span> tr1: state0 -&gt; state0 {
<span class="keyword">triggers</span> {
&lt;off: LED1&gt;
}
- <span class="keyword">action</span> '''
+ <span class="keyword">action</span> <span class="string">'''
DIGITAL_IO_SetOutputLow(&amp;LED1_P5_9);
- '''
+ '''</span>
}
<span class="keyword">Transition</span> tr2: state0 -&gt; state0 {
<span class="keyword">triggers</span> {
&lt;on: LED2&gt;
}
- <span class="keyword">action</span> '''
+ <span class="keyword">action</span> <span class="string">'''
DIGITAL_IO_SetOutputHigh(&amp;LED2_P5_8);
- '''
+ '''</span>
}
<span class="keyword">Transition</span> tr3: state0 -&gt; state0 {
<span class="keyword">triggers</span> {
&lt;off: LED2&gt;
}
- <span class="keyword">action</span> '''
+ <span class="keyword">action</span> <span class="string">'''
DIGITAL_IO_SetOutputLow(&amp;LED2_P5_8);
- '''
+ '''</span>
}
<span class="keyword">Transition</span> tr4: state0 -&gt; state0 {
<span class="keyword">triggers</span> {
&lt;timeout: timer&gt;
}
- <span class="keyword">action</span> '''
+ <span class="keyword">action</span> <span class="string">'''
if (DIGITAL_IO_GetInput(&amp;BUTTON1_P15_13) == 0) {
if (b1Status == 0) {
- <span class="comment">// input changed
-</span> b1Status = 1;
+ // input changed
+ b1Status = 1;
BUTTON1.on();
}
}
else {
if (b1Status == 1) {
- <span class="comment">// input changed
-</span> b1Status = 0;
+ // input changed
+ b1Status = 0;
BUTTON1.off();
}
}
if (DIGITAL_IO_GetInput(&amp;BUTTON2_P15_12) == 0) {
if (b2Status == 0){
- <span class="comment">// input changed
-</span> b2Status = 1;
+ // input changed
+ b2Status = 1;
BUTTON2.on();
}
}
else {
if (b2Status == 1) {
- <span class="comment">// input changed
-</span> b2Status = 0;
+ // input changed
+ b2Status = 0;
BUTTON2.off();
}
}
- '''
+ '''</span>
}
}
}
@@ -550,17 +550,17 @@
<span class="keyword">triggers</span> {
&lt;on: ctrl&gt;
}
- <span class="keyword">action</span> '''
+ <span class="keyword">action</span> <span class="string">'''
out.on();
- '''
+ '''</span>
}
<span class="keyword">Transition</span> tr1: on -&gt; off {
<span class="keyword">triggers</span> {
&lt;on: ctrl&gt;
}
- <span class="keyword">action</span> '''
+ <span class="keyword">action</span> <span class="string">'''
out.off();
- '''
+ '''</span>
}
}
}
diff --git a/plugins/org.eclipse.etrice.doc/targets/eclipse-help/feature-reference.html b/plugins/org.eclipse.etrice.doc/targets/eclipse-help/feature-reference.html
index 57997975a..4f1782b9b 100644
--- a/plugins/org.eclipse.etrice.doc/targets/eclipse-help/feature-reference.html
+++ b/plugins/org.eclipse.etrice.doc/targets/eclipse-help/feature-reference.html
@@ -712,20 +712,22 @@
</tbody>
</table>
<p><strong>Example</strong>:</p>
-<p>¦¦¦<br> ```room&lt;br/&gt; DataClass SimpleDataClass {&lt;br/&gt; Attribute attribute1: uint16&lt;br/&gt; Attribute attribute2: uint32&lt;br/&gt; }&lt;/p&gt;
-&lt;pre&gt;&lt;code&gt; DataClass DataClassExample {
- Attribute attribute1: uint32
- Attribute attribute2: SimpleDataClass
- Attribute attribute3: voidType ref
-
- Operation operation1(param1: uint32, param2: uint16): boolean &amp;#39;&amp;#39;&amp;#39;
- return true;
- &amp;#39;&amp;#39;&amp;#39;
- }
- ```
-¦¦¦
+<pre><code class="room customHighlighted"><span class="keyword">DataClass</span> SimpleDataClass {
+ <span class="keyword">Attribute</span> attribute1: uint16
+ <span class="keyword">Attribute</span> attribute2: uint32
+}
-</p><hr>
+<span class="keyword">DataClass</span> DataClassExample {
+ <span class="keyword">Attribute</span> attribute1: uint32
+ <span class="keyword">Attribute</span> attribute2: SimpleDataClass
+ <span class="keyword">Attribute</span> attribute3: voidType <span class="keyword">ref</span>
+
+ <span class="keyword">Operation</span> operation1(param1: uint32, param2: uint16): boolean <span class="string">'''
+ return true;
+ '''</span>
+}
+</code></pre>
+<hr>
<h3><a href="#datatype" name="datatype"></a>DataType</h3>
<p>A DataType can take 4 forms and types data elements like an Attribute or Operation argument</p>
<table style="vertical-align: middle;" class="table">
@@ -948,25 +950,25 @@
</tbody>
</table>
<p><strong>Example</strong>:</p>
-<p>¦¦¦<br> ```room&lt;br/&gt; // Include is needed when used (e.g. in ActorClassWithExternalType)&lt;br/&gt; ExternalType someStructType -&amp;gt; &amp;ldquo;struct FILE_HANDLE&amp;rdquo;&lt;/p&gt;
-&lt;pre&gt;&lt;code&gt; ActorClass ActorClassWithExternalType{
- Structure {
- usercode1 &amp;#39;&amp;#39;&amp;#39;
- // #include &amp;lt;___.h&amp;gt; /* User includes here*/
- &amp;#39;&amp;#39;&amp;#39;
- Attribute someHandle : someStructType ref // needs include
- }
- Behavior {
- Operation operation1(param1: charPtr) &amp;#39;&amp;#39;&amp;#39;
- // external calls or casts may need includes
- write(someHandle, param1);
- &amp;#39;&amp;#39;&amp;#39;
- }
- }
- ```
-¦¦¦
+<pre><code class="room customHighlighted"><span class="comment">// Include is needed when used (e.g. in ActorClassWithExternalType)
+</span><span class="keyword">ExternalType</span> someStructType -&gt; <span class="string">"struct FILE_HANDLE"</span>
-</p><hr>
+<span class="keyword">ActorClass</span> ActorClassWithExternalType{
+ <span class="keyword">Structure</span> {
+ <span class="keyword">usercode1</span> <span class="string">'''
+ // #include &lt;___.h&gt; /* User includes here*/
+ '''</span>
+ <span class="keyword">Attribute</span> someHandle : someStructType <span class="keyword">ref</span> <span class="comment">// needs include
+</span> }
+ <span class="keyword">Behavior</span> {
+ <span class="keyword">Operation</span> operation1(param1: charPtr) <span class="string">'''
+ // external calls or casts may need includes
+ write(someHandle, param1);
+ '''</span>
+ }
+}
+</code></pre>
+<hr>
<h3><a href="#inheritance" name="inheritance"></a>Inheritance</h3>
<p>A class can specify a super class and inherits elements from the super class hierarchy</p>
<p>When a ROOM class specifies a super class, it generally inherits all elements and properties.<br>In several cases, it is possible, to override these inherited elements. Generally, eTrice has two semantics of overriding: refinement and replacement.<br>Refinement is used in most cases (e.g. StateMachine) and realizes an extension of the overridden elements.<br>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.<br>Contrary to this, replacement is applied to overridden Operations, similar to programming languages C++ and Java.</p>
@@ -1006,42 +1008,43 @@
</tbody>
</table>
<p><strong>Example</strong>:</p>
-<p>¦¦¦<br> ```room&lt;br/&gt; ActorClass ActorSubClass extends ActorBaseClass {&lt;br/&gt; // inherits all elements from super type hierarchy&lt;br/&gt; }&lt;/p&gt;
-&lt;pre&gt;&lt;code&gt; ActorClass ActorBaseClass {
- Interface {
- Port port1 : ProtocolBaseClass
- }
- Structure {
- Attribute attribute1 : uint32
- }
- Behavior {
- Operation operation1() &amp;#39;&amp;#39;&amp;#39;
- return;
- &amp;#39;&amp;#39;&amp;#39;
- }
- }
+<pre><code class="room customHighlighted"><span class="keyword">ActorClass</span> ActorSubClass <span class="keyword">extends</span> ActorBaseClass {
+ <span class="comment">// inherits all elements from super type hierarchy
+</span>}
- ProtocolClass ProtocolSubClass extends ProtocolBaseClass {
- // inherits all elements from super type hierarchy
- }
+<span class="keyword">ActorClass</span> ActorBaseClass {
+ <span class="keyword">Interface</span> {
+ <span class="keyword">Port</span> port1 : ProtocolBaseClass
+ }
+ <span class="keyword">Structure</span> {
+ <span class="keyword">Attribute</span> attribute1 : uint32
+ }
+ <span class="keyword">Behavior</span> {
+ <span class="keyword">Operation</span> operation1() <span class="string">'''
+ return;
+ '''</span>
+ }
+}
- ProtocolClass ProtocolBaseClass {
- incoming {
- Message message1()
- }
- }
+<span class="keyword">ProtocolClass</span> ProtocolSubClass <span class="keyword">extends</span> ProtocolBaseClass {
+ <span class="comment">// inherits all elements from super type hierarchy
+</span>}
- DataClass DataSubClass extends DataBaseClass {
- // inherits all elements from super type hierarchy
- }
+<span class="keyword">ProtocolClass</span> ProtocolBaseClass {
+ <span class="keyword">incoming</span> {
+ <span class="keyword">Message</span> message1()
+ }
+}
- DataClass DataBaseClass {
- Attribute attribute1 : uint32
- }
- ```
- ¦¦¦
+<span class="keyword">DataClass</span> DataSubClass <span class="keyword">extends</span> DataBaseClass {
+ <span class="comment">// inherits all elements from super type hierarchy
+</span>}
-</p><hr>
+<span class="keyword">DataClass</span> DataBaseClass {
+ <span class="keyword">Attribute</span> attribute1 : uint32
+}
+</code></pre>
+<hr>
<h3><a href="#internalendport" name="internalendport"></a>InternalEndPort</h3>
<p>A InternalEndPort is an local Port, that is declared in the internal interface of an ActorClass</p>
<pre><code class="room customHighlighted"><span class="keyword">ActorClass</span> InternalEndPortExample {
@@ -1228,44 +1231,43 @@
</tbody>
</table>
<p><strong>Example</strong>:</p>
-<p>¦¦¦<br> ```room&lt;br/&gt; import room.basic.types.* from &amp;ldquo;../../../org.eclipse.etrice.modellib.c/model/Types.room&amp;rdquo;&lt;/p&gt;
-&lt;pre&gt;&lt;code&gt; DataClass DataClassWithOperation {
- Attribute attribute1 : uint32
-
- Operation operation1(param1: uint32, param2: int32): boolean &amp;#39;&amp;#39;&amp;#39;
- return attribute1 &amp;gt; (param1 - param2);
- &amp;#39;&amp;#39;&amp;#39;
- }
+<pre><code class="room customHighlighted"><span class="keyword">import</span> room.basic.types.* <span class="keyword">from</span> <span class="string">"../../../org.eclipse.etrice.modellib.c/model/Types.room"</span>
- ActorClass ActorClassWithOperation {
- Structure {
- Attribute attribute1 : uint32
- }
- Behavior {
- Operation operation1(param1: uint32, param2: int32): boolean &amp;#39;&amp;#39;&amp;#39;
- return attribute1 &amp;gt; (param1 - param2);
- &amp;#39;&amp;#39;&amp;#39;
- }
- }
+<span class="keyword">DataClass</span> DataClassWithOperation {
+ <span class="keyword">Attribute</span> attribute1 : uint32
+
+ <span class="keyword">Operation</span> operation1(param1: uint32, param2: int32): boolean <span class="string">'''
+ return attribute1 &gt; (param1 - param2);
+ '''</span>
+}
- ActorClass ActorClassWithOperation2 {
- Structure {
- usercode1 &amp;#39;&amp;#39;&amp;#39;
- // #include &amp;lt;___.h&amp;gt; /* User includes here */
- &amp;#39;&amp;#39;&amp;#39;
- Attribute someHandle : voidType ref
- }
- Behavior {
- Operation operation1(param1: charPtr) &amp;#39;&amp;#39;&amp;#39;
- // external calls or casts may need includes
- write(someHandle, param1);
- &amp;#39;&amp;#39;&amp;#39;
- }
- }
- ```
-¦¦¦
+<span class="keyword">ActorClass</span> ActorClassWithOperation {
+ <span class="keyword">Structure</span> {
+ <span class="keyword">Attribute</span> attribute1 : uint32
+ }
+ <span class="keyword">Behavior</span> {
+ <span class="keyword">Operation</span> operation1(param1: uint32, param2: int32): boolean <span class="string">'''
+ return attribute1 &gt; (param1 - param2);
+ '''</span>
+ }
+}
-</p><hr>
+<span class="keyword">ActorClass</span> ActorClassWithOperation2 {
+ <span class="keyword">Structure</span> {
+ <span class="keyword">usercode1</span> <span class="string">'''
+ // #include &lt;___.h&gt; /* User includes here */
+ '''</span>
+ <span class="keyword">Attribute</span> someHandle : voidType <span class="keyword">ref</span>
+ }
+ <span class="keyword">Behavior</span> {
+ <span class="keyword">Operation</span> operation1(param1: charPtr) <span class="string">'''
+ // external calls or casts may need includes
+ write(someHandle, param1);
+ '''</span>
+ }
+}
+</code></pre>
+<hr>
<h3><a href="#port" name="port"></a>Port</h3>
<p>A Port is an instance of a ProtocolClass and the interface for an ActorClass</p>
<p>Once a ProtocolClass has been created, it can be used to define actor interfaces. This is accomplished by means of Ports.<br>A Port is a declaration that the set of messages defined by its ProtocolClass is now part of the actor’s interface.<br>It provides strong decoupling of ActorClasses from each other, thus enabling easy testability, reusability and deployment of actors to different threads or nodes.</p>
diff --git a/plugins/org.eclipse.etrice.doc/targets/eclipse-help/room-concepts.html b/plugins/org.eclipse.etrice.doc/targets/eclipse-help/room-concepts.html
index 383434f5f..e6ec50cc0 100644
--- a/plugins/org.eclipse.etrice.doc/targets/eclipse-help/room-concepts.html
+++ b/plugins/org.eclipse.etrice.doc/targets/eclipse-help/room-concepts.html
@@ -120,21 +120,21 @@
<pre><code class="room customHighlighted"><span class="keyword">ActorClass</span> ActorClass4 {
<span class="keyword">Behavior</span> {
<span class="comment">// no arguments, no return value
-</span> <span class="keyword">Operation</span> operation1(): <span class="keyword">void</span> '''
+</span> <span class="keyword">Operation</span> operation1(): <span class="keyword">void</span> <span class="string">'''
user code
- '''
+ '''</span>
<span class="comment">// argument of primitive type, return value of primitive type
-</span> <span class="keyword">Operation</span> operation2(Param1: int32, Param2: float64): uint16 '''
+</span> <span class="keyword">Operation</span> operation2(Param1: int32, Param2: float64): uint16 <span class="string">'''
user code
- '''
+ '''</span>
<span class="comment">// arguments and return value by value
-</span> <span class="keyword">Operation</span> operation3(Param1: int32, Param2: DataClass1): DataClass1 '''
+</span> <span class="keyword">Operation</span> operation3(Param1: int32, Param2: DataClass1): DataClass1 <span class="string">'''
user code
- '''
+ '''</span>
<span class="comment">// arguments and return value by reference except for primitive types
-</span> <span class="keyword">Operation</span> operation4(Param1: int32, Param2: DataClass1 ref): DataClass1 <span class="keyword">ref</span> '''
+</span> <span class="keyword">Operation</span> operation4(Param1: int32, Param2: DataClass1 ref): DataClass1 <span class="keyword">ref</span> <span class="string">'''
user code
- '''
+ '''</span>
}
}
</code></pre>
@@ -376,17 +376,17 @@
</span> <span class="keyword">Attribute</span> attribute2: float32 <span class="comment">// attribute of another primitive type
</span>
<span class="comment">// no arguments, no return value
-</span> <span class="keyword">Operation</span> operation1(): <span class="keyword">void</span> '''
+</span> <span class="keyword">Operation</span> operation1(): <span class="keyword">void</span> <span class="string">'''
user code
- '''
+ '''</span>
<span class="comment">// argument of primitive type, no return value
-</span> <span class="keyword">Operation</span> operation2(Param1: int32): <span class="keyword">void</span> '''
+</span> <span class="keyword">Operation</span> operation2(Param1: int32): <span class="keyword">void</span> <span class="string">'''
user code
- '''
+ '''</span>
<span class="comment">// argument of primitive type, return value of primitive type
-</span> <span class="keyword">Operation</span> operation3(Param1: int32): float64 '''
+</span> <span class="keyword">Operation</span> operation3(Param1: int32): float64 <span class="string">'''
user code
- '''
+ '''</span>
}
</code></pre>
<p>Example: DataClass using other DataClasses:</p>
@@ -395,13 +395,13 @@
</span> <span class="keyword">Attribute</span> attribute2: DataClass1 <span class="comment">// attribute of DataClass
</span>
<span class="comment">// arguments and return value by value
-</span> <span class="keyword">Operation</span> operation1(Param1: int32, Param2: DataClass1): DataClass1 '''
+</span> <span class="keyword">Operation</span> operation1(Param1: int32, Param2: DataClass1): DataClass1 <span class="string">'''
user code
- '''
+ '''</span>
<span class="comment">// arguments and return value by reference except for primitive types
-</span> <span class="keyword">Operation</span> operation2(Param1: int32, Param2: DataClass1 ref): DataClass1 <span class="keyword">ref</span> '''
+</span> <span class="keyword">Operation</span> operation2(Param1: int32, Param2: DataClass1 ref): DataClass1 <span class="keyword">ref</span> <span class="string">'''
user code
- '''
+ '''</span>
}
</code></pre>
<h2><a href="#layering" name="layering"></a>Layering</h2>

Back to the top