diff options
author | Thomas Schuetz | 2012-09-28 09:32:21 +0000 |
---|---|---|
committer | Thomas Schuetz | 2012-09-28 09:32:21 +0000 |
commit | 854ebcf3f937d20e5ff99641f13010fcdb72c760 (patch) | |
tree | d60c765102dce66715626a83283329f53085555a | |
parent | b4230170045eecab0f0ac0e70d8b3f20f3389c60 (diff) | |
download | org.eclipse.etrice-854ebcf3f937d20e5ff99641f13010fcdb72c760.tar.gz org.eclipse.etrice-854ebcf3f937d20e5ff99641f13010fcdb72c760.tar.xz org.eclipse.etrice-854ebcf3f937d20e5ff99641f13010fcdb72c760.zip |
[doc] updated and added generated doc files
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 -> 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->Settings->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->New->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 HelloWorldCModel {<br>
- import room.basic.types.c.* from "../../org.eclipse.etrice.modellib.c/model/CTypes.room"<br>
+ import room.basic.types.* from "../../org.eclipse.etrice.modellib.c/model/Types.room"<br>
SubSystemClass HelloWorldCSubSysClass {<br>
ActorRef HelloETriceTopRef:AHelloWorldCTop <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 RemoveComment {<br>
+ import room.basic.types.* from "Types.room"<br>
+ SubSystemClass RemoveCommentSubSys {<br>
+ ActorRef Topref:ATop <br>
+ }<br>
+ ActorClass ATop {<br>
+ Structure {<br>
+ ActorRef reader: AFileReader<br>
+ ActorRef cParser: ACParser<br>
+ Binding reader.outPort and cParser.readerPort<br>
+ }<br>
+ Behavior { }<br>
+ }<br>
+ ActorClass AFileReader{<br>
+ Interface {<br>
+ Port outPort: FileReaderProtocol<br>
+ }<br>
+ Structure {<br>
+ usercode3{"#include <stdio.h>"<br>
+ }<br>
+ external Port outPort<br>
+ Attribute f:file ref<br>
+ }<br>
+ Behavior {<br>
+ StateMachine {<br>
+ Transition init: initial -> reading {<br>
+ action {<br>
+ "if ((f = fopen(\"test.txt\",\"r\")) != 0) {"<br>
+ "\tprintf(\"file open ok !\\r\\n\");"<br>
+ "\t}"<br>
+ "\telse {"<br>
+ "\tprintf(\"file not found !\\r\\n\");"<br>
+ "\tSubSysClass_shutdown();"<br>
+ "\t}"<br>
+ }<br>
+ }<br>
+ Transition tr0: reading -> reading {<br>
+ triggers {<br>
+ <getNextChar: outPort><br>
+ }<br>
+ action {<br>
+ "int8 c;"<br>
+ "if ((c=fgetc(f)) != EOF) {"<br>
+ "\toutPort.nextChar(c);"<br>
+ "\t}"<br>
+ "\telse {"<br>
+ "\tfclose(f);"<br>
+ "\tprintf(\"file closed !\\r\\n\");"<br>
+ "\tSubSysClass_shutdown();"<br>
+ "\t}"<br>
+ }<br>
+ }<br>
+ State reading<br>
+ }<br>
+ }<br>
+ }<br>
+ ActorClass ACParser{<br>
+ Interface {<br>
+ conjugated Port readerPort: FileReaderProtocol<br>
+ }<br>
+ Structure {<br>
+ external Port readerPort<br>
+ }<br>
+ Behavior {<br>
+ StateMachine {<br>
+ Transition init: initial -> code {<br>
+ action {<br>
+ "readerPort.getNextChar();"<br>
+ }<br>
+ }<br>
+ Transition tr0: code -> cp cp0 {<br>
+ triggers {<br>
+ <nextChar: readerPort><br>
+ }<br>
+ action {<br>
+ "readerPort.getNextChar();"<br>
+ }<br>
+ }<br>
+ Transition tr1: cp cp0 -> code {<br>
+ action {<br>
+ "printf(\"%c\",c);"<br>
+ }<br>
+ }<br>
+ Transition tr2: cp cp0 -> firstSlash {<br>
+ cond {<br>
+ "c==\'/\'"<br>
+ }<br>
+ }<br>
+ Transition tr3: firstSlash -> cp cp1 {<br>
+ triggers {<br>
+ <nextChar: readerPort><br>
+ }<br>
+ action {<br>
+ "readerPort.getNextChar();"<br>
+ }<br>
+ }<br>
+ Transition tr4: cp cp1 -> cp cp4<br>
+ Transition tr5: cp cp1 -> blockComment {<br>
+ cond {<br>
+ "c==\'*\'"<br>
+ }<br>
+ }<br>
+ Transition tr6: blockComment -> cp cp2 {<br>
+ triggers {<br>
+ <nextChar: readerPort><br>
+ }<br>
+ action {<br>
+ "readerPort.getNextChar();"<br>
+ }<br>
+ }<br>
+ Transition tr7: cp cp2 -> blockComment<br>
+ Transition tr8: cp cp2 -> firstStar {<br>
+ cond {<br>
+ "c==\'*\'"<br>
+ }<br>
+ }<br>
+ Transition tr9: firstStar -> cp cp3 {<br>
+ triggers {<br>
+ <nextChar: readerPort><br>
+ }<br>
+ action {<br>
+ "readerPort.getNextChar();"<br>
+ }<br>
+ }<br>
+ Transition tr10: cp cp3 -> blockComment<br>
+ Transition tr11: cp cp3 -> code {<br>
+ cond {<br>
+ "c==\'/\'"<br>
+ }<br>
+ }<br>
+ Transition tr12: cp cp4 -> code {<br>
+ action {<br>
+ "printf(\"%c%c\",\'/\',c);"<br>
+ }<br>
+ }<br>
+ Transition tr13: cp cp4 -> lineComment {<br>
+ cond {<br>
+ "c==\'/\'"<br>
+ }<br>
+ }<br>
+ Transition tr14: cp cp5 -> lineComment<br>
+ Transition tr15: lineComment -> cp cp5 {<br>
+ triggers {<br>
+ <nextChar: readerPort><br>
+ }<br>
+ action {<br>
+ "readerPort.getNextChar();"<br>
+ }<br>
+ }<br>
+ Transition tr16: cp cp5 -> code {<br>
+ cond {<br>
+ "c==\'\\n\'"<br>
+ }<br>
+ }<br>
+ ChoicePoint cp0<br>
+ ChoicePoint cp1<br>
+ ChoicePoint cp2<br>
+ ChoicePoint cp3<br>
+ ChoicePoint cp4<br>
+ ChoicePoint cp5<br>
+ State code<br>
+ State firstSlash<br>
+ State blockComment<br>
+ State firstStar<br>
+ State lineComment<br>
+ }<br>
+ }<br>
+ }<br>
+
+<br>
+ ProtocolClass FileReaderProtocol {<br>
+ incoming {<br>
+ Message getNextChar()<br>
+ }<br>
+ outgoing {<br>
+ Message 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 f:file 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 -> 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 file:ptInteger -> FILE default "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´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->New->Project->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->New->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->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->New->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 Binary files differnew file mode 100644 index 000000000..5168c8702 --- /dev/null +++ b/plugins/org.eclipse.etrice.doc/help/images/032-SetupWorkspaceC08.png diff --git a/plugins/org.eclipse.etrice.doc/help/images/032-SetupWorkspaceC09.png b/plugins/org.eclipse.etrice.doc/help/images/032-SetupWorkspaceC09.png Binary files differnew file mode 100644 index 000000000..45dc8978e --- /dev/null +++ b/plugins/org.eclipse.etrice.doc/help/images/032-SetupWorkspaceC09.png diff --git a/plugins/org.eclipse.etrice.doc/help/images/032-SetupWorkspaceC10.png b/plugins/org.eclipse.etrice.doc/help/images/032-SetupWorkspaceC10.png Binary files differnew file mode 100644 index 000000000..cc8c7218f --- /dev/null +++ b/plugins/org.eclipse.etrice.doc/help/images/032-SetupWorkspaceC10.png diff --git a/plugins/org.eclipse.etrice.doc/help/images/032-SetupWorkspaceC11.png b/plugins/org.eclipse.etrice.doc/help/images/032-SetupWorkspaceC11.png Binary files differnew file mode 100644 index 000000000..f3a8bd24c --- /dev/null +++ b/plugins/org.eclipse.etrice.doc/help/images/032-SetupWorkspaceC11.png diff --git a/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC06.png b/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC06.png Binary files differnew file mode 100644 index 000000000..6adf37a86 --- /dev/null +++ b/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC06.png diff --git a/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC07.png b/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC07.png Binary files differnew file mode 100644 index 000000000..d64c32319 --- /dev/null +++ b/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC07.png diff --git a/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC08.png b/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC08.png Binary files differnew file mode 100644 index 000000000..14867cbe7 --- /dev/null +++ b/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC08.png diff --git a/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC09.png b/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC09.png Binary files differnew file mode 100644 index 000000000..73fbeeba2 --- /dev/null +++ b/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC09.png diff --git a/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC10.png b/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC10.png Binary files differnew file mode 100644 index 000000000..ec764ef2d --- /dev/null +++ b/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC10.png diff --git a/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC11.png b/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC11.png Binary files differnew file mode 100644 index 000000000..8bca1b998 --- /dev/null +++ b/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC11.png diff --git a/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC12.png b/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC12.png Binary files differnew file mode 100644 index 000000000..f66f9de8d --- /dev/null +++ b/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC12.png diff --git a/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC13.png b/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC13.png Binary files differnew file mode 100644 index 000000000..372c940c5 --- /dev/null +++ b/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC13.png diff --git a/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC14.png b/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC14.png Binary files differnew file mode 100644 index 000000000..d4c5cb562 --- /dev/null +++ b/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC14.png diff --git a/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC15.png b/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC15.png Binary files differnew file mode 100644 index 000000000..806e796fd --- /dev/null +++ b/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC15.png diff --git a/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC16.png b/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC16.png Binary files differnew file mode 100644 index 000000000..71e76747f --- /dev/null +++ b/plugins/org.eclipse.etrice.doc/help/images/034-HelloWorldC16.png diff --git a/plugins/org.eclipse.etrice.doc/help/images/036-RemoveCommentC01.png b/plugins/org.eclipse.etrice.doc/help/images/036-RemoveCommentC01.png Binary files differnew file mode 100644 index 000000000..6649d446c --- /dev/null +++ b/plugins/org.eclipse.etrice.doc/help/images/036-RemoveCommentC01.png diff --git a/plugins/org.eclipse.etrice.doc/help/images/036-RemoveCommentC02.png b/plugins/org.eclipse.etrice.doc/help/images/036-RemoveCommentC02.png Binary files differnew file mode 100644 index 000000000..2db8c3851 --- /dev/null +++ b/plugins/org.eclipse.etrice.doc/help/images/036-RemoveCommentC02.png diff --git a/plugins/org.eclipse.etrice.doc/help/images/036-RemoveCommentC03.png b/plugins/org.eclipse.etrice.doc/help/images/036-RemoveCommentC03.png Binary files differnew file mode 100644 index 000000000..4c2eff667 --- /dev/null +++ b/plugins/org.eclipse.etrice.doc/help/images/036-RemoveCommentC03.png diff --git a/plugins/org.eclipse.etrice.doc/help/images/036-RemoveCommentC04.png b/plugins/org.eclipse.etrice.doc/help/images/036-RemoveCommentC04.png Binary files differnew file mode 100644 index 000000000..4e653c831 --- /dev/null +++ b/plugins/org.eclipse.etrice.doc/help/images/036-RemoveCommentC04.png diff --git a/plugins/org.eclipse.etrice.doc/help/images/036-RemoveCommentC05.png b/plugins/org.eclipse.etrice.doc/help/images/036-RemoveCommentC05.png Binary files differnew file mode 100644 index 000000000..d13bb83be --- /dev/null +++ b/plugins/org.eclipse.etrice.doc/help/images/036-RemoveCommentC05.png diff --git a/plugins/org.eclipse.etrice.doc/help/images/036-RemoveCommentC06.png b/plugins/org.eclipse.etrice.doc/help/images/036-RemoveCommentC06.png Binary files differnew file mode 100644 index 000000000..eaadb737c --- /dev/null +++ b/plugins/org.eclipse.etrice.doc/help/images/036-RemoveCommentC06.png diff --git a/plugins/org.eclipse.etrice.doc/help/images/036-RemoveCommentC07.png b/plugins/org.eclipse.etrice.doc/help/images/036-RemoveCommentC07.png Binary files differnew file mode 100644 index 000000000..050ea639e --- /dev/null +++ b/plugins/org.eclipse.etrice.doc/help/images/036-RemoveCommentC07.png diff --git a/plugins/org.eclipse.etrice.doc/help/images/036-RemoveCommentC08.png b/plugins/org.eclipse.etrice.doc/help/images/036-RemoveCommentC08.png Binary files differnew file mode 100644 index 000000000..1fc9ca13b --- /dev/null +++ b/plugins/org.eclipse.etrice.doc/help/images/036-RemoveCommentC08.png 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); <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); <br> <div class="literallayout">
<p>
<code class="code">RoomModel HelloWorldCModel {<br>
- import room.basic.types.c.* from "../../org.eclipse.etrice.modellib.c/model/CTypes.room"<br>
+ import room.basic.types.* from "../../org.eclipse.etrice.modellib.c/model/Types.room"<br>
SubSystemClass HelloWorldCSubSysClass {<br>
ActorRef HelloETriceTopRef:AHelloWorldCTop <br>
}<br>
@@ -3256,8 +3255,8 @@ carLights.setState(TrafficLight3.OFF); <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); <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); <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); <br> <div class="literallayout">
<p>
<code class="code">RoomModel RemoveComment {<br>
- import room.basic.types.c.* from "CTypes.room"<br>
+ import room.basic.types.* from "Types.room"<br>
SubSystemClass RemoveCommentSubSys {<br>
ActorRef Topref:ATop <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 Binary files differnew file mode 100644 index 000000000..5168c8702 --- /dev/null +++ b/plugins/org.eclipse.etrice.doc/html/images/032-SetupWorkspaceC08.png diff --git a/plugins/org.eclipse.etrice.doc/html/images/032-SetupWorkspaceC09.png b/plugins/org.eclipse.etrice.doc/html/images/032-SetupWorkspaceC09.png Binary files differnew file mode 100644 index 000000000..45dc8978e --- /dev/null +++ b/plugins/org.eclipse.etrice.doc/html/images/032-SetupWorkspaceC09.png diff --git a/plugins/org.eclipse.etrice.doc/html/images/032-SetupWorkspaceC10.png b/plugins/org.eclipse.etrice.doc/html/images/032-SetupWorkspaceC10.png Binary files differnew file mode 100644 index 000000000..cc8c7218f --- /dev/null +++ b/plugins/org.eclipse.etrice.doc/html/images/032-SetupWorkspaceC10.png diff --git a/plugins/org.eclipse.etrice.doc/html/images/032-SetupWorkspaceC11.png b/plugins/org.eclipse.etrice.doc/html/images/032-SetupWorkspaceC11.png Binary files differnew file mode 100644 index 000000000..f3a8bd24c --- /dev/null +++ b/plugins/org.eclipse.etrice.doc/html/images/032-SetupWorkspaceC11.png diff --git a/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC06.png b/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC06.png Binary files differnew file mode 100644 index 000000000..6adf37a86 --- /dev/null +++ b/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC06.png diff --git a/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC07.png b/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC07.png Binary files differnew file mode 100644 index 000000000..d64c32319 --- /dev/null +++ b/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC07.png diff --git a/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC08.png b/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC08.png Binary files differnew file mode 100644 index 000000000..14867cbe7 --- /dev/null +++ b/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC08.png diff --git a/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC09.png b/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC09.png Binary files differnew file mode 100644 index 000000000..73fbeeba2 --- /dev/null +++ b/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC09.png diff --git a/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC10.png b/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC10.png Binary files differnew file mode 100644 index 000000000..ec764ef2d --- /dev/null +++ b/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC10.png diff --git a/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC11.png b/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC11.png Binary files differnew file mode 100644 index 000000000..8bca1b998 --- /dev/null +++ b/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC11.png diff --git a/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC12.png b/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC12.png Binary files differnew file mode 100644 index 000000000..f66f9de8d --- /dev/null +++ b/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC12.png diff --git a/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC13.png b/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC13.png Binary files differnew file mode 100644 index 000000000..372c940c5 --- /dev/null +++ b/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC13.png diff --git a/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC14.png b/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC14.png Binary files differnew file mode 100644 index 000000000..d4c5cb562 --- /dev/null +++ b/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC14.png diff --git a/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC15.png b/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC15.png Binary files differnew file mode 100644 index 000000000..806e796fd --- /dev/null +++ b/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC15.png diff --git a/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC16.png b/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC16.png Binary files differnew file mode 100644 index 000000000..71e76747f --- /dev/null +++ b/plugins/org.eclipse.etrice.doc/html/images/034-HelloWorldC16.png diff --git a/plugins/org.eclipse.etrice.doc/html/images/036-RemoveCommentC01.png b/plugins/org.eclipse.etrice.doc/html/images/036-RemoveCommentC01.png Binary files differnew file mode 100644 index 000000000..6649d446c --- /dev/null +++ b/plugins/org.eclipse.etrice.doc/html/images/036-RemoveCommentC01.png diff --git a/plugins/org.eclipse.etrice.doc/html/images/036-RemoveCommentC02.png b/plugins/org.eclipse.etrice.doc/html/images/036-RemoveCommentC02.png Binary files differnew file mode 100644 index 000000000..2db8c3851 --- /dev/null +++ b/plugins/org.eclipse.etrice.doc/html/images/036-RemoveCommentC02.png diff --git a/plugins/org.eclipse.etrice.doc/html/images/036-RemoveCommentC03.png b/plugins/org.eclipse.etrice.doc/html/images/036-RemoveCommentC03.png Binary files differnew file mode 100644 index 000000000..4c2eff667 --- /dev/null +++ b/plugins/org.eclipse.etrice.doc/html/images/036-RemoveCommentC03.png diff --git a/plugins/org.eclipse.etrice.doc/html/images/036-RemoveCommentC04.png b/plugins/org.eclipse.etrice.doc/html/images/036-RemoveCommentC04.png Binary files differnew file mode 100644 index 000000000..4e653c831 --- /dev/null +++ b/plugins/org.eclipse.etrice.doc/html/images/036-RemoveCommentC04.png diff --git a/plugins/org.eclipse.etrice.doc/html/images/036-RemoveCommentC05.png b/plugins/org.eclipse.etrice.doc/html/images/036-RemoveCommentC05.png Binary files differnew file mode 100644 index 000000000..d13bb83be --- /dev/null +++ b/plugins/org.eclipse.etrice.doc/html/images/036-RemoveCommentC05.png diff --git a/plugins/org.eclipse.etrice.doc/html/images/036-RemoveCommentC06.png b/plugins/org.eclipse.etrice.doc/html/images/036-RemoveCommentC06.png Binary files differnew file mode 100644 index 000000000..eaadb737c --- /dev/null +++ b/plugins/org.eclipse.etrice.doc/html/images/036-RemoveCommentC06.png diff --git a/plugins/org.eclipse.etrice.doc/html/images/036-RemoveCommentC07.png b/plugins/org.eclipse.etrice.doc/html/images/036-RemoveCommentC07.png Binary files differnew file mode 100644 index 000000000..050ea639e --- /dev/null +++ b/plugins/org.eclipse.etrice.doc/html/images/036-RemoveCommentC07.png diff --git a/plugins/org.eclipse.etrice.doc/html/images/036-RemoveCommentC08.png b/plugins/org.eclipse.etrice.doc/html/images/036-RemoveCommentC08.png Binary files differnew file mode 100644 index 000000000..1fc9ca13b --- /dev/null +++ b/plugins/org.eclipse.etrice.doc/html/images/036-RemoveCommentC08.png diff --git a/plugins/org.eclipse.etrice.doc/manual/etrice.pdf b/plugins/org.eclipse.etrice.doc/manual/etrice.pdf Binary files differindex 35cf9cb3f..b4b2881f2 100644 --- a/plugins/org.eclipse.etrice.doc/manual/etrice.pdf +++ b/plugins/org.eclipse.etrice.doc/manual/etrice.pdf |