Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThomas Schuetz2012-09-28 09:32:21 +0000
committerThomas Schuetz2012-09-28 09:32:21 +0000
commit854ebcf3f937d20e5ff99641f13010fcdb72c760 (patch)
treed60c765102dce66715626a83283329f53085555a
parentb4230170045eecab0f0ac0e70d8b3f20f3389c60 (diff)
downloadorg.eclipse.etrice-854ebcf3f937d20e5ff99641f13010fcdb72c760.tar.gz
org.eclipse.etrice-854ebcf3f937d20e5ff99641f13010fcdb72c760.tar.xz
org.eclipse.etrice-854ebcf3f937d20e5ff99641f13010fcdb72c760.zip
[doc] updated and added generated doc files
-rw-r--r--plugins/org.eclipse.etrice.doc/build/etrice.textile6
-rw-r--r--plugins/org.eclipse.etrice.doc/build/etrice.xml13
-rw-r--r--plugins/org.eclipse.etrice.doc/help/BuildingtheCruntimesystem.html85
-rw-r--r--plugins/org.eclipse.etrice.doc/help/Createanewmodelfromscratch5.html64
-rw-r--r--plugins/org.eclipse.etrice.doc/help/CreatetheHelloWorldmodel.html3
-rw-r--r--plugins/org.eclipse.etrice.doc/help/Createthemodel.html274
-rw-r--r--plugins/org.eclipse.etrice.doc/help/Createyourowndatatype.html74
-rw-r--r--plugins/org.eclipse.etrice.doc/help/Generatebuildandrunthemodel.html46
-rw-r--r--plugins/org.eclipse.etrice.doc/help/ROOMConcepts.html310
-rw-r--r--plugins/org.eclipse.etrice.doc/help/SettinguptheWorkspaceforCProjects.html134
-rw-r--r--plugins/org.eclipse.etrice.doc/help/SettinguptheWorkspaceforJavaProjects.html129
-rw-r--r--plugins/org.eclipse.etrice.doc/help/Summary5.html26
-rw-r--r--plugins/org.eclipse.etrice.doc/help/TutorialHelloWorldforC.html90
-rw-r--r--plugins/org.eclipse.etrice.doc/help/TutorialHelloWorldforJava.html85
-rw-r--r--plugins/org.eclipse.etrice.doc/help/TutorialRemoveCCommentC.html81
-rw-r--r--plugins/org.eclipse.etrice.doc/help/images/032-SetupWorkspaceC08.pngbin0 -> 94115 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/help/images/032-SetupWorkspaceC09.pngbin0 -> 63816 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/help/images/032-SetupWorkspaceC10.pngbin0 -> 36926 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/help/images/032-SetupWorkspaceC11.pngbin0 -> 9619 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC06.pngbin0 -> 29058 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC07.pngbin0 -> 93328 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC08.pngbin0 -> 93240 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC09.pngbin0 -> 104815 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC10.pngbin0 -> 101554 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC11.pngbin0 -> 5669 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC12.pngbin0 -> 128401 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC13.pngbin0 -> 12663 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC14.pngbin0 -> 101442 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC15.pngbin0 -> 94359 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC16.pngbin0 -> 11914 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/help/images/036-RemoveCommentC01.pngbin0 -> 5063 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/help/images/036-RemoveCommentC02.pngbin0 -> 18713 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/help/images/036-RemoveCommentC03.pngbin0 -> 17936 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/help/images/036-RemoveCommentC04.pngbin0 -> 51681 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/help/images/036-RemoveCommentC05.pngbin0 -> 9897 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/help/images/036-RemoveCommentC06.pngbin0 -> 117517 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/help/images/036-RemoveCommentC07.pngbin0 -> 9964 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/help/images/036-RemoveCommentC08.pngbin0 -> 73392 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice.html13
-rw-r--r--plugins/org.eclipse.etrice.doc/html/images/032-SetupWorkspaceC08.pngbin0 -> 94115 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/html/images/032-SetupWorkspaceC09.pngbin0 -> 63816 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/html/images/032-SetupWorkspaceC10.pngbin0 -> 36926 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/html/images/032-SetupWorkspaceC11.pngbin0 -> 9619 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC06.pngbin0 -> 29058 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC07.pngbin0 -> 93328 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC08.pngbin0 -> 93240 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC09.pngbin0 -> 104815 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC10.pngbin0 -> 101554 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC11.pngbin0 -> 5669 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC12.pngbin0 -> 128401 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC13.pngbin0 -> 12663 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC14.pngbin0 -> 101442 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC15.pngbin0 -> 94359 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC16.pngbin0 -> 11914 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/html/images/036-RemoveCommentC01.pngbin0 -> 5063 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/html/images/036-RemoveCommentC02.pngbin0 -> 18713 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/html/images/036-RemoveCommentC03.pngbin0 -> 17936 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/html/images/036-RemoveCommentC04.pngbin0 -> 51681 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/html/images/036-RemoveCommentC05.pngbin0 -> 9897 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/html/images/036-RemoveCommentC06.pngbin0 -> 117517 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/html/images/036-RemoveCommentC07.pngbin0 -> 9964 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/html/images/036-RemoveCommentC08.pngbin0 -> 73392 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/manual/etrice.pdfbin6996203 -> 6996182 bytes
63 files changed, 1414 insertions, 19 deletions
diff --git a/plugins/org.eclipse.etrice.doc/build/etrice.textile b/plugins/org.eclipse.etrice.doc/build/etrice.textile
index 02a3da083..bf0e75bed 100644
--- a/plugins/org.eclipse.etrice.doc/build/etrice.textile
+++ b/plugins/org.eclipse.etrice.doc/build/etrice.textile
@@ -1092,7 +1092,7 @@ Recognize the C specific parts:
bc..
RoomModel HelloWorldCModel {
- import room.basic.types.c.* from "../../org.eclipse.etrice.modellib.c/model/Types.room"
+ import room.basic.types.* from "../../org.eclipse.etrice.modellib.c/model/Types.room"
SubSystemClass HelloWorldCSubSysClass {
ActorRef HelloETriceTopRef:AHelloWorldCTop
}
@@ -1222,11 +1222,11 @@ Now the model is created and all settings for the code generator, compiler and l
h2. Create your own data type
-The planed application should read a C source file and remove the comments. Therefore we need a file descriptor which is not part of the basic C types. The type for the file descriptor for MinGW is _FILE_. To make this type available on the model level, you have to declare the type in Types.room. To avoid interferance with other models, make a copy of _Types.room_ from _org.eclipse.modellib.c_ to your model folder.
+The planed application should read a C source file and remove the comments. Therefore we need a file descriptor which is not part of the basic C types. The type for the file descriptor for MinGW is _FILE_. To make this type available on the model level, you have to declare the type in Types.room. To not interfere with other models, make a copy of _Types.room_ from _org.eclipse.modellib.c_ to your model folder.
!images/036-RemoveCommentC03.png!
-Open _Ctypes.room_ and take a look at the declaration of _string_ (last line) which is not a basic C type.
+Open _Types.room_ and take a look at the declaration of _string_ (last line) which is not a basic C type.
_PrimitiveType string:ptCharacter -> charPtr default "0"_
diff --git a/plugins/org.eclipse.etrice.doc/build/etrice.xml b/plugins/org.eclipse.etrice.doc/build/etrice.xml
index 23b4c9c93..80823468c 100644
--- a/plugins/org.eclipse.etrice.doc/build/etrice.xml
+++ b/plugins/org.eclipse.etrice.doc/build/etrice.xml
@@ -1958,13 +1958,12 @@ carLights.setState(TrafficLight3.OFF);
<para>Once the model file is created and the Xtext nature is added, you can create the model as you did it for Java.
Creating the model is not the focus of this tutorial. Therefore copy and paste the following code into your model file. Optionally you can open and layout the diagrams.
Recognize the C specific parts:
- - Import CTypes instead of JavaTypes
- The action code contains C instead of Java. Later versions will contain a common action language, but for the moment the action language is target specific.
- The application must be shutdown on model level (see also
<emphasis>etRuntimeConfig.h</emphasis>).
</para>
<literallayout><code>RoomModel HelloWorldCModel {
- import room.basic.types.c.* from "../../org.eclipse.etrice.modellib.c/model/CTypes.room"
+ import room.basic.types.* from "../../org.eclipse.etrice.modellib.c/model/Types.room"
SubSystemClass HelloWorldCSubSysClass {
ActorRef HelloETriceTopRef:AHelloWorldCTop
}
@@ -2190,8 +2189,8 @@ carLights.setState(TrafficLight3.OFF);
<section id="Createyourowndatatype">
<title>Create your own data type</title>
<para>The planed application should read a C source file and remove the comments. Therefore we need a file descriptor which is not part of the basic C types. The type for the file descriptor for MinGW is
- <emphasis>FILE</emphasis>. To make this type available on the model level, you have to declare the type in CTypes.room. To not interfere with other models, make a copy of
- <emphasis>CTypes.room</emphasis> from
+ <emphasis>FILE</emphasis>. To make this type available on the model level, you have to declare the type in Types.room. To not interfere with other models, make a copy of
+ <emphasis>Types.room</emphasis> from
<emphasis>org.eclipse.modellib.c</emphasis> to your model folder.
</para>
<para>
@@ -2202,7 +2201,7 @@ carLights.setState(TrafficLight3.OFF);
</mediaobject>
</para>
<para>Open
- <emphasis>Ctypes.room</emphasis> and take a look at the declaration of
+ <emphasis>Types.room</emphasis> and take a look at the declaration of
<emphasis>string</emphasis> (last line) which is not a basic C type.
</para>
<para>
@@ -2216,7 +2215,7 @@ carLights.setState(TrafficLight3.OFF);
<emphasis>generic</emphasis>). With this mechanism you can define your own type system on model level and map the model types to specific target/platform types.
</para>
<para>Add the following line in
- <emphasis>CTypes.room</emphasis>:
+ <emphasis>Types.room</emphasis>:
</para>
<literallayout><code>PrimitiveType file:ptInteger -&gt; FILE default "0"
</code></literallayout>
@@ -2265,7 +2264,7 @@ carLights.setState(TrafficLight3.OFF);
</para>
<para>Complete model:</para>
<literallayout><code>RoomModel RemoveComment {
- import room.basic.types.c.* from "CTypes.room"
+ import room.basic.types.* from "Types.room"
SubSystemClass RemoveCommentSubSys {
ActorRef Topref:ATop
}
diff --git a/plugins/org.eclipse.etrice.doc/help/BuildingtheCruntimesystem.html b/plugins/org.eclipse.etrice.doc/help/BuildingtheCruntimesystem.html
new file mode 100644
index 000000000..a0c94a07a
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/help/BuildingtheCruntimesystem.html
@@ -0,0 +1,85 @@
+<html>
+<head>
+<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Building the C runtime system</title>
+<link href="book.css" rel="stylesheet" type="text/css">
+<meta content="DocBook XSL Stylesheets V1.75.1" name="generator">
+<link rel="home" href="index.html" title="eTrice User Guide">
+<link rel="up" href="SettinguptheWorkspaceforCProjects.html" title="Setting up the Workspace for C Projects">
+<link rel="prev" href="SettinguptheWorkspaceforCProjects.html" title="Setting up the Workspace for C Projects">
+<link rel="next" href="TutorialHelloWorldforC.html" title="Tutorial HelloWorld for C">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<h1 xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0">Building the C runtime system</h1>
+<div class="section" title="Building the C runtime system">
+<div class="titlepage">
+<div>
+<div>
+<h2 class="title" style="clear: both">
+<a name="BuildingtheCruntimesystem"></a>Building the C runtime system</h2>
+</div>
+</div>
+</div>
+<p>The C runtime system contains some basic functionalities to run the generated models. The so called runtime is common for all C projects. The requirements for several projects may differ depending on the functionality of the model or the resources of the different platforms. Therefore the runtime is configurable in terms of message queue size, frequency and memory alignment. The configuration file
+ <span class="emphasis"><em>etRuntimeConfig.h</em></span> is located in
+ <span class="emphasis"><em>src/config</em></span>.
+ </p>
+<p>After changing the configuration, the runtime must be built.</p>
+<p>Open the properties of the
+ <span class="emphasis"><em>org.eclipse.runtime.c</em></span> project and select
+ <span class="emphasis"><em>C/C++ Build-&gt;Settings-&gt;Tool Settings</em></span> and select
+ <span class="emphasis"><em>Includes</em></span>.
+ </p>
+<p>
+
+</p>
+<div class="mediaobject">
+<img src="images/032-SetupWorkspaceC08.png"></div>
+<p>
+
+</p>
+<p>Verify the include paths</p>
+<p>
+
+<span class="emphasis"><em>src/config</em></span>
+
+ <span class="emphasis"><em>src/common</em></span>
+
+ <span class="emphasis"><em>src/platforms/generic</em></span>
+
+</p>
+<p>Within the Setting dialog select the tab
+ <span class="emphasis"><em>Build Artefact</em></span> and select
+ <span class="emphasis"><em>Static Library</em></span>
+
+</p>
+<p>
+
+</p>
+<div class="mediaobject">
+<img src="images/032-SetupWorkspaceC09.png"></div>
+<p>
+
+</p>
+<p>Build the runtime by clicking</p>
+<p>
+
+</p>
+<div class="mediaobject">
+<img src="images/032-SetupWorkspaceC10.png"></div>
+<p>
+
+</p>
+<p>The runtime library should be created.</p>
+<p>
+
+</p>
+<div class="mediaobject">
+<img src="images/032-SetupWorkspaceC11.png"></div>
+<p>
+
+</p>
+<p>For the tutorials one runtime library should be sufficient. For embedded projects it might be necessary to build project specific runtime libraries. In this case a separate project for the runtime should be created. Symbolic links to the sources might be used to avoid duplicate files. Just the configuration file must be duplicated. A specific library file must exist within the project. Such specific runtime libraries might be referenced from several applications. </p>
+</div>
+</body>
+</html>
diff --git a/plugins/org.eclipse.etrice.doc/help/Createanewmodelfromscratch5.html b/plugins/org.eclipse.etrice.doc/help/Createanewmodelfromscratch5.html
new file mode 100644
index 000000000..461c49d36
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/help/Createanewmodelfromscratch5.html
@@ -0,0 +1,64 @@
+<html>
+<head>
+<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Create a new model from scratch</title>
+<link href="book.css" rel="stylesheet" type="text/css">
+<meta content="DocBook XSL Stylesheets V1.75.1" name="generator">
+<link rel="home" href="index.html" title="eTrice User Guide">
+<link rel="up" href="TutorialRemoveCCommentC.html" title="Tutorial Remove C-Comment ( C )">
+<link rel="prev" href="TutorialRemoveCCommentC.html" title="Tutorial Remove C-Comment ( C )">
+<link rel="next" href="Createyourowndatatype.html" title="Create your own data type">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<h1 xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0">Create a new model from scratch</h1>
+<div class="section" title="Create a new model from scratch">
+<div class="titlepage">
+<div>
+<div>
+<h2 class="title" style="clear: both">
+<a name="Createanewmodelfromscratch5"></a>Create a new model from scratch</h2>
+</div>
+</div>
+</div>
+<p>Remember the following steps from the previous tutorials:
+ - select the
+ <span class="emphasis"><em>C/C++</em></span> perspective
+ - From the main menue select
+ <span class="emphasis"><em>File-&gt;New-&gt;C Project</em></span>
+ - Name the project
+ <span class="emphasis"><em>RemoveComment</em></span>
+ - Project type is
+ <span class="emphasis"><em>Executable / Empty C Project</em></span>
+ - Toolchain is
+ <span class="emphasis"><em>MinGW</em></span>
+ - Add the folder
+ <span class="emphasis"><em>model</em></span>
+ - Add the model file and name it
+ <span class="emphasis"><em>RemoveComment.room</em></span>
+ - Add the Xtext nature.
+ </p>
+<p>The workspace should look like this:</p>
+<p>
+
+</p>
+<div class="mediaobject">
+<img src="images/036-RemoveCommentC01.png"></div>
+<p>
+
+</p>
+<p>Create a launch configuration for the C generator and add the include path and library as described in
+ <span class="emphasis"><em>HelloWorldC</em></span>.
+ </p>
+<p>The workspace should look like this:</p>
+<p>
+
+</p>
+<div class="mediaobject">
+<img src="images/036-RemoveCommentC02.png"></div>
+<p>
+
+</p>
+<p>Now the model is created and all settings for the code generator, compiler and linker are done.</p>
+</div>
+</body>
+</html>
diff --git a/plugins/org.eclipse.etrice.doc/help/CreatetheHelloWorldmodel.html b/plugins/org.eclipse.etrice.doc/help/CreatetheHelloWorldmodel.html
index 164749a0d..2ec4b548c 100644
--- a/plugins/org.eclipse.etrice.doc/help/CreatetheHelloWorldmodel.html
+++ b/plugins/org.eclipse.etrice.doc/help/CreatetheHelloWorldmodel.html
@@ -23,7 +23,6 @@
<p>Once the model file is created and the Xtext nature is added, you can create the model as you did it for Java.
Creating the model is not the focus of this tutorial. Therefore copy and paste the following code into your model file. Optionally you can open and layout the diagrams.
Recognize the C specific parts:
- - Import CTypes instead of JavaTypes
- The action code contains C instead of Java. Later versions will contain a common action language, but for the moment the action language is target specific.
- The application must be shutdown on model level (see also
<span class="emphasis"><em>etRuntimeConfig.h</em></span>).
@@ -31,7 +30,7 @@
<div class="literallayout">
<p>
<code class="code">RoomModel&nbsp;HelloWorldCModel&nbsp;{<br>
- import&nbsp;room.basic.types.c.*&nbsp;from&nbsp;"../../org.eclipse.etrice.modellib.c/model/CTypes.room"<br>
+ import&nbsp;room.basic.types.*&nbsp;from&nbsp;"../../org.eclipse.etrice.modellib.c/model/Types.room"<br>
SubSystemClass&nbsp;HelloWorldCSubSysClass&nbsp;{<br>
ActorRef&nbsp;HelloETriceTopRef:AHelloWorldCTop&nbsp;<br>
}<br>
diff --git a/plugins/org.eclipse.etrice.doc/help/Createthemodel.html b/plugins/org.eclipse.etrice.doc/help/Createthemodel.html
new file mode 100644
index 000000000..c64820854
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/help/Createthemodel.html
@@ -0,0 +1,274 @@
+<html>
+<head>
+<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Create the model</title>
+<link href="book.css" rel="stylesheet" type="text/css">
+<meta content="DocBook XSL Stylesheets V1.75.1" name="generator">
+<link rel="home" href="index.html" title="eTrice User Guide">
+<link rel="up" href="TutorialRemoveCCommentC.html" title="Tutorial Remove C-Comment ( C )">
+<link rel="prev" href="Createyourowndatatype.html" title="Create your own data type">
+<link rel="next" href="Generatebuildandrunthemodel.html" title="Generate, build and run the model">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<h1 xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0">Create the model</h1>
+<div class="section" title="Create the model">
+<div class="titlepage">
+<div>
+<div>
+<h2 class="title" style="clear: both">
+<a name="Createthemodel"></a>Create the model</h2>
+</div>
+</div>
+</div>
+<p>Due to the former tutorials you should be familiar with the steps to create the model with protocols, actors and state machines.</p>
+<p>The basic idea of the exercise is to create a file reader actor, which is responsible to open, close and read characters from the source file. Another actor receives the characters and filters the comments (parser). The remaining characters (pure source code) should be print out. </p>
+<p>Remember the logical steps:
+ - create the model by the help of content assist (CTRL Space)
+ - name the model, subsystem and top level actor
+ - define the protocol (in this case it should be able to send a char, and to request the next char from the file reader)
+ - create the structure (file reader and parser with an appropriate port, create the references and connect the ports)
+ - create the state machines</p>
+<p>Try to create the model by yourself and take the following solution as an example.</p>
+<p>Structure:</p>
+<p>
+
+</p>
+<div class="mediaobject">
+<img src="images/036-RemoveCommentC04.png"></div>
+<p>
+
+</p>
+<p>File reader FSM:</p>
+<p>
+
+</p>
+<div class="mediaobject">
+<img src="images/036-RemoveCommentC05.png"></div>
+<p>
+
+</p>
+<p>Parser FSM:</p>
+<p>
+
+</p>
+<div class="mediaobject">
+<img src="images/036-RemoveCommentC06.png"></div>
+<p>
+
+</p>
+<p>Complete model:</p>
+<div class="literallayout">
+<p>
+<code class="code">RoomModel&nbsp;RemoveComment&nbsp;{<br>
+ import&nbsp;room.basic.types.*&nbsp;from&nbsp;"Types.room"<br>
+ SubSystemClass&nbsp;RemoveCommentSubSys&nbsp;{<br>
+ ActorRef&nbsp;Topref:ATop&nbsp;<br>
+ }<br>
+ ActorClass&nbsp;ATop&nbsp;{<br>
+ Structure&nbsp;{<br>
+ ActorRef&nbsp;reader:&nbsp;AFileReader<br>
+ ActorRef&nbsp;cParser:&nbsp;ACParser<br>
+ Binding&nbsp;reader.outPort&nbsp;and&nbsp;cParser.readerPort<br>
+ }<br>
+ Behavior&nbsp;{&nbsp;}<br>
+ }<br>
+ ActorClass&nbsp;AFileReader{<br>
+ Interface&nbsp;{<br>
+ Port&nbsp;outPort:&nbsp;FileReaderProtocol<br>
+ }<br>
+ Structure&nbsp;{<br>
+ usercode3{"#include&nbsp;&lt;stdio.h&gt;"<br>
+ }<br>
+ external&nbsp;Port&nbsp;outPort<br>
+ Attribute&nbsp;f:file&nbsp;ref<br>
+ }<br>
+ Behavior&nbsp;{<br>
+ StateMachine&nbsp;{<br>
+ Transition&nbsp;init:&nbsp;initial&nbsp;-&gt;&nbsp;reading&nbsp;{<br>
+ action&nbsp;{<br>
+ "if&nbsp;((f&nbsp;=&nbsp;fopen(\"test.txt\",\"r\"))&nbsp;!=&nbsp;0)&nbsp;{"<br>
+ "\tprintf(\"file&nbsp;open&nbsp;ok&nbsp;!\\r\\n\");"<br>
+ "\t}"<br>
+ "\telse&nbsp;{"<br>
+ "\tprintf(\"file&nbsp;not&nbsp;found&nbsp;!\\r\\n\");"<br>
+ "\tSubSysClass_shutdown();"<br>
+ "\t}"<br>
+ }<br>
+ }<br>
+ Transition&nbsp;tr0:&nbsp;reading&nbsp;-&gt;&nbsp;reading&nbsp;{<br>
+ triggers&nbsp;{<br>
+ &lt;getNextChar:&nbsp;outPort&gt;<br>
+ }<br>
+ action&nbsp;{<br>
+ "int8&nbsp;c;"<br>
+ "if&nbsp;((c=fgetc(f))&nbsp;!=&nbsp;EOF)&nbsp;{"<br>
+ "\toutPort.nextChar(c);"<br>
+ "\t}"<br>
+ "\telse&nbsp;{"<br>
+ "\tfclose(f);"<br>
+ "\tprintf(\"file&nbsp;closed&nbsp;!\\r\\n\");"<br>
+ "\tSubSysClass_shutdown();"<br>
+ "\t}"<br>
+ }<br>
+ }<br>
+ State&nbsp;reading<br>
+ }<br>
+ }<br>
+ }<br>
+ ActorClass&nbsp;ACParser{<br>
+ Interface&nbsp;{<br>
+ conjugated&nbsp;Port&nbsp;readerPort:&nbsp;FileReaderProtocol<br>
+ }<br>
+ Structure&nbsp;{<br>
+ external&nbsp;Port&nbsp;readerPort<br>
+ }<br>
+ Behavior&nbsp;{<br>
+ StateMachine&nbsp;{<br>
+ Transition&nbsp;init:&nbsp;initial&nbsp;-&gt;&nbsp;code&nbsp;{<br>
+ action&nbsp;{<br>
+ "readerPort.getNextChar();"<br>
+ }<br>
+ }<br>
+ Transition&nbsp;tr0:&nbsp;code&nbsp;-&gt;&nbsp;cp&nbsp;cp0&nbsp;{<br>
+ triggers&nbsp;{<br>
+ &lt;nextChar:&nbsp;readerPort&gt;<br>
+ }<br>
+ action&nbsp;{<br>
+ "readerPort.getNextChar();"<br>
+ }<br>
+ }<br>
+ Transition&nbsp;tr1:&nbsp;cp&nbsp;cp0&nbsp;-&gt;&nbsp;code&nbsp;{<br>
+ action&nbsp;{<br>
+ "printf(\"%c\",c);"<br>
+ }<br>
+ }<br>
+ Transition&nbsp;tr2:&nbsp;cp&nbsp;cp0&nbsp;-&gt;&nbsp;firstSlash&nbsp;{<br>
+ cond&nbsp;{<br>
+ "c==\'/\'"<br>
+ }<br>
+ }<br>
+ Transition&nbsp;tr3:&nbsp;firstSlash&nbsp;-&gt;&nbsp;cp&nbsp;cp1&nbsp;{<br>
+ triggers&nbsp;{<br>
+ &lt;nextChar:&nbsp;readerPort&gt;<br>
+ }<br>
+ action&nbsp;{<br>
+ "readerPort.getNextChar();"<br>
+ }<br>
+ }<br>
+ Transition&nbsp;tr4:&nbsp;cp&nbsp;cp1&nbsp;-&gt;&nbsp;cp&nbsp;cp4<br>
+ Transition&nbsp;tr5:&nbsp;cp&nbsp;cp1&nbsp;-&gt;&nbsp;blockComment&nbsp;{<br>
+ cond&nbsp;{<br>
+ "c==\'*\'"<br>
+ }<br>
+ }<br>
+ Transition&nbsp;tr6:&nbsp;blockComment&nbsp;-&gt;&nbsp;cp&nbsp;cp2&nbsp;{<br>
+ triggers&nbsp;{<br>
+ &lt;nextChar:&nbsp;readerPort&gt;<br>
+ }<br>
+ action&nbsp;{<br>
+ "readerPort.getNextChar();"<br>
+ }<br>
+ }<br>
+ Transition&nbsp;tr7:&nbsp;cp&nbsp;cp2&nbsp;-&gt;&nbsp;blockComment<br>
+ Transition&nbsp;tr8:&nbsp;cp&nbsp;cp2&nbsp;-&gt;&nbsp;firstStar&nbsp;{<br>
+ cond&nbsp;{<br>
+ "c==\'*\'"<br>
+ }<br>
+ }<br>
+ Transition&nbsp;tr9:&nbsp;firstStar&nbsp;-&gt;&nbsp;cp&nbsp;cp3&nbsp;{<br>
+ triggers&nbsp;{<br>
+ &lt;nextChar:&nbsp;readerPort&gt;<br>
+ }<br>
+ action&nbsp;{<br>
+ "readerPort.getNextChar();"<br>
+ }<br>
+ }<br>
+ Transition&nbsp;tr10:&nbsp;cp&nbsp;cp3&nbsp;-&gt;&nbsp;blockComment<br>
+ Transition&nbsp;tr11:&nbsp;cp&nbsp;cp3&nbsp;-&gt;&nbsp;code&nbsp;{<br>
+ cond&nbsp;{<br>
+ "c==\'/\'"<br>
+ }<br>
+ }<br>
+ Transition&nbsp;tr12:&nbsp;cp&nbsp;cp4&nbsp;-&gt;&nbsp;code&nbsp;{<br>
+ action&nbsp;{<br>
+ "printf(\"%c%c\",\'/\',c);"<br>
+ }<br>
+ }<br>
+ Transition&nbsp;tr13:&nbsp;cp&nbsp;cp4&nbsp;-&gt;&nbsp;lineComment&nbsp;{<br>
+ cond&nbsp;{<br>
+ "c==\'/\'"<br>
+ }<br>
+ }<br>
+ Transition&nbsp;tr14:&nbsp;cp&nbsp;cp5&nbsp;-&gt;&nbsp;lineComment<br>
+ Transition&nbsp;tr15:&nbsp;lineComment&nbsp;-&gt;&nbsp;cp&nbsp;cp5&nbsp;{<br>
+ triggers&nbsp;{<br>
+ &lt;nextChar:&nbsp;readerPort&gt;<br>
+ }<br>
+ action&nbsp;{<br>
+ "readerPort.getNextChar();"<br>
+ }<br>
+ }<br>
+ Transition&nbsp;tr16:&nbsp;cp&nbsp;cp5&nbsp;-&gt;&nbsp;code&nbsp;{<br>
+ cond&nbsp;{<br>
+ "c==\'\\n\'"<br>
+ }<br>
+ }<br>
+ ChoicePoint&nbsp;cp0<br>
+ ChoicePoint&nbsp;cp1<br>
+ ChoicePoint&nbsp;cp2<br>
+ ChoicePoint&nbsp;cp3<br>
+ ChoicePoint&nbsp;cp4<br>
+ ChoicePoint&nbsp;cp5<br>
+ State&nbsp;code<br>
+ State&nbsp;firstSlash<br>
+ State&nbsp;blockComment<br>
+ State&nbsp;firstStar<br>
+ State&nbsp;lineComment<br>
+ }<br>
+ }<br>
+ }<br>
+
+<br>
+ ProtocolClass&nbsp;FileReaderProtocol&nbsp;{<br>
+ incoming&nbsp;{<br>
+ Message&nbsp;getNextChar()<br>
+ }<br>
+ outgoing&nbsp;{<br>
+ Message&nbsp;nextChar(c:char)<br>
+ }<br>
+ }<br>
+}<br>
+
+</code>
+</p>
+</div>
+<div class="blockquote">
+<blockquote class="blockquote">
+<p></p>
+</blockquote>
+</div>
+<p>Take a look at the file attribute of the file reader. </p>
+<div class="literallayout">
+<p>
+<code class="code">Attribute&nbsp;f:file&nbsp;ref<br>
+
+</code>
+</p>
+</div>
+<div class="blockquote">
+<blockquote class="blockquote">
+<p></p>
+</blockquote>
+</div>
+<p>
+
+<span class="emphasis"><em>fopen</em></span> expects a
+ <span class="emphasis"><em>FILE *</em></span>.
+ <span class="emphasis"><em>f:file ref</em></span> declares a variable
+ <span class="emphasis"><em>f</em></span> from type reference to
+ <span class="emphasis"><em>file</em></span>, which is a pointer to
+ <span class="emphasis"><em>FILE</em></span>.
+ </p>
+</div>
+</body>
+</html>
diff --git a/plugins/org.eclipse.etrice.doc/help/Createyourowndatatype.html b/plugins/org.eclipse.etrice.doc/help/Createyourowndatatype.html
new file mode 100644
index 000000000..dc2218c4b
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/help/Createyourowndatatype.html
@@ -0,0 +1,74 @@
+<html>
+<head>
+<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Create your own data type</title>
+<link href="book.css" rel="stylesheet" type="text/css">
+<meta content="DocBook XSL Stylesheets V1.75.1" name="generator">
+<link rel="home" href="index.html" title="eTrice User Guide">
+<link rel="up" href="TutorialRemoveCCommentC.html" title="Tutorial Remove C-Comment ( C )">
+<link rel="prev" href="Createanewmodelfromscratch5.html" title="Create a new model from scratch">
+<link rel="next" href="Createthemodel.html" title="Create the model">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<h1 xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0">Create your own data type</h1>
+<div class="section" title="Create your own data type">
+<div class="titlepage">
+<div>
+<div>
+<h2 class="title" style="clear: both">
+<a name="Createyourowndatatype"></a>Create your own data type</h2>
+</div>
+</div>
+</div>
+<p>The planed application should read a C source file and remove the comments. Therefore we need a file descriptor which is not part of the basic C types. The type for the file descriptor for MinGW is
+ <span class="emphasis"><em>FILE</em></span>. To make this type available on the model level, you have to declare the type in Types.room. To not interfere with other models, make a copy of
+ <span class="emphasis"><em>Types.room</em></span> from
+ <span class="emphasis"><em>org.eclipse.modellib.c</em></span> to your model folder.
+ </p>
+<p>
+
+</p>
+<div class="mediaobject">
+<img src="images/036-RemoveCommentC03.png"></div>
+<p>
+
+</p>
+<p>Open
+ <span class="emphasis"><em>Types.room</em></span> and take a look at the declaration of
+ <span class="emphasis"><em>string</em></span> (last line) which is not a basic C type.
+ </p>
+<p>
+
+<span class="emphasis"><em>PrimitiveType string:ptCharacter -&gt; charPtr default "0"</em></span>
+
+</p>
+<p>With this declaration, you make the
+ <span class="emphasis"><em>string</em></span> keyword available on model level as a primitive type. This type will be translated to
+ <span class="emphasis"><em>charPtr</em></span> in your C sources.
+ <span class="emphasis"><em>charPtr</em></span> is defined in
+ <span class="emphasis"><em>etDatatypes.h</em></span>. This header file is platform specific (
+ <span class="emphasis"><em>generic</em></span>). With this mechanism you can define your own type system on model level and map the model types to specific target/platform types.
+ </p>
+<p>Add the following line in
+ <span class="emphasis"><em>Types.room</em></span>:
+ </p>
+<div class="literallayout">
+<p>
+<code class="code">PrimitiveType&nbsp;file:ptInteger&nbsp;-&gt;&nbsp;FILE&nbsp;default&nbsp;"0"<br>
+
+</code>
+</p>
+</div>
+<div class="blockquote">
+<blockquote class="blockquote">
+<p></p>
+</blockquote>
+</div>
+<p>
+
+<span class="emphasis"><em>FILE</em></span> is the native type for MinGW. Therefore you don&acute;t need a mapping within
+ <span class="emphasis"><em>etDatatypes.h</em></span>. If your model should be portable across different platforms you should not take this shortcut.
+ </p>
+</div>
+</body>
+</html>
diff --git a/plugins/org.eclipse.etrice.doc/help/Generatebuildandrunthemodel.html b/plugins/org.eclipse.etrice.doc/help/Generatebuildandrunthemodel.html
new file mode 100644
index 000000000..81f38ea3a
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/help/Generatebuildandrunthemodel.html
@@ -0,0 +1,46 @@
+<html>
+<head>
+<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Generate, build and run the model</title>
+<link href="book.css" rel="stylesheet" type="text/css">
+<meta content="DocBook XSL Stylesheets V1.75.1" name="generator">
+<link rel="home" href="index.html" title="eTrice User Guide">
+<link rel="up" href="TutorialRemoveCCommentC.html" title="Tutorial Remove C-Comment ( C )">
+<link rel="prev" href="Createthemodel.html" title="Create the model">
+<link rel="next" href="Summary5.html" title="Summary">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<h1 xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0">Generate, build and run the model</h1>
+<div class="section" title="Generate, build and run the model">
+<div class="titlepage">
+<div>
+<div>
+<h2 class="title" style="clear: both">
+<a name="Generatebuildandrunthemodel"></a>Generate, build and run the model</h2>
+</div>
+</div>
+</div>
+<p>Before you can run the model you should copy one of the generated C source files into the project folder and name it
+ <span class="emphasis"><em>test.txt</em></span>.
+ </p>
+<p>
+
+</p>
+<div class="mediaobject">
+<img src="images/036-RemoveCommentC07.png"></div>
+<p>
+
+</p>
+<p>Generate, build and run the model.</p>
+<p>Your output should start like this:</p>
+<p>
+
+</p>
+<div class="mediaobject">
+<img src="images/036-RemoveCommentC08.png"></div>
+<p>
+
+</p>
+</div>
+</body>
+</html>
diff --git a/plugins/org.eclipse.etrice.doc/help/ROOMConcepts.html b/plugins/org.eclipse.etrice.doc/help/ROOMConcepts.html
new file mode 100644
index 000000000..a688b5a8f
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/help/ROOMConcepts.html
@@ -0,0 +1,310 @@
+<html>
+<head>
+<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>ROOM Concepts</title>
+<link href="book.css" rel="stylesheet" type="text/css">
+<meta content="DocBook XSL Stylesheets V1.75.1" name="generator">
+<link rel="home" href="index.html" title="eTrice User Guide">
+<link rel="up" href="index.html" title="eTrice User Guide">
+<link rel="prev" href="Summary5.html" title="Summary">
+<link rel="next" href="Protocols.html" title="Protocols">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<h1 xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0">ROOM Concepts</h1>
+<div class="chapter" title="ROOM Concepts">
+<div class="titlepage">
+<div>
+<div>
+<h2 class="title">
+<a name="ROOMConcepts"></a>ROOM Concepts</h2>
+</div>
+</div>
+</div>
+<div class="toc">
+<dl>
+<dt>
+<span class="section"><a href="ROOMConcepts.html#Actors">Actors</a></span>
+</dt>
+<dt>
+<span class="section"><a href="Protocols.html">Protocols</a></span>
+</dt>
+<dt>
+<span class="section"><a href="Ports.html">Ports</a></span>
+</dt>
+<dt>
+<span class="section"><a href="DataClass.html">DataClass</a></span>
+</dt>
+<dt>
+<span class="section"><a href="Layering2.html">Layering</a></span>
+</dt>
+<dt>
+<span class="section"><a href="FiniteStateMachines.html">Finite State Machines</a></span>
+</dt>
+</dl>
+</div>
+<p>This chapter gives an overview over the ROOM language elements and their textual and graphical notation.
+ The formal ROOM grammar based on Xtext (EBNF) you can find here:
+ <a class="ulink" href="http://git.eclipse.org/c/etrice/org.eclipse.etrice.git/tree/plugins/org.eclipse.etrice.core.room/src/org/eclipse/etrice/core/Room.xtext" target="_new">ROOM Grammar</a>
+
+</p>
+<div class="section" title="Actors">
+<div class="titlepage">
+<div>
+<div>
+<h2 class="title" style="clear: both">
+<a name="Actors"></a>Actors</h2>
+</div>
+</div>
+</div>
+<div class="section" title="Description">
+<div class="titlepage">
+<div>
+<div>
+<h3 class="title">
+<a name="Description"></a>Description</h3>
+</div>
+</div>
+</div>
+<p>The actor is the basic structural building block for building systems with ROOM. An actor can be refined hierarchically and thus can be of arbitrarily large scope. Ports define the interface of an actor. An Actor can also have a behavior usually defined by a finite state machine.</p>
+</div>
+<div class="section" title="Motivation">
+<div class="titlepage">
+<div>
+<div>
+<h3 class="title">
+<a name="Motivation"></a>Motivation</h3>
+</div>
+</div>
+</div>
+<div class="itemizedlist">
+<ul class="itemizedlist" type="disc">
+<li class="listitem">
+<p>Actors enable the construction of hierarchical structures by composition and layering</p>
+</li>
+<li class="listitem">
+<p>Actors have their own logical thread of execution</p>
+</li>
+<li class="listitem">
+<p>Actors can be freely deployed</p>
+</li>
+<li class="listitem">
+<p>Actors define potentially reusable blocks</p>
+</li>
+</ul>
+</div>
+</div>
+<div class="section" title="Notation">
+<div class="titlepage">
+<div>
+<div>
+<h3 class="title">
+<a name="Notation"></a>Notation</h3>
+</div>
+</div>
+</div>
+<table title="Actor Class Notation" frame="box" border="2" cellpadding="3" cellspacing="0" id="N10BE2">
+<tr>
+
+<td align="center">
+ <span class="bold"><strong>Element</strong></span></td>
+ <td align="center">
+ <span class="bold"><strong>Graphical Notation</strong></span></td>
+ <td align="center">
+ <span class="bold"><strong>Textual Notation</strong></span></td>
+
+</tr>
+<tr>
+
+<td>ActorClass</td>
+ <td>
+
+<div class="mediaobject">
+<img src="images/040-ActorClassNotation.png"></div>
+</td>
+ <td>
+
+<div class="mediaobject">
+<img src="images/040-ActorClassTextualNotation.png"></div>
+</td>
+
+</tr>
+<tr>
+
+<td>ActorRef</td>
+ <td>
+
+<div class="mediaobject">
+<img src="images/040-ActorReferenceNotation.png"></div>
+</td>
+ <td>
+
+<div class="mediaobject">
+<img src="images/040-ActorReferenceTextualNotation.png"></div>
+</td>
+
+</tr>
+</table>
+<p>
+
+</p>
+</div>
+<div class="section" title="Details">
+<div class="titlepage">
+<div>
+<div>
+<h3 class="title">
+<a name="Details"></a>Details</h3>
+</div>
+</div>
+</div>
+<div class="section" title="Actor Classes, Actor References, Ports and Bindings">
+<div class="titlepage">
+<div>
+<div>
+<h4 class="title">
+<a name="ActorClassesActorReferencesPortsandBindings"></a>Actor Classes, Actor References, Ports and Bindings</h4>
+</div>
+</div>
+</div>
+<p>An
+ <span class="bold"><strong>ActorClass</strong></span> defines the type (or blueprint) of an actor. Hierarchies are built by ActorClasses that contain
+ <span class="bold"><strong>ActorReferences</strong></span> which have another ActorClass as type. The interface of an ActorClass is always defined by Ports. The ActorClass can also contain Attributes, Operations and a finite state machine.
+ </p>
+<p>
+
+<span class="bold"><strong>External Ports</strong></span> define the external interface of an actor and are defined in the
+ <span class="bold"><strong>Interface</strong></span> section of the ActorClass.
+ </p>
+<p>
+
+<span class="bold"><strong>Internal Ports</strong></span> define the internal interface of an actor and are defined in the
+ <span class="bold"><strong>Structure</strong></span> section of the ActorClass.
+ </p>
+<p>
+
+<span class="bold"><strong>Bindings</strong></span> connect Ports inside an ActorClass.
+ </p>
+<p>Example:</p>
+<table title="Actor Class Example" frame="box" border="2" cellpadding="3" cellspacing="0" id="N10C67">
+<tr>
+
+<td align="center">
+ <span class="bold"><strong>Graphical Notation</strong></span></td>
+ <td align="center">
+ <span class="bold"><strong>Textual Notation</strong></span></td>
+
+</tr>
+<tr>
+
+<td>
+
+<div class="mediaobject">
+<img src="images/040-ActorClass.png"></div>
+</td>
+ <td>
+
+<div class="mediaobject">
+<img src="images/040-ActorClassExampleTextualNotation.png"></div>
+</td>
+
+</tr>
+</table>
+<p>
+
+</p>
+<div class="itemizedlist">
+<ul class="itemizedlist" type="disc">
+<li class="listitem">
+<p>
+
+<span class="emphasis"><em>ActorClass1</em></span> contains two ActorReferences (of ActorClass2 and ActorClass3)
+ </p>
+</li>
+<li class="listitem">
+<p>
+
+<span class="emphasis"><em>port1</em></span> is a
+ <span class="bold"><strong>External End Port</strong></span>. Since it connects external Actors with the behavior of the ActorClass, it is defined in the
+ <span class="bold"><strong>Interface</strong></span> section and the
+ <span class="bold"><strong>Structure</strong></span> section of the ActorClass.
+ </p>
+</li>
+<li class="listitem">
+<p>
+
+<span class="emphasis"><em>port2</em></span> and
+ <span class="emphasis"><em>port3</em></span> are
+ <span class="bold"><strong>Internal End Ports</strong></span> and can only be connected to the ports of contained ActorReferences. Internal End Ports connect the Behavior of an ActorClass with its contained ActorReferences.
+ </p>
+</li>
+<li class="listitem">
+<p>
+
+<span class="emphasis"><em>port4</em></span> is a relay port and connects external Actors to contained ActorReferences. This port can not be accessed by the behavior of the ActorClass.
+ </p>
+</li>
+<li class="listitem">
+<p>
+
+<span class="emphasis"><em>port5</em></span> through
+ <span class="emphasis"><em>port9</em></span> are Ports of contained ActorReferences.
+ <span class="emphasis"><em>port8</em></span> and
+ <span class="emphasis"><em>port9</em></span> can communicate without interference with the containing ActorClass.
+ </p>
+</li>
+<li class="listitem">
+<p>
+
+<span class="bold"><strong>Bindings</strong></span> can connect ports of the ActorClass and its contained ActorReferences.
+ </p>
+</li>
+</ul>
+</div>
+</div>
+<div class="section" title="Attributes">
+<div class="titlepage">
+<div>
+<div>
+<h4 class="title">
+<a name="Attributes"></a>Attributes</h4>
+</div>
+</div>
+</div>
+<p>Attributes are part of the Structure of an ActorClass. They can be of a PrimitiveType or a DataClass.</p>
+<p>Example:</p>
+<p>
+
+</p>
+<div class="mediaobject">
+<img src="images/040-ActorClassAttributes.png"></div>
+<p>
+
+</p>
+</div>
+<div class="section" title="Operations">
+<div class="titlepage">
+<div>
+<div>
+<h4 class="title">
+<a name="Operations"></a>Operations</h4>
+</div>
+</div>
+</div>
+<p>Operations are part of the Behavior of an ActorClass. Arguments and return values can be of a PrimitiveType or a DataClass. DataClasses can be passed by value (implicit) or by reference (keyword
+ <span class="bold"><strong>ref</strong></span>).
+ </p>
+<p>Example:</p>
+<p>
+
+</p>
+<div class="mediaobject">
+<img src="images/040-ActorClassOperations.png"></div>
+<p>
+
+</p>
+</div>
+</div>
+</div>
+</div>
+</body>
+</html>
diff --git a/plugins/org.eclipse.etrice.doc/help/SettinguptheWorkspaceforCProjects.html b/plugins/org.eclipse.etrice.doc/help/SettinguptheWorkspaceforCProjects.html
new file mode 100644
index 000000000..e5fe69e69
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/help/SettinguptheWorkspaceforCProjects.html
@@ -0,0 +1,134 @@
+<html>
+<head>
+<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Setting up the Workspace for C Projects</title>
+<link href="book.css" rel="stylesheet" type="text/css">
+<meta content="DocBook XSL Stylesheets V1.75.1" name="generator">
+<link rel="home" href="index.html" title="eTrice User Guide">
+<link rel="up" href="index.html" title="eTrice User Guide">
+<link rel="prev" href="Whydoesitworkandwhyisitsafe.html" title="Why does it work and why is it safe?">
+<link rel="next" href="BuildingtheCruntimesystem.html" title="Building the C runtime system">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<h1 xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0">Setting up the Workspace for C Projects</h1>
+<div class="chapter" title="Setting up the Workspace for C Projects">
+<div class="titlepage">
+<div>
+<div>
+<h2 class="title">
+<a name="SettinguptheWorkspaceforCProjects"></a>Setting up the Workspace for C Projects</h2>
+</div>
+</div>
+</div>
+<div class="toc">
+<dl>
+<dt>
+<span class="section"><a href="SettinguptheWorkspaceforCProjects.html#Testingtheenvironment">Testing the environment</a></span>
+</dt>
+<dt>
+<span class="section"><a href="BuildingtheCruntimesystem.html">Building the C runtime system</a></span>
+</dt>
+</dl>
+</div>
+<p>Before you can start with C, some preconditions must be fulfilled:</p>
+<p>- A C compiler must be installed on your machine (all tests and tutorials are based on MinGW)
+ - The CDT-Eclipse plug in must be installed as the C development environment.</p>
+<p>Once the CDT is installed, the C runtime and model library must be imported.
+ (
+ <span class="emphasis"><em>File-&gt;New-&gt;Project-&gt;eTrice</em></span> select
+ <span class="emphasis"><em>eTrice C runtime</em></span> /
+ <span class="emphasis"><em>eTrice C modellib</em></span>)
+ </p>
+<p>The resulting workspace should look like this:</p>
+<p>
+
+</p>
+<div class="mediaobject">
+<img src="images/032-SetupWorkspaceC01.png"></div>
+<p>
+
+</p>
+<div class="section" title="Testing the environment">
+<div class="titlepage">
+<div>
+<div>
+<h2 class="title" style="clear: both">
+<a name="Testingtheenvironment"></a>Testing the environment</h2>
+</div>
+</div>
+</div>
+<p>To verify the C tool chain you should generate and run the Hello World example program of the CDT.
+ Activate the
+ <span class="emphasis"><em>C/C++</em></span> perspective.
+ </p>
+<p>
+
+</p>
+<div class="mediaobject">
+<img src="images/032-SetupWorkspaceC03.png"></div>
+<p>
+
+</p>
+<p>From the main menu select
+ <span class="emphasis"><em>File-&gt;New-&gt;C Project</em></span>.
+ </p>
+<p>
+
+</p>
+<div class="mediaobject">
+<img src="images/032-SetupWorkspaceC02.png"></div>
+<p>
+
+</p>
+<p>Name the project. Select an
+ <span class="emphasis"><em>Executable-&gt;Hello World ANSI C</em></span> as project type,
+ <span class="emphasis"><em>MinGW GCC</em></span> as tool chain and click
+ <span class="emphasis"><em>Finish</em></span>.
+ </p>
+<p>
+
+</p>
+<div class="mediaobject">
+<img src="images/032-SetupWorkspaceC04.png"></div>
+<p>
+
+</p>
+<p>Select the new project and click the build button (or right click the project and select
+ <span class="emphasis"><em>Build Project</em></span>)
+ </p>
+<p>
+
+</p>
+<div class="mediaobject">
+<img src="images/032-SetupWorkspaceC05.png"></div>
+<p>
+
+</p>
+<p>The binary should be generated. Run the binary as
+ <span class="emphasis"><em>Local C/C++ Application</em></span>
+
+</p>
+<p>
+
+</p>
+<div class="mediaobject">
+<img src="images/032-SetupWorkspaceC06.png"></div>
+<p>
+
+</p>
+<p>Verify the output.</p>
+<p>
+
+</p>
+<div class="mediaobject">
+<img src="images/032-SetupWorkspaceC07.png"></div>
+<p>
+
+</p>
+<p>Remember these steps. In the following Tutorials these steps will be referenced as
+ <span class="emphasis"><em>build and run</em></span>.
+ </p>
+</div>
+</div>
+</body>
+</html>
diff --git a/plugins/org.eclipse.etrice.doc/help/SettinguptheWorkspaceforJavaProjects.html b/plugins/org.eclipse.etrice.doc/help/SettinguptheWorkspaceforJavaProjects.html
new file mode 100644
index 000000000..31d9ae110
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/help/SettinguptheWorkspaceforJavaProjects.html
@@ -0,0 +1,129 @@
+<html>
+<head>
+<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Setting up the Workspace for Java Projects</title>
+<link href="book.css" rel="stylesheet" type="text/css">
+<meta content="DocBook XSL Stylesheets V1.75.1" name="generator">
+<link rel="home" href="index.html" title="eTrice User Guide">
+<link rel="up" href="index.html" title="eTrice User Guide">
+<link rel="prev" href="WorkingwiththeeTriceTutorials.html" title="Working with the eTrice Tutorials">
+<link rel="next" href="TutorialHelloWorldforJava.html" title="Tutorial HelloWorld for Java">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<h1 xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0">Setting up the Workspace for Java Projects</h1>
+<div class="chapter" title="Setting up the Workspace for Java Projects">
+<div class="titlepage">
+<div>
+<div>
+<h2 class="title">
+<a name="SettinguptheWorkspaceforJavaProjects"></a>Setting up the Workspace for Java Projects</h2>
+</div>
+</div>
+</div>
+<p>ETrice generates code out of ROOM models. The code generator and the generated code relies on a runtime framework and on some ready to use model parts. This parts provide services like:</p>
+<div class="itemizedlist">
+<ul class="itemizedlist" type="disc">
+<li class="listitem">
+<p>messaging</p>
+</li>
+<li class="listitem">
+<p>logging</p>
+</li>
+<li class="listitem">
+<p>timing</p>
+</li>
+</ul>
+</div>
+<p>Additionally some tutorial models will be provided to make it easy to start with eTrice. All this parts must be available in our workspace before you can start working. After installation of eclipse (juno) and the eTrice plug in, your workspace should look like this: </p>
+<p>
+
+</p>
+<div class="mediaobject">
+<img src="images/013-SetupWorkspace01.png"></div>
+<p>
+
+</p>
+<p>Just the
+ <span class="emphasis"><em>eTrice</em></span> menu item is visible from the eTrice tool.
+ From the
+ <span class="emphasis"><em>File</em></span> menu select
+ <span class="emphasis"><em>File-&gt;New-&gt;Project</em></span>
+
+</p>
+<p>
+
+</p>
+<div class="mediaobject">
+<img src="images/013-SetupWorkspace02.png"></div>
+<p>
+
+</p>
+<p>Open the
+ <span class="emphasis"><em>eTrice</em></span> tab and select
+ <span class="emphasis"><em>eTrice Java Runtime</em></span>
+
+</p>
+<p>Press
+ <span class="emphasis"><em>Next</em></span> and
+ <span class="emphasis"><em>Finish</em></span> to install the Runtime into your workspace.
+ </p>
+<p>
+
+</p>
+<div class="mediaobject">
+<img src="images/013-SetupWorkspace03.png"></div>
+<p>
+
+</p>
+<p>Do the same steps for
+ <span class="emphasis"><em>eTrice Java Modellib</em></span> and
+ <span class="emphasis"><em>eTrice Java Tutorials</em></span>. To avoid temporary error markers you should keep the proposed order of installation. The resulting workspace should look like this:
+ </p>
+<p>
+
+</p>
+<div class="mediaobject">
+<img src="images/013-SetupWorkspace04.png"></div>
+<p>
+
+</p>
+<p>Now workspace is set up and you can perform the tutorials or start with your work.</p>
+<p>The tutorial models are available in the
+ <span class="emphasis"><em>org.eclipse.etrice.tutorials</em></span> project. All tutorials are ready to generate and run without any changes. To start the code generator simply run
+ <span class="bold"><strong>gen_org.eclipse.etrice.tutorials.launch</strong></span> as
+ <span class="bold"><strong>gen_org.eclipse.etrice.tutorials.launch</strong></span>:
+ </p>
+<p>
+
+</p>
+<div class="mediaobject">
+<img src="images/013-SetupWorkspace05.png"></div>
+<p>
+
+</p>
+<p>After generation for each tutorial a java file called
+ <span class="bold"><strong>SubSystem_ModelnameRunner.java</strong></span> is generated. To run the model simply run this file as a java application:
+ </p>
+<p>
+
+</p>
+<div class="mediaobject">
+<img src="images/013-SetupWorkspace06.png"></div>
+<p>
+
+</p>
+<p>To stop the application type
+ <span class="emphasis"><em>quit</em></span> in the console window.
+ </p>
+<p>
+
+</p>
+<div class="mediaobject">
+<img src="images/013-SetupWorkspace07.png"></div>
+<p>
+
+</p>
+<p>Performing the tutorials will setup an dedicated project for each tutorial. Therefore there are some slight changes especially whenever a path must be set (e.g. to the model library) within your own projects. All this is described in the tutorials.</p>
+</div>
+</body>
+</html>
diff --git a/plugins/org.eclipse.etrice.doc/help/Summary5.html b/plugins/org.eclipse.etrice.doc/help/Summary5.html
new file mode 100644
index 000000000..7ff4caabe
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/help/Summary5.html
@@ -0,0 +1,26 @@
+<html>
+<head>
+<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Summary</title>
+<link href="book.css" rel="stylesheet" type="text/css">
+<meta content="DocBook XSL Stylesheets V1.75.1" name="generator">
+<link rel="home" href="index.html" title="eTrice User Guide">
+<link rel="up" href="TutorialRemoveCCommentC.html" title="Tutorial Remove C-Comment ( C )">
+<link rel="prev" href="Generatebuildandrunthemodel.html" title="Generate, build and run the model">
+<link rel="next" href="ROOMConcepts.html" title="ROOM Concepts">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<h1 xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0">Summary</h1>
+<div class="section" title="Summary">
+<div class="titlepage">
+<div>
+<div>
+<h2 class="title" style="clear: both">
+<a name="Summary5"></a>Summary</h2>
+</div>
+</div>
+</div>
+<p>This tutorial should help you to train the necessary steps to create a C model. By the way you have seen how to create your own type system for a real embedded project. An additional aspect was to show how simple it is to separate different aspects of the required functionality by the use of actors and protocols and make them reusable.</p>
+</div>
+</body>
+</html>
diff --git a/plugins/org.eclipse.etrice.doc/help/TutorialHelloWorldforC.html b/plugins/org.eclipse.etrice.doc/help/TutorialHelloWorldforC.html
new file mode 100644
index 000000000..e9d1ec68a
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/help/TutorialHelloWorldforC.html
@@ -0,0 +1,90 @@
+<html>
+<head>
+<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Tutorial HelloWorld for C</title>
+<link href="book.css" rel="stylesheet" type="text/css">
+<meta content="DocBook XSL Stylesheets V1.75.1" name="generator">
+<link rel="home" href="index.html" title="eTrice User Guide">
+<link rel="up" href="index.html" title="eTrice User Guide">
+<link rel="prev" href="BuildingtheCruntimesystem.html" title="Building the C runtime system">
+<link rel="next" href="Createanewmodelfromscratch4.html" title="Create a new model from scratch">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<h1 xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0">Tutorial HelloWorld for C</h1>
+<div class="chapter" title="Tutorial HelloWorld for C">
+<div class="titlepage">
+<div>
+<div>
+<h2 class="title">
+<a name="TutorialHelloWorldforC"></a>Tutorial HelloWorld for C</h2>
+</div>
+</div>
+</div>
+<div class="toc">
+<dl>
+<dt>
+<span class="section"><a href="TutorialHelloWorldforC.html#Scope5">Scope</a></span>
+</dt>
+<dt>
+<span class="section"><a href="Createanewmodelfromscratch4.html">Create a new model from scratch</a></span>
+</dt>
+<dt>
+<span class="section"><a href="CreatetheHelloWorldmodel.html">Create the HelloWorld model</a></span>
+</dt>
+<dt>
+<span class="section"><a href="CreatealaunchconfigurationtostarttheCcodegenerator.html">Create a launch configuration to start the C code generator</a></span>
+</dt>
+<dt>
+<span class="section"><a href="Generatethecode.html">Generate the code</a></span>
+</dt>
+<dt>
+<span class="section"><a href="Setuptheincludepath.html">Setup the include path</a></span>
+</dt>
+<dt>
+<span class="section"><a href="Buildandrunthemodel2.html">Build and run the model</a></span>
+</dt>
+<dt>
+<span class="section"><a href="Summary4.html">Summary</a></span>
+</dt>
+</dl>
+</div>
+<div class="section" title="Scope">
+<div class="titlepage">
+<div>
+<div>
+<h2 class="title" style="clear: both">
+<a name="Scope5"></a>Scope</h2>
+</div>
+</div>
+</div>
+<p>In this tutorial you will learn how to create a model for C from scratch. There are some more steps to do in C compared to Java. The goal is to get familiar with the additional steps. The Java tutorial is a prerequisite for the following explanations.
+ You will perform the following steps:</p>
+<div class="orderedlist">
+<ol class="orderedlist" type="1">
+<li class="listitem">
+<p>create a new model from scratch for C</p>
+</li>
+<li class="listitem">
+<p>create structure and behavior similar to Java</p>
+</li>
+<li class="listitem">
+<p>create a launch configuration for the C code generator</p>
+</li>
+<li class="listitem">
+<p>setup the C environment</p>
+</li>
+<li class="listitem">
+<p>generate the source code</p>
+</li>
+<li class="listitem">
+<p>run the model</p>
+</li>
+</ol>
+</div>
+<p>Make sure that you have set up the workspace as described in
+ <span class="emphasis"><em>Setting up the Workspace for C Projects</em></span>.
+ </p>
+</div>
+</div>
+</body>
+</html>
diff --git a/plugins/org.eclipse.etrice.doc/help/TutorialHelloWorldforJava.html b/plugins/org.eclipse.etrice.doc/help/TutorialHelloWorldforJava.html
new file mode 100644
index 000000000..5e37eac20
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/help/TutorialHelloWorldforJava.html
@@ -0,0 +1,85 @@
+<html>
+<head>
+<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Tutorial HelloWorld for Java</title>
+<link href="book.css" rel="stylesheet" type="text/css">
+<meta content="DocBook XSL Stylesheets V1.75.1" name="generator">
+<link rel="home" href="index.html" title="eTrice User Guide">
+<link rel="up" href="index.html" title="eTrice User Guide">
+<link rel="prev" href="SettinguptheWorkspaceforJavaProjects.html" title="Setting up the Workspace for Java Projects">
+<link rel="next" href="Createanewmodelfromscratch.html" title="Create a new model from scratch">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<h1 xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0">Tutorial HelloWorld for Java</h1>
+<div class="chapter" title="Tutorial HelloWorld for Java">
+<div class="titlepage">
+<div>
+<div>
+<h2 class="title">
+<a name="TutorialHelloWorldforJava"></a>Tutorial HelloWorld for Java</h2>
+</div>
+</div>
+</div>
+<div class="toc">
+<dl>
+<dt>
+<span class="section"><a href="TutorialHelloWorldforJava.html#Scope">Scope</a></span>
+</dt>
+<dt>
+<span class="section"><a href="Createanewmodelfromscratch.html">Create a new model from scratch</a></span>
+</dt>
+<dt>
+<span class="section"><a href="Createastatemachine.html">Create a state machine</a></span>
+</dt>
+<dt>
+<span class="section"><a href="Buildandrunthemodel.html">Build and run the model</a></span>
+</dt>
+<dt>
+<span class="section"><a href="OpentheMessageSequenceChart.html">Open the Message Sequence Chart</a></span>
+</dt>
+<dt>
+<span class="section"><a href="Summary.html">Summary</a></span>
+</dt>
+</dl>
+</div>
+<div class="section" title="Scope">
+<div class="titlepage">
+<div>
+<div>
+<h2 class="title" style="clear: both">
+<a name="Scope"></a>Scope</h2>
+</div>
+</div>
+</div>
+<p>In this tutorial you will build your first very simple eTrice model. The goal is to learn the work flow of eTrice and to understand a few basic features of ROOM. You will perform the following steps:</p>
+<div class="orderedlist">
+<ol class="orderedlist" type="1">
+<li class="listitem">
+<p>create a new model from scratch</p>
+</li>
+<li class="listitem">
+<p>add a very simple state machine to an actor</p>
+</li>
+<li class="listitem">
+<p>generate the source code</p>
+</li>
+<li class="listitem">
+<p>run the model</p>
+</li>
+<li class="listitem">
+<p>open the message sequence chart</p>
+</li>
+</ol>
+</div>
+<p>Make sure that you have set up the workspace as described in
+ <span class="emphasis"><em>Setting up the workspace</em></span>.
+ </p>
+<p>
+
+<a class="ulink" href="http://eclipse.org/etrice/images/015-HelloWorld01.avi" target="_new">video hello world</a>
+
+</p>
+</div>
+</div>
+</body>
+</html>
diff --git a/plugins/org.eclipse.etrice.doc/help/TutorialRemoveCCommentC.html b/plugins/org.eclipse.etrice.doc/help/TutorialRemoveCCommentC.html
new file mode 100644
index 000000000..262c57d57
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/help/TutorialRemoveCCommentC.html
@@ -0,0 +1,81 @@
+<html>
+<head>
+<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<title>Tutorial Remove C-Comment ( C )</title>
+<link href="book.css" rel="stylesheet" type="text/css">
+<meta content="DocBook XSL Stylesheets V1.75.1" name="generator">
+<link rel="home" href="index.html" title="eTrice User Guide">
+<link rel="up" href="index.html" title="eTrice User Guide">
+<link rel="prev" href="Summary4.html" title="Summary">
+<link rel="next" href="Createanewmodelfromscratch5.html" title="Create a new model from scratch">
+</head>
+<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
+<h1 xmlns:l="http://docbook.sourceforge.net/xmlns/l10n/1.0">Tutorial Remove C-Comment ( C )</h1>
+<div class="chapter" title="Tutorial Remove C-Comment ( C )">
+<div class="titlepage">
+<div>
+<div>
+<h2 class="title">
+<a name="TutorialRemoveCCommentC"></a>Tutorial Remove C-Comment ( C )</h2>
+</div>
+</div>
+</div>
+<div class="toc">
+<dl>
+<dt>
+<span class="section"><a href="TutorialRemoveCCommentC.html#Scope6">Scope</a></span>
+</dt>
+<dt>
+<span class="section"><a href="Createanewmodelfromscratch5.html">Create a new model from scratch</a></span>
+</dt>
+<dt>
+<span class="section"><a href="Createyourowndatatype.html">Create your own data type</a></span>
+</dt>
+<dt>
+<span class="section"><a href="Createthemodel.html">Create the model</a></span>
+</dt>
+<dt>
+<span class="section"><a href="Generatebuildandrunthemodel.html">Generate, build and run the model</a></span>
+</dt>
+<dt>
+<span class="section"><a href="Summary5.html">Summary</a></span>
+</dt>
+</dl>
+</div>
+<div class="section" title="Scope">
+<div class="titlepage">
+<div>
+<div>
+<h2 class="title" style="clear: both">
+<a name="Scope6"></a>Scope</h2>
+</div>
+</div>
+</div>
+<p>In this tutorial you will create a more complex model. The model implements a simple parser that removes comments (block comments and line comments) from a C source file. Therefore we will create two actors. One actor is responsible to perform the file operations, whether the second actor implements the parser.</p>
+<p>You will perform the following steps:</p>
+<div class="orderedlist">
+<ol class="orderedlist" type="1">
+<li class="listitem">
+<p>create a new model from scratch for C</p>
+</li>
+<li class="listitem">
+<p>define a protocol</p>
+</li>
+<li class="listitem">
+<p>define your own data type</p>
+</li>
+<li class="listitem">
+<p>create the structure and the behavior by yourself</p>
+</li>
+<li class="listitem">
+<p>generate, build and run the model</p>
+</li>
+</ol>
+</div>
+<p>Make sure that you have set up the workspace as described in
+ <span class="emphasis"><em>Setting up the Workspace for C Projects</em></span>.
+ </p>
+</div>
+</div>
+</body>
+</html>
diff --git a/plugins/org.eclipse.etrice.doc/help/images/032-SetupWorkspaceC08.png b/plugins/org.eclipse.etrice.doc/help/images/032-SetupWorkspaceC08.png
new file mode 100644
index 000000000..5168c8702
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/help/images/032-SetupWorkspaceC08.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/help/images/032-SetupWorkspaceC09.png b/plugins/org.eclipse.etrice.doc/help/images/032-SetupWorkspaceC09.png
new file mode 100644
index 000000000..45dc8978e
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/help/images/032-SetupWorkspaceC09.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/help/images/032-SetupWorkspaceC10.png b/plugins/org.eclipse.etrice.doc/help/images/032-SetupWorkspaceC10.png
new file mode 100644
index 000000000..cc8c7218f
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/help/images/032-SetupWorkspaceC10.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/help/images/032-SetupWorkspaceC11.png b/plugins/org.eclipse.etrice.doc/help/images/032-SetupWorkspaceC11.png
new file mode 100644
index 000000000..f3a8bd24c
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/help/images/032-SetupWorkspaceC11.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC06.png b/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC06.png
new file mode 100644
index 000000000..6adf37a86
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC06.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC07.png b/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC07.png
new file mode 100644
index 000000000..d64c32319
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC07.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC08.png b/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC08.png
new file mode 100644
index 000000000..14867cbe7
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC08.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC09.png b/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC09.png
new file mode 100644
index 000000000..73fbeeba2
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC09.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC10.png b/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC10.png
new file mode 100644
index 000000000..ec764ef2d
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC10.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC11.png b/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC11.png
new file mode 100644
index 000000000..8bca1b998
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC11.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC12.png b/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC12.png
new file mode 100644
index 000000000..f66f9de8d
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC12.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC13.png b/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC13.png
new file mode 100644
index 000000000..372c940c5
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC13.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC14.png b/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC14.png
new file mode 100644
index 000000000..d4c5cb562
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC14.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC15.png b/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC15.png
new file mode 100644
index 000000000..806e796fd
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC15.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC16.png b/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC16.png
new file mode 100644
index 000000000..71e76747f
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC16.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/help/images/036-RemoveCommentC01.png b/plugins/org.eclipse.etrice.doc/help/images/036-RemoveCommentC01.png
new file mode 100644
index 000000000..6649d446c
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/help/images/036-RemoveCommentC01.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/help/images/036-RemoveCommentC02.png b/plugins/org.eclipse.etrice.doc/help/images/036-RemoveCommentC02.png
new file mode 100644
index 000000000..2db8c3851
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/help/images/036-RemoveCommentC02.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/help/images/036-RemoveCommentC03.png b/plugins/org.eclipse.etrice.doc/help/images/036-RemoveCommentC03.png
new file mode 100644
index 000000000..4c2eff667
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/help/images/036-RemoveCommentC03.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/help/images/036-RemoveCommentC04.png b/plugins/org.eclipse.etrice.doc/help/images/036-RemoveCommentC04.png
new file mode 100644
index 000000000..4e653c831
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/help/images/036-RemoveCommentC04.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/help/images/036-RemoveCommentC05.png b/plugins/org.eclipse.etrice.doc/help/images/036-RemoveCommentC05.png
new file mode 100644
index 000000000..d13bb83be
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/help/images/036-RemoveCommentC05.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/help/images/036-RemoveCommentC06.png b/plugins/org.eclipse.etrice.doc/help/images/036-RemoveCommentC06.png
new file mode 100644
index 000000000..eaadb737c
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/help/images/036-RemoveCommentC06.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/help/images/036-RemoveCommentC07.png b/plugins/org.eclipse.etrice.doc/help/images/036-RemoveCommentC07.png
new file mode 100644
index 000000000..050ea639e
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/help/images/036-RemoveCommentC07.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/help/images/036-RemoveCommentC08.png b/plugins/org.eclipse.etrice.doc/help/images/036-RemoveCommentC08.png
new file mode 100644
index 000000000..1fc9ca13b
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/help/images/036-RemoveCommentC08.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice.html b/plugins/org.eclipse.etrice.doc/html/etrice.html
index 763c40d5e..5502894e8 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice.html
@@ -2937,7 +2937,6 @@ carLights.setState(TrafficLight3.OFF);&nbsp;<br>
<p>Once the model file is created and the Xtext nature is added, you can create the model as you did it for Java.
Creating the model is not the focus of this tutorial. Therefore copy and paste the following code into your model file. Optionally you can open and layout the diagrams.
Recognize the C specific parts:
- - Import CTypes instead of JavaTypes
- The action code contains C instead of Java. Later versions will contain a common action language, but for the moment the action language is target specific.
- The application must be shutdown on model level (see also
<span class="emphasis"><em>etRuntimeConfig.h</em></span>).
@@ -2945,7 +2944,7 @@ carLights.setState(TrafficLight3.OFF);&nbsp;<br>
<div class="literallayout">
<p>
<code class="code">RoomModel&nbsp;HelloWorldCModel&nbsp;{<br>
- import&nbsp;room.basic.types.c.*&nbsp;from&nbsp;"../../org.eclipse.etrice.modellib.c/model/CTypes.room"<br>
+ import&nbsp;room.basic.types.*&nbsp;from&nbsp;"../../org.eclipse.etrice.modellib.c/model/Types.room"<br>
SubSystemClass&nbsp;HelloWorldCSubSysClass&nbsp;{<br>
ActorRef&nbsp;HelloETriceTopRef:AHelloWorldCTop&nbsp;<br>
}<br>
@@ -3256,8 +3255,8 @@ carLights.setState(TrafficLight3.OFF);&nbsp;<br>
</div>
</div>
<p>The planed application should read a C source file and remove the comments. Therefore we need a file descriptor which is not part of the basic C types. The type for the file descriptor for MinGW is
- <span class="emphasis"><em>FILE</em></span>. To make this type available on the model level, you have to declare the type in CTypes.room. To not interfere with other models, make a copy of
- <span class="emphasis"><em>CTypes.room</em></span> from
+ <span class="emphasis"><em>FILE</em></span>. To make this type available on the model level, you have to declare the type in Types.room. To not interfere with other models, make a copy of
+ <span class="emphasis"><em>Types.room</em></span> from
<span class="emphasis"><em>org.eclipse.modellib.c</em></span> to your model folder.
</p>
<p>
@@ -3269,7 +3268,7 @@ carLights.setState(TrafficLight3.OFF);&nbsp;<br>
</p>
<p>Open
- <span class="emphasis"><em>Ctypes.room</em></span> and take a look at the declaration of
+ <span class="emphasis"><em>Types.room</em></span> and take a look at the declaration of
<span class="emphasis"><em>string</em></span> (last line) which is not a basic C type.
</p>
<p>
@@ -3285,7 +3284,7 @@ carLights.setState(TrafficLight3.OFF);&nbsp;<br>
<span class="emphasis"><em>generic</em></span>). With this mechanism you can define your own type system on model level and map the model types to specific target/platform types.
</p>
<p>Add the following line in
- <span class="emphasis"><em>CTypes.room</em></span>:
+ <span class="emphasis"><em>Types.room</em></span>:
</p>
<div class="literallayout">
<p>
@@ -3354,7 +3353,7 @@ carLights.setState(TrafficLight3.OFF);&nbsp;<br>
<div class="literallayout">
<p>
<code class="code">RoomModel&nbsp;RemoveComment&nbsp;{<br>
- import&nbsp;room.basic.types.c.*&nbsp;from&nbsp;"CTypes.room"<br>
+ import&nbsp;room.basic.types.*&nbsp;from&nbsp;"Types.room"<br>
SubSystemClass&nbsp;RemoveCommentSubSys&nbsp;{<br>
ActorRef&nbsp;Topref:ATop&nbsp;<br>
}<br>
diff --git a/plugins/org.eclipse.etrice.doc/html/images/032-SetupWorkspaceC08.png b/plugins/org.eclipse.etrice.doc/html/images/032-SetupWorkspaceC08.png
new file mode 100644
index 000000000..5168c8702
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/html/images/032-SetupWorkspaceC08.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/html/images/032-SetupWorkspaceC09.png b/plugins/org.eclipse.etrice.doc/html/images/032-SetupWorkspaceC09.png
new file mode 100644
index 000000000..45dc8978e
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/html/images/032-SetupWorkspaceC09.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/html/images/032-SetupWorkspaceC10.png b/plugins/org.eclipse.etrice.doc/html/images/032-SetupWorkspaceC10.png
new file mode 100644
index 000000000..cc8c7218f
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/html/images/032-SetupWorkspaceC10.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/html/images/032-SetupWorkspaceC11.png b/plugins/org.eclipse.etrice.doc/html/images/032-SetupWorkspaceC11.png
new file mode 100644
index 000000000..f3a8bd24c
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/html/images/032-SetupWorkspaceC11.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC06.png b/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC06.png
new file mode 100644
index 000000000..6adf37a86
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC06.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC07.png b/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC07.png
new file mode 100644
index 000000000..d64c32319
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC07.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC08.png b/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC08.png
new file mode 100644
index 000000000..14867cbe7
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC08.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC09.png b/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC09.png
new file mode 100644
index 000000000..73fbeeba2
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC09.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC10.png b/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC10.png
new file mode 100644
index 000000000..ec764ef2d
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC10.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC11.png b/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC11.png
new file mode 100644
index 000000000..8bca1b998
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC11.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC12.png b/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC12.png
new file mode 100644
index 000000000..f66f9de8d
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC12.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC13.png b/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC13.png
new file mode 100644
index 000000000..372c940c5
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC13.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC14.png b/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC14.png
new file mode 100644
index 000000000..d4c5cb562
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC14.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC15.png b/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC15.png
new file mode 100644
index 000000000..806e796fd
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC15.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC16.png b/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC16.png
new file mode 100644
index 000000000..71e76747f
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC16.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/html/images/036-RemoveCommentC01.png b/plugins/org.eclipse.etrice.doc/html/images/036-RemoveCommentC01.png
new file mode 100644
index 000000000..6649d446c
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/html/images/036-RemoveCommentC01.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/html/images/036-RemoveCommentC02.png b/plugins/org.eclipse.etrice.doc/html/images/036-RemoveCommentC02.png
new file mode 100644
index 000000000..2db8c3851
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/html/images/036-RemoveCommentC02.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/html/images/036-RemoveCommentC03.png b/plugins/org.eclipse.etrice.doc/html/images/036-RemoveCommentC03.png
new file mode 100644
index 000000000..4c2eff667
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/html/images/036-RemoveCommentC03.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/html/images/036-RemoveCommentC04.png b/plugins/org.eclipse.etrice.doc/html/images/036-RemoveCommentC04.png
new file mode 100644
index 000000000..4e653c831
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/html/images/036-RemoveCommentC04.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/html/images/036-RemoveCommentC05.png b/plugins/org.eclipse.etrice.doc/html/images/036-RemoveCommentC05.png
new file mode 100644
index 000000000..d13bb83be
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/html/images/036-RemoveCommentC05.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/html/images/036-RemoveCommentC06.png b/plugins/org.eclipse.etrice.doc/html/images/036-RemoveCommentC06.png
new file mode 100644
index 000000000..eaadb737c
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/html/images/036-RemoveCommentC06.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/html/images/036-RemoveCommentC07.png b/plugins/org.eclipse.etrice.doc/html/images/036-RemoveCommentC07.png
new file mode 100644
index 000000000..050ea639e
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/html/images/036-RemoveCommentC07.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/html/images/036-RemoveCommentC08.png b/plugins/org.eclipse.etrice.doc/html/images/036-RemoveCommentC08.png
new file mode 100644
index 000000000..1fc9ca13b
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/html/images/036-RemoveCommentC08.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/manual/etrice.pdf b/plugins/org.eclipse.etrice.doc/manual/etrice.pdf
index 35cf9cb3f..b4b2881f2 100644
--- a/plugins/org.eclipse.etrice.doc/manual/etrice.pdf
+++ b/plugins/org.eclipse.etrice.doc/manual/etrice.pdf
Binary files differ

Back to the top