summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThomas Schuetz2013-07-04 11:19:35 (EDT)
committerThomas Schuetz2013-07-04 11:19:35 (EDT)
commit66522cebc52744803349b6683f3dbc3922ebd241 (patch)
tree1e8fec90cc055cf71517cc5db9cd8b74a57e71d8
parenta23ef5cd1846a6151e203dd735adf9fea09cf853 (diff)
downloadorg.eclipse.etrice-66522cebc52744803349b6683f3dbc3922ebd241.zip
org.eclipse.etrice-66522cebc52744803349b6683f3dbc3922ebd241.tar.gz
org.eclipse.etrice-66522cebc52744803349b6683f3dbc3922ebd241.tar.bz2
[doc] restructured tutorials
-rw-r--r--plugins/org.eclipse.etrice.doc/doc/012-working-with-tutorials.tex19
-rw-r--r--plugins/org.eclipse.etrice.doc/doc/014-setting-up-the-workspace-for-C.tex103
-rw-r--r--plugins/org.eclipse.etrice.doc/doc/015-hello-world-java.tex (renamed from plugins/org.eclipse.etrice.doc/doc/015-getting-started.tex)2
-rw-r--r--plugins/org.eclipse.etrice.doc/doc/016-hello-world-c.tex (renamed from plugins/org.eclipse.etrice.doc/doc/034-getting-started_c.tex)372
-rw-r--r--plugins/org.eclipse.etrice.doc/doc/032-setting-up-the-workspace_c.tex100
-rw-r--r--plugins/org.eclipse.etrice.doc/doc/etrice-doc.tex7
-rw-r--r--plugins/org.eclipse.etrice.doc/doc/image-src/012-tutorial-structure.dot17
-rw-r--r--plugins/org.eclipse.etrice.doc/doc/images/012-tutorial-structure.pngbin0 -> 27002 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/doc/images/014-SetupWorkspaceC01.png (renamed from plugins/org.eclipse.etrice.doc/doc/images/032-SetupWorkspaceC01.png)bin73767 -> 73767 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/doc/images/014-SetupWorkspaceC02.png (renamed from plugins/org.eclipse.etrice.doc/doc/images/032-SetupWorkspaceC02.png)bin114521 -> 114521 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/doc/images/014-SetupWorkspaceC03.png (renamed from plugins/org.eclipse.etrice.doc/doc/images/032-SetupWorkspaceC03.png)bin13950 -> 13950 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/doc/images/014-SetupWorkspaceC04.png (renamed from plugins/org.eclipse.etrice.doc/doc/images/032-SetupWorkspaceC04.png)bin114050 -> 114050 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/doc/images/014-SetupWorkspaceC05.png (renamed from plugins/org.eclipse.etrice.doc/doc/images/032-SetupWorkspaceC05.png)bin37022 -> 37022 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/doc/images/014-SetupWorkspaceC06.png (renamed from plugins/org.eclipse.etrice.doc/doc/images/032-SetupWorkspaceC06.png)bin177668 -> 177668 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/doc/images/014-SetupWorkspaceC07.png (renamed from plugins/org.eclipse.etrice.doc/doc/images/032-SetupWorkspaceC07.png)bin7246 -> 7246 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/doc/images/014-SetupWorkspaceC08.png (renamed from plugins/org.eclipse.etrice.doc/doc/images/032-SetupWorkspaceC08.png)bin94115 -> 94115 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/doc/images/014-SetupWorkspaceC09.png (renamed from plugins/org.eclipse.etrice.doc/doc/images/032-SetupWorkspaceC09.png)bin63816 -> 63816 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/doc/images/014-SetupWorkspaceC10.png (renamed from plugins/org.eclipse.etrice.doc/doc/images/032-SetupWorkspaceC10.png)bin36926 -> 36926 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/doc/images/014-SetupWorkspaceC11.png (renamed from plugins/org.eclipse.etrice.doc/doc/images/032-SetupWorkspaceC11.png)bin9619 -> 9619 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/doc/images/016-HelloWorldC01.png (renamed from plugins/org.eclipse.etrice.doc/doc/images/034-HelloWorldC01.png)bin36191 -> 36191 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/doc/images/016-HelloWorldC02.png (renamed from plugins/org.eclipse.etrice.doc/doc/images/034-HelloWorldC02.png)bin138276 -> 138276 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/doc/images/016-HelloWorldC03.png (renamed from plugins/org.eclipse.etrice.doc/doc/images/034-HelloWorldC03.png)bin94802 -> 94802 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/doc/images/016-HelloWorldC04.png (renamed from plugins/org.eclipse.etrice.doc/doc/images/034-HelloWorldC04.png)bin39780 -> 39780 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/doc/images/016-HelloWorldC05.png (renamed from plugins/org.eclipse.etrice.doc/doc/images/034-HelloWorldC05.png)bin7073 -> 7073 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/doc/images/016-HelloWorldC06.png (renamed from plugins/org.eclipse.etrice.doc/doc/images/034-HelloWorldC06.png)bin29058 -> 29058 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/doc/images/016-HelloWorldC07.png (renamed from plugins/org.eclipse.etrice.doc/doc/images/034-HelloWorldC07.png)bin93328 -> 93328 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/doc/images/016-HelloWorldC08.png (renamed from plugins/org.eclipse.etrice.doc/doc/images/034-HelloWorldC08.png)bin93240 -> 93240 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/doc/images/016-HelloWorldC09.png (renamed from plugins/org.eclipse.etrice.doc/doc/images/034-HelloWorldC09.png)bin104815 -> 104815 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/doc/images/016-HelloWorldC10.png (renamed from plugins/org.eclipse.etrice.doc/doc/images/034-HelloWorldC10.png)bin101554 -> 101554 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/doc/images/016-HelloWorldC11.png (renamed from plugins/org.eclipse.etrice.doc/doc/images/034-HelloWorldC11.png)bin5669 -> 5669 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/doc/images/016-HelloWorldC12.png (renamed from plugins/org.eclipse.etrice.doc/doc/images/034-HelloWorldC12.png)bin128401 -> 128401 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/doc/images/016-HelloWorldC13.png (renamed from plugins/org.eclipse.etrice.doc/doc/images/034-HelloWorldC13.png)bin12663 -> 12663 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/doc/images/016-HelloWorldC14.png (renamed from plugins/org.eclipse.etrice.doc/doc/images/034-HelloWorldC14.png)bin101442 -> 101442 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/doc/images/016-HelloWorldC15.png (renamed from plugins/org.eclipse.etrice.doc/doc/images/034-HelloWorldC15.png)bin94359 -> 94359 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/doc/images/016-HelloWorldC16.png (renamed from plugins/org.eclipse.etrice.doc/doc/images/034-HelloWorldC16.png)bin11914 -> 11914 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-doc.html285
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docch1.html104
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docch10.html100
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docch2.html230
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docch3.html90
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docch4.html161
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docch5.html122
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docch6.html110
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docch7.html192
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docch8.html124
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docch9.html112
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docli1.html512
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse1.html172
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse10.html132
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse11.html195
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse12.html143
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse13.html843
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse14.html220
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse15.html1085
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse16.html489
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse17.html547
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse18.html514
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse19.html409
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse2.html868
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse20.html1425
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse21.html221
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse22.html477
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse23.html146
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse24.html170
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse25.html94
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse26.html80
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse27.html1562
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse28.html274
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse29.html2026
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse3.html128
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse30.html824
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse31.html1002
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse32.html926
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse33.html734
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse34.html2770
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse35.html320
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse36.html810
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse4.html208
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse5.html460
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse6.html782
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse7.html664
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse8.html542
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse9.html531
-rw-r--r--plugins/org.eclipse.etrice.doc/html/image-src/012-tutorial-structure.pngbin0 -> 27002 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/html/images/012-tutorial-structure.pngbin0 -> 27002 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/html/images/014-SetupWorkspaceC01.pngbin0 -> 73767 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/html/images/014-SetupWorkspaceC02.pngbin0 -> 114521 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/html/images/014-SetupWorkspaceC03.pngbin0 -> 13950 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/html/images/014-SetupWorkspaceC04.pngbin0 -> 114050 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/html/images/014-SetupWorkspaceC05.pngbin0 -> 37022 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/html/images/014-SetupWorkspaceC06.pngbin0 -> 177668 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/html/images/014-SetupWorkspaceC07.pngbin0 -> 7246 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/html/images/014-SetupWorkspaceC08.pngbin0 -> 94115 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/html/images/014-SetupWorkspaceC09.pngbin0 -> 63816 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/html/images/014-SetupWorkspaceC10.pngbin0 -> 36926 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/html/images/014-SetupWorkspaceC11.pngbin0 -> 9619 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/html/images/016-HelloWorldC01.pngbin0 -> 36191 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/html/images/016-HelloWorldC02.pngbin0 -> 138276 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/html/images/016-HelloWorldC03.pngbin0 -> 94802 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/html/images/016-HelloWorldC04.pngbin0 -> 39780 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/html/images/016-HelloWorldC05.pngbin0 -> 7073 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/html/images/016-HelloWorldC06.pngbin0 -> 29058 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/html/images/016-HelloWorldC07.pngbin0 -> 93328 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/html/images/016-HelloWorldC08.pngbin0 -> 93240 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/html/images/016-HelloWorldC09.pngbin0 -> 104815 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/html/images/016-HelloWorldC10.pngbin0 -> 101554 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/html/images/016-HelloWorldC11.pngbin0 -> 5669 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/html/images/016-HelloWorldC12.pngbin0 -> 128401 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/html/images/016-HelloWorldC13.pngbin0 -> 12663 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/html/images/016-HelloWorldC14.pngbin0 -> 101442 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/html/images/016-HelloWorldC15.pngbin0 -> 94359 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/html/images/016-HelloWorldC16.pngbin0 -> 11914 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/manual/etrice.pdf29316
-rw-r--r--plugins/org.eclipse.etrice.doc/toc.xml28
114 files changed, 29332 insertions, 25567 deletions
diff --git a/plugins/org.eclipse.etrice.doc/doc/012-working-with-tutorials.tex b/plugins/org.eclipse.etrice.doc/doc/012-working-with-tutorials.tex
index 0d46e55..3aff0f3 100644
--- a/plugins/org.eclipse.etrice.doc/doc/012-working-with-tutorials.tex
+++ b/plugins/org.eclipse.etrice.doc/doc/012-working-with-tutorials.tex
@@ -2,13 +2,16 @@
The \eTrice{} tutorials will help you to learn and understand the \eTrice{} tool and concepts. \eTrice{} supports
several target languages.
-The chapter setting up the workspace exists for each target language. Those are currently Java and C. The C++ generator
-and runtime are currently prototypes with no tutorials.
+The first two tutorials are target language specific. The other tutorials work for all target languages. Target language specific aspects are explained for all languages.
+Currently eTrice supports Java and C. The C++ generator and runtime are currently prototypes with no tutorials. You should decide for which target language you want to run the tutorials.
-The other tutorials work for all target languages. Target language specific aspects are explained for all languages.
+Here an overview over the tutorials:
+
+\includegraphics[width=0.8\textwidth]{images/012-tutorial-structure.png}
+% !images/012-tutorial-structure.png!
\eTrice{} generates code out of ROOM models. The generated code relies on the services of a runtime
-framework:
+framework (Runtime):
\begin{itemize}
\item execution
\item communication (e.g. messaging)
@@ -16,12 +19,14 @@ framework:
\item operating system abstraction (osal)
\end{itemize}
-Additional functionality is provided as model library:
+Additional functionality is provided as model library (Modellib):
\begin{itemize}
\item socket server and client
\item timing service
\item standard types
\end{itemize}
-Additionally the tutorial models are be provided to make it easy to start with \eTrice{}. All those projects
-should be available in our workspace before you start working with the tutorials.
+All tutorial models are provided as examples.
+
+The Runtime, Modellib and Tutorial projects are target language specific and will be set up in the first tutorial "Setting up the workspace for ...".
+ \ No newline at end of file
diff --git a/plugins/org.eclipse.etrice.doc/doc/014-setting-up-the-workspace-for-C.tex b/plugins/org.eclipse.etrice.doc/doc/014-setting-up-the-workspace-for-C.tex
index b613051..bae988f 100644
--- a/plugins/org.eclipse.etrice.doc/doc/014-setting-up-the-workspace-for-C.tex
+++ b/plugins/org.eclipse.etrice.doc/doc/014-setting-up-the-workspace-for-C.tex
@@ -1,3 +1,100 @@
-\section{Setting up the Workspace for C Projects}
-
-
+\section{Setting up the Workspace for C Projects}
+
+Before you can start with C, some preconditions must be fulfilled:
+
+\begin{description}
+\item{A C compiler} must be installed on your machine (all tests and tutorials are based on MinGW)
+\item{The CDT-Eclipse plugin} must be installed as the C development environment.
+\end{description}
+
+Once the CDT is installed, the C runtime and model library must be imported.
+(\textit{File->New->Project->\eTrice{}} select \textit{\eTrice{} C runtime} / \textit{\eTrice{} C modellib})
+
+The resulting workspace should look like this:
+
+\includegraphics{images/014-SetupWorkspaceC01.png}
+% !images/014-SetupWorkspaceC01.png!
+
+
+\subsection{Testing the environment}
+
+To verify the C tool chain you should generate and run the Hello World example program of the CDT.
+Activate the \textit{C/C++} perspective.
+
+\includegraphics{images/014-SetupWorkspaceC03.png}
+% !images/014-SetupWorkspaceC03.png!
+
+From the main menu select \textit{File->New->C Project}.
+
+\includegraphics{images/014-SetupWorkspaceC02.png}
+% !images/014-SetupWorkspaceC02.png!
+
+Name the project. Select an \textit{Executable->Hello World ANSI C} as project type, \textit{MinGW GCC} as
+tool chain and click \textit{Finish}.
+
+\includegraphics{images/014-SetupWorkspaceC04.png}
+% !images/014-SetupWorkspaceC04.png!
+
+Select the new project and click the build button (or right click the project and select \textit{Build
+Project})
+
+\includegraphics{images/014-SetupWorkspaceC05.png}
+% !images/014-SetupWorkspaceC05.png!
+
+The binary should be generated. Run the binary as \textit{Local C/C++ Application}.
+
+\includegraphics{images/014-SetupWorkspaceC06.png}
+% !images/014-SetupWorkspaceC06.png!
+
+Verify the output.
+
+\includegraphics{images/014-SetupWorkspaceC07.png}
+% !images/014-SetupWorkspaceC07.png!
+
+Remember these steps. In the following Tutorials these steps will be referenced as \textit{build and run}.
+
+
+\subsection{Building the C runtime system}
+
+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
+\textit{etRuntimeConfig.h} is located in \textit{src/config}.
+
+After changing the configuration, the runtime must be built.
+
+Open the properties of the \textit{org.eclipse.runtime.c} project and select \textit{C/C++
+Build->Settings->Tool Settings} and select \textit{Includes}.
+
+\includegraphics{images/014-SetupWorkspaceC08.png}
+% !images/014-SetupWorkspaceC08.png!
+
+Verify the include paths
+
+\begin{itemize}
+\item \textit{src/config}
+\item \textit{src/common}
+\item \textit{src/platforms/generic}
+\end{itemize}
+
+Within the Setting dialog select the tab \textit{Build Artefact} and select \textit{Static Library}
+
+\includegraphics{images/014-SetupWorkspaceC09.png}
+% !images/014-SetupWorkspaceC09.png!
+
+Build the runtime by clicking
+
+\includegraphics{images/014-SetupWorkspaceC10.png}
+% !images/014-SetupWorkspaceC10.png!
+
+The runtime library should be created.
+
+\includegraphics{images/014-SetupWorkspaceC11.png}
+% !images/014-SetupWorkspaceC11.png!
+
+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.
diff --git a/plugins/org.eclipse.etrice.doc/doc/015-getting-started.tex b/plugins/org.eclipse.etrice.doc/doc/015-hello-world-java.tex
index f933bcc..f7c5822 100644
--- a/plugins/org.eclipse.etrice.doc/doc/015-getting-started.tex
+++ b/plugins/org.eclipse.etrice.doc/doc/015-hello-world-java.tex
@@ -1,4 +1,4 @@
-\section{Tutorial HelloWorld for Java}
+\section{HelloWorld for Java}
\subsection{Scope}
diff --git a/plugins/org.eclipse.etrice.doc/doc/034-getting-started_c.tex b/plugins/org.eclipse.etrice.doc/doc/016-hello-world-c.tex
index baa7645..4c637b1 100644
--- a/plugins/org.eclipse.etrice.doc/doc/034-getting-started_c.tex
+++ b/plugins/org.eclipse.etrice.doc/doc/016-hello-world-c.tex
@@ -1,186 +1,186 @@
-\chapter{Tutorial HelloWorld for C}
-
-\section{Scope}
-
-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:
-
-\begin{enumerate}
-\item create a new model from scratch for C
-\item create structure and behavior similar to Java
-\item create a launch configuration for the C code generator
-\item setup the C environment
-\item generate the source code
-\item run the model
-\end{enumerate}
-
-Make sure that you have set up the workspace as described in \textit{Setting up the Workspace for C
-Projects}.
-
-
-\section{Create a new model from scratch}
-
-Before you can create a new C-model, you have to create a new C project as described in \textit{Setting up
-the Workspace for C Projects}.
-Remember:
-\begin{itemize}
-\item select the \textit{C/C++} perspective
-\item From the main menue select \textit{File->New->C Project}
-\item Name the project \textit{HelloWorldC}
-\item Project type is \textit{Executable / Empty C Project}
-\item Toolchain is \textit{MinGW}
-\end{itemize}
-
-The workspace should look like this:
-
-\includegraphics{images/034-HelloWorldC01.png}
-% !images/034-HelloWorldC01.png!
-
-The next step is to add the model folder:
-Right click on the new project. Select \textit{New->Folder} and name it \textit{model}.
-
-\includegraphics{images/034-HelloWorldC02.png}
-% !images/034-HelloWorldC02.png!
-
-Add the model file to the folder. Right click on the new folder. Select \textit{New->file} and name it
-\textit{HelloWorldC.room}.
-
-\includegraphics{images/034-HelloWorldC03.png}
-% !images/034-HelloWorldC03.png!
-
-Due to the file ending \textit{.room}, the tool will ask you to add the Xtext nature. Answer with
-\textit{Yes}.
-
-\includegraphics{images/034-HelloWorldC04.png}
-% !images/034-HelloWorldC04.png!
-
-The workspace should look like this:
-
-\includegraphics{images/034-HelloWorldC05.png}
-% !images/034-HelloWorldC05.png!
-
-
-
-\section{Create the HelloWorld model}
-
-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:
-\begin{itemize}
-\item 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.
-\item The application must be shutdown on model level (see also \textit{etRuntimeConfig.h}).
-\end{itemize}
-
-\begin{verbatim}
-RoomModel HelloWorldCModel {
- import room.basic.types.* from "../../org.eclipse.etrice.modellib.c/model/Types.room"
- SubSystemClass HelloWorldCSubSysClass {
- ActorRef HelloETriceTopRef:AHelloWorldCTop
- }
- ActorClass AHelloWorldCTop {
- Structure { }
- Behavior {
- StateMachine {
- Transition init: initial -> state0 { }
- State state0 {
- entry {
- "printf(\"HelloWorldC !\\n\");"
- "SubSysClass_shutdown();"
- "\t\t\t\t\t\t"
- }
- }
- }
- }
- }
-}
-\end{verbatim}
-
-\section{Create a launch configuration to start the C code generator}
-
-Other than in Java a launch configuration for the C code generator must be created.
-
-From the \textit{Run} menu select \textit{Run Configurations}
-
-\includegraphics{images/034-HelloWorldC06.png}
-% !images/034-HelloWorldC06.png!
-
-Within the dialog select \textit{\eTrice{} C Generator} and click the \textit{New} button to create a new
-launch configuration.
-
-\includegraphics{images/034-HelloWorldC07.png}
-% !images/034-HelloWorldC07.png!
-
-A new configuration should be created. Name it \textit{gen\_HelloWorldC} and add the model via one of the
-\textit{add} buttons.
-
-\includegraphics{images/034-HelloWorldC08.png}
-% !images/034-HelloWorldC08.png!
-
-In the \textit{Refresh} tab select \textit{The entire workspace}
-
-\includegraphics{images/034-HelloWorldC09.png}
-% !images/034-HelloWorldC09.png!
-
-In the \textit{Common} tab select \textit{Shared file} and add the \textit{HelloWorldC} project via the
-\textit{Browse} button.
-
-\includegraphics{images/034-HelloWorldC10.png}
-% !images/034-HelloWorldC10.png!
-
-Apply your changes. The new configuration should now exist in your workspace.
-
-\includegraphics{images/034-HelloWorldC11.png}
-% !images/034-HelloWorldC11.png!
-
-
-\section{Generate the code}
-
-Now you can generate the code as you know it from Java. Right click on the launch configuration and run it
-as \textit{gen\_HelloWorldC}.
-
-\includegraphics{images/034-HelloWorldC12.png}
-% !images/034-HelloWorldC12.png!
-
-The code should be generated.
-
-\includegraphics{images/034-HelloWorldC13.png}
-% !images/034-HelloWorldC13.png!
-
-\section{Setup the include path}
-
-Before you can build the application you must setup the include path for the runtime system. Right click
-the project and select \textit{Properties}. Add the include path as described in \textit{setting up the
-workspace}.
-
-\includegraphics{images/034-HelloWorldC14.png}
-% !images/034-HelloWorldC14.png!
-
-Add the runtime library.
-
-\includegraphics{images/034-HelloWorldC15.png}
-% !images/034-HelloWorldC15!
-
-Recognize the name of the library ("org.eclipse.etrice.runtime.c"). The library file on your disk is
-"liborg.eclipse.etrice.runtime.c.a".
-
-\section{Build and run the model}
-
-Now you can build the application. Click the build button to build the application.
-Run the application as \textit{Local C/C++ Application}.
-Verify the output.
-
-\includegraphics{images/034-HelloWorldC16.png}
-% !images/034-HelloWorldC16.png!
-
-\section{Summary}
-
-You are now familiar with all necessary steps to create, build and run an \eTrice{} C model from scratch. You
-are able to create a launch configuration to start the code generator and to perform all necessary
-settings to compile and link the application.
-
-The next tutorial provides an exercise to get more familiar with these working steps.
+\section{HelloWorld for C}
+
+\subsection{Scope}
+
+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:
+
+\begin{enumerate}
+\item create a new model from scratch for C
+\item create structure and behavior similar to Java
+\item create a launch configuration for the C code generator
+\item setup the C environment
+\item generate the source code
+\item run the model
+\end{enumerate}
+
+Make sure that you have set up the workspace as described in \textit{Setting up the Workspace for C
+Projects}.
+
+
+\subsection{Create a new model from scratch}
+
+Before you can create a new C-model, you have to create a new C project as described in \textit{Setting up
+the Workspace for C Projects}.
+Remember:
+\begin{itemize}
+\item select the \textit{C/C++} perspective
+\item From the main menue select \textit{File->New->C Project}
+\item Name the project \textit{HelloWorldC}
+\item Project type is \textit{Executable / Empty C Project}
+\item Toolchain is \textit{MinGW}
+\end{itemize}
+
+The workspace should look like this:
+
+\includegraphics{images/016-HelloWorldC01.png}
+% !images/016-HelloWorldC01.png!
+
+The next step is to add the model folder:
+Right click on the new project. Select \textit{New->Folder} and name it \textit{model}.
+
+\includegraphics{images/016-HelloWorldC02.png}
+% !images/016-HelloWorldC02.png!
+
+Add the model file to the folder. Right click on the new folder. Select \textit{New->file} and name it
+\textit{HelloWorldC.room}.
+
+\includegraphics{images/016-HelloWorldC03.png}
+% !images/016-HelloWorldC03.png!
+
+Due to the file ending \textit{.room}, the tool will ask you to add the Xtext nature. Answer with
+\textit{Yes}.
+
+\includegraphics{images/016-HelloWorldC04.png}
+% !images/016-HelloWorldC04.png!
+
+The workspace should look like this:
+
+\includegraphics{images/016-HelloWorldC05.png}
+% !images/016-HelloWorldC05.png!
+
+
+
+\subsection{Create the HelloWorld model}
+
+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:
+\begin{itemize}
+\item 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.
+\item The application must be shutdown on model level (see also \textit{etRuntimeConfig.h}).
+\end{itemize}
+
+\begin{verbatim}
+RoomModel HelloWorldCModel {
+ import room.basic.types.* from "../../org.eclipse.etrice.modellib.c/model/Types.room"
+ SubSystemClass HelloWorldCSubSysClass {
+ ActorRef HelloETriceTopRef:AHelloWorldCTop
+ }
+ ActorClass AHelloWorldCTop {
+ Structure { }
+ Behavior {
+ StateMachine {
+ Transition init: initial -> state0 { }
+ State state0 {
+ entry {
+ "printf(\"HelloWorldC !\\n\");"
+ "SubSysClass_shutdown();"
+ "\t\t\t\t\t\t"
+ }
+ }
+ }
+ }
+ }
+}
+\end{verbatim}
+
+\subsection{Create a launch configuration to start the C code generator}
+
+Other than in Java a launch configuration for the C code generator must be created.
+
+From the \textit{Run} menu select \textit{Run Configurations}
+
+\includegraphics{images/016-HelloWorldC06.png}
+% !images/016-HelloWorldC06.png!
+
+Within the dialog select \textit{\eTrice{} C Generator} and click the \textit{New} button to create a new
+launch configuration.
+
+\includegraphics{images/016-HelloWorldC07.png}
+% !images/016-HelloWorldC07.png!
+
+A new configuration should be created. Name it \textit{gen\_HelloWorldC} and add the model via one of the
+\textit{add} buttons.
+
+\includegraphics{images/016-HelloWorldC08.png}
+% !images/016-HelloWorldC08.png!
+
+In the \textit{Refresh} tab select \textit{The entire workspace}
+
+\includegraphics{images/016-HelloWorldC09.png}
+% !images/016-HelloWorldC09.png!
+
+In the \textit{Common} tab select \textit{Shared file} and add the \textit{HelloWorldC} project via the
+\textit{Browse} button.
+
+\includegraphics{images/016-HelloWorldC10.png}
+% !images/016-HelloWorldC10.png!
+
+Apply your changes. The new configuration should now exist in your workspace.
+
+\includegraphics{images/016-HelloWorldC11.png}
+% !images/016-HelloWorldC11.png!
+
+
+\subsection{Generate the code}
+
+Now you can generate the code as you know it from Java. Right click on the launch configuration and run it
+as \textit{gen\_HelloWorldC}.
+
+\includegraphics{images/016-HelloWorldC12.png}
+% !images/016-HelloWorldC12.png!
+
+The code should be generated.
+
+\includegraphics{images/016-HelloWorldC13.png}
+% !images/016-HelloWorldC13.png!
+
+\subsection{Setup the include path}
+
+Before you can build the application you must setup the include path for the runtime system. Right click
+the project and select \textit{Properties}. Add the include path as described in \textit{setting up the
+workspace}.
+
+\includegraphics{images/016-HelloWorldC14.png}
+% !images/016-HelloWorldC14.png!
+
+Add the runtime library.
+
+\includegraphics{images/016-HelloWorldC15.png}
+% !images/016-HelloWorldC15!
+
+Recognize the name of the library ("org.eclipse.etrice.runtime.c"). The library file on your disk is
+"liborg.eclipse.etrice.runtime.c.a".
+
+\subsection{Build and run the model}
+
+Now you can build the application. Click the build button to build the application.
+Run the application as \textit{Local C/C++ Application}.
+Verify the output.
+
+\includegraphics{images/016-HelloWorldC16.png}
+% !images/016-HelloWorldC16.png!
+
+\subsection{Summary}
+
+You are now familiar with all necessary steps to create, build and run an \eTrice{} C model from scratch. You
+are able to create a launch configuration to start the code generator and to perform all necessary
+settings to compile and link the application.
+
+The next tutorial provides an exercise to get more familiar with these working steps.
diff --git a/plugins/org.eclipse.etrice.doc/doc/032-setting-up-the-workspace_c.tex b/plugins/org.eclipse.etrice.doc/doc/032-setting-up-the-workspace_c.tex
deleted file mode 100644
index 08fbd9b..0000000
--- a/plugins/org.eclipse.etrice.doc/doc/032-setting-up-the-workspace_c.tex
+++ /dev/null
@@ -1,100 +0,0 @@
-\chapter{Setting up the Workspace for C Projects}
-
-Before you can start with C, some preconditions must be fulfilled:
-
-\begin{description}
-\item{A C compiler} must be installed on your machine (all tests and tutorials are based on MinGW)
-\item{The CDT-Eclipse plugin} must be installed as the C development environment.
-\end{description}
-
-Once the CDT is installed, the C runtime and model library must be imported.
-(\textit{File->New->Project->\eTrice{}} select \textit{\eTrice{} C runtime} / \textit{\eTrice{} C modellib})
-
-The resulting workspace should look like this:
-
-\includegraphics{images/032-SetupWorkspaceC01.png}
-% !images/032-SetupWorkspaceC01.png!
-
-
-\section{Testing the environment}
-
-To verify the C tool chain you should generate and run the Hello World example program of the CDT.
-Activate the \textit{C/C++} perspective.
-
-\includegraphics{images/032-SetupWorkspaceC03.png}
-% !images/032-SetupWorkspaceC03.png!
-
-From the main menu select \textit{File->New->C Project}.
-
-\includegraphics{images/032-SetupWorkspaceC02.png}
-% !images/032-SetupWorkspaceC02.png!
-
-Name the project. Select an \textit{Executable->Hello World ANSI C} as project type, \textit{MinGW GCC} as
-tool chain and click \textit{Finish}.
-
-\includegraphics{images/032-SetupWorkspaceC04.png}
-% !images/032-SetupWorkspaceC04.png!
-
-Select the new project and click the build button (or right click the project and select \textit{Build
-Project})
-
-\includegraphics{images/032-SetupWorkspaceC05.png}
-% !images/032-SetupWorkspaceC05.png!
-
-The binary should be generated. Run the binary as \textit{Local C/C++ Application}.
-
-\includegraphics{images/032-SetupWorkspaceC06.png}
-% !images/032-SetupWorkspaceC06.png!
-
-Verify the output.
-
-\includegraphics{images/032-SetupWorkspaceC07.png}
-% !images/032-SetupWorkspaceC07.png!
-
-Remember these steps. In the following Tutorials these steps will be referenced as \textit{build and run}.
-
-
-\section{Building the C runtime system}
-
-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
-\textit{etRuntimeConfig.h} is located in \textit{src/config}.
-
-After changing the configuration, the runtime must be built.
-
-Open the properties of the \textit{org.eclipse.runtime.c} project and select \textit{C/C++
-Build->Settings->Tool Settings} and select \textit{Includes}.
-
-\includegraphics{images/032-SetupWorkspaceC08.png}
-% !images/032-SetupWorkspaceC08.png!
-
-Verify the include paths
-
-\begin{itemize}
-\item \textit{src/config}
-\item \textit{src/common}
-\item \textit{src/platforms/generic}
-\end{itemize}
-
-Within the Setting dialog select the tab \textit{Build Artefact} and select \textit{Static Library}
-
-\includegraphics{images/032-SetupWorkspaceC09.png}
-% !images/032-SetupWorkspaceC09.png!
-
-Build the runtime by clicking
-
-\includegraphics{images/032-SetupWorkspaceC10.png}
-% !images/032-SetupWorkspaceC10.png!
-
-The runtime library should be created.
-
-\includegraphics{images/032-SetupWorkspaceC11.png}
-% !images/032-SetupWorkspaceC11.png!
-
-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.
diff --git a/plugins/org.eclipse.etrice.doc/doc/etrice-doc.tex b/plugins/org.eclipse.etrice.doc/doc/etrice-doc.tex
index 7be6b66..144c663 100644
--- a/plugins/org.eclipse.etrice.doc/doc/etrice-doc.tex
+++ b/plugins/org.eclipse.etrice.doc/doc/etrice-doc.tex
@@ -60,13 +60,12 @@
\input{012-working-with-tutorials}
\input{013-setting-up-the-workspace-for-java}
-\input{015-getting-started}
+\input{014-setting-up-the-workspace-for-C}
+\input{015-hello-world-java}
+\input{016-hello-world-c}
\input{020-tutorial-blinky}
\input{025-tutorial-sending-data}
\input{030-tutorial-ped-lights}
-\input{032-setting-up-the-workspace_c}
-\input{034-getting-started_c}
-\input{036-tutorial-remove-comment_c}
\input{040-room-concepts}
\chapter{eTrice{} Features}
diff --git a/plugins/org.eclipse.etrice.doc/doc/image-src/012-tutorial-structure.dot b/plugins/org.eclipse.etrice.doc/doc/image-src/012-tutorial-structure.dot
new file mode 100644
index 0000000..0eea8e1
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/doc/image-src/012-tutorial-structure.dot
@@ -0,0 +1,17 @@
+digraph TutorialStructure {
+
+ node [style=filled color=chocolate3]
+ SetupForJava[label="Setting up the workspace for Java" ];
+ HelloWorldForJava[label="Hello World for Java"];
+ SetupForC[label="Setting up the workspace for C" ];
+ HelloWorldForC[label="Hello World for C"];
+ PingPong [label="Ping Pong"];
+ TrafficLight [label="Traffic Light"];
+
+ SetupForJava -> HelloWorldForJava;
+ SetupForC -> HelloWorldForC;
+ HelloWorldForJava -> PingPong;
+ HelloWorldForC -> PingPong;
+ PingPong -> TrafficLight
+
+} \ No newline at end of file
diff --git a/plugins/org.eclipse.etrice.doc/doc/images/012-tutorial-structure.png b/plugins/org.eclipse.etrice.doc/doc/images/012-tutorial-structure.png
new file mode 100644
index 0000000..5d25da4
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/doc/images/012-tutorial-structure.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/doc/images/032-SetupWorkspaceC01.png b/plugins/org.eclipse.etrice.doc/doc/images/014-SetupWorkspaceC01.png
index f9bea8d..f9bea8d 100644
--- a/plugins/org.eclipse.etrice.doc/doc/images/032-SetupWorkspaceC01.png
+++ b/plugins/org.eclipse.etrice.doc/doc/images/014-SetupWorkspaceC01.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/doc/images/032-SetupWorkspaceC02.png b/plugins/org.eclipse.etrice.doc/doc/images/014-SetupWorkspaceC02.png
index 851899b..851899b 100644
--- a/plugins/org.eclipse.etrice.doc/doc/images/032-SetupWorkspaceC02.png
+++ b/plugins/org.eclipse.etrice.doc/doc/images/014-SetupWorkspaceC02.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/doc/images/032-SetupWorkspaceC03.png b/plugins/org.eclipse.etrice.doc/doc/images/014-SetupWorkspaceC03.png
index 3f5b8d9..3f5b8d9 100644
--- a/plugins/org.eclipse.etrice.doc/doc/images/032-SetupWorkspaceC03.png
+++ b/plugins/org.eclipse.etrice.doc/doc/images/014-SetupWorkspaceC03.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/doc/images/032-SetupWorkspaceC04.png b/plugins/org.eclipse.etrice.doc/doc/images/014-SetupWorkspaceC04.png
index 3a3f369..3a3f369 100644
--- a/plugins/org.eclipse.etrice.doc/doc/images/032-SetupWorkspaceC04.png
+++ b/plugins/org.eclipse.etrice.doc/doc/images/014-SetupWorkspaceC04.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/doc/images/032-SetupWorkspaceC05.png b/plugins/org.eclipse.etrice.doc/doc/images/014-SetupWorkspaceC05.png
index bbb6b2a..bbb6b2a 100644
--- a/plugins/org.eclipse.etrice.doc/doc/images/032-SetupWorkspaceC05.png
+++ b/plugins/org.eclipse.etrice.doc/doc/images/014-SetupWorkspaceC05.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/doc/images/032-SetupWorkspaceC06.png b/plugins/org.eclipse.etrice.doc/doc/images/014-SetupWorkspaceC06.png
index 145f487..145f487 100644
--- a/plugins/org.eclipse.etrice.doc/doc/images/032-SetupWorkspaceC06.png
+++ b/plugins/org.eclipse.etrice.doc/doc/images/014-SetupWorkspaceC06.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/doc/images/032-SetupWorkspaceC07.png b/plugins/org.eclipse.etrice.doc/doc/images/014-SetupWorkspaceC07.png
index 7848fba..7848fba 100644
--- a/plugins/org.eclipse.etrice.doc/doc/images/032-SetupWorkspaceC07.png
+++ b/plugins/org.eclipse.etrice.doc/doc/images/014-SetupWorkspaceC07.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/doc/images/032-SetupWorkspaceC08.png b/plugins/org.eclipse.etrice.doc/doc/images/014-SetupWorkspaceC08.png
index 5168c87..5168c87 100644
--- a/plugins/org.eclipse.etrice.doc/doc/images/032-SetupWorkspaceC08.png
+++ b/plugins/org.eclipse.etrice.doc/doc/images/014-SetupWorkspaceC08.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/doc/images/032-SetupWorkspaceC09.png b/plugins/org.eclipse.etrice.doc/doc/images/014-SetupWorkspaceC09.png
index 45dc897..45dc897 100644
--- a/plugins/org.eclipse.etrice.doc/doc/images/032-SetupWorkspaceC09.png
+++ b/plugins/org.eclipse.etrice.doc/doc/images/014-SetupWorkspaceC09.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/doc/images/032-SetupWorkspaceC10.png b/plugins/org.eclipse.etrice.doc/doc/images/014-SetupWorkspaceC10.png
index cc8c721..cc8c721 100644
--- a/plugins/org.eclipse.etrice.doc/doc/images/032-SetupWorkspaceC10.png
+++ b/plugins/org.eclipse.etrice.doc/doc/images/014-SetupWorkspaceC10.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/doc/images/032-SetupWorkspaceC11.png b/plugins/org.eclipse.etrice.doc/doc/images/014-SetupWorkspaceC11.png
index f3a8bd2..f3a8bd2 100644
--- a/plugins/org.eclipse.etrice.doc/doc/images/032-SetupWorkspaceC11.png
+++ b/plugins/org.eclipse.etrice.doc/doc/images/014-SetupWorkspaceC11.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/doc/images/034-HelloWorldC01.png b/plugins/org.eclipse.etrice.doc/doc/images/016-HelloWorldC01.png
index a8f303b..a8f303b 100644
--- a/plugins/org.eclipse.etrice.doc/doc/images/034-HelloWorldC01.png
+++ b/plugins/org.eclipse.etrice.doc/doc/images/016-HelloWorldC01.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/doc/images/034-HelloWorldC02.png b/plugins/org.eclipse.etrice.doc/doc/images/016-HelloWorldC02.png
index 25b59ee..25b59ee 100644
--- a/plugins/org.eclipse.etrice.doc/doc/images/034-HelloWorldC02.png
+++ b/plugins/org.eclipse.etrice.doc/doc/images/016-HelloWorldC02.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/doc/images/034-HelloWorldC03.png b/plugins/org.eclipse.etrice.doc/doc/images/016-HelloWorldC03.png
index 2892125..2892125 100644
--- a/plugins/org.eclipse.etrice.doc/doc/images/034-HelloWorldC03.png
+++ b/plugins/org.eclipse.etrice.doc/doc/images/016-HelloWorldC03.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/doc/images/034-HelloWorldC04.png b/plugins/org.eclipse.etrice.doc/doc/images/016-HelloWorldC04.png
index 8458eca..8458eca 100644
--- a/plugins/org.eclipse.etrice.doc/doc/images/034-HelloWorldC04.png
+++ b/plugins/org.eclipse.etrice.doc/doc/images/016-HelloWorldC04.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/doc/images/034-HelloWorldC05.png b/plugins/org.eclipse.etrice.doc/doc/images/016-HelloWorldC05.png
index 8bab9bc..8bab9bc 100644
--- a/plugins/org.eclipse.etrice.doc/doc/images/034-HelloWorldC05.png
+++ b/plugins/org.eclipse.etrice.doc/doc/images/016-HelloWorldC05.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/doc/images/034-HelloWorldC06.png b/plugins/org.eclipse.etrice.doc/doc/images/016-HelloWorldC06.png
index 6adf37a..6adf37a 100644
--- a/plugins/org.eclipse.etrice.doc/doc/images/034-HelloWorldC06.png
+++ b/plugins/org.eclipse.etrice.doc/doc/images/016-HelloWorldC06.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/doc/images/034-HelloWorldC07.png b/plugins/org.eclipse.etrice.doc/doc/images/016-HelloWorldC07.png
index d64c323..d64c323 100644
--- a/plugins/org.eclipse.etrice.doc/doc/images/034-HelloWorldC07.png
+++ b/plugins/org.eclipse.etrice.doc/doc/images/016-HelloWorldC07.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/doc/images/034-HelloWorldC08.png b/plugins/org.eclipse.etrice.doc/doc/images/016-HelloWorldC08.png
index 14867cb..14867cb 100644
--- a/plugins/org.eclipse.etrice.doc/doc/images/034-HelloWorldC08.png
+++ b/plugins/org.eclipse.etrice.doc/doc/images/016-HelloWorldC08.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/doc/images/034-HelloWorldC09.png b/plugins/org.eclipse.etrice.doc/doc/images/016-HelloWorldC09.png
index 73fbeeb..73fbeeb 100644
--- a/plugins/org.eclipse.etrice.doc/doc/images/034-HelloWorldC09.png
+++ b/plugins/org.eclipse.etrice.doc/doc/images/016-HelloWorldC09.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/doc/images/034-HelloWorldC10.png b/plugins/org.eclipse.etrice.doc/doc/images/016-HelloWorldC10.png
index ec764ef..ec764ef 100644
--- a/plugins/org.eclipse.etrice.doc/doc/images/034-HelloWorldC10.png
+++ b/plugins/org.eclipse.etrice.doc/doc/images/016-HelloWorldC10.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/doc/images/034-HelloWorldC11.png b/plugins/org.eclipse.etrice.doc/doc/images/016-HelloWorldC11.png
index 8bca1b9..8bca1b9 100644
--- a/plugins/org.eclipse.etrice.doc/doc/images/034-HelloWorldC11.png
+++ b/plugins/org.eclipse.etrice.doc/doc/images/016-HelloWorldC11.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/doc/images/034-HelloWorldC12.png b/plugins/org.eclipse.etrice.doc/doc/images/016-HelloWorldC12.png
index f66f9de..f66f9de 100644
--- a/plugins/org.eclipse.etrice.doc/doc/images/034-HelloWorldC12.png
+++ b/plugins/org.eclipse.etrice.doc/doc/images/016-HelloWorldC12.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/doc/images/034-HelloWorldC13.png b/plugins/org.eclipse.etrice.doc/doc/images/016-HelloWorldC13.png
index 372c940..372c940 100644
--- a/plugins/org.eclipse.etrice.doc/doc/images/034-HelloWorldC13.png
+++ b/plugins/org.eclipse.etrice.doc/doc/images/016-HelloWorldC13.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/doc/images/034-HelloWorldC14.png b/plugins/org.eclipse.etrice.doc/doc/images/016-HelloWorldC14.png
index d4c5cb5..d4c5cb5 100644
--- a/plugins/org.eclipse.etrice.doc/doc/images/034-HelloWorldC14.png
+++ b/plugins/org.eclipse.etrice.doc/doc/images/016-HelloWorldC14.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/doc/images/034-HelloWorldC15.png b/plugins/org.eclipse.etrice.doc/doc/images/016-HelloWorldC15.png
index 806e796..806e796 100644
--- a/plugins/org.eclipse.etrice.doc/doc/images/034-HelloWorldC15.png
+++ b/plugins/org.eclipse.etrice.doc/doc/images/016-HelloWorldC15.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/doc/images/034-HelloWorldC16.png b/plugins/org.eclipse.etrice.doc/doc/images/016-HelloWorldC16.png
index 71e7674..71e7674 100644
--- a/plugins/org.eclipse.etrice.doc/doc/images/034-HelloWorldC16.png
+++ b/plugins/org.eclipse.etrice.doc/doc/images/016-HelloWorldC16.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-doc.html b/plugins/org.eclipse.etrice.doc/html/etrice-doc.html
index d7e41c9..170a2eb 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-doc.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-doc.html
@@ -1,165 +1,120 @@
-<?xml version="1.0" encoding="iso-8859-1" ?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
-<html xmlns="http://www.w3.org/1999/xhtml"
->
-<head><title>eTrice</title>
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
-<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
-<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
-<!-- xhtml,3,next,html -->
-<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-06-21 12:20:00" />
-<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
-</head><body
->
-<div class="maketitle">
-
-
-
-
-
-<h2 class="titleHead">eTrice</h2>
- <div class="author" ><span
-class="ec-lmss-12">e</span><span
-class="ec-lmss-12">Trice</span> <span
-class="ec-lmss-12">committers and contributors</span></div>
-<br />
-<div class="date" ><span
-class="ec-lmss-12">June 21, 2013</span></div>
-
-
-</div>
-
-
-<div class="tableofcontents">
-<span class="likechapterToc" ><a
-href="etrice-docli1.html#x2-1000" id="QQ2-2-1">Contents</a></span>
-<br /><span class="chapterToc" >1 <a
-href="etrice-docch1.html#x3-20001" id="QQ2-3-2">Introduction</a></span>
-<br />&#x00A0;<span class="sectionToc" >1.1 <a
-href="etrice-docse1.html#x4-30001.1" id="QQ2-4-3">eTrice Overview</a></span>
-<br />&#x00A0;<span class="sectionToc" >1.2 <a
-href="etrice-docse2.html#x5-60001.2" id="QQ2-5-6">Introduction to the ROOM Language</a></span>
-<br /><span class="chapterToc" >2 <a
-href="etrice-docch2.html#x6-250002" id="QQ2-6-26">Tutorials</a></span>
-<br />&#x00A0;<span class="sectionToc" >2.1 <a
-href="etrice-docse3.html#x7-260002.1" id="QQ2-7-27">Working with the tutorials</a></span>
-<br />&#x00A0;<span class="sectionToc" >2.2 <a
-href="etrice-docse4.html#x8-270002.2" id="QQ2-8-28">Setting up the Workspace for Java Projects</a></span>
-<br />&#x00A0;<span class="sectionToc" >2.3 <a
-href="etrice-docse5.html#x9-280002.3" id="QQ2-9-29">Tutorial HelloWorld for Java</a></span>
-<br />&#x00A0;<span class="sectionToc" >2.4 <a
-href="etrice-docse6.html#x10-350002.4" id="QQ2-10-36">Tutorial Blinky (Java)</a></span>
-<br />&#x00A0;<span class="sectionToc" >2.5 <a
-href="etrice-docse7.html#x11-440002.5" id="QQ2-11-45">Tutorial Sending Data (Java)</a></span>
-<br /><span class="chapterToc" >3 <a
-href="etrice-docch3.html#x12-560003" id="QQ2-12-57">Tutorial Pedestrian Lights (Java)</a></span>
-<br />&#x00A0;<span class="sectionToc" >3.1 <a
-href="etrice-docse8.html#x13-570003.1" id="QQ2-13-58">Scope</a></span>
-<br />&#x00A0;<span class="sectionToc" >3.2 <a
-href="etrice-docse9.html#x14-580003.2" id="QQ2-14-59">Setup the model</a></span>
-<br />&#x00A0;<span class="sectionToc" >3.3 <a
-href="etrice-docse10.html#x15-590003.3" id="QQ2-15-60">Why does it work and why is it safe?</a></span>
-<br /><span class="chapterToc" >4 <a
-href="etrice-docch4.html#x16-600004" id="QQ2-16-61">Setting up the Workspace for C Projects</a></span>
-<br />&#x00A0;<span class="sectionToc" >4.1 <a
-href="etrice-docse11.html#x17-610004.1" id="QQ2-17-62">Testing the environment</a></span>
-<br />&#x00A0;<span class="sectionToc" >4.2 <a
-href="etrice-docse12.html#x18-620004.2" id="QQ2-18-63">Building the C runtime system</a></span>
-<br /><span class="chapterToc" >5 <a
-href="etrice-docch5.html#x19-630005" id="QQ2-19-64">Tutorial HelloWorld for C</a></span>
-<br />&#x00A0;<span class="sectionToc" >5.1 <a
-href="etrice-docse13.html#x20-640005.1" id="QQ2-20-65">Scope</a></span>
-<br />&#x00A0;<span class="sectionToc" >5.2 <a
-href="etrice-docse14.html#x21-650005.2" id="QQ2-21-66">Create a new model from scratch</a></span>
-<br />&#x00A0;<span class="sectionToc" >5.3 <a
-href="etrice-docse15.html#x22-660005.3" id="QQ2-22-67">Create the HelloWorld model</a></span>
-<br />&#x00A0;<span class="sectionToc" >5.4 <a
-href="etrice-docse16.html#x23-670005.4" id="QQ2-23-68">Create a launch configuration to start the C code generator</a></span>
-<br />&#x00A0;<span class="sectionToc" >5.5 <a
-href="etrice-docse17.html#x24-680005.5" id="QQ2-24-69">Generate the code</a></span>
-<br />&#x00A0;<span class="sectionToc" >5.6 <a
-href="etrice-docse18.html#x25-690005.6" id="QQ2-25-70">Setup the include path</a></span>
-<br />&#x00A0;<span class="sectionToc" >5.7 <a
-href="etrice-docse19.html#x26-700005.7" id="QQ2-26-71">Build and run the model</a></span>
-<br />&#x00A0;<span class="sectionToc" >5.8 <a
-href="etrice-docse20.html#x27-710005.8" id="QQ2-27-72">Summary</a></span>
-<br /><span class="chapterToc" >6 <a
-href="etrice-docch6.html#x28-720006" id="QQ2-28-73">Tutorial Remove C-Comment ( C )</a></span>
-<br />&#x00A0;<span class="sectionToc" >6.1 <a
-href="etrice-docse21.html#x29-730006.1" id="QQ2-29-74">Scope</a></span>
-<br />&#x00A0;<span class="sectionToc" >6.2 <a
-href="etrice-docse22.html#x30-740006.2" id="QQ2-30-75">Create a new model from scratch</a></span>
-<br />&#x00A0;<span class="sectionToc" >6.3 <a
-href="etrice-docse23.html#x31-750006.3" id="QQ2-31-76">Create your own data type</a></span>
-<br />&#x00A0;<span class="sectionToc" >6.4 <a
-href="etrice-docse24.html#x32-760006.4" id="QQ2-32-77">Create the model</a></span>
-<br />&#x00A0;<span class="sectionToc" >6.5 <a
-href="etrice-docse25.html#x33-770006.5" id="QQ2-33-78">Generate, build and run the model</a></span>
-<br />&#x00A0;<span class="sectionToc" >6.6 <a
-href="etrice-docse26.html#x34-780006.6" id="QQ2-34-79">Summary</a></span>
-<br /><span class="chapterToc" >7 <a
-href="etrice-docch7.html#x35-790007" id="QQ2-35-80">ROOM Concepts</a></span>
-
-
-<br />&#x00A0;<span class="sectionToc" >7.1 <a
-href="etrice-docse27.html#x36-800007.1" id="QQ2-36-81">Actors</a></span>
-<br />&#x00A0;<span class="sectionToc" >7.2 <a
-href="etrice-docse28.html#x37-880007.2" id="QQ2-37-91">Protocols</a></span>
-<br />&#x00A0;<span class="sectionToc" >7.3 <a
-href="etrice-docse29.html#x38-920007.3" id="QQ2-38-95">Ports</a></span>
-<br />&#x00A0;<span class="sectionToc" >7.4 <a
-href="etrice-docse30.html#x39-980007.4" id="QQ2-39-115">DataClass</a></span>
-<br />&#x00A0;<span class="sectionToc" >7.5 <a
-href="etrice-docse31.html#x40-1010007.5" id="QQ2-40-118">Layering</a></span>
-<br />&#x00A0;<span class="sectionToc" >7.6 <a
-href="etrice-docse32.html#x41-1040007.6" id="QQ2-41-122">Finite State Machines</a></span>
-<br /><span class="chapterToc" >8 <a
-href="etrice-docch8.html#x42-1110008" id="QQ2-42-135">eTrice Features</a></span>
-<br />&#x00A0;<span class="sectionToc" >8.1 <a
-href="etrice-docse33.html#x43-1120008.1" id="QQ2-43-136">Automatic Diagram Layout with KIELER</a></span>
-<br />&#x00A0;<span class="sectionToc" >8.2 <a
-href="etrice-docse34.html#x44-1250008.2" id="QQ2-44-153">eTrice Models and Their Relations</a></span>
-<br /><span class="chapterToc" >9 <a
-href="etrice-docch9.html#x45-1300009" id="QQ2-45-164">eTrice Tool Developer&#8217;s Reference</a></span>
-<br />&#x00A0;<span class="sectionToc" >9.1 <a
-href="etrice-docse35.html#x46-1310009.1" id="QQ2-46-165">Architecture</a></span>
-<br />&#x00A0;<span class="sectionToc" >9.2 <a
-href="etrice-docse36.html#x47-1350009.2" id="QQ2-47-169">Component Overview</a></span>
-</div>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-<!--l. 82--><p class="noindent" ><span class="next">[<a
-href="etrice-docli1.html" id="tailetrice-doc" >next</a>]</span></p>
-</body></html>
-
-
-
-
+<?xml version="1.0" encoding="iso-8859-1" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
+<html xmlns="http://www.w3.org/1999/xhtml"
+>
+<head><title>eTrice</title>
+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
+<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
+<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
+<!-- xhtml,3,next,html -->
+<meta name="src" content="etrice-doc.tex" />
+<meta name="date" content="2013-07-04 15:04:00" />
+<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
+</head><body
+>
+<div class="maketitle">
+
+
+
+
+
+<h2 class="titleHead">eTrice</h2>
+ <div class="author" ><span
+class="ec-lmss-12">e</span><span
+class="ec-lmss-12">Trice</span> <span
+class="ec-lmss-12">committers and contributors</span></div>
+<br />
+<div class="date" ><span
+class="ec-lmss-12">July 4, 2013</span></div>
+
+
+</div>
+
+
+<div class="tableofcontents">
+<span class="likechapterToc" ><a
+href="etrice-docli1.html#x2-1000" id="QQ2-2-1">Contents</a></span>
+<br /><span class="chapterToc" >1 <a
+href="etrice-docch1.html#x3-20001" id="QQ2-3-2">Introduction</a></span>
+<br />&#x00A0;<span class="sectionToc" >1.1 <a
+href="etrice-docse1.html#x4-30001.1" id="QQ2-4-3">eTrice Overview</a></span>
+<br />&#x00A0;<span class="sectionToc" >1.2 <a
+href="etrice-docse2.html#x5-60001.2" id="QQ2-5-6">Introduction to the ROOM Language</a></span>
+<br /><span class="chapterToc" >2 <a
+href="etrice-docch2.html#x6-250002" id="QQ2-6-26">Tutorials</a></span>
+<br />&#x00A0;<span class="sectionToc" >2.1 <a
+href="etrice-docse3.html#x7-260002.1" id="QQ2-7-27">Working with the tutorials</a></span>
+<br />&#x00A0;<span class="sectionToc" >2.2 <a
+href="etrice-docse4.html#x8-270002.2" id="QQ2-8-28">Setting up the Workspace for Java Projects</a></span>
+<br />&#x00A0;<span class="sectionToc" >2.3 <a
+href="etrice-docse5.html#x9-280002.3" id="QQ2-9-29">Setting up the Workspace for C Projects</a></span>
+<br />&#x00A0;<span class="sectionToc" >2.4 <a
+href="etrice-docse6.html#x10-310002.4" id="QQ2-10-32">HelloWorld for Java</a></span>
+<br />&#x00A0;<span class="sectionToc" >2.5 <a
+href="etrice-docse7.html#x11-380002.5" id="QQ2-11-39">HelloWorld for C</a></span>
+<br />&#x00A0;<span class="sectionToc" >2.6 <a
+href="etrice-docse8.html#x12-470002.6" id="QQ2-12-48">Tutorial Blinky (Java)</a></span>
+<br />&#x00A0;<span class="sectionToc" >2.7 <a
+href="etrice-docse9.html#x13-560002.7" id="QQ2-13-57">Tutorial Sending Data (Java)</a></span>
+<br /><span class="chapterToc" >3 <a
+href="etrice-docch3.html#x14-680003" id="QQ2-14-69">Tutorial Pedestrian Lights (Java)</a></span>
+<br />&#x00A0;<span class="sectionToc" >3.1 <a
+href="etrice-docse10.html#x15-690003.1" id="QQ2-15-70">Scope</a></span>
+<br />&#x00A0;<span class="sectionToc" >3.2 <a
+href="etrice-docse11.html#x16-700003.2" id="QQ2-16-71">Setup the model</a></span>
+<br />&#x00A0;<span class="sectionToc" >3.3 <a
+href="etrice-docse12.html#x17-710003.3" id="QQ2-17-72">Why does it work and why is it safe?</a></span>
+<br /><span class="chapterToc" >4 <a
+href="etrice-docch4.html#x18-720004" id="QQ2-18-73">ROOM Concepts</a></span>
+<br />&#x00A0;<span class="sectionToc" >4.1 <a
+href="etrice-docse13.html#x19-730004.1" id="QQ2-19-74">Actors</a></span>
+<br />&#x00A0;<span class="sectionToc" >4.2 <a
+href="etrice-docse14.html#x20-810004.2" id="QQ2-20-84">Protocols</a></span>
+<br />&#x00A0;<span class="sectionToc" >4.3 <a
+href="etrice-docse15.html#x21-850004.3" id="QQ2-21-88">Ports</a></span>
+<br />&#x00A0;<span class="sectionToc" >4.4 <a
+href="etrice-docse16.html#x22-910004.4" id="QQ2-22-108">DataClass</a></span>
+<br />&#x00A0;<span class="sectionToc" >4.5 <a
+href="etrice-docse17.html#x23-940004.5" id="QQ2-23-111">Layering</a></span>
+<br />&#x00A0;<span class="sectionToc" >4.6 <a
+href="etrice-docse18.html#x24-970004.6" id="QQ2-24-115">Finite State Machines</a></span>
+<br /><span class="chapterToc" >5 <a
+href="etrice-docch5.html#x25-1040005" id="QQ2-25-128">eTrice Features</a></span>
+<br />&#x00A0;<span class="sectionToc" >5.1 <a
+href="etrice-docse19.html#x26-1050005.1" id="QQ2-26-129">Automatic Diagram Layout with KIELER</a></span>
+<br />&#x00A0;<span class="sectionToc" >5.2 <a
+href="etrice-docse20.html#x27-1180005.2" id="QQ2-27-146">eTrice Models and Their Relations</a></span>
+<br /><span class="chapterToc" >6 <a
+href="etrice-docch6.html#x28-1230006" id="QQ2-28-157">eTrice Tool Developer&#8217;s Reference</a></span>
+<br />&#x00A0;<span class="sectionToc" >6.1 <a
+href="etrice-docse21.html#x29-1240006.1" id="QQ2-29-158">Architecture</a></span>
+<br />&#x00A0;<span class="sectionToc" >6.2 <a
+href="etrice-docse22.html#x30-1280006.2" id="QQ2-30-162">Component Overview</a></span>
+</div>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+<!--l. 81--><p class="noindent" ><span class="next">[<a
+href="etrice-docli1.html" id="tailetrice-doc" >next</a>]</span></p>
+</body></html>
+
+
+
+
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docch1.html b/plugins/org.eclipse.etrice.doc/html/etrice-docch1.html
index eaaf577..e30a39d 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docch1.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docch1.html
@@ -1,52 +1,52 @@
-<?xml version="1.0" encoding="iso-8859-1" ?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
-<html xmlns="http://www.w3.org/1999/xhtml"
->
-<head><title>1 Introduction</title>
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
-<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
-<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
-<!-- xhtml,3,next,html -->
-<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-06-21 12:20:00" />
-<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
-</head><body
->
-<!--l. 54--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse1.html" >next</a>] [<a
-href="etrice-docli1.html" >prev</a>] [<a
-href="etrice-docli1.html#tailetrice-docli1.html" >prev-tail</a>] [<a
-href="#tailetrice-docch1.html">tail</a>] [<a
-href="etrice-doc.html#etrice-docch1.html" >up</a>] </p></div>
-<h2 class="chapterHead"><span class="titlemark">Chapter&#x00A0;1</span><br /><a
- id="x3-20001"></a>Introduction</h2>
-<div class="sectionTOCS">
-&#x00A0;<span class="sectionToc" >1.1 <a
-href="etrice-docse1.html#x4-30001.1">eTrice Overview</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >1.1.1 <a
-href="etrice-docse1.html#x4-40001.1.1">What is eTrice?</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >1.1.2 <a
-href="etrice-docse1.html#x4-50001.1.2">Reduction of Complexity</a></span>
-<br />&#x00A0;<span class="sectionToc" >1.2 <a
-href="etrice-docse2.html#x5-60001.2">Introduction to the ROOM Language</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >1.2.1 <a
-href="etrice-docse2.html#x5-70001.2.1">Scope of ROOM</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >1.2.2 <a
-href="etrice-docse2.html#x5-130001.2.2">Basic Concepts</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >1.2.3 <a
-href="etrice-docse2.html#x5-180001.2.3">Execution Models</a></span>
-</div>
-
-
-
-<!--l. 59--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse1.html" >next</a>] [<a
-href="etrice-docli1.html" >prev</a>] [<a
-href="etrice-docli1.html#tailetrice-docli1.html" >prev-tail</a>] [<a
-href="etrice-docch1.html" >front</a>] [<a
-href="etrice-doc.html#etrice-docch1.html" >up</a>] </p></div>
-<!--l. 59--><p class="noindent" ><a
- id="tailetrice-docch1.html"></a> </p>
-</body></html>
+<?xml version="1.0" encoding="iso-8859-1" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
+<html xmlns="http://www.w3.org/1999/xhtml"
+>
+<head><title>1 Introduction</title>
+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
+<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
+<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
+<!-- xhtml,3,next,html -->
+<meta name="src" content="etrice-doc.tex" />
+<meta name="date" content="2013-07-04 15:04:00" />
+<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
+</head><body
+>
+<!--l. 54--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse1.html" >next</a>] [<a
+href="etrice-docli1.html" >prev</a>] [<a
+href="etrice-docli1.html#tailetrice-docli1.html" >prev-tail</a>] [<a
+href="#tailetrice-docch1.html">tail</a>] [<a
+href="etrice-doc.html#etrice-docch1.html" >up</a>] </p></div>
+<h2 class="chapterHead"><span class="titlemark">Chapter&#x00A0;1</span><br /><a
+ id="x3-20001"></a>Introduction</h2>
+<div class="sectionTOCS">
+&#x00A0;<span class="sectionToc" >1.1 <a
+href="etrice-docse1.html#x4-30001.1">eTrice Overview</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >1.1.1 <a
+href="etrice-docse1.html#x4-40001.1.1">What is eTrice?</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >1.1.2 <a
+href="etrice-docse1.html#x4-50001.1.2">Reduction of Complexity</a></span>
+<br />&#x00A0;<span class="sectionToc" >1.2 <a
+href="etrice-docse2.html#x5-60001.2">Introduction to the ROOM Language</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >1.2.1 <a
+href="etrice-docse2.html#x5-70001.2.1">Scope of ROOM</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >1.2.2 <a
+href="etrice-docse2.html#x5-130001.2.2">Basic Concepts</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >1.2.3 <a
+href="etrice-docse2.html#x5-180001.2.3">Execution Models</a></span>
+</div>
+
+
+
+<!--l. 59--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse1.html" >next</a>] [<a
+href="etrice-docli1.html" >prev</a>] [<a
+href="etrice-docli1.html#tailetrice-docli1.html" >prev-tail</a>] [<a
+href="etrice-docch1.html" >front</a>] [<a
+href="etrice-doc.html#etrice-docch1.html" >up</a>] </p></div>
+<!--l. 59--><p class="noindent" ><a
+ id="tailetrice-docch1.html"></a> </p>
+</body></html>
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docch10.html b/plugins/org.eclipse.etrice.doc/html/etrice-docch10.html
deleted file mode 100644
index fefb63a..0000000
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docch10.html
+++ /dev/null
@@ -1,100 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1" ?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
-<html xmlns="http://www.w3.org/1999/xhtml"
->
-<head><title>10 ROOM Concepts</title>
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
-<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
-<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
-<!-- xhtml,3,next,html -->
-<meta name="src" content="etrice-doc.tex" />
-<<<<<<< Upstream, based on branch 'master' of ssh://hrentzreich@git.eclipse.org:29418/etrice/org.eclipse.etrice.git
-<meta name="date" content="2013-06-14 00:07:00" />
-=======
-<meta name="date" content="2013-06-14 08:45:00" />
->>>>>>> 1fbdb27 [doc] fixed problem with colored eTrice in headings
-<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
-</head><body
->
-<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse47.html" >next</a>] [<a
-href="etrice-docse46.html" >prev</a>] [<a
-href="etrice-docse46.html#tailetrice-docse46.html" >prev-tail</a>] [<a
-href="#tailetrice-docch10.html">tail</a>] [<a
-href="etrice-doc.html#etrice-docch10.html" >up</a>] </p></div>
-<h2 class="chapterHead"><span class="titlemark">Chapter&#x00A0;10</span><br /><a
- id="x58-8000010"></a>ROOM Concepts</h2>
-<!--l. 4--><p class="noindent" >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 in the eTrice repository:
-<a
-href="http://git.eclipse.org/c/etrice/org.eclipse.etrice.git/plain/plugins/org.eclipse.etrice.core.room/src/org/eclipse/etrice/core/Room.xtext" class="url" ><span
-class="ec-lmtt-10">http://git.eclipse.org/c/etrice/org.eclipse.etrice.git/plain/plugins/org.eclipse.etrice.core.room/src/org/eclipse/etrice/core/Room.xtext</span></a>
-</p>
-<div class="sectionTOCS">
-&#x00A0;<span class="sectionToc" >10.1 <a
-href="etrice-docse47.html#x59-8100010.1">Actors</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >10.1.1 <a
-href="etrice-docse47.html#x59-8200010.1.1">Description</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >10.1.2 <a
-href="etrice-docse47.html#x59-8300010.1.2">Motivation</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >10.1.3 <a
-href="etrice-docse47.html#x59-8400010.1.3">Notation</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >10.1.4 <a
-href="etrice-docse47.html#x59-8500010.1.4">Details</a></span>
-<br />&#x00A0;<span class="sectionToc" >10.2 <a
-href="etrice-docse48.html#x60-8900010.2">Protocols</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >10.2.1 <a
-href="etrice-docse48.html#x60-9000010.2.1">Description</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >10.2.2 <a
-href="etrice-docse48.html#x60-9100010.2.2">Motivation</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >10.2.3 <a
-href="etrice-docse48.html#x60-9200010.2.3">Notation</a></span>
-<br />&#x00A0;<span class="sectionToc" >10.3 <a
-href="etrice-docse49.html#x61-9300010.3">Ports</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >10.3.1 <a
-href="etrice-docse49.html#x61-9400010.3.1">Description</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >10.3.2 <a
-href="etrice-docse49.html#x61-9500010.3.2">Motivation</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >10.3.3 <a
-href="etrice-docse49.html#x61-9600010.3.3">Notation</a></span>
-<br />&#x00A0;<span class="sectionToc" >10.4 <a
-href="etrice-docse50.html#x62-9900010.4">DataClass</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >10.4.1 <a
-href="etrice-docse50.html#x62-10000010.4.1">Description</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >10.4.2 <a
-href="etrice-docse50.html#x62-10100010.4.2">Notation</a></span>
-<br />&#x00A0;<span class="sectionToc" >10.5 <a
-href="etrice-docse51.html#x63-10200010.5">Layering</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >10.5.1 <a
-href="etrice-docse51.html#x63-10300010.5.1">Description</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >10.5.2 <a
-href="etrice-docse51.html#x63-10400010.5.2">Notation</a></span>
-<br />&#x00A0;<span class="sectionToc" >10.6 <a
-href="etrice-docse52.html#x64-10500010.6">Finite State Machines</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >10.6.1 <a
-href="etrice-docse52.html#x64-10600010.6.1">Description</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >10.6.2 <a
-href="etrice-docse52.html#x64-10700010.6.2">Motivation</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >10.6.3 <a
-href="etrice-docse52.html#x64-10800010.6.3">Notation</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >10.6.4 <a
-href="etrice-docse52.html#x64-11100010.6.4">Examples</a></span>
-</div>
-
-
-
-
-
-
-
-<!--l. 57--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse47.html" >next</a>] [<a
-href="etrice-docse46.html" >prev</a>] [<a
-href="etrice-docse46.html#tailetrice-docse46.html" >prev-tail</a>] [<a
-href="etrice-docch10.html" >front</a>] [<a
-href="etrice-doc.html#etrice-docch10.html" >up</a>] </p></div>
-<!--l. 57--><p class="noindent" ><a
- id="tailetrice-docch10.html"></a> </p>
-</body></html>
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docch2.html b/plugins/org.eclipse.etrice.doc/html/etrice-docch2.html
index 2a14172..8436f71 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docch2.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docch2.html
@@ -1,101 +1,129 @@
-<?xml version="1.0" encoding="iso-8859-1" ?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
-<html xmlns="http://www.w3.org/1999/xhtml"
->
-<head><title>2 Tutorials</title>
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
-<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
-<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
-<!-- xhtml,3,next,html -->
-<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-06-21 12:20:00" />
-<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
-</head><body
->
-<!--l. 59--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse3.html" >next</a>] [<a
-href="etrice-docse2.html" >prev</a>] [<a
-href="etrice-docse2.html#tailetrice-docse2.html" >prev-tail</a>] [<a
-href="#tailetrice-docch2.html">tail</a>] [<a
-href="etrice-doc.html#etrice-docch2.html" >up</a>] </p></div>
-<h2 class="chapterHead"><span class="titlemark">Chapter&#x00A0;2</span><br /><a
- id="x6-250002"></a>Tutorials</h2>
-<div class="sectionTOCS">
-&#x00A0;<span class="sectionToc" >2.1 <a
-href="etrice-docse3.html#x7-260002.1">Working with the tutorials</a></span>
-<br />&#x00A0;<span class="sectionToc" >2.2 <a
-href="etrice-docse4.html#x8-270002.2">Setting up the Workspace for Java Projects</a></span>
-<br />&#x00A0;<span class="sectionToc" >2.3 <a
-href="etrice-docse5.html#x9-280002.3">Tutorial HelloWorld for Java</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.3.1 <a
-href="etrice-docse5.html#x9-290002.3.1">Scope</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.3.2 <a
-href="etrice-docse5.html#x9-300002.3.2">Create a new model from scratch</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.3.3 <a
-href="etrice-docse5.html#x9-310002.3.3">Create a state machine</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.3.4 <a
-href="etrice-docse5.html#x9-320002.3.4">Build and run the model</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.3.5 <a
-href="etrice-docse5.html#x9-330002.3.5">Open the Message Sequence Chart</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.3.6 <a
-href="etrice-docse5.html#x9-340002.3.6">Summary</a></span>
-<br />&#x00A0;<span class="sectionToc" >2.4 <a
-href="etrice-docse6.html#x10-350002.4">Tutorial Blinky (Java)</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.4.1 <a
-href="etrice-docse6.html#x10-360002.4.1">Scope</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.4.2 <a
-href="etrice-docse6.html#x10-370002.4.2">Create a new model from scratch</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.4.3 <a
-href="etrice-docse6.html#x10-380002.4.3">Add two additional actor classes</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.4.4 <a
-href="etrice-docse6.html#x10-390002.4.4">Create a new protocol</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.4.5 <a
-href="etrice-docse6.html#x10-400002.4.5">Import the Timing Service</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.4.6 <a
-href="etrice-docse6.html#x10-410002.4.6">Finish the model structure</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.4.7 <a
-href="etrice-docse6.html#x10-420002.4.7">Implement the Behavior</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.4.8 <a
-href="etrice-docse6.html#x10-430002.4.8">Summary</a></span>
-<br />&#x00A0;<span class="sectionToc" >2.5 <a
-href="etrice-docse7.html#x11-440002.5">Tutorial Sending Data (Java)</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.5.1 <a
-href="etrice-docse7.html#x11-450002.5.1">Scope</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.5.2 <a
-href="etrice-docse7.html#x11-460002.5.2">Create a new model from scratch</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.5.3 <a
-href="etrice-docse7.html#x11-470002.5.3">Add a data class</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.5.4 <a
-href="etrice-docse7.html#x11-480002.5.4">Create a new protocol</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.5.5 <a
-href="etrice-docse7.html#x11-490002.5.5">Create MrPing and MrPong Actors</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.5.6 <a
-href="etrice-docse7.html#x11-500002.5.6">Define Actor Structure and Behavior</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.5.7 <a
-href="etrice-docse7.html#x11-510002.5.7">Define MrPongs behavior</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.5.8 <a
-href="etrice-docse7.html#x11-520002.5.8">Define MrPing behavior</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.5.9 <a
-href="etrice-docse7.html#x11-530002.5.9">Define the top level</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.5.10 <a
-href="etrice-docse7.html#x11-540002.5.10">Generate and run the model</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.5.11 <a
-href="etrice-docse7.html#x11-550002.5.11">Summary</a></span>
-</div>
-
-
-
-
-
-
-<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse3.html" >next</a>] [<a
-href="etrice-docse2.html" >prev</a>] [<a
-href="etrice-docse2.html#tailetrice-docse2.html" >prev-tail</a>] [<a
-href="etrice-docch2.html" >front</a>] [<a
-href="etrice-doc.html#etrice-docch2.html" >up</a>] </p></div>
-<!--l. 1--><p class="noindent" ><a
- id="tailetrice-docch2.html"></a> </p>
-</body></html>
+<?xml version="1.0" encoding="iso-8859-1" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
+<html xmlns="http://www.w3.org/1999/xhtml"
+>
+<head><title>2 Tutorials</title>
+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
+<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
+<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
+<!-- xhtml,3,next,html -->
+<meta name="src" content="etrice-doc.tex" />
+<meta name="date" content="2013-07-04 15:04:00" />
+<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
+</head><body
+>
+<!--l. 59--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse3.html" >next</a>] [<a
+href="etrice-docse2.html" >prev</a>] [<a
+href="etrice-docse2.html#tailetrice-docse2.html" >prev-tail</a>] [<a
+href="#tailetrice-docch2.html">tail</a>] [<a
+href="etrice-doc.html#etrice-docch2.html" >up</a>] </p></div>
+<h2 class="chapterHead"><span class="titlemark">Chapter&#x00A0;2</span><br /><a
+ id="x6-250002"></a>Tutorials</h2>
+<div class="sectionTOCS">
+&#x00A0;<span class="sectionToc" >2.1 <a
+href="etrice-docse3.html#x7-260002.1">Working with the tutorials</a></span>
+<br />&#x00A0;<span class="sectionToc" >2.2 <a
+href="etrice-docse4.html#x8-270002.2">Setting up the Workspace for Java Projects</a></span>
+<br />&#x00A0;<span class="sectionToc" >2.3 <a
+href="etrice-docse5.html#x9-280002.3">Setting up the Workspace for C Projects</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.3.1 <a
+href="etrice-docse5.html#x9-290002.3.1">Testing the environment</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.3.2 <a
+href="etrice-docse5.html#x9-300002.3.2">Building the C runtime system</a></span>
+<br />&#x00A0;<span class="sectionToc" >2.4 <a
+href="etrice-docse6.html#x10-310002.4">HelloWorld for Java</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.4.1 <a
+href="etrice-docse6.html#x10-320002.4.1">Scope</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.4.2 <a
+href="etrice-docse6.html#x10-330002.4.2">Create a new model from scratch</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.4.3 <a
+href="etrice-docse6.html#x10-340002.4.3">Create a state machine</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.4.4 <a
+href="etrice-docse6.html#x10-350002.4.4">Build and run the model</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.4.5 <a
+href="etrice-docse6.html#x10-360002.4.5">Open the Message Sequence Chart</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.4.6 <a
+href="etrice-docse6.html#x10-370002.4.6">Summary</a></span>
+<br />&#x00A0;<span class="sectionToc" >2.5 <a
+href="etrice-docse7.html#x11-380002.5">HelloWorld for C</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.5.1 <a
+href="etrice-docse7.html#x11-390002.5.1">Scope</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.5.2 <a
+href="etrice-docse7.html#x11-400002.5.2">Create a new model from scratch</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.5.3 <a
+href="etrice-docse7.html#x11-410002.5.3">Create the HelloWorld model</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.5.4 <a
+href="etrice-docse7.html#x11-420002.5.4">Create a launch configuration to start the C code generator</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.5.5 <a
+href="etrice-docse7.html#x11-430002.5.5">Generate the code</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.5.6 <a
+href="etrice-docse7.html#x11-440002.5.6">Setup the include path</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.5.7 <a
+href="etrice-docse7.html#x11-450002.5.7">Build and run the model</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.5.8 <a
+href="etrice-docse7.html#x11-460002.5.8">Summary</a></span>
+<br />&#x00A0;<span class="sectionToc" >2.6 <a
+href="etrice-docse8.html#x12-470002.6">Tutorial Blinky (Java)</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.6.1 <a
+href="etrice-docse8.html#x12-480002.6.1">Scope</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.6.2 <a
+href="etrice-docse8.html#x12-490002.6.2">Create a new model from scratch</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.6.3 <a
+href="etrice-docse8.html#x12-500002.6.3">Add two additional actor classes</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.6.4 <a
+href="etrice-docse8.html#x12-510002.6.4">Create a new protocol</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.6.5 <a
+href="etrice-docse8.html#x12-520002.6.5">Import the Timing Service</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.6.6 <a
+href="etrice-docse8.html#x12-530002.6.6">Finish the model structure</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.6.7 <a
+href="etrice-docse8.html#x12-540002.6.7">Implement the Behavior</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.6.8 <a
+href="etrice-docse8.html#x12-550002.6.8">Summary</a></span>
+<br />&#x00A0;<span class="sectionToc" >2.7 <a
+href="etrice-docse9.html#x13-560002.7">Tutorial Sending Data (Java)</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.7.1 <a
+href="etrice-docse9.html#x13-570002.7.1">Scope</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.7.2 <a
+href="etrice-docse9.html#x13-580002.7.2">Create a new model from scratch</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.7.3 <a
+href="etrice-docse9.html#x13-590002.7.3">Add a data class</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.7.4 <a
+href="etrice-docse9.html#x13-600002.7.4">Create a new protocol</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.7.5 <a
+href="etrice-docse9.html#x13-610002.7.5">Create MrPing and MrPong Actors</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.7.6 <a
+href="etrice-docse9.html#x13-620002.7.6">Define Actor Structure and Behavior</a></span>
+
+
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.7.7 <a
+href="etrice-docse9.html#x13-630002.7.7">Define MrPongs behavior</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.7.8 <a
+href="etrice-docse9.html#x13-640002.7.8">Define MrPing behavior</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.7.9 <a
+href="etrice-docse9.html#x13-650002.7.9">Define the top level</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.7.10 <a
+href="etrice-docse9.html#x13-660002.7.10">Generate and run the model</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.7.11 <a
+href="etrice-docse9.html#x13-670002.7.11">Summary</a></span>
+</div>
+
+
+
+
+
+
+
+
+<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse3.html" >next</a>] [<a
+href="etrice-docse2.html" >prev</a>] [<a
+href="etrice-docse2.html#tailetrice-docse2.html" >prev-tail</a>] [<a
+href="etrice-docch2.html" >front</a>] [<a
+href="etrice-doc.html#etrice-docch2.html" >up</a>] </p></div>
+<!--l. 1--><p class="noindent" ><a
+ id="tailetrice-docch2.html"></a> </p>
+</body></html>
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docch3.html b/plugins/org.eclipse.etrice.doc/html/etrice-docch3.html
index f172b34..7c53858 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docch3.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docch3.html
@@ -1,45 +1,45 @@
-<?xml version="1.0" encoding="iso-8859-1" ?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
-<html xmlns="http://www.w3.org/1999/xhtml"
->
-<head><title>3 Tutorial Pedestrian Lights (Java)</title>
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
-<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
-<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
-<!-- xhtml,3,next,html -->
-<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-06-21 12:20:00" />
-<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
-</head><body
->
-<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse8.html" >next</a>] [<a
-href="etrice-docse7.html" >prev</a>] [<a
-href="etrice-docse7.html#tailetrice-docse7.html" >prev-tail</a>] [<a
-href="#tailetrice-docch3.html">tail</a>] [<a
-href="etrice-doc.html#etrice-docch3.html" >up</a>] </p></div>
-<h2 class="chapterHead"><span class="titlemark">Chapter&#x00A0;3</span><br /><a
- id="x12-560003"></a>Tutorial Pedestrian Lights (Java)</h2>
-<div class="sectionTOCS">
-&#x00A0;<span class="sectionToc" >3.1 <a
-href="etrice-docse8.html#x13-570003.1">Scope</a></span>
-<br />&#x00A0;<span class="sectionToc" >3.2 <a
-href="etrice-docse9.html#x14-580003.2">Setup the model</a></span>
-<br />&#x00A0;<span class="sectionToc" >3.3 <a
-href="etrice-docse10.html#x15-590003.3">Why does it work and why is it safe?</a></span>
-</div>
-
-
-
-
-<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse8.html" >next</a>] [<a
-href="etrice-docse7.html" >prev</a>] [<a
-href="etrice-docse7.html#tailetrice-docse7.html" >prev-tail</a>] [<a
-href="etrice-docch3.html" >front</a>] [<a
-href="etrice-doc.html#etrice-docch3.html" >up</a>] </p></div>
-<!--l. 1--><p class="noindent" ><a
- id="tailetrice-docch3.html"></a> </p>
-</body></html>
+<?xml version="1.0" encoding="iso-8859-1" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
+<html xmlns="http://www.w3.org/1999/xhtml"
+>
+<head><title>3 Tutorial Pedestrian Lights (Java)</title>
+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
+<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
+<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
+<!-- xhtml,3,next,html -->
+<meta name="src" content="etrice-doc.tex" />
+<meta name="date" content="2013-07-04 15:04:00" />
+<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
+</head><body
+>
+<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse10.html" >next</a>] [<a
+href="etrice-docse9.html" >prev</a>] [<a
+href="etrice-docse9.html#tailetrice-docse9.html" >prev-tail</a>] [<a
+href="#tailetrice-docch3.html">tail</a>] [<a
+href="etrice-doc.html#etrice-docch3.html" >up</a>] </p></div>
+<h2 class="chapterHead"><span class="titlemark">Chapter&#x00A0;3</span><br /><a
+ id="x14-680003"></a>Tutorial Pedestrian Lights (Java)</h2>
+<div class="sectionTOCS">
+&#x00A0;<span class="sectionToc" >3.1 <a
+href="etrice-docse10.html#x15-690003.1">Scope</a></span>
+<br />&#x00A0;<span class="sectionToc" >3.2 <a
+href="etrice-docse11.html#x16-700003.2">Setup the model</a></span>
+<br />&#x00A0;<span class="sectionToc" >3.3 <a
+href="etrice-docse12.html#x17-710003.3">Why does it work and why is it safe?</a></span>
+</div>
+
+
+
+
+<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse10.html" >next</a>] [<a
+href="etrice-docse9.html" >prev</a>] [<a
+href="etrice-docse9.html#tailetrice-docse9.html" >prev-tail</a>] [<a
+href="etrice-docch3.html" >front</a>] [<a
+href="etrice-doc.html#etrice-docch3.html" >up</a>] </p></div>
+<!--l. 1--><p class="noindent" ><a
+ id="tailetrice-docch3.html"></a> </p>
+</body></html>
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docch4.html b/plugins/org.eclipse.etrice.doc/html/etrice-docch4.html
index d4cd626..8dfd0eb 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docch4.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docch4.html
@@ -1,65 +1,96 @@
-<?xml version="1.0" encoding="iso-8859-1" ?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
-<html xmlns="http://www.w3.org/1999/xhtml"
->
-<head><title>4 Setting up the Workspace for C Projects</title>
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
-<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
-<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
-<!-- xhtml,3,next,html -->
-<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-06-21 12:20:00" />
-<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
-</head><body
->
-<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse11.html" >next</a>] [<a
-href="etrice-docse10.html" >prev</a>] [<a
-href="etrice-docse10.html#tailetrice-docse10.html" >prev-tail</a>] [<a
-href="#tailetrice-docch4.html">tail</a>] [<a
-href="etrice-doc.html#etrice-docch4.html" >up</a>] </p></div>
-<h2 class="chapterHead"><span class="titlemark">Chapter&#x00A0;4</span><br /><a
- id="x16-600004"></a>Setting up the Workspace for C Projects</h2>
-<!--l. 3--><p class="noindent" >Before you can start with C, some preconditions must be fulfilled:
- </p><dl class="description"><dt class="description">
- </dt><dd
-class="description">A C compiler must be installed on your machine (all tests and tutorials are based on MinGW)
- </dd><dt class="description">
- </dt><dd
-class="description">The CDT-Eclipse plugin must be installed as the C development environment.</dd></dl>
-<!--l. 10--><p class="noindent" >Once the CDT is installed, the C runtime and model library must be imported. (<span
-class="ec-lmsso-10">File-&#x003E;New-&#x003E;Project-&#x003E;</span><span
-class="ec-lmsso-10">e</span><span
-class="ec-lmsso-10">Trice</span>
-select <span
-class="ec-lmsso-10">e</span><span
-class="ec-lmsso-10">Trice</span> <span
-class="ec-lmsso-10">C runtime </span>/ <span
-class="ec-lmsso-10">e</span><span
-class="ec-lmsso-10">Trice</span> <span
-class="ec-lmsso-10">C modellib</span>)
-</p><!--l. 13--><p class="noindent" >The resulting workspace should look like this:
-</p><!--l. 15--><p class="noindent" ><img
-src="images/032-SetupWorkspaceC01.png" alt="PIC"
- />
-</p>
-<div class="sectionTOCS">
-&#x00A0;<span class="sectionToc" >4.1 <a
-href="etrice-docse11.html#x17-610004.1">Testing the environment</a></span>
-<br />&#x00A0;<span class="sectionToc" >4.2 <a
-href="etrice-docse12.html#x18-620004.2">Building the C runtime system</a></span>
-</div>
-
-
-
-<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse11.html" >next</a>] [<a
-href="etrice-docse10.html" >prev</a>] [<a
-href="etrice-docse10.html#tailetrice-docse10.html" >prev-tail</a>] [<a
-href="etrice-docch4.html" >front</a>] [<a
-href="etrice-doc.html#etrice-docch4.html" >up</a>] </p></div>
-<!--l. 1--><p class="noindent" ><a
- id="tailetrice-docch4.html"></a> </p>
-</body></html>
+<?xml version="1.0" encoding="iso-8859-1" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
+<html xmlns="http://www.w3.org/1999/xhtml"
+>
+<head><title>4 ROOM Concepts</title>
+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
+<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
+<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
+<!-- xhtml,3,next,html -->
+<meta name="src" content="etrice-doc.tex" />
+<meta name="date" content="2013-07-04 15:04:00" />
+<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
+</head><body
+>
+<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse13.html" >next</a>] [<a
+href="etrice-docse12.html" >prev</a>] [<a
+href="etrice-docse12.html#tailetrice-docse12.html" >prev-tail</a>] [<a
+href="#tailetrice-docch4.html">tail</a>] [<a
+href="etrice-doc.html#etrice-docch4.html" >up</a>] </p></div>
+<h2 class="chapterHead"><span class="titlemark">Chapter&#x00A0;4</span><br /><a
+ id="x18-720004"></a>ROOM Concepts</h2>
+<!--l. 4--><p class="noindent" >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 in the eTrice repository:
+<a
+href="http://git.eclipse.org/c/etrice/org.eclipse.etrice.git/plain/plugins/org.eclipse.etrice.core.room/src/org/eclipse/etrice/core/Room.xtext" class="url" ><span
+class="ec-lmtt-10">http://git.eclipse.org/c/etrice/org.eclipse.etrice.git/plain/plugins/org.eclipse.etrice.core.room/src/org/eclipse/etrice/core/Room.xtext</span></a>
+</p>
+<div class="sectionTOCS">
+&#x00A0;<span class="sectionToc" >4.1 <a
+href="etrice-docse13.html#x19-730004.1">Actors</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >4.1.1 <a
+href="etrice-docse13.html#x19-740004.1.1">Description</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >4.1.2 <a
+href="etrice-docse13.html#x19-750004.1.2">Motivation</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >4.1.3 <a
+href="etrice-docse13.html#x19-760004.1.3">Notation</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >4.1.4 <a
+href="etrice-docse13.html#x19-770004.1.4">Details</a></span>
+<br />&#x00A0;<span class="sectionToc" >4.2 <a
+href="etrice-docse14.html#x20-810004.2">Protocols</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >4.2.1 <a
+href="etrice-docse14.html#x20-820004.2.1">Description</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >4.2.2 <a
+href="etrice-docse14.html#x20-830004.2.2">Motivation</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >4.2.3 <a
+href="etrice-docse14.html#x20-840004.2.3">Notation</a></span>
+<br />&#x00A0;<span class="sectionToc" >4.3 <a
+href="etrice-docse15.html#x21-850004.3">Ports</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >4.3.1 <a
+href="etrice-docse15.html#x21-860004.3.1">Description</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >4.3.2 <a
+href="etrice-docse15.html#x21-870004.3.2">Motivation</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >4.3.3 <a
+href="etrice-docse15.html#x21-880004.3.3">Notation</a></span>
+<br />&#x00A0;<span class="sectionToc" >4.4 <a
+href="etrice-docse16.html#x22-910004.4">DataClass</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >4.4.1 <a
+href="etrice-docse16.html#x22-920004.4.1">Description</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >4.4.2 <a
+href="etrice-docse16.html#x22-930004.4.2">Notation</a></span>
+<br />&#x00A0;<span class="sectionToc" >4.5 <a
+href="etrice-docse17.html#x23-940004.5">Layering</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >4.5.1 <a
+href="etrice-docse17.html#x23-950004.5.1">Description</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >4.5.2 <a
+href="etrice-docse17.html#x23-960004.5.2">Notation</a></span>
+<br />&#x00A0;<span class="sectionToc" >4.6 <a
+href="etrice-docse18.html#x24-970004.6">Finite State Machines</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >4.6.1 <a
+href="etrice-docse18.html#x24-980004.6.1">Description</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >4.6.2 <a
+href="etrice-docse18.html#x24-990004.6.2">Motivation</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >4.6.3 <a
+href="etrice-docse18.html#x24-1000004.6.3">Notation</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >4.6.4 <a
+href="etrice-docse18.html#x24-1030004.6.4">Examples</a></span>
+</div>
+
+
+
+
+
+
+
+<!--l. 71--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse13.html" >next</a>] [<a
+href="etrice-docse12.html" >prev</a>] [<a
+href="etrice-docse12.html#tailetrice-docse12.html" >prev-tail</a>] [<a
+href="etrice-docch4.html" >front</a>] [<a
+href="etrice-doc.html#etrice-docch4.html" >up</a>] </p></div>
+<!--l. 71--><p class="noindent" ><a
+ id="tailetrice-docch4.html"></a> </p>
+</body></html>
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docch5.html b/plugins/org.eclipse.etrice.doc/html/etrice-docch5.html
index 41a274a..22083da 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docch5.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docch5.html
@@ -1,60 +1,62 @@
-<?xml version="1.0" encoding="iso-8859-1" ?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
-<html xmlns="http://www.w3.org/1999/xhtml"
->
-<head><title>5 Tutorial HelloWorld for C</title>
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
-<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
-<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
-<!-- xhtml,3,next,html -->
-<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-06-21 12:20:00" />
-<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
-</head><body
->
-<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse13.html" >next</a>] [<a
-href="etrice-docse12.html" >prev</a>] [<a
-href="etrice-docse12.html#tailetrice-docse12.html" >prev-tail</a>] [<a
-href="#tailetrice-docch5.html">tail</a>] [<a
-href="etrice-doc.html#etrice-docch5.html" >up</a>] </p></div>
-<h2 class="chapterHead"><span class="titlemark">Chapter&#x00A0;5</span><br /><a
- id="x19-630005"></a>Tutorial HelloWorld for C</h2>
-<div class="sectionTOCS">
-&#x00A0;<span class="sectionToc" >5.1 <a
-href="etrice-docse13.html#x20-640005.1">Scope</a></span>
-<br />&#x00A0;<span class="sectionToc" >5.2 <a
-href="etrice-docse14.html#x21-650005.2">Create a new model from scratch</a></span>
-<br />&#x00A0;<span class="sectionToc" >5.3 <a
-href="etrice-docse15.html#x22-660005.3">Create the HelloWorld model</a></span>
-<br />&#x00A0;<span class="sectionToc" >5.4 <a
-href="etrice-docse16.html#x23-670005.4">Create a launch configuration to start the C code generator</a></span>
-<br />&#x00A0;<span class="sectionToc" >5.5 <a
-href="etrice-docse17.html#x24-680005.5">Generate the code</a></span>
-<br />&#x00A0;<span class="sectionToc" >5.6 <a
-href="etrice-docse18.html#x25-690005.6">Setup the include path</a></span>
-<br />&#x00A0;<span class="sectionToc" >5.7 <a
-href="etrice-docse19.html#x26-700005.7">Build and run the model</a></span>
-<br />&#x00A0;<span class="sectionToc" >5.8 <a
-href="etrice-docse20.html#x27-710005.8">Summary</a></span>
-</div>
-
-
-
-
-
-
-
-
-
-<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse13.html" >next</a>] [<a
-href="etrice-docse12.html" >prev</a>] [<a
-href="etrice-docse12.html#tailetrice-docse12.html" >prev-tail</a>] [<a
-href="etrice-docch5.html" >front</a>] [<a
-href="etrice-doc.html#etrice-docch5.html" >up</a>] </p></div>
-<!--l. 1--><p class="noindent" ><a
- id="tailetrice-docch5.html"></a> </p>
-</body></html>
+<?xml version="1.0" encoding="iso-8859-1" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
+<html xmlns="http://www.w3.org/1999/xhtml"
+>
+<head><title>5 eTrice Features</title>
+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
+<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
+<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
+<!-- xhtml,3,next,html -->
+<meta name="src" content="etrice-doc.tex" />
+<meta name="date" content="2013-07-04 15:04:00" />
+<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
+</head><body
+>
+<!--l. 71--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse19.html" >next</a>] [<a
+href="etrice-docse18.html" >prev</a>] [<a
+href="etrice-docse18.html#tailetrice-docse18.html" >prev-tail</a>] [<a
+href="#tailetrice-docch5.html">tail</a>] [<a
+href="etrice-doc.html#etrice-docch5.html" >up</a>] </p></div>
+<h2 class="chapterHead"><span class="titlemark">Chapter&#x00A0;5</span><br /><a
+ id="x25-1040005"></a>eTrice Features</h2>
+<div class="sectionTOCS">
+&#x00A0;<span class="sectionToc" >5.1 <a
+href="etrice-docse19.html#x26-1050005.1">Automatic Diagram Layout with KIELER</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >5.1.1 <a
+href="etrice-docse19.html#x26-1060005.1.1">Overview</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >5.1.2 <a
+href="etrice-docse19.html#x26-1070005.1.2">Performing Automatic Layout</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >5.1.3 <a
+href="etrice-docse19.html#x26-1080005.1.3">Layout Options</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >5.1.4 <a
+href="etrice-docse19.html#x26-1090005.1.4">Configuring Layout Options</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >5.1.5 <a
+href="etrice-docse19.html#x26-1140005.1.5">Special Layout Options</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >5.1.6 <a
+href="etrice-docse19.html#x26-1170005.1.6">Further References</a></span>
+<br />&#x00A0;<span class="sectionToc" >5.2 <a
+href="etrice-docse20.html#x27-1180005.2">eTrice Models and Their Relations</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >5.2.1 <a
+href="etrice-docse20.html#x27-1190005.2.1">The ROOM Model</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >5.2.2 <a
+href="etrice-docse20.html#x27-1200005.2.2">The Config Model</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >5.2.3 <a
+href="etrice-docse20.html#x27-1210005.2.3">The Physical Model</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >5.2.4 <a
+href="etrice-docse20.html#x27-1220005.2.4">The Mapping Model</a></span>
+</div>
+
+
+
+<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse19.html" >next</a>] [<a
+href="etrice-docse18.html" >prev</a>] [<a
+href="etrice-docse18.html#tailetrice-docse18.html" >prev-tail</a>] [<a
+href="etrice-docch5.html" >front</a>] [<a
+href="etrice-doc.html#etrice-docch5.html" >up</a>] </p></div>
+<!--l. 1--><p class="noindent" ><a
+ id="tailetrice-docch5.html"></a> </p>
+</body></html>
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docch6.html b/plugins/org.eclipse.etrice.doc/html/etrice-docch6.html
index cdf9c99..1945216 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docch6.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docch6.html
@@ -1,54 +1,56 @@
-<?xml version="1.0" encoding="iso-8859-1" ?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
-<html xmlns="http://www.w3.org/1999/xhtml"
->
-<head><title>6 Tutorial Remove C-Comment ( C )</title>
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
-<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
-<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
-<!-- xhtml,3,next,html -->
-<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-06-21 12:20:00" />
-<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
-</head><body
->
-<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse21.html" >next</a>] [<a
-href="etrice-docse20.html" >prev</a>] [<a
-href="etrice-docse20.html#tailetrice-docse20.html" >prev-tail</a>] [<a
-href="#tailetrice-docch6.html">tail</a>] [<a
-href="etrice-doc.html#etrice-docch6.html" >up</a>] </p></div>
-<h2 class="chapterHead"><span class="titlemark">Chapter&#x00A0;6</span><br /><a
- id="x28-720006"></a>Tutorial Remove C-Comment ( C )</h2>
-<div class="sectionTOCS">
-&#x00A0;<span class="sectionToc" >6.1 <a
-href="etrice-docse21.html#x29-730006.1">Scope</a></span>
-<br />&#x00A0;<span class="sectionToc" >6.2 <a
-href="etrice-docse22.html#x30-740006.2">Create a new model from scratch</a></span>
-<br />&#x00A0;<span class="sectionToc" >6.3 <a
-href="etrice-docse23.html#x31-750006.3">Create your own data type</a></span>
-<br />&#x00A0;<span class="sectionToc" >6.4 <a
-href="etrice-docse24.html#x32-760006.4">Create the model</a></span>
-<br />&#x00A0;<span class="sectionToc" >6.5 <a
-href="etrice-docse25.html#x33-770006.5">Generate, build and run the model</a></span>
-<br />&#x00A0;<span class="sectionToc" >6.6 <a
-href="etrice-docse26.html#x34-780006.6">Summary</a></span>
-</div>
-
-
-
-
-
-
-
-<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse21.html" >next</a>] [<a
-href="etrice-docse20.html" >prev</a>] [<a
-href="etrice-docse20.html#tailetrice-docse20.html" >prev-tail</a>] [<a
-href="etrice-docch6.html" >front</a>] [<a
-href="etrice-doc.html#etrice-docch6.html" >up</a>] </p></div>
-<!--l. 1--><p class="noindent" ><a
- id="tailetrice-docch6.html"></a> </p>
-</body></html>
+<?xml version="1.0" encoding="iso-8859-1" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
+<html xmlns="http://www.w3.org/1999/xhtml"
+>
+<head><title>6 eTrice Tool Developer&#8217;s Reference</title>
+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
+<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
+<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
+<!-- xhtml,3,next,html -->
+<meta name="src" content="etrice-doc.tex" />
+<meta name="date" content="2013-07-04 15:04:00" />
+<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
+</head><body
+>
+<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse21.html" >next</a>] [<a
+href="etrice-docse20.html" >prev</a>] [<a
+href="etrice-docse20.html#tailetrice-docse20.html" >prev-tail</a>] [<a
+href="#tailetrice-docch6.html">tail</a>] [<a
+href="etrice-doc.html#etrice-docch6.html" >up</a>] </p></div>
+<h2 class="chapterHead"><span class="titlemark">Chapter&#x00A0;6</span><br /><a
+ id="x28-1230006"></a>eTrice Tool Developer&#8217;s Reference</h2>
+<div class="sectionTOCS">
+&#x00A0;<span class="sectionToc" >6.1 <a
+href="etrice-docse21.html#x29-1240006.1">Architecture</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >6.1.1 <a
+href="etrice-docse21.html#x29-1250006.1.1">Editor and Generator Components</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >6.1.2 <a
+href="etrice-docse21.html#x29-1260006.1.2">Runtimes</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >6.1.3 <a
+href="etrice-docse21.html#x29-1270006.1.3">Unit Tests</a></span>
+<br />&#x00A0;<span class="sectionToc" >6.2 <a
+href="etrice-docse22.html#x30-1280006.2">Component Overview</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >6.2.1 <a
+href="etrice-docse22.html#x30-1290006.2.1">Room Language Overview</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >6.2.2 <a
+href="etrice-docse22.html#x30-1350006.2.2">Config Language Overview</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >6.2.3 <a
+href="etrice-docse22.html#x30-1390006.2.3">Aggregation Layer Overview</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >6.2.4 <a
+href="etrice-docse22.html#x30-1430006.2.4">Generator Overview</a></span>
+</div>
+
+
+
+<!--l. 81--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse21.html" >next</a>] [<a
+href="etrice-docse20.html" >prev</a>] [<a
+href="etrice-docse20.html#tailetrice-docse20.html" >prev-tail</a>] [<a
+href="etrice-docch6.html" >front</a>] [<a
+href="etrice-doc.html#etrice-docch6.html" >up</a>] </p></div>
+<!--l. 81--><p class="noindent" ><a
+ id="tailetrice-docch6.html"></a> </p>
+</body></html>
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docch7.html b/plugins/org.eclipse.etrice.doc/html/etrice-docch7.html
index 3908dc8..54f6258 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docch7.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docch7.html
@@ -1,96 +1,96 @@
-<?xml version="1.0" encoding="iso-8859-1" ?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
-<html xmlns="http://www.w3.org/1999/xhtml"
->
-<head><title>7 ROOM Concepts</title>
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
-<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
-<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
-<!-- xhtml,3,next,html -->
-<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-06-21 12:20:00" />
-<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
-</head><body
->
-<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse27.html" >next</a>] [<a
-href="etrice-docse26.html" >prev</a>] [<a
-href="etrice-docse26.html#tailetrice-docse26.html" >prev-tail</a>] [<a
-href="#tailetrice-docch7.html">tail</a>] [<a
-href="etrice-doc.html#etrice-docch7.html" >up</a>] </p></div>
-<h2 class="chapterHead"><span class="titlemark">Chapter&#x00A0;7</span><br /><a
- id="x35-790007"></a>ROOM Concepts</h2>
-<!--l. 4--><p class="noindent" >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 in the eTrice repository:
-<a
-href="http://git.eclipse.org/c/etrice/org.eclipse.etrice.git/plain/plugins/org.eclipse.etrice.core.room/src/org/eclipse/etrice/core/Room.xtext" class="url" ><span
-class="ec-lmtt-10">http://git.eclipse.org/c/etrice/org.eclipse.etrice.git/plain/plugins/org.eclipse.etrice.core.room/src/org/eclipse/etrice/core/Room.xtext</span></a>
-</p>
-<div class="sectionTOCS">
-&#x00A0;<span class="sectionToc" >7.1 <a
-href="etrice-docse27.html#x36-800007.1">Actors</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >7.1.1 <a
-href="etrice-docse27.html#x36-810007.1.1">Description</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >7.1.2 <a
-href="etrice-docse27.html#x36-820007.1.2">Motivation</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >7.1.3 <a
-href="etrice-docse27.html#x36-830007.1.3">Notation</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >7.1.4 <a
-href="etrice-docse27.html#x36-840007.1.4">Details</a></span>
-<br />&#x00A0;<span class="sectionToc" >7.2 <a
-href="etrice-docse28.html#x37-880007.2">Protocols</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >7.2.1 <a
-href="etrice-docse28.html#x37-890007.2.1">Description</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >7.2.2 <a
-href="etrice-docse28.html#x37-900007.2.2">Motivation</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >7.2.3 <a
-href="etrice-docse28.html#x37-910007.2.3">Notation</a></span>
-<br />&#x00A0;<span class="sectionToc" >7.3 <a
-href="etrice-docse29.html#x38-920007.3">Ports</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >7.3.1 <a
-href="etrice-docse29.html#x38-930007.3.1">Description</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >7.3.2 <a
-href="etrice-docse29.html#x38-940007.3.2">Motivation</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >7.3.3 <a
-href="etrice-docse29.html#x38-950007.3.3">Notation</a></span>
-<br />&#x00A0;<span class="sectionToc" >7.4 <a
-href="etrice-docse30.html#x39-980007.4">DataClass</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >7.4.1 <a
-href="etrice-docse30.html#x39-990007.4.1">Description</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >7.4.2 <a
-href="etrice-docse30.html#x39-1000007.4.2">Notation</a></span>
-<br />&#x00A0;<span class="sectionToc" >7.5 <a
-href="etrice-docse31.html#x40-1010007.5">Layering</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >7.5.1 <a
-href="etrice-docse31.html#x40-1020007.5.1">Description</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >7.5.2 <a
-href="etrice-docse31.html#x40-1030007.5.2">Notation</a></span>
-<br />&#x00A0;<span class="sectionToc" >7.6 <a
-href="etrice-docse32.html#x41-1040007.6">Finite State Machines</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >7.6.1 <a
-href="etrice-docse32.html#x41-1050007.6.1">Description</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >7.6.2 <a
-href="etrice-docse32.html#x41-1060007.6.2">Motivation</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >7.6.3 <a
-href="etrice-docse32.html#x41-1070007.6.3">Notation</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >7.6.4 <a
-href="etrice-docse32.html#x41-1100007.6.4">Examples</a></span>
-</div>
-
-
-
-
-
-
-
-<!--l. 72--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse27.html" >next</a>] [<a
-href="etrice-docse26.html" >prev</a>] [<a
-href="etrice-docse26.html#tailetrice-docse26.html" >prev-tail</a>] [<a
-href="etrice-docch7.html" >front</a>] [<a
-href="etrice-doc.html#etrice-docch7.html" >up</a>] </p></div>
-<!--l. 72--><p class="noindent" ><a
- id="tailetrice-docch7.html"></a> </p>
-</body></html>
+<?xml version="1.0" encoding="iso-8859-1" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
+<html xmlns="http://www.w3.org/1999/xhtml"
+>
+<head><title>7 ROOM Concepts</title>
+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
+<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
+<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
+<!-- xhtml,3,next,html -->
+<meta name="src" content="etrice-doc.tex" />
+<meta name="date" content="2013-07-04 14:25:00" />
+<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
+</head><body
+>
+<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse27.html" >next</a>] [<a
+href="etrice-docse26.html" >prev</a>] [<a
+href="etrice-docse26.html#tailetrice-docse26.html" >prev-tail</a>] [<a
+href="#tailetrice-docch7.html">tail</a>] [<a
+href="etrice-doc.html#etrice-docch7.html" >up</a>] </p></div>
+<h2 class="chapterHead"><span class="titlemark">Chapter&#x00A0;7</span><br /><a
+ id="x35-790007"></a>ROOM Concepts</h2>
+<!--l. 4--><p class="noindent" >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 in the eTrice repository:
+<a
+href="http://git.eclipse.org/c/etrice/org.eclipse.etrice.git/plain/plugins/org.eclipse.etrice.core.room/src/org/eclipse/etrice/core/Room.xtext" class="url" ><span
+class="ec-lmtt-10">http://git.eclipse.org/c/etrice/org.eclipse.etrice.git/plain/plugins/org.eclipse.etrice.core.room/src/org/eclipse/etrice/core/Room.xtext</span></a>
+</p>
+<div class="sectionTOCS">
+&#x00A0;<span class="sectionToc" >7.1 <a
+href="etrice-docse27.html#x36-800007.1">Actors</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >7.1.1 <a
+href="etrice-docse27.html#x36-810007.1.1">Description</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >7.1.2 <a
+href="etrice-docse27.html#x36-820007.1.2">Motivation</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >7.1.3 <a
+href="etrice-docse27.html#x36-830007.1.3">Notation</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >7.1.4 <a
+href="etrice-docse27.html#x36-840007.1.4">Details</a></span>
+<br />&#x00A0;<span class="sectionToc" >7.2 <a
+href="etrice-docse28.html#x37-880007.2">Protocols</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >7.2.1 <a
+href="etrice-docse28.html#x37-890007.2.1">Description</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >7.2.2 <a
+href="etrice-docse28.html#x37-900007.2.2">Motivation</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >7.2.3 <a
+href="etrice-docse28.html#x37-910007.2.3">Notation</a></span>
+<br />&#x00A0;<span class="sectionToc" >7.3 <a
+href="etrice-docse29.html#x38-920007.3">Ports</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >7.3.1 <a
+href="etrice-docse29.html#x38-930007.3.1">Description</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >7.3.2 <a
+href="etrice-docse29.html#x38-940007.3.2">Motivation</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >7.3.3 <a
+href="etrice-docse29.html#x38-950007.3.3">Notation</a></span>
+<br />&#x00A0;<span class="sectionToc" >7.4 <a
+href="etrice-docse30.html#x39-980007.4">DataClass</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >7.4.1 <a
+href="etrice-docse30.html#x39-990007.4.1">Description</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >7.4.2 <a
+href="etrice-docse30.html#x39-1000007.4.2">Notation</a></span>
+<br />&#x00A0;<span class="sectionToc" >7.5 <a
+href="etrice-docse31.html#x40-1010007.5">Layering</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >7.5.1 <a
+href="etrice-docse31.html#x40-1020007.5.1">Description</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >7.5.2 <a
+href="etrice-docse31.html#x40-1030007.5.2">Notation</a></span>
+<br />&#x00A0;<span class="sectionToc" >7.6 <a
+href="etrice-docse32.html#x41-1040007.6">Finite State Machines</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >7.6.1 <a
+href="etrice-docse32.html#x41-1050007.6.1">Description</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >7.6.2 <a
+href="etrice-docse32.html#x41-1060007.6.2">Motivation</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >7.6.3 <a
+href="etrice-docse32.html#x41-1070007.6.3">Notation</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >7.6.4 <a
+href="etrice-docse32.html#x41-1100007.6.4">Examples</a></span>
+</div>
+
+
+
+
+
+
+
+<!--l. 72--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse27.html" >next</a>] [<a
+href="etrice-docse26.html" >prev</a>] [<a
+href="etrice-docse26.html#tailetrice-docse26.html" >prev-tail</a>] [<a
+href="etrice-docch7.html" >front</a>] [<a
+href="etrice-doc.html#etrice-docch7.html" >up</a>] </p></div>
+<!--l. 72--><p class="noindent" ><a
+ id="tailetrice-docch7.html"></a> </p>
+</body></html>
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docch8.html b/plugins/org.eclipse.etrice.doc/html/etrice-docch8.html
index 019d07e..223b839 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docch8.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docch8.html
@@ -1,62 +1,62 @@
-<?xml version="1.0" encoding="iso-8859-1" ?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
-<html xmlns="http://www.w3.org/1999/xhtml"
->
-<head><title>8 eTrice Features</title>
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
-<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
-<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
-<!-- xhtml,3,next,html -->
-<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-06-21 12:20:00" />
-<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
-</head><body
->
-<!--l. 72--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse33.html" >next</a>] [<a
-href="etrice-docse32.html" >prev</a>] [<a
-href="etrice-docse32.html#tailetrice-docse32.html" >prev-tail</a>] [<a
-href="#tailetrice-docch8.html">tail</a>] [<a
-href="etrice-doc.html#etrice-docch8.html" >up</a>] </p></div>
-<h2 class="chapterHead"><span class="titlemark">Chapter&#x00A0;8</span><br /><a
- id="x42-1110008"></a>eTrice Features</h2>
-<div class="sectionTOCS">
-&#x00A0;<span class="sectionToc" >8.1 <a
-href="etrice-docse33.html#x43-1120008.1">Automatic Diagram Layout with KIELER</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >8.1.1 <a
-href="etrice-docse33.html#x43-1130008.1.1">Overview</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >8.1.2 <a
-href="etrice-docse33.html#x43-1140008.1.2">Performing Automatic Layout</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >8.1.3 <a
-href="etrice-docse33.html#x43-1150008.1.3">Layout Options</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >8.1.4 <a
-href="etrice-docse33.html#x43-1160008.1.4">Configuring Layout Options</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >8.1.5 <a
-href="etrice-docse33.html#x43-1210008.1.5">Special Layout Options</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >8.1.6 <a
-href="etrice-docse33.html#x43-1240008.1.6">Further References</a></span>
-<br />&#x00A0;<span class="sectionToc" >8.2 <a
-href="etrice-docse34.html#x44-1250008.2">eTrice Models and Their Relations</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >8.2.1 <a
-href="etrice-docse34.html#x44-1260008.2.1">The ROOM Model</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >8.2.2 <a
-href="etrice-docse34.html#x44-1270008.2.2">The Config Model</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >8.2.3 <a
-href="etrice-docse34.html#x44-1280008.2.3">The Physical Model</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >8.2.4 <a
-href="etrice-docse34.html#x44-1290008.2.4">The Mapping Model</a></span>
-</div>
-
-
-
-<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse33.html" >next</a>] [<a
-href="etrice-docse32.html" >prev</a>] [<a
-href="etrice-docse32.html#tailetrice-docse32.html" >prev-tail</a>] [<a
-href="etrice-docch8.html" >front</a>] [<a
-href="etrice-doc.html#etrice-docch8.html" >up</a>] </p></div>
-<!--l. 1--><p class="noindent" ><a
- id="tailetrice-docch8.html"></a> </p>
-</body></html>
+<?xml version="1.0" encoding="iso-8859-1" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
+<html xmlns="http://www.w3.org/1999/xhtml"
+>
+<head><title>8 eTrice Features</title>
+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
+<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
+<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
+<!-- xhtml,3,next,html -->
+<meta name="src" content="etrice-doc.tex" />
+<meta name="date" content="2013-07-04 14:25:00" />
+<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
+</head><body
+>
+<!--l. 72--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse33.html" >next</a>] [<a
+href="etrice-docse32.html" >prev</a>] [<a
+href="etrice-docse32.html#tailetrice-docse32.html" >prev-tail</a>] [<a
+href="#tailetrice-docch8.html">tail</a>] [<a
+href="etrice-doc.html#etrice-docch8.html" >up</a>] </p></div>
+<h2 class="chapterHead"><span class="titlemark">Chapter&#x00A0;8</span><br /><a
+ id="x42-1110008"></a>eTrice Features</h2>
+<div class="sectionTOCS">
+&#x00A0;<span class="sectionToc" >8.1 <a
+href="etrice-docse33.html#x43-1120008.1">Automatic Diagram Layout with KIELER</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >8.1.1 <a
+href="etrice-docse33.html#x43-1130008.1.1">Overview</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >8.1.2 <a
+href="etrice-docse33.html#x43-1140008.1.2">Performing Automatic Layout</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >8.1.3 <a
+href="etrice-docse33.html#x43-1150008.1.3">Layout Options</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >8.1.4 <a
+href="etrice-docse33.html#x43-1160008.1.4">Configuring Layout Options</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >8.1.5 <a
+href="etrice-docse33.html#x43-1210008.1.5">Special Layout Options</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >8.1.6 <a
+href="etrice-docse33.html#x43-1240008.1.6">Further References</a></span>
+<br />&#x00A0;<span class="sectionToc" >8.2 <a
+href="etrice-docse34.html#x44-1250008.2">eTrice Models and Their Relations</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >8.2.1 <a
+href="etrice-docse34.html#x44-1260008.2.1">The ROOM Model</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >8.2.2 <a
+href="etrice-docse34.html#x44-1270008.2.2">The Config Model</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >8.2.3 <a
+href="etrice-docse34.html#x44-1280008.2.3">The Physical Model</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >8.2.4 <a
+href="etrice-docse34.html#x44-1290008.2.4">The Mapping Model</a></span>
+</div>
+
+
+
+<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse33.html" >next</a>] [<a
+href="etrice-docse32.html" >prev</a>] [<a
+href="etrice-docse32.html#tailetrice-docse32.html" >prev-tail</a>] [<a
+href="etrice-docch8.html" >front</a>] [<a
+href="etrice-doc.html#etrice-docch8.html" >up</a>] </p></div>
+<!--l. 1--><p class="noindent" ><a
+ id="tailetrice-docch8.html"></a> </p>
+</body></html>
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docch9.html b/plugins/org.eclipse.etrice.doc/html/etrice-docch9.html
index 158b01b..9c939f4 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docch9.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docch9.html
@@ -1,56 +1,56 @@
-<?xml version="1.0" encoding="iso-8859-1" ?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
-<html xmlns="http://www.w3.org/1999/xhtml"
->
-<head><title>9 eTrice Tool Developer&#8217;s Reference</title>
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
-<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
-<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
-<!-- xhtml,3,next,html -->
-<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-06-21 12:20:00" />
-<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
-</head><body
->
-<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse35.html" >next</a>] [<a
-href="etrice-docse34.html" >prev</a>] [<a
-href="etrice-docse34.html#tailetrice-docse34.html" >prev-tail</a>] [<a
-href="#tailetrice-docch9.html">tail</a>] [<a
-href="etrice-doc.html#etrice-docch9.html" >up</a>] </p></div>
-<h2 class="chapterHead"><span class="titlemark">Chapter&#x00A0;9</span><br /><a
- id="x45-1300009"></a>eTrice Tool Developer&#8217;s Reference</h2>
-<div class="sectionTOCS">
-&#x00A0;<span class="sectionToc" >9.1 <a
-href="etrice-docse35.html#x46-1310009.1">Architecture</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >9.1.1 <a
-href="etrice-docse35.html#x46-1320009.1.1">Editor and Generator Components</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >9.1.2 <a
-href="etrice-docse35.html#x46-1330009.1.2">Runtimes</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >9.1.3 <a
-href="etrice-docse35.html#x46-1340009.1.3">Unit Tests</a></span>
-<br />&#x00A0;<span class="sectionToc" >9.2 <a
-href="etrice-docse36.html#x47-1350009.2">Component Overview</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >9.2.1 <a
-href="etrice-docse36.html#x47-1360009.2.1">Room Language Overview</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >9.2.2 <a
-href="etrice-docse36.html#x47-1420009.2.2">Config Language Overview</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >9.2.3 <a
-href="etrice-docse36.html#x47-1460009.2.3">Aggregation Layer Overview</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >9.2.4 <a
-href="etrice-docse36.html#x47-1500009.2.4">Generator Overview</a></span>
-</div>
-
-
-
-<!--l. 82--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse35.html" >next</a>] [<a
-href="etrice-docse34.html" >prev</a>] [<a
-href="etrice-docse34.html#tailetrice-docse34.html" >prev-tail</a>] [<a
-href="etrice-docch9.html" >front</a>] [<a
-href="etrice-doc.html#etrice-docch9.html" >up</a>] </p></div>
-<!--l. 82--><p class="noindent" ><a
- id="tailetrice-docch9.html"></a> </p>
-</body></html>
+<?xml version="1.0" encoding="iso-8859-1" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
+<html xmlns="http://www.w3.org/1999/xhtml"
+>
+<head><title>9 eTrice Tool Developer&#8217;s Reference</title>
+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
+<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
+<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
+<!-- xhtml,3,next,html -->
+<meta name="src" content="etrice-doc.tex" />
+<meta name="date" content="2013-07-04 14:25:00" />
+<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
+</head><body
+>
+<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse35.html" >next</a>] [<a
+href="etrice-docse34.html" >prev</a>] [<a
+href="etrice-docse34.html#tailetrice-docse34.html" >prev-tail</a>] [<a
+href="#tailetrice-docch9.html">tail</a>] [<a
+href="etrice-doc.html#etrice-docch9.html" >up</a>] </p></div>
+<h2 class="chapterHead"><span class="titlemark">Chapter&#x00A0;9</span><br /><a
+ id="x45-1300009"></a>eTrice Tool Developer&#8217;s Reference</h2>
+<div class="sectionTOCS">
+&#x00A0;<span class="sectionToc" >9.1 <a
+href="etrice-docse35.html#x46-1310009.1">Architecture</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >9.1.1 <a
+href="etrice-docse35.html#x46-1320009.1.1">Editor and Generator Components</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >9.1.2 <a
+href="etrice-docse35.html#x46-1330009.1.2">Runtimes</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >9.1.3 <a
+href="etrice-docse35.html#x46-1340009.1.3">Unit Tests</a></span>
+<br />&#x00A0;<span class="sectionToc" >9.2 <a
+href="etrice-docse36.html#x47-1350009.2">Component Overview</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >9.2.1 <a
+href="etrice-docse36.html#x47-1360009.2.1">Room Language Overview</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >9.2.2 <a
+href="etrice-docse36.html#x47-1420009.2.2">Config Language Overview</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >9.2.3 <a
+href="etrice-docse36.html#x47-1460009.2.3">Aggregation Layer Overview</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >9.2.4 <a
+href="etrice-docse36.html#x47-1500009.2.4">Generator Overview</a></span>
+</div>
+
+
+
+<!--l. 82--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse35.html" >next</a>] [<a
+href="etrice-docse34.html" >prev</a>] [<a
+href="etrice-docse34.html#tailetrice-docse34.html" >prev-tail</a>] [<a
+href="etrice-docch9.html" >front</a>] [<a
+href="etrice-doc.html#etrice-docch9.html" >up</a>] </p></div>
+<!--l. 82--><p class="noindent" ><a
+ id="tailetrice-docch9.html"></a> </p>
+</body></html>
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docli1.html b/plugins/org.eclipse.etrice.doc/html/etrice-docli1.html
index 4375199..c514f55 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docli1.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docli1.html
@@ -1,263 +1,249 @@
-<?xml version="1.0" encoding="iso-8859-1" ?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
-<html xmlns="http://www.w3.org/1999/xhtml"
->
-<head><title>Contents</title>
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
-<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
-<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
-<!-- xhtml,3,next,html -->
-<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-06-21 12:20:00" />
-<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
-</head><body
->
-<!--l. 52--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docch1.html" >next</a>] [<a
-href="etrice-doc.html" >prev</a>] [<a
-href="etrice-doc.html#tailetrice-doc" >prev-tail</a>] [<a
-href="#tailetrice-docli1.html">tail</a>] [<a
-href="etrice-doc.html#etrice-docli1.html" >up</a>] </p></div>
-<h2 class="likechapterHead"><a
- id="x2-1000"></a>Contents</h2>
-<div class="tableofcontents">
-<span class="chapterToc" >1 <a
-href="etrice-docch1.html#x3-20001">Introduction</a></span>
-<br />&#x00A0;<span class="sectionToc" >1.1 <a
-href="etrice-docse1.html#x4-30001.1">eTrice Overview</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >1.1.1 <a
-href="etrice-docse1.html#x4-40001.1.1" id="QQ2-4-4">What is eTrice?</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >1.1.2 <a
-href="etrice-docse1.html#x4-50001.1.2" id="QQ2-4-5">Reduction of Complexity</a></span>
-<br />&#x00A0;<span class="sectionToc" >1.2 <a
-href="etrice-docse2.html#x5-60001.2">Introduction to the ROOM Language</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >1.2.1 <a
-href="etrice-docse2.html#x5-70001.2.1" id="QQ2-5-7">Scope of ROOM</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >1.2.2 <a
-href="etrice-docse2.html#x5-130001.2.2" id="QQ2-5-13">Basic Concepts</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >1.2.3 <a
-href="etrice-docse2.html#x5-180001.2.3" id="QQ2-5-19">Execution Models</a></span>
-<br /><span class="chapterToc" >2 <a
-href="etrice-docch2.html#x6-250002">Tutorials</a></span>
-<br />&#x00A0;<span class="sectionToc" >2.1 <a
-href="etrice-docse3.html#x7-260002.1">Working with the tutorials</a></span>
-<br />&#x00A0;<span class="sectionToc" >2.2 <a
-href="etrice-docse4.html#x8-270002.2">Setting up the Workspace for Java Projects</a></span>
-<br />&#x00A0;<span class="sectionToc" >2.3 <a
-href="etrice-docse5.html#x9-280002.3">Tutorial HelloWorld for Java</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.3.1 <a
-href="etrice-docse5.html#x9-290002.3.1" id="QQ2-9-30">Scope</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.3.2 <a
-href="etrice-docse5.html#x9-300002.3.2" id="QQ2-9-31">Create a new model from scratch</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.3.3 <a
-href="etrice-docse5.html#x9-310002.3.3" id="QQ2-9-32">Create a state machine</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.3.4 <a
-href="etrice-docse5.html#x9-320002.3.4" id="QQ2-9-33">Build and run the model</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.3.5 <a
-href="etrice-docse5.html#x9-330002.3.5" id="QQ2-9-34">Open the Message Sequence Chart</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.3.6 <a
-href="etrice-docse5.html#x9-340002.3.6" id="QQ2-9-35">Summary</a></span>
-<br />&#x00A0;<span class="sectionToc" >2.4 <a
-href="etrice-docse6.html#x10-350002.4">Tutorial Blinky (Java)</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.4.1 <a
-href="etrice-docse6.html#x10-360002.4.1" id="QQ2-10-37">Scope</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.4.2 <a
-href="etrice-docse6.html#x10-370002.4.2" id="QQ2-10-38">Create a new model from scratch</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.4.3 <a
-href="etrice-docse6.html#x10-380002.4.3" id="QQ2-10-39">Add two additional actor classes</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.4.4 <a
-href="etrice-docse6.html#x10-390002.4.4" id="QQ2-10-40">Create a new protocol</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.4.5 <a
-href="etrice-docse6.html#x10-400002.4.5" id="QQ2-10-41">Import the Timing Service</a></span>
-
-
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.4.6 <a
-href="etrice-docse6.html#x10-410002.4.6" id="QQ2-10-42">Finish the model structure</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.4.7 <a
-href="etrice-docse6.html#x10-420002.4.7" id="QQ2-10-43">Implement the Behavior</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.4.8 <a
-href="etrice-docse6.html#x10-430002.4.8" id="QQ2-10-44">Summary</a></span>
-<br />&#x00A0;<span class="sectionToc" >2.5 <a
-href="etrice-docse7.html#x11-440002.5">Tutorial Sending Data (Java)</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.5.1 <a
-href="etrice-docse7.html#x11-450002.5.1" id="QQ2-11-46">Scope</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.5.2 <a
-href="etrice-docse7.html#x11-460002.5.2" id="QQ2-11-47">Create a new model from scratch</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.5.3 <a
-href="etrice-docse7.html#x11-470002.5.3" id="QQ2-11-48">Add a data class</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.5.4 <a
-href="etrice-docse7.html#x11-480002.5.4" id="QQ2-11-49">Create a new protocol</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.5.5 <a
-href="etrice-docse7.html#x11-490002.5.5" id="QQ2-11-50">Create MrPing and MrPong Actors</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.5.6 <a
-href="etrice-docse7.html#x11-500002.5.6" id="QQ2-11-51">Define Actor Structure and Behavior</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.5.7 <a
-href="etrice-docse7.html#x11-510002.5.7" id="QQ2-11-52">Define MrPongs behavior</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.5.8 <a
-href="etrice-docse7.html#x11-520002.5.8" id="QQ2-11-53">Define MrPing behavior</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.5.9 <a
-href="etrice-docse7.html#x11-530002.5.9" id="QQ2-11-54">Define the top level</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.5.10 <a
-href="etrice-docse7.html#x11-540002.5.10" id="QQ2-11-55">Generate and run the model</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.5.11 <a
-href="etrice-docse7.html#x11-550002.5.11" id="QQ2-11-56">Summary</a></span>
-<br /><span class="chapterToc" >3 <a
-href="etrice-docch3.html#x12-560003">Tutorial Pedestrian Lights (Java)</a></span>
-<br />&#x00A0;<span class="sectionToc" >3.1 <a
-href="etrice-docse8.html#x13-570003.1">Scope</a></span>
-<br />&#x00A0;<span class="sectionToc" >3.2 <a
-href="etrice-docse9.html#x14-580003.2">Setup the model</a></span>
-<br />&#x00A0;<span class="sectionToc" >3.3 <a
-href="etrice-docse10.html#x15-590003.3">Why does it work and why is it safe?</a></span>
-<br /><span class="chapterToc" >4 <a
-href="etrice-docch4.html#x16-600004">Setting up the Workspace for C Projects</a></span>
-<br />&#x00A0;<span class="sectionToc" >4.1 <a
-href="etrice-docse11.html#x17-610004.1">Testing the environment</a></span>
-<br />&#x00A0;<span class="sectionToc" >4.2 <a
-href="etrice-docse12.html#x18-620004.2">Building the C runtime system</a></span>
-<br /><span class="chapterToc" >5 <a
-href="etrice-docch5.html#x19-630005">Tutorial HelloWorld for C</a></span>
-<br />&#x00A0;<span class="sectionToc" >5.1 <a
-href="etrice-docse13.html#x20-640005.1">Scope</a></span>
-<br />&#x00A0;<span class="sectionToc" >5.2 <a
-href="etrice-docse14.html#x21-650005.2">Create a new model from scratch</a></span>
-<br />&#x00A0;<span class="sectionToc" >5.3 <a
-href="etrice-docse15.html#x22-660005.3">Create the HelloWorld model</a></span>
-<br />&#x00A0;<span class="sectionToc" >5.4 <a
-href="etrice-docse16.html#x23-670005.4">Create a launch configuration to start the C code generator</a></span>
-<br />&#x00A0;<span class="sectionToc" >5.5 <a
-href="etrice-docse17.html#x24-680005.5">Generate the code</a></span>
-<br />&#x00A0;<span class="sectionToc" >5.6 <a
-href="etrice-docse18.html#x25-690005.6">Setup the include path</a></span>
-<br />&#x00A0;<span class="sectionToc" >5.7 <a
-href="etrice-docse19.html#x26-700005.7">Build and run the model</a></span>
-<br />&#x00A0;<span class="sectionToc" >5.8 <a
-href="etrice-docse20.html#x27-710005.8">Summary</a></span>
-<br /><span class="chapterToc" >6 <a
-href="etrice-docch6.html#x28-720006">Tutorial Remove C-Comment ( C )</a></span>
-<br />&#x00A0;<span class="sectionToc" >6.1 <a
-href="etrice-docse21.html#x29-730006.1">Scope</a></span>
-<br />&#x00A0;<span class="sectionToc" >6.2 <a
-href="etrice-docse22.html#x30-740006.2">Create a new model from scratch</a></span>
-<br />&#x00A0;<span class="sectionToc" >6.3 <a
-href="etrice-docse23.html#x31-750006.3">Create your own data type</a></span>
-<br />&#x00A0;<span class="sectionToc" >6.4 <a
-href="etrice-docse24.html#x32-760006.4">Create the model</a></span>
-<br />&#x00A0;<span class="sectionToc" >6.5 <a
-href="etrice-docse25.html#x33-770006.5">Generate, build and run the model</a></span>
-<br />&#x00A0;<span class="sectionToc" >6.6 <a
-href="etrice-docse26.html#x34-780006.6">Summary</a></span>
-<br /><span class="chapterToc" >7 <a
-href="etrice-docch7.html#x35-790007">ROOM Concepts</a></span>
-<br />&#x00A0;<span class="sectionToc" >7.1 <a
-href="etrice-docse27.html#x36-800007.1">Actors</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >7.1.1 <a
-href="etrice-docse27.html#x36-810007.1.1" id="QQ2-36-82">Description</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >7.1.2 <a
-href="etrice-docse27.html#x36-820007.1.2" id="QQ2-36-83">Motivation</a></span>
-
-
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >7.1.3 <a
-href="etrice-docse27.html#x36-830007.1.3" id="QQ2-36-84">Notation</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >7.1.4 <a
-href="etrice-docse27.html#x36-840007.1.4" id="QQ2-36-86">Details</a></span>
-<br />&#x00A0;<span class="sectionToc" >7.2 <a
-href="etrice-docse28.html#x37-880007.2">Protocols</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >7.2.1 <a
-href="etrice-docse28.html#x37-890007.2.1" id="QQ2-37-92">Description</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >7.2.2 <a
-href="etrice-docse28.html#x37-900007.2.2" id="QQ2-37-93">Motivation</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >7.2.3 <a
-href="etrice-docse28.html#x37-910007.2.3" id="QQ2-37-94">Notation</a></span>
-<br />&#x00A0;<span class="sectionToc" >7.3 <a
-href="etrice-docse29.html#x38-920007.3">Ports</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >7.3.1 <a
-href="etrice-docse29.html#x38-930007.3.1" id="QQ2-38-96">Description</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >7.3.2 <a
-href="etrice-docse29.html#x38-940007.3.2" id="QQ2-38-97">Motivation</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >7.3.3 <a
-href="etrice-docse29.html#x38-950007.3.3" id="QQ2-38-98">Notation</a></span>
-<br />&#x00A0;<span class="sectionToc" >7.4 <a
-href="etrice-docse30.html#x39-980007.4">DataClass</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >7.4.1 <a
-href="etrice-docse30.html#x39-990007.4.1" id="QQ2-39-116">Description</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >7.4.2 <a
-href="etrice-docse30.html#x39-1000007.4.2" id="QQ2-39-117">Notation</a></span>
-<br />&#x00A0;<span class="sectionToc" >7.5 <a
-href="etrice-docse31.html#x40-1010007.5">Layering</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >7.5.1 <a
-href="etrice-docse31.html#x40-1020007.5.1" id="QQ2-40-119">Description</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >7.5.2 <a
-href="etrice-docse31.html#x40-1030007.5.2" id="QQ2-40-120">Notation</a></span>
-<br />&#x00A0;<span class="sectionToc" >7.6 <a
-href="etrice-docse32.html#x41-1040007.6">Finite State Machines</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >7.6.1 <a
-href="etrice-docse32.html#x41-1050007.6.1" id="QQ2-41-123">Description</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >7.6.2 <a
-href="etrice-docse32.html#x41-1060007.6.2" id="QQ2-41-124">Motivation</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >7.6.3 <a
-href="etrice-docse32.html#x41-1070007.6.3" id="QQ2-41-125">Notation</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >7.6.4 <a
-href="etrice-docse32.html#x41-1100007.6.4" id="QQ2-41-130">Examples</a></span>
-<br /><span class="chapterToc" >8 <a
-href="etrice-docch8.html#x42-1110008">eTrice Features</a></span>
-<br />&#x00A0;<span class="sectionToc" >8.1 <a
-href="etrice-docse33.html#x43-1120008.1">Automatic Diagram Layout with KIELER</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >8.1.1 <a
-href="etrice-docse33.html#x43-1130008.1.1" id="QQ2-43-137">Overview</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >8.1.2 <a
-href="etrice-docse33.html#x43-1140008.1.2" id="QQ2-43-138">Performing Automatic Layout</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >8.1.3 <a
-href="etrice-docse33.html#x43-1150008.1.3" id="QQ2-43-139">Layout Options</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >8.1.4 <a
-href="etrice-docse33.html#x43-1160008.1.4" id="QQ2-43-141">Configuring Layout Options</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >8.1.5 <a
-href="etrice-docse33.html#x43-1210008.1.5" id="QQ2-43-149">Special Layout Options</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >8.1.6 <a
-href="etrice-docse33.html#x43-1240008.1.6" id="QQ2-43-152">Further References</a></span>
-<br />&#x00A0;<span class="sectionToc" >8.2 <a
-href="etrice-docse34.html#x44-1250008.2">eTrice Models and Their Relations</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >8.2.1 <a
-href="etrice-docse34.html#x44-1260008.2.1" id="QQ2-44-154">The ROOM Model</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >8.2.2 <a
-href="etrice-docse34.html#x44-1270008.2.2" id="QQ2-44-157">The Config Model</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >8.2.3 <a
-href="etrice-docse34.html#x44-1280008.2.3" id="QQ2-44-159">The Physical Model</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >8.2.4 <a
-href="etrice-docse34.html#x44-1290008.2.4" id="QQ2-44-162">The Mapping Model</a></span>
-<br /><span class="chapterToc" >9 <a
-href="etrice-docch9.html#x45-1300009">eTrice Tool Developer&#8217;s Reference</a></span>
-<br />&#x00A0;<span class="sectionToc" >9.1 <a
-href="etrice-docse35.html#x46-1310009.1">Architecture</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >9.1.1 <a
-href="etrice-docse35.html#x46-1320009.1.1" id="QQ2-46-166">Editor and Generator Components</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >9.1.2 <a
-href="etrice-docse35.html#x46-1330009.1.2" id="QQ2-46-167">Runtimes</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >9.1.3 <a
-href="etrice-docse35.html#x46-1340009.1.3" id="QQ2-46-168">Unit Tests</a></span>
-<br />&#x00A0;<span class="sectionToc" >9.2 <a
-href="etrice-docse36.html#x47-1350009.2">Component Overview</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >9.2.1 <a
-href="etrice-docse36.html#x47-1360009.2.1" id="QQ2-47-170">Room Language Overview</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >9.2.2 <a
-href="etrice-docse36.html#x47-1420009.2.2" id="QQ2-47-176">Config Language Overview</a></span>
-
-
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >9.2.3 <a
-href="etrice-docse36.html#x47-1460009.2.3" id="QQ2-47-180">Aggregation Layer Overview</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >9.2.4 <a
-href="etrice-docse36.html#x47-1500009.2.4" id="QQ2-47-184">Generator Overview</a></span>
-</div>
-
-
-<!--l. 54--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docch1.html" >next</a>] [<a
-href="etrice-doc.html" >prev</a>] [<a
-href="etrice-doc.html#tailetrice-doc" >prev-tail</a>] [<a
-href="etrice-docli1.html" >front</a>] [<a
-href="etrice-doc.html#etrice-docli1.html" >up</a>] </p></div>
-<!--l. 54--><p class="noindent" ><a
- id="tailetrice-docli1.html"></a> </p>
-</body></html>
+<?xml version="1.0" encoding="iso-8859-1" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
+<html xmlns="http://www.w3.org/1999/xhtml"
+>
+<head><title>Contents</title>
+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
+<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
+<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
+<!-- xhtml,3,next,html -->
+<meta name="src" content="etrice-doc.tex" />
+<meta name="date" content="2013-07-04 15:04:00" />
+<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
+</head><body
+>
+<!--l. 52--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docch1.html" >next</a>] [<a
+href="etrice-doc.html" >prev</a>] [<a
+href="etrice-doc.html#tailetrice-doc" >prev-tail</a>] [<a
+href="#tailetrice-docli1.html">tail</a>] [<a
+href="etrice-doc.html#etrice-docli1.html" >up</a>] </p></div>
+<h2 class="likechapterHead"><a
+ id="x2-1000"></a>Contents</h2>
+
+
+<div class="tableofcontents">
+<span class="chapterToc" >1 <a
+href="etrice-docch1.html#x3-20001">Introduction</a></span>
+<br />&#x00A0;<span class="sectionToc" >1.1 <a
+href="etrice-docse1.html#x4-30001.1">eTrice Overview</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >1.1.1 <a
+href="etrice-docse1.html#x4-40001.1.1" id="QQ2-4-4">What is eTrice?</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >1.1.2 <a
+href="etrice-docse1.html#x4-50001.1.2" id="QQ2-4-5">Reduction of Complexity</a></span>
+<br />&#x00A0;<span class="sectionToc" >1.2 <a
+href="etrice-docse2.html#x5-60001.2">Introduction to the ROOM Language</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >1.2.1 <a
+href="etrice-docse2.html#x5-70001.2.1" id="QQ2-5-7">Scope of ROOM</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >1.2.2 <a
+href="etrice-docse2.html#x5-130001.2.2" id="QQ2-5-13">Basic Concepts</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >1.2.3 <a
+href="etrice-docse2.html#x5-180001.2.3" id="QQ2-5-19">Execution Models</a></span>
+<br /><span class="chapterToc" >2 <a
+href="etrice-docch2.html#x6-250002">Tutorials</a></span>
+<br />&#x00A0;<span class="sectionToc" >2.1 <a
+href="etrice-docse3.html#x7-260002.1">Working with the tutorials</a></span>
+<br />&#x00A0;<span class="sectionToc" >2.2 <a
+href="etrice-docse4.html#x8-270002.2">Setting up the Workspace for Java Projects</a></span>
+<br />&#x00A0;<span class="sectionToc" >2.3 <a
+href="etrice-docse5.html#x9-280002.3">Setting up the Workspace for C Projects</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.3.1 <a
+href="etrice-docse5.html#x9-290002.3.1" id="QQ2-9-30">Testing the environment</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.3.2 <a
+href="etrice-docse5.html#x9-300002.3.2" id="QQ2-9-31">Building the C runtime system</a></span>
+<br />&#x00A0;<span class="sectionToc" >2.4 <a
+href="etrice-docse6.html#x10-310002.4">HelloWorld for Java</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.4.1 <a
+href="etrice-docse6.html#x10-320002.4.1" id="QQ2-10-33">Scope</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.4.2 <a
+href="etrice-docse6.html#x10-330002.4.2" id="QQ2-10-34">Create a new model from scratch</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.4.3 <a
+href="etrice-docse6.html#x10-340002.4.3" id="QQ2-10-35">Create a state machine</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.4.4 <a
+href="etrice-docse6.html#x10-350002.4.4" id="QQ2-10-36">Build and run the model</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.4.5 <a
+href="etrice-docse6.html#x10-360002.4.5" id="QQ2-10-37">Open the Message Sequence Chart</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.4.6 <a
+href="etrice-docse6.html#x10-370002.4.6" id="QQ2-10-38">Summary</a></span>
+<br />&#x00A0;<span class="sectionToc" >2.5 <a
+href="etrice-docse7.html#x11-380002.5">HelloWorld for C</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.5.1 <a
+href="etrice-docse7.html#x11-390002.5.1" id="QQ2-11-40">Scope</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.5.2 <a
+href="etrice-docse7.html#x11-400002.5.2" id="QQ2-11-41">Create a new model from scratch</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.5.3 <a
+href="etrice-docse7.html#x11-410002.5.3" id="QQ2-11-42">Create the HelloWorld model</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.5.4 <a
+href="etrice-docse7.html#x11-420002.5.4" id="QQ2-11-43">Create a launch configuration to start the C code generator</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.5.5 <a
+href="etrice-docse7.html#x11-430002.5.5" id="QQ2-11-44">Generate the code</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.5.6 <a
+href="etrice-docse7.html#x11-440002.5.6" id="QQ2-11-45">Setup the include path</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.5.7 <a
+href="etrice-docse7.html#x11-450002.5.7" id="QQ2-11-46">Build and run the model</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.5.8 <a
+href="etrice-docse7.html#x11-460002.5.8" id="QQ2-11-47">Summary</a></span>
+<br />&#x00A0;<span class="sectionToc" >2.6 <a
+href="etrice-docse8.html#x12-470002.6">Tutorial Blinky (Java)</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.6.1 <a
+href="etrice-docse8.html#x12-480002.6.1" id="QQ2-12-49">Scope</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.6.2 <a
+href="etrice-docse8.html#x12-490002.6.2" id="QQ2-12-50">Create a new model from scratch</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.6.3 <a
+href="etrice-docse8.html#x12-500002.6.3" id="QQ2-12-51">Add two additional actor classes</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.6.4 <a
+href="etrice-docse8.html#x12-510002.6.4" id="QQ2-12-52">Create a new protocol</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.6.5 <a
+href="etrice-docse8.html#x12-520002.6.5" id="QQ2-12-53">Import the Timing Service</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.6.6 <a
+href="etrice-docse8.html#x12-530002.6.6" id="QQ2-12-54">Finish the model structure</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.6.7 <a
+href="etrice-docse8.html#x12-540002.6.7" id="QQ2-12-55">Implement the Behavior</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.6.8 <a
+href="etrice-docse8.html#x12-550002.6.8" id="QQ2-12-56">Summary</a></span>
+<br />&#x00A0;<span class="sectionToc" >2.7 <a
+href="etrice-docse9.html#x13-560002.7">Tutorial Sending Data (Java)</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.7.1 <a
+href="etrice-docse9.html#x13-570002.7.1" id="QQ2-13-58">Scope</a></span>
+
+
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.7.2 <a
+href="etrice-docse9.html#x13-580002.7.2" id="QQ2-13-59">Create a new model from scratch</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.7.3 <a
+href="etrice-docse9.html#x13-590002.7.3" id="QQ2-13-60">Add a data class</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.7.4 <a
+href="etrice-docse9.html#x13-600002.7.4" id="QQ2-13-61">Create a new protocol</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.7.5 <a
+href="etrice-docse9.html#x13-610002.7.5" id="QQ2-13-62">Create MrPing and MrPong Actors</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.7.6 <a
+href="etrice-docse9.html#x13-620002.7.6" id="QQ2-13-63">Define Actor Structure and Behavior</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.7.7 <a
+href="etrice-docse9.html#x13-630002.7.7" id="QQ2-13-64">Define MrPongs behavior</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.7.8 <a
+href="etrice-docse9.html#x13-640002.7.8" id="QQ2-13-65">Define MrPing behavior</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.7.9 <a
+href="etrice-docse9.html#x13-650002.7.9" id="QQ2-13-66">Define the top level</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.7.10 <a
+href="etrice-docse9.html#x13-660002.7.10" id="QQ2-13-67">Generate and run the model</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >2.7.11 <a
+href="etrice-docse9.html#x13-670002.7.11" id="QQ2-13-68">Summary</a></span>
+<br /><span class="chapterToc" >3 <a
+href="etrice-docch3.html#x14-680003">Tutorial Pedestrian Lights (Java)</a></span>
+<br />&#x00A0;<span class="sectionToc" >3.1 <a
+href="etrice-docse10.html#x15-690003.1">Scope</a></span>
+<br />&#x00A0;<span class="sectionToc" >3.2 <a
+href="etrice-docse11.html#x16-700003.2">Setup the model</a></span>
+<br />&#x00A0;<span class="sectionToc" >3.3 <a
+href="etrice-docse12.html#x17-710003.3">Why does it work and why is it safe?</a></span>
+<br /><span class="chapterToc" >4 <a
+href="etrice-docch4.html#x18-720004">ROOM Concepts</a></span>
+<br />&#x00A0;<span class="sectionToc" >4.1 <a
+href="etrice-docse13.html#x19-730004.1">Actors</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >4.1.1 <a
+href="etrice-docse13.html#x19-740004.1.1" id="QQ2-19-75">Description</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >4.1.2 <a
+href="etrice-docse13.html#x19-750004.1.2" id="QQ2-19-76">Motivation</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >4.1.3 <a
+href="etrice-docse13.html#x19-760004.1.3" id="QQ2-19-77">Notation</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >4.1.4 <a
+href="etrice-docse13.html#x19-770004.1.4" id="QQ2-19-79">Details</a></span>
+<br />&#x00A0;<span class="sectionToc" >4.2 <a
+href="etrice-docse14.html#x20-810004.2">Protocols</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >4.2.1 <a
+href="etrice-docse14.html#x20-820004.2.1" id="QQ2-20-85">Description</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >4.2.2 <a
+href="etrice-docse14.html#x20-830004.2.2" id="QQ2-20-86">Motivation</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >4.2.3 <a
+href="etrice-docse14.html#x20-840004.2.3" id="QQ2-20-87">Notation</a></span>
+<br />&#x00A0;<span class="sectionToc" >4.3 <a
+href="etrice-docse15.html#x21-850004.3">Ports</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >4.3.1 <a
+href="etrice-docse15.html#x21-860004.3.1" id="QQ2-21-89">Description</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >4.3.2 <a
+href="etrice-docse15.html#x21-870004.3.2" id="QQ2-21-90">Motivation</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >4.3.3 <a
+href="etrice-docse15.html#x21-880004.3.3" id="QQ2-21-91">Notation</a></span>
+<br />&#x00A0;<span class="sectionToc" >4.4 <a
+href="etrice-docse16.html#x22-910004.4">DataClass</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >4.4.1 <a
+href="etrice-docse16.html#x22-920004.4.1" id="QQ2-22-109">Description</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >4.4.2 <a
+href="etrice-docse16.html#x22-930004.4.2" id="QQ2-22-110">Notation</a></span>
+<br />&#x00A0;<span class="sectionToc" >4.5 <a
+href="etrice-docse17.html#x23-940004.5">Layering</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >4.5.1 <a
+href="etrice-docse17.html#x23-950004.5.1" id="QQ2-23-112">Description</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >4.5.2 <a
+href="etrice-docse17.html#x23-960004.5.2" id="QQ2-23-113">Notation</a></span>
+<br />&#x00A0;<span class="sectionToc" >4.6 <a
+href="etrice-docse18.html#x24-970004.6">Finite State Machines</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >4.6.1 <a
+href="etrice-docse18.html#x24-980004.6.1" id="QQ2-24-116">Description</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >4.6.2 <a
+href="etrice-docse18.html#x24-990004.6.2" id="QQ2-24-117">Motivation</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >4.6.3 <a
+href="etrice-docse18.html#x24-1000004.6.3" id="QQ2-24-118">Notation</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >4.6.4 <a
+href="etrice-docse18.html#x24-1030004.6.4" id="QQ2-24-123">Examples</a></span>
+<br /><span class="chapterToc" >5 <a
+href="etrice-docch5.html#x25-1040005">eTrice Features</a></span>
+<br />&#x00A0;<span class="sectionToc" >5.1 <a
+href="etrice-docse19.html#x26-1050005.1">Automatic Diagram Layout with KIELER</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >5.1.1 <a
+href="etrice-docse19.html#x26-1060005.1.1" id="QQ2-26-130">Overview</a></span>
+
+
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >5.1.2 <a
+href="etrice-docse19.html#x26-1070005.1.2" id="QQ2-26-131">Performing Automatic Layout</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >5.1.3 <a
+href="etrice-docse19.html#x26-1080005.1.3" id="QQ2-26-132">Layout Options</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >5.1.4 <a
+href="etrice-docse19.html#x26-1090005.1.4" id="QQ2-26-134">Configuring Layout Options</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >5.1.5 <a
+href="etrice-docse19.html#x26-1140005.1.5" id="QQ2-26-142">Special Layout Options</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >5.1.6 <a
+href="etrice-docse19.html#x26-1170005.1.6" id="QQ2-26-145">Further References</a></span>
+<br />&#x00A0;<span class="sectionToc" >5.2 <a
+href="etrice-docse20.html#x27-1180005.2">eTrice Models and Their Relations</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >5.2.1 <a
+href="etrice-docse20.html#x27-1190005.2.1" id="QQ2-27-147">The ROOM Model</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >5.2.2 <a
+href="etrice-docse20.html#x27-1200005.2.2" id="QQ2-27-150">The Config Model</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >5.2.3 <a
+href="etrice-docse20.html#x27-1210005.2.3" id="QQ2-27-152">The Physical Model</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >5.2.4 <a
+href="etrice-docse20.html#x27-1220005.2.4" id="QQ2-27-155">The Mapping Model</a></span>
+<br /><span class="chapterToc" >6 <a
+href="etrice-docch6.html#x28-1230006">eTrice Tool Developer&#8217;s Reference</a></span>
+<br />&#x00A0;<span class="sectionToc" >6.1 <a
+href="etrice-docse21.html#x29-1240006.1">Architecture</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >6.1.1 <a
+href="etrice-docse21.html#x29-1250006.1.1" id="QQ2-29-159">Editor and Generator Components</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >6.1.2 <a
+href="etrice-docse21.html#x29-1260006.1.2" id="QQ2-29-160">Runtimes</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >6.1.3 <a
+href="etrice-docse21.html#x29-1270006.1.3" id="QQ2-29-161">Unit Tests</a></span>
+<br />&#x00A0;<span class="sectionToc" >6.2 <a
+href="etrice-docse22.html#x30-1280006.2">Component Overview</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >6.2.1 <a
+href="etrice-docse22.html#x30-1290006.2.1" id="QQ2-30-163">Room Language Overview</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >6.2.2 <a
+href="etrice-docse22.html#x30-1350006.2.2" id="QQ2-30-169">Config Language Overview</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >6.2.3 <a
+href="etrice-docse22.html#x30-1390006.2.3" id="QQ2-30-173">Aggregation Layer Overview</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >6.2.4 <a
+href="etrice-docse22.html#x30-1430006.2.4" id="QQ2-30-177">Generator Overview</a></span>
+</div>
+
+
+<!--l. 54--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docch1.html" >next</a>] [<a
+href="etrice-doc.html" >prev</a>] [<a
+href="etrice-doc.html#tailetrice-doc" >prev-tail</a>] [<a
+href="etrice-docli1.html" >front</a>] [<a
+href="etrice-doc.html#etrice-docli1.html" >up</a>] </p></div>
+<!--l. 54--><p class="noindent" ><a
+ id="tailetrice-docli1.html"></a> </p>
+</body></html>
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse1.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse1.html
index 14d12d8..c3e1627 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse1.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse1.html
@@ -1,86 +1,86 @@
-<?xml version="1.0" encoding="iso-8859-1" ?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
-<html xmlns="http://www.w3.org/1999/xhtml"
->
-<head><title>eTrice Overview</title>
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
-<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
-<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
-<!-- xhtml,3,next,html -->
-<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-06-21 12:20:00" />
-<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
-</head><body
->
-<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse2.html" >next</a>] [<a
-href="etrice-docch1.html" >prev</a>] [<a
-href="etrice-docch1.html#tailetrice-docch1.html" >prev-tail</a>] [<a
-href="#tailetrice-docse1.html">tail</a>] [<a
-href="etrice-docch1.html#etrice-docse1.html" >up</a>] </p></div>
-<h3 class="sectionHead"><span class="titlemark">1.1 </span> <a
- id="x4-30001.1"></a>eTrice Overview</h3>
-<!--l. 3--><p class="noindent" >
-</p>
-<h4 class="subsectionHead"><span class="titlemark">1.1.1 </span> <a
- id="x4-40001.1.1"></a>What is eTrice?</h4>
-<!--l. 5--><p class="noindent" >eTrice provides an implementation of the ROOM modeling language (Real Time Object Oriented
-Modeling) together with editors, code generators for Java, C++ and C code and exemplary target
-middleware.
-</p><!--l. 8--><p class="noindent" >The model is defined in textual form (Xtext) with graphical editors (Graphiti) for the structural and behavioral
-(i.e. state machine) parts.
-</p><!--l. 11--><p class="noindent" >
-</p>
-<h4 class="subsectionHead"><span class="titlemark">1.1.2 </span> <a
- id="x4-50001.1.2"></a>Reduction of Complexity</h4>
-<!--l. 13--><p class="noindent" >eTrice is all about the reduction of complexity:
-</p>
- <ul class="itemize1">
- <li class="itemize">structural complexity
- <ul class="itemize2">
- <li class="itemize">by explicit modeling of hierarchical Actor containment, layering and inheritance</li></ul>
- </li>
- <li class="itemize">behavioral complexity
- <ul class="itemize2">
- <li class="itemize">by hierarchical state machines with inheritance</li></ul>
-
-
- </li>
- <li class="itemize">team work complexity
- <ul class="itemize2">
- <li class="itemize">because loosely coupled Actors provide a natural way to structure team work
- </li>
- <li class="itemize">since textual model notation allows simple branching and merging</li></ul>
- </li>
- <li class="itemize">complexity of concurrent &amp; distributed systems
- <ul class="itemize2">
- <li class="itemize">because loosely coupled Actors are deployable to threads, processes, nodes</li></ul>
- </li>
- <li class="itemize">complexity of variant handling and reuse (e.g. for product lines)
- <ul class="itemize2">
- <li class="itemize">by composition of existing Actors to new structures
- </li>
- <li class="itemize">since Protocols and Ports make Actors replaceable
- </li>
- <li class="itemize">by inheritance for structure, behavior and Protocols
- </li>
- <li class="itemize">by making use of model level libraries</li></ul>
- </li>
- <li class="itemize">complexity of debugging
- <ul class="itemize2">
- <li class="itemize">model level debugging: state machine animation, data inspection and manipulation, message
- injection, generated message sequence charts
- </li>
- <li class="itemize">model checking easier for model than for code (detect errors before they occur)</li></ul>
- </li></ul>
-<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse2.html" >next</a>] [<a
-href="etrice-docch1.html" >prev</a>] [<a
-href="etrice-docch1.html#tailetrice-docch1.html" >prev-tail</a>] [<a
-href="etrice-docse1.html" >front</a>] [<a
-href="etrice-docch1.html#etrice-docse1.html" >up</a>] </p></div>
-<!--l. 1--><p class="noindent" ><a
- id="tailetrice-docse1.html"></a> </p>
-</body></html>
+<?xml version="1.0" encoding="iso-8859-1" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
+<html xmlns="http://www.w3.org/1999/xhtml"
+>
+<head><title>eTrice Overview</title>
+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
+<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
+<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
+<!-- xhtml,3,next,html -->
+<meta name="src" content="etrice-doc.tex" />
+<meta name="date" content="2013-07-04 15:04:00" />
+<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
+</head><body
+>
+<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse2.html" >next</a>] [<a
+href="etrice-docch1.html" >prev</a>] [<a
+href="etrice-docch1.html#tailetrice-docch1.html" >prev-tail</a>] [<a
+href="#tailetrice-docse1.html">tail</a>] [<a
+href="etrice-docch1.html#etrice-docse1.html" >up</a>] </p></div>
+<h3 class="sectionHead"><span class="titlemark">1.1 </span> <a
+ id="x4-30001.1"></a>eTrice Overview</h3>
+<!--l. 3--><p class="noindent" >
+</p>
+<h4 class="subsectionHead"><span class="titlemark">1.1.1 </span> <a
+ id="x4-40001.1.1"></a>What is eTrice?</h4>
+<!--l. 5--><p class="noindent" >eTrice provides an implementation of the ROOM modeling language (Real Time Object Oriented
+Modeling) together with editors, code generators for Java, C++ and C code and exemplary target
+middleware.
+</p><!--l. 8--><p class="noindent" >The model is defined in textual form (Xtext) with graphical editors (Graphiti) for the structural and behavioral
+(i.e. state machine) parts.
+</p><!--l. 11--><p class="noindent" >
+</p>
+<h4 class="subsectionHead"><span class="titlemark">1.1.2 </span> <a
+ id="x4-50001.1.2"></a>Reduction of Complexity</h4>
+<!--l. 13--><p class="noindent" >eTrice is all about the reduction of complexity:
+</p>
+ <ul class="itemize1">
+ <li class="itemize">structural complexity
+ <ul class="itemize2">
+ <li class="itemize">by explicit modeling of hierarchical Actor containment, layering and inheritance</li></ul>
+ </li>
+ <li class="itemize">behavioral complexity
+ <ul class="itemize2">
+ <li class="itemize">by hierarchical state machines with inheritance</li></ul>
+
+
+ </li>
+ <li class="itemize">team work complexity
+ <ul class="itemize2">
+ <li class="itemize">because loosely coupled Actors provide a natural way to structure team work
+ </li>
+ <li class="itemize">since textual model notation allows simple branching and merging</li></ul>
+ </li>
+ <li class="itemize">complexity of concurrent &amp; distributed systems
+ <ul class="itemize2">
+ <li class="itemize">because loosely coupled Actors are deployable to threads, processes, nodes</li></ul>
+ </li>
+ <li class="itemize">complexity of variant handling and reuse (e.g. for product lines)
+ <ul class="itemize2">
+ <li class="itemize">by composition of existing Actors to new structures
+ </li>
+ <li class="itemize">since Protocols and Ports make Actors replaceable
+ </li>
+ <li class="itemize">by inheritance for structure, behavior and Protocols
+ </li>
+ <li class="itemize">by making use of model level libraries</li></ul>
+ </li>
+ <li class="itemize">complexity of debugging
+ <ul class="itemize2">
+ <li class="itemize">model level debugging: state machine animation, data inspection and manipulation, message
+ injection, generated message sequence charts
+ </li>
+ <li class="itemize">model checking easier for model than for code (detect errors before they occur)</li></ul>
+ </li></ul>
+<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse2.html" >next</a>] [<a
+href="etrice-docch1.html" >prev</a>] [<a
+href="etrice-docch1.html#tailetrice-docch1.html" >prev-tail</a>] [<a
+href="etrice-docse1.html" >front</a>] [<a
+href="etrice-docch1.html#etrice-docse1.html" >up</a>] </p></div>
+<!--l. 1--><p class="noindent" ><a
+ id="tailetrice-docse1.html"></a> </p>
+</body></html>
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse10.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse10.html
index 19bee89..d083222 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse10.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse10.html
@@ -1,61 +1,71 @@
-<?xml version="1.0" encoding="iso-8859-1" ?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
-<html xmlns="http://www.w3.org/1999/xhtml"
->
-<head><title>Why does it work and why is it safe?</title>
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
-<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
-<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
-<!-- xhtml,3,next,html -->
-<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-06-21 12:20:00" />
-<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
-</head><body
->
-<!--l. 97--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docch4.html" >next</a>] [<a
-href="etrice-docse9.html" >prev</a>] [<a
-href="etrice-docse9.html#tailetrice-docse9.html" >prev-tail</a>] [<a
-href="#tailetrice-docse10.html">tail</a>] [<a
-href="etrice-docch3.html#etrice-docse10.html" >up</a>] </p></div>
-<h3 class="sectionHead"><span class="titlemark">3.3 </span> <a
- id="x15-590003.3"></a>Why does it work and why is it safe?</h3>
-<!--l. 99--><p class="noindent" >The tutorial shows that it is generally possible to use every port from outside the model as long as the port
-knows its peer. This is guaranteed by describing protocol and the complete structure (especially the bindings)
-within the model. The only remaining question is: Why is it safe and does not violate the <span
-class="ec-lmssbx-10">run to</span>
-<span
-class="ec-lmssbx-10">completion </span>semantic. To answer this question, take a look at the <span
-class="ec-lmsso-10">MessageService.java </span>from the
-runtime environment. There you will find the receive method which puts each message into the
-queue.
-
-
-</p>
-<div class="verbatim" id="verbatim-17">
-&#x00A0;&#x00A0;&#x00A0;&#x00A0;@Override
-&#x00A0;<br />&#x00A0;&#x00A0;&#x00A0;&#x00A0;public&#x00A0;synchronized&#x00A0;void&#x00A0;receive(Message&#x00A0;msg)&#x00A0;{
-&#x00A0;<br />&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;if&#x00A0;(msg!=null)&#x00A0;{
-&#x00A0;<br />&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;messageQueue.push(msg);
-&#x00A0;<br />&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;notifyAll();&#x00A0;//&#x00A0;wake&#x00A0;up&#x00A0;thread&#x00A0;to&#x00A0;compute&#x00A0;message
-&#x00A0;<br />&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;}
-&#x00A0;<br />&#x00A0;&#x00A0;&#x00A0;&#x00A0;}
-</div>
-<!--l. 114--><p class="nopar" >
-</p><!--l. 116--><p class="noindent" >This method is synchronized. That means, regardless who sends the message, the queue is secured. If we later
-on (e.g. for performance reasons in C/C++) distinguish between internal and external senders (same thread or
-not), care must be taken to use the external (secure) queue.
-
-
-</p>
-<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docch4.html" >next</a>] [<a
-href="etrice-docse9.html" >prev</a>] [<a
-href="etrice-docse9.html#tailetrice-docse9.html" >prev-tail</a>] [<a
-href="etrice-docse10.html" >front</a>] [<a
-href="etrice-docch3.html#etrice-docse10.html" >up</a>] </p></div>
-<!--l. 1--><p class="noindent" ><a
- id="tailetrice-docse10.html"></a> </p>
-</body></html>
+<?xml version="1.0" encoding="iso-8859-1" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
+<html xmlns="http://www.w3.org/1999/xhtml"
+>
+<head><title>Scope</title>
+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
+<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
+<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
+<!-- xhtml,3,next,html -->
+<meta name="src" content="etrice-doc.tex" />
+<meta name="date" content="2013-07-04 15:04:00" />
+<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
+</head><body
+>
+<!--l. 3--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse11.html" >next</a>] [<a
+href="etrice-docch3.html" >prev</a>] [<a
+href="etrice-docch3.html#tailetrice-docch3.html" >prev-tail</a>] [<a
+href="#tailetrice-docse10.html">tail</a>] [<a
+href="etrice-docch3.html#etrice-docse10.html" >up</a>] </p></div>
+<h3 class="sectionHead"><span class="titlemark">3.1 </span> <a
+ id="x15-690003.1"></a>Scope</h3>
+<!--l. 5--><p class="noindent" >The scope of this tutorial is to demonstrate how to receive model messages from outside the
+model. Calling methods which are not part of the model is simple and you have already done
+this within the blinky tutorial (this is the other way round: model =&#x003E; external code). Receiving
+events from outside the model is a very common problem and a very frequently asked question.
+Therefore this tutorial shows how an external event (outside the model) can be received by the
+model.
+</p><!--l. 11--><p class="noindent" >This tutorial is not like hello world or blinky. Being familiar with the basic tool features is mandatory for this
+tutorial. The goal is to understand the mechanism not to learn the tool features.
+</p><!--l. 14--><p class="noindent" >The idea behind the exercise is, to control a Pedestrian crossing light. We will use the same GUI as for the
+blinky tutorial but now we will use the <span
+class="ec-lmsso-10">REQUEST </span>button to start a FSM, which controls the traffic
+lights.
+</p><!--l. 18--><p class="noindent" ><img
+src="images/020-Blinky08.png" alt="PIC"
+ />
+</p><!--l. 21--><p class="noindent" >The <span
+class="ec-lmsso-10">REQUEST </span>must lead to a model message which starts the activity of the lights.
+</p><!--l. 23--><p class="noindent" >There are several possibilities to receive external events (e.g. TCP/UDP Socket, using OS messaging
+mechanism), but the easiest way is, to make a port usable from outside the model. To do that a few steps are
+necessary:
+ </p><ol class="enumerate1" >
+ <li
+ class="enumerate" id="x15-69002x1">specify the messages (within a protocol) which should be sent into the model
+ </li>
+ <li
+ class="enumerate" id="x15-69004x2">model an actor with a port (which uses the specified protocol) and connect the port to the receiver
+ </li>
+ <li
+ class="enumerate" id="x15-69006x3">the external code should know the port (import of the port class)
+ </li>
+ <li
+ class="enumerate" id="x15-69008x4">the external code should provide a registration method, so that the actor is able to allow access
+ to this port
+ </li>
+ <li
+ class="enumerate" id="x15-69010x5">the port can be used from the external code</li></ol>
+
+
+<!--l. 35--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse11.html" >next</a>] [<a
+href="etrice-docch3.html" >prev</a>] [<a
+href="etrice-docch3.html#tailetrice-docch3.html" >prev-tail</a>] [<a
+href="etrice-docse10.html" >front</a>] [<a
+href="etrice-docch3.html#etrice-docse10.html" >up</a>] </p></div>
+<!--l. 35--><p class="noindent" ><a
+ id="tailetrice-docse10.html"></a> </p>
+</body></html>
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse11.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse11.html
index 00390ab..9b4c4bf 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse11.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse11.html
@@ -1,71 +1,124 @@
-<?xml version="1.0" encoding="iso-8859-1" ?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
-<html xmlns="http://www.w3.org/1999/xhtml"
->
-<head><title>Testing the environment</title>
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
-<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
-<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
-<!-- xhtml,3,next,html -->
-<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-06-21 12:20:00" />
-<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
-</head><body
->
-<!--l. 19--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse12.html" >next</a>] [<a
-href="etrice-docch4.html" >prev</a>] [<a
-href="etrice-docch4.html#tailetrice-docch4.html" >prev-tail</a>] [<a
-href="#tailetrice-docse11.html">tail</a>] [<a
-href="etrice-docch4.html#etrice-docse11.html" >up</a>] </p></div>
-<h3 class="sectionHead"><span class="titlemark">4.1 </span> <a
- id="x17-610004.1"></a>Testing the environment</h3>
-<!--l. 21--><p class="noindent" >To verify the C tool chain you should generate and run the Hello World example program of the CDT. Activate
-the <span
-class="ec-lmsso-10">C/C++ </span>perspective.
-</p><!--l. 24--><p class="noindent" ><img
-src="images/032-SetupWorkspaceC03.png" alt="PIC"
- />
-</p><!--l. 27--><p class="noindent" >From the main menu select <span
-class="ec-lmsso-10">File-&#x003E;New-&#x003E;C Project</span>.
-</p><!--l. 29--><p class="noindent" ><img
-src="images/032-SetupWorkspaceC02.png" alt="PIC"
- />
-</p><!--l. 32--><p class="noindent" >Name the project. Select an <span
-class="ec-lmsso-10">Executable-&#x003E;Hello World ANSI C </span>as project type, <span
-class="ec-lmsso-10">MinGW GCC </span>as tool chain and
-click <span
-class="ec-lmsso-10">Finish</span>.
-</p><!--l. 35--><p class="noindent" ><img
-src="images/032-SetupWorkspaceC04.png" alt="PIC"
- />
-</p><!--l. 38--><p class="noindent" >Select the new project and click the build button (or right click the project and select <span
-class="ec-lmsso-10">Build Project</span>)
-</p><!--l. 41--><p class="noindent" ><img
-src="images/032-SetupWorkspaceC05.png" alt="PIC"
- />
-</p><!--l. 44--><p class="noindent" >The binary should be generated. Run the binary as <span
-class="ec-lmsso-10">Local C/C++ Application</span>.
-</p><!--l. 46--><p class="noindent" ><img
-src="images/032-SetupWorkspaceC06.png" alt="PIC"
- />
-</p><!--l. 49--><p class="noindent" >Verify the output.
-</p><!--l. 51--><p class="noindent" ><img
-src="images/032-SetupWorkspaceC07.png" alt="PIC"
- />
-</p><!--l. 54--><p class="noindent" >Remember these steps. In the following Tutorials these steps will be referenced as <span
-class="ec-lmsso-10">build and run</span>.
-
-
-</p>
-<!--l. 57--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse12.html" >next</a>] [<a
-href="etrice-docch4.html" >prev</a>] [<a
-href="etrice-docch4.html#tailetrice-docch4.html" >prev-tail</a>] [<a
-href="etrice-docse11.html" >front</a>] [<a
-href="etrice-docch4.html#etrice-docse11.html" >up</a>] </p></div>
-<!--l. 57--><p class="noindent" ><a
- id="tailetrice-docse11.html"></a> </p>
-</body></html>
+<?xml version="1.0" encoding="iso-8859-1" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
+<html xmlns="http://www.w3.org/1999/xhtml"
+>
+<head><title>Setup the model</title>
+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
+<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
+<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
+<!-- xhtml,3,next,html -->
+<meta name="src" content="etrice-doc.tex" />
+<meta name="date" content="2013-07-04 15:04:00" />
+<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
+</head><body
+>
+<!--l. 35--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse12.html" >next</a>] [<a
+href="etrice-docse10.html" >prev</a>] [<a
+href="etrice-docse10.html#tailetrice-docse10.html" >prev-tail</a>] [<a
+href="#tailetrice-docse11.html">tail</a>] [<a
+href="etrice-docch3.html#etrice-docse11.html" >up</a>] </p></div>
+<h3 class="sectionHead"><span class="titlemark">3.2 </span> <a
+ id="x16-700003.2"></a>Setup the model</h3>
+ <ul class="itemize1">
+ <li class="itemize">Use the <span
+class="ec-lmsso-10">New Model Wizzard </span>to create a new eTrice project and name it <span
+class="ec-lmsso-10">PedLightsController</span>.
+ </li>
+ <li class="itemize">Copy the package <span
+class="ec-lmsso-10">org.eclipse.etrice.tutorials.PedLightGUI </span>to your <span
+class="ec-lmsso-10">src </span>directory (see blinky
+ tutorial).
+ </li>
+ <li class="itemize">In PedestrianLightWndNoTcp.jav uncomment line 15 (import), 36, 122 (usage) and 132-134
+ (registration). The error markers will disappear after the code is generated from the model.
+ </li>
+ <li class="itemize">
+ <div class="flushleft"
+>
+<!--l. 44--><p class="noindent" >
+Copy the model from /org.eclipse.etrice.tutorials/model/PedLightsController to your model file, or run
+the model directly in the tutorial directory.</p></div>
+ </li>
+ <li class="itemize">Adapt the import statement to your path.</li></ul>
+
+
+<div class="verbatim" id="verbatim-17">
+import&#x00A0;room.basic.service.timing.*&#x00A0;from
+&#x00A0;<br />"../../org.eclipse.etrice.modellib/models/TimingService.room"
+</div>
+<!--l. 53--><p class="nopar" >
+</p>
+ <ul class="itemize1">
+ <li class="itemize">Generate the code from the model.
+ </li>
+ <li class="itemize">Add the org.eclipse.etrice.modellib to the Java Class Path of your project.
+ </li>
+ <li class="itemize">All error markers should be disappeared and the model should be operable.
+ </li>
+ <li class="itemize">Arrange the Structure and the Statemachines to understand the model</li></ul>
+
+<!--l. 63--><p class="noindent" ><img
+src="images/030-PedLights01.png" alt="PIC"
+ /> The <span
+class="ec-lmsso-10">GuiAdapter </span>represents the interface to the external code. It registers its <span
+class="ec-lmsso-10">ControlPort </span>by the external
+code.
+</p><!--l. 68--><p class="noindent" ><img
+src="images/030-PedLights02.png" alt="PIC"
+ /> Visit the initial transition to understand the registration. The actor handles the incoming messages as
+usual and controls the traffic lights as known from blinky.
+</p><!--l. 73--><p class="noindent" ><img
+src="images/030-PedLights03.png" alt="PIC"
+ /> The <span
+class="ec-lmsso-10">Controller </span>receives the <span
+class="ec-lmsso-10">start </span>message and controls the timing of the lights. Note that the <span
+class="ec-lmsso-10">start</span>
+message will be sent from the external code whenever the <span
+class="ec-lmsso-10">REQUEST </span>button is pressed.
+</p>
+ <ul class="itemize1">
+ <li class="itemize">Visit the model and take a closer look to the following elements:
+ <ol class="enumerate1" >
+ <li
+ class="enumerate" id="x16-70002x1">PedControlProtocol =&#x003E; notice that the start message is defined as usual
+ </li>
+ <li
+ class="enumerate" id="x16-70004x2">Initial transition of the <span
+class="ec-lmsso-10">GuiAdapter </span>=&#x003E; see the registration
+ </li>
+ <li
+ class="enumerate" id="x16-70006x3">The <span
+class="ec-lmsso-10">Controller </span>=&#x003E; notice that the <span
+class="ec-lmsso-10">Controller </span>receives the external message (not the
+ <span
+class="ec-lmsso-10">GuiAdapter</span>). The <span
+class="ec-lmsso-10">GuiAdapter </span>just provides its port and handles the incoming messages.
+ </li>
+ <li
+ class="enumerate" id="x16-70008x4">Visit the hand written code =&#x003E; see the import statement of the protocol class and the
+ usage of the port.</li></ol>
+ </li>
+ <li class="itemize">Generate and test the model
+ </li>
+ <li class="itemize">Take a look at the generated MSC =&#x003E; notice that the start message will shown as if the <span
+class="ec-lmsso-10">GuiAdapter</span>
+ had sent it.</li></ul>
+
+<!--l. 94--><p class="noindent" ><img
+src="images/030-PedLights04.png" alt="PIC"
+ />
+
+
+</p>
+<!--l. 97--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse12.html" >next</a>] [<a
+href="etrice-docse10.html" >prev</a>] [<a
+href="etrice-docse10.html#tailetrice-docse10.html" >prev-tail</a>] [<a
+href="etrice-docse11.html" >front</a>] [<a
+href="etrice-docch3.html#etrice-docse11.html" >up</a>] </p></div>
+<!--l. 97--><p class="noindent" ><a
+ id="tailetrice-docse11.html"></a> </p>
+</body></html>
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse12.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse12.html
index a00ea8f..413a69c 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse12.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse12.html
@@ -1,82 +1,61 @@
-<?xml version="1.0" encoding="iso-8859-1" ?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
-<html xmlns="http://www.w3.org/1999/xhtml"
->
-<head><title>Building the C runtime system</title>
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
-<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
-<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
-<!-- xhtml,3,next,html -->
-<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-06-21 12:20:00" />
-<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
-</head><body
->
-<!--l. 57--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docch5.html" >next</a>] [<a
-href="etrice-docse11.html" >prev</a>] [<a
-href="etrice-docse11.html#tailetrice-docse11.html" >prev-tail</a>] [<a
-href="#tailetrice-docse12.html">tail</a>] [<a
-href="etrice-docch4.html#etrice-docse12.html" >up</a>] </p></div>
-<h3 class="sectionHead"><span class="titlemark">4.2 </span> <a
- id="x18-620004.2"></a>Building the C runtime system</h3>
-<!--l. 59--><p class="noindent" >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="ec-lmsso-10">etRuntimeConfig.h </span>is located in
-<span
-class="ec-lmsso-10">src/config</span>.
-</p><!--l. 65--><p class="noindent" >After changing the configuration, the runtime must be built.
-</p><!--l. 67--><p class="noindent" >Open the properties of the <span
-class="ec-lmsso-10">org.eclipse.runtime.c </span>project and select <span
-class="ec-lmsso-10">C/C++ Build-&#x003E;Settings-&#x003E;Tool Settings</span>
-and select <span
-class="ec-lmsso-10">Includes</span>.
-</p><!--l. 70--><p class="noindent" ><img
-src="images/032-SetupWorkspaceC08.png" alt="PIC"
- />
-</p><!--l. 73--><p class="noindent" >Verify the include paths
-</p>
- <ul class="itemize1">
- <li class="itemize"><span
-class="ec-lmsso-10">src/config</span>
- </li>
- <li class="itemize"><span
-class="ec-lmsso-10">src/common</span>
- </li>
- <li class="itemize"><span
-class="ec-lmsso-10">src/platforms/generic</span></li></ul>
-<!--l. 81--><p class="noindent" >Within the Setting dialog select the tab <span
-class="ec-lmsso-10">Build Artefact </span>and select <span
-class="ec-lmsso-10">Static Library</span>
-</p><!--l. 83--><p class="noindent" ><img
-src="images/032-SetupWorkspaceC09.png" alt="PIC"
- />
-</p><!--l. 86--><p class="noindent" >Build the runtime by clicking
-</p><!--l. 88--><p class="noindent" ><img
-src="images/032-SetupWorkspaceC10.png" alt="PIC"
- />
-</p><!--l. 91--><p class="noindent" >The runtime library should be created.
-</p><!--l. 93--><p class="noindent" ><img
-src="images/032-SetupWorkspaceC11.png" alt="PIC"
- />
-</p><!--l. 96--><p class="noindent" >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>
-<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docch5.html" >next</a>] [<a
-href="etrice-docse11.html" >prev</a>] [<a
-href="etrice-docse11.html#tailetrice-docse11.html" >prev-tail</a>] [<a
-href="etrice-docse12.html" >front</a>] [<a
-href="etrice-docch4.html#etrice-docse12.html" >up</a>] </p></div>
-<!--l. 1--><p class="noindent" ><a
- id="tailetrice-docse12.html"></a> </p>
-</body></html>
+<?xml version="1.0" encoding="iso-8859-1" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
+<html xmlns="http://www.w3.org/1999/xhtml"
+>
+<head><title>Why does it work and why is it safe?</title>
+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
+<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
+<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
+<!-- xhtml,3,next,html -->
+<meta name="src" content="etrice-doc.tex" />
+<meta name="date" content="2013-07-04 15:04:00" />
+<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
+</head><body
+>
+<!--l. 97--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docch4.html" >next</a>] [<a
+href="etrice-docse11.html" >prev</a>] [<a
+href="etrice-docse11.html#tailetrice-docse11.html" >prev-tail</a>] [<a
+href="#tailetrice-docse12.html">tail</a>] [<a
+href="etrice-docch3.html#etrice-docse12.html" >up</a>] </p></div>
+<h3 class="sectionHead"><span class="titlemark">3.3 </span> <a
+ id="x17-710003.3"></a>Why does it work and why is it safe?</h3>
+<!--l. 99--><p class="noindent" >The tutorial shows that it is generally possible to use every port from outside the model as long as the port
+knows its peer. This is guaranteed by describing protocol and the complete structure (especially the bindings)
+within the model. The only remaining question is: Why is it safe and does not violate the <span
+class="ec-lmssbx-10">run to</span>
+<span
+class="ec-lmssbx-10">completion </span>semantic. To answer this question, take a look at the <span
+class="ec-lmsso-10">MessageService.java </span>from the
+runtime environment. There you will find the receive method which puts each message into the
+queue.
+
+
+</p>
+<div class="verbatim" id="verbatim-18">
+&#x00A0;&#x00A0;&#x00A0;&#x00A0;@Override
+&#x00A0;<br />&#x00A0;&#x00A0;&#x00A0;&#x00A0;public&#x00A0;synchronized&#x00A0;void&#x00A0;receive(Message&#x00A0;msg)&#x00A0;{
+&#x00A0;<br />&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;if&#x00A0;(msg!=null)&#x00A0;{
+&#x00A0;<br />&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;messageQueue.push(msg);
+&#x00A0;<br />&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;notifyAll();&#x00A0;//&#x00A0;wake&#x00A0;up&#x00A0;thread&#x00A0;to&#x00A0;compute&#x00A0;message
+&#x00A0;<br />&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;&#x00A0;}
+&#x00A0;<br />&#x00A0;&#x00A0;&#x00A0;&#x00A0;}
+</div>
+<!--l. 114--><p class="nopar" >
+</p><!--l. 116--><p class="noindent" >This method is synchronized. That means, regardless who sends the message, the queue is secured. If we later
+on (e.g. for performance reasons in C/C++) distinguish between internal and external senders (same thread or
+not), care must be taken to use the external (secure) queue.
+
+
+</p>
+<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docch4.html" >next</a>] [<a
+href="etrice-docse11.html" >prev</a>] [<a
+href="etrice-docse11.html#tailetrice-docse11.html" >prev-tail</a>] [<a
+href="etrice-docse12.html" >front</a>] [<a
+href="etrice-docch3.html#etrice-docse12.html" >up</a>] </p></div>
+<!--l. 1--><p class="noindent" ><a
+ id="tailetrice-docse12.html"></a> </p>
+</body></html>
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse13.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse13.html
index b5ce122..86d88e3 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse13.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse13.html
@@ -1,62 +1,781 @@
-<?xml version="1.0" encoding="iso-8859-1" ?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
-<html xmlns="http://www.w3.org/1999/xhtml"
->
-<head><title>Scope</title>
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
-<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
-<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
-<!-- xhtml,3,next,html -->
-<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-06-21 12:20:00" />
-<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
-</head><body
->
-<!--l. 3--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse14.html" >next</a>] [<a
-href="etrice-docch5.html" >prev</a>] [<a
-href="etrice-docch5.html#tailetrice-docch5.html" >prev-tail</a>] [<a
-href="#tailetrice-docse13.html">tail</a>] [<a
-href="etrice-docch5.html#etrice-docse13.html" >up</a>] </p></div>
-<h3 class="sectionHead"><span class="titlemark">5.1 </span> <a
- id="x20-640005.1"></a>Scope</h3>
-<!--l. 5--><p class="noindent" >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><!--l. 10--><p class="noindent" >
- </p><ol class="enumerate1" >
- <li
- class="enumerate" id="x20-64002x1">create a new model from scratch for C
- </li>
- <li
- class="enumerate" id="x20-64004x2">create structure and behavior similar to Java
- </li>
- <li
- class="enumerate" id="x20-64006x3">create a launch configuration for the C code generator
- </li>
- <li
- class="enumerate" id="x20-64008x4">setup the C environment
- </li>
- <li
- class="enumerate" id="x20-64010x5">generate the source code
- </li>
- <li
- class="enumerate" id="x20-64012x6">run the model</li></ol>
-<!--l. 19--><p class="noindent" >Make sure that you have set up the workspace as described in <span
-class="ec-lmsso-10">Setting up the Workspace for C</span>
-<span
-class="ec-lmsso-10">Projects</span>.
-
-
-</p>
-<!--l. 23--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse14.html" >next</a>] [<a
-href="etrice-docch5.html" >prev</a>] [<a
-href="etrice-docch5.html#tailetrice-docch5.html" >prev-tail</a>] [<a
-href="etrice-docse13.html" >front</a>] [<a
-href="etrice-docch5.html#etrice-docse13.html" >up</a>] </p></div>
-<!--l. 23--><p class="noindent" ><a
- id="tailetrice-docse13.html"></a> </p>
-</body></html>
+<?xml version="1.0" encoding="iso-8859-1" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
+<html xmlns="http://www.w3.org/1999/xhtml"
+>
+<head><title>Actors</title>
+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
+<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
+<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
+<!-- xhtml,3,next,html -->
+<meta name="src" content="etrice-doc.tex" />
+<meta name="date" content="2013-07-04 15:04:00" />
+<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
+</head><body
+>
+<!--l. 8--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse14.html" >next</a>] [<a
+href="etrice-docch4.html" >prev</a>] [<a
+href="etrice-docch4.html#tailetrice-docch4.html" >prev-tail</a>] [<a
+href="#tailetrice-docse13.html">tail</a>] [<a
+href="etrice-docch4.html#etrice-docse13.html" >up</a>] </p></div>
+<h3 class="sectionHead"><span class="titlemark">4.1 </span> <a
+ id="x19-730004.1"></a>Actors</h3>
+<!--l. 10--><p class="noindent" >
+</p>
+<h4 class="subsectionHead"><span class="titlemark">4.1.1 </span> <a
+ id="x19-740004.1.1"></a>Description</h4>
+
+
+<!--l. 12--><p class="noindent" >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><!--l. 16--><p class="noindent" >
+</p>
+<h4 class="subsectionHead"><span class="titlemark">4.1.2 </span> <a
+ id="x19-750004.1.2"></a>Motivation</h4>
+ <ul class="itemize1">
+ <li class="itemize">Actors enable the construction of hierarchical structures by composition and layering
+ </li>
+ <li class="itemize">Actors have their own logical thread of execution
+ </li>
+ <li class="itemize">Actors can be freely deployed
+ </li>
+ <li class="itemize">Actors define potentially re-usable blocks</li></ul>
+<!--l. 25--><p class="noindent" >
+</p>
+<h4 class="subsectionHead"><span class="titlemark">4.1.3 </span> <a
+ id="x19-760004.1.3"></a>Notation</h4>
+<div class="table">
+
+
+<!--l. 30--><p class="noindent" ><a
+ id="x19-760011"></a></p><hr class="float" /><div class="float"
+>
+
+
+ <div class="caption"
+><span class="id">Table&#x00A0;4.1: </span><span
+class="content">Actor Class Notation</span></div><!--tex4ht:label?: x19-760011 -->
+<div class="tabular"> <table id="TBL-3" class="tabular"
+cellspacing="0" cellpadding="0" rules="groups"
+><colgroup id="TBL-3-1g"><col
+id="TBL-3-1" /></colgroup><colgroup id="TBL-3-2g"><col
+id="TBL-3-2" /></colgroup><colgroup id="TBL-3-3g"><col
+id="TBL-3-3" /></colgroup><tr
+class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
+ style="vertical-align:baseline;" id="TBL-3-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-3-1-1"
+class="td11"> <span
+class="ec-lmssbx-10">Element </span></td><td style="white-space:nowrap; text-align:left;" id="TBL-3-1-2"
+class="td11"> <span
+class="ec-lmssbx-10">Graphical Notation </span></td><td style="white-space:nowrap; text-align:left;" id="TBL-3-1-3"
+class="td11"> <span
+class="ec-lmssbx-10">Textual Notation </span></td>
+</tr><tr
+class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
+ style="vertical-align:baseline;" id="TBL-3-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-3-2-1"
+class="td11"> ActorClass </td><td style="white-space:nowrap; text-align:left;" id="TBL-3-2-2"
+class="td11"> <img
+src="images/040-ActorClassNotation.png" alt="PIC"
+ /> </td><td style="white-space:nowrap; text-align:left;" id="TBL-3-2-3"
+class="td11"> <!--l. 36--> <!--l. 36--><p class="noindent" ><div class="lstlisting" id="listing-2"><span class="label"><a
+ id="x19-76002r1"></a></span><span
+class="ec-lmssbx-10x-x-90">ActorClass</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ActorClass2</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{}</span>
+ </p> </div> </td>
+</tr><tr
+class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
+ style="vertical-align:baseline;" id="TBL-3-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-3-3-1"
+class="td11"> ActorRef </td><td style="white-space:nowrap; text-align:left;" id="TBL-3-3-2"
+class="td11"> <img
+src="images/040-ActorReferenceNotation.png" alt="PIC"
+ /> </td><td style="white-space:nowrap; text-align:left;" id="TBL-3-3-3"
+class="td11"> <!--l. 41--> <!--l. 41--><p class="noindent" ><div class="lstlisting" id="listing-3"><span class="label"><a
+ id="x19-76003r1"></a></span><span
+class="ec-lmssbx-10x-x-90">ActorClass</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ActorClass1</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x19-76004r2"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Structure</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x19-76005r3"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">ActorRef</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ActorReference</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ActorClass2</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x19-76006r4"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x19-76007r5"></a></span><span
+class="ec-lmtt-9">}</span>
+ </p> </div> </td>
+</tr><tr
+class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
+ style="vertical-align:baseline;" id="TBL-3-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-3-4-1"
+class="td11"> </td></tr></table></div>
+
+
+</div><hr class="endfloat" />
+</div>
+<h4 class="subsectionHead"><span class="titlemark">4.1.4 </span> <a
+ id="x19-770004.1.4"></a>Details</h4>
+<!--l. 55--><p class="noindent" >
+</p>
+<h5 class="subsubsectionHead"><a
+ id="x19-780004.1.4"></a>Actor Classes, Actor References, Ports and Bindings</h5>
+<!--l. 57--><p class="noindent" >An <span id="textcolor1"><span
+class="ec-lmssbx-10">ActorClass</span></span> defines the type (or blueprint) of an actor. Hierarchies are built by <span id="textcolor2"><span
+class="ec-lmssbx-10">ActorClass</span></span>es that contain
+<span id="textcolor3"><span
+class="ec-lmssbx-10">ActorRef</span></span>erences which have another <span id="textcolor4"><span
+class="ec-lmssbx-10">ActorClass</span></span> as type. The interface of an <span id="textcolor5"><span
+class="ec-lmssbx-10">ActorClass</span></span> is
+always defined by <span id="textcolor6"><span
+class="ec-lmssbx-10">Port</span></span>s. The <span id="textcolor7"><span
+class="ec-lmssbx-10">ActorClass</span></span> can also contain <span id="textcolor8"><span
+class="ec-lmssbx-10">Attribute</span></span>s, <span id="textcolor9"><span
+class="ec-lmssbx-10">Operation</span></span>s and a finite
+<span id="textcolor10"><span
+class="ec-lmssbx-10">StateMachine</span></span>.
+</p><!--l. 63--><p class="noindent" >External <span id="textcolor11"><span
+class="ec-lmssbx-10">Port</span></span>s define the external interface of an actor and are defined in the <span id="textcolor12"><span
+class="ec-lmssbx-10">Interface</span></span> section of the
+<span id="textcolor13"><span
+class="ec-lmssbx-10">ActorClass</span></span>.
+</p><!--l. 66--><p class="noindent" >Internal <span id="textcolor14"><span
+class="ec-lmssbx-10">Port</span></span>s define the internal interface of an actor and are defined in the <span id="textcolor15"><span
+class="ec-lmssbx-10">Structure</span></span> section of the
+<span id="textcolor16"><span
+class="ec-lmssbx-10">ActorClass</span></span>.
+</p><!--l. 69--><p class="noindent" ><span id="textcolor17"><span
+class="ec-lmssbx-10">Binding</span></span>s connect <span id="textcolor18"><span
+class="ec-lmssbx-10">Port</span></span>s inside an <span id="textcolor19"><span
+class="ec-lmssbx-10">ActorClass</span></span>.
+</p><!--l. 71--><p class="noindent" >Let us have a look at example <a
+href="#x19-780012">4.2<!--tex4ht:ref: tab:actor_class_example --></a>:
+</p>
+<div class="table">
+
+
+<!--l. 74--><p class="noindent" ><a
+ id="x19-780012"></a></p><hr class="float" /><div class="float"
+>
+
+
+ <div class="caption"
+><span class="id">Table&#x00A0;4.2: </span><span
+class="content">Actor Class Example</span></div><!--tex4ht:label?: x19-780012 -->
+<div class="tabular"> <table id="TBL-4" class="tabular"
+cellspacing="0" cellpadding="0" rules="groups"
+><colgroup id="TBL-4-1g"><col
+id="TBL-4-1" /></colgroup><colgroup id="TBL-4-2g"><col
+id="TBL-4-2" /></colgroup><colgroup id="TBL-4-3g"><col
+id="TBL-4-3" /></colgroup><tr
+class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
+ style="vertical-align:baseline;" id="TBL-4-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-4-1-1"
+class="td11"> <span
+class="ec-lmssbx-10">Graphical Notation </span></td><td style="white-space:nowrap; text-align:left;" id="TBL-4-1-2"
+class="td11"> <span
+class="ec-lmssbx-10">Textual Notation </span></td>
+</tr><tr
+class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
+ style="vertical-align:baseline;" id="TBL-4-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-4-2-1"
+class="td11"> <img
+src="images/040-ActorClass.png" alt="PIC"
+ /> </td><td style="white-space:nowrap; text-align:left;" id="TBL-4-2-2"
+class="td11"> <!--l. 80--> <!--l. 80--><p class="noindent" ><div class="lstlisting" id="listing-4"><span class="label"><a
+ id="x19-78002r1"></a></span><span
+class="ec-lmssbx-10x-x-90">ActorClass</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ActorClass1</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x19-78003r2"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Interface</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x19-78004r3"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Port</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">port1</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ProtocolClass1</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x19-78005r4"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Port</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">port4</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ProtocolClass1</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x19-78006r5"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x19-78007r6"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Structure</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x19-78008r7"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">external</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Port</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">port1</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x19-78009r8"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">conjugated</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Port</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">port2</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ProtocolClass1</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x19-78010r9"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">conjugated</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Port</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">port3</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ProtocolClass1</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x19-78011r10"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">ActorRef</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ActorRef_A</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ActorClass2</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x19-78012r11"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">ActorRef</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ActorRef_B</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ActorClass3</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x19-78013r12"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Binding</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">port2</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">and</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ActorRef_A</span><span
+class="ec-lmtt-9">.</span><span
+class="ec-lmtt-9">port5</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x19-78014r13"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Binding</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">port3</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">and</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ActorRef_B</span><span
+class="ec-lmtt-9">.</span><span
+class="ec-lmtt-9">port6</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x19-78015r14"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Binding</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ActorRef_B</span><span
+class="ec-lmtt-9">.</span><span
+class="ec-lmtt-9">port7</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">and</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">port4</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x19-78016r15"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Binding</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ActorRef_A</span><span
+class="ec-lmtt-9">.</span><span
+class="ec-lmtt-9">port8</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">and</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ActorRef_B</span><span
+class="ec-lmtt-9">.</span><span
+class="ec-lmtt-9">port9</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x19-78017r16"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x19-78018r17"></a></span><span
+class="ec-lmtt-9">}</span>
+ </p> </div> </td>
+</tr><tr
+class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
+ style="vertical-align:baseline;" id="TBL-4-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-4-3-1"
+class="td11"> </td></tr></table></div>
+
+
+</div><hr class="endfloat" />
+</div>
+ <ul class="itemize1">
+ <li class="itemize"><span
+class="ec-lmsso-10">ActorClass1 </span>contains two <span id="textcolor20"><span
+class="ec-lmssbx-10">ActorRef</span></span>erences (of ActorClass2 and ActorClass3)
+ </li>
+ <li class="itemize"><span
+class="ec-lmsso-10">port1 </span>is an <span
+class="ec-lmsso-10">external end port</span>. Since it connects external actors with the behavior of the
+ <span id="textcolor21"><span
+class="ec-lmssbx-10">ActorClass</span></span>, it is defined in the <span id="textcolor22"><span
+class="ec-lmssbx-10">Interface</span></span> section and the <span id="textcolor23"><span
+class="ec-lmssbx-10">Structure</span></span> section of the <span id="textcolor24"><span
+class="ec-lmssbx-10">ActorClass</span></span>.
+ </li>
+ <li class="itemize"><span
+class="ec-lmsso-10">port2 </span>and <span
+class="ec-lmsso-10">port3 </span>are <span
+class="ec-lmsso-10">internal end ports </span>and can only be connected to the ports of contained
+ <span id="textcolor25"><span
+class="ec-lmssbx-10">ActorRef</span></span>erences. Internal end ports connect the behavior of an <span id="textcolor26"><span
+class="ec-lmssbx-10">ActorClass</span></span> with its contained
+ <span id="textcolor27"><span
+class="ec-lmssbx-10">ActorRef</span></span>erences.
+ </li>
+ <li class="itemize"><span
+class="ec-lmsso-10">port4 </span>is a relay port and connects external Actors to contained <span id="textcolor28"><span
+class="ec-lmssbx-10">ActorRef</span></span>erences. This port can
+ not be accessed by the behavior of the <span id="textcolor29"><span
+class="ec-lmssbx-10">ActorClass</span></span>.
+ </li>
+ <li class="itemize"><span
+class="ec-lmsso-10">port5 </span>through <span
+class="ec-lmsso-10">port9 </span>are ports of contained actor references. <span
+class="ec-lmsso-10">port8 </span>and <span
+class="ec-lmsso-10">port9 </span>can communicate
+ without interference with the containing actor class.
+ </li>
+ <li class="itemize"><span id="textcolor30"><span
+class="ec-lmssbx-10">Binding</span></span>s can connect ports of the actor class and its contained actor references.</li></ul>
+<h5 class="subsubsectionHead"><a
+ id="x19-790004.1.4"></a>Attributes</h5>
+<!--l. 120--><p class="noindent" ><span id="textcolor31"><span
+class="ec-lmssbx-10">Attribute</span></span>s are part of the <span id="textcolor32"><span
+class="ec-lmssbx-10">Structure</span></span> of an actor class. They can be of a <span id="textcolor33"><span
+class="ec-lmssbx-10">PrimitiveType</span></span> or a
+<span id="textcolor34"><span
+class="ec-lmssbx-10">DataClass</span></span>.
+</p><!--l. 123--><p class="noindent" >Example:
+</p>
+<!--l. 126-->
+<div class="lstlisting" id="listing-5"><span class="label"><a
+ id="x19-79001r1"></a></span><span
+class="ec-lmssbx-10x-x-90">ActorClass</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ActorClass3</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x19-79002r2"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Structure</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x19-79003r3"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Attribute</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">attribute1</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">int32</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">//</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">attribute</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">of</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">primitive</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">type</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x19-79004r4"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Attribute</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">attribute2</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">DataClass1</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">//</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">attribute</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">of</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">DataClass</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">type</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x19-79005r5"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x19-79006r6"></a></span><span
+class="ec-lmtt-9">}</span>
+</div>
+<!--l. 135--><p class="noindent" >
+</p>
+<h5 class="subsubsectionHead"><a
+ id="x19-800004.1.4"></a>Operations</h5>
+<!--l. 137--><p class="noindent" ><span id="textcolor35"><span
+class="ec-lmssbx-10">Operation</span></span>s are part of the <span id="textcolor36"><span
+class="ec-lmssbx-10">Behavior</span></span> of an actor class. Arguments and return values can be of a
+<span id="textcolor37"><span
+class="ec-lmssbx-10">PrimitiveType</span></span> or a <span id="textcolor38"><span
+class="ec-lmssbx-10">DataClass</span></span>. Data classes can be passed by value (implicit) or by reference
+(<span id="textcolor39"><span
+class="ec-lmssbx-10">ref</span></span>).
+</p><!--l. 140--><p class="noindent" >Example:
+</p>
+<!--l. 144-->
+<div class="lstlisting" id="listing-6"><span class="label"><a
+ id="x19-80001r1"></a></span><span
+class="ec-lmssbx-10x-x-90">ActorClass</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ActorClass4</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x19-80002r2"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Behavior</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x19-80003r3"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">//</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">no</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">arguments</span><span
+class="ec-lmtt-9">,</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">no</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">return</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">value</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x19-80004r4"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Operation</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">operation1</span><span
+class="ec-lmtt-9">()</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">void</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x19-80005r5"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">"</span><span
+class="ec-lmtt-9">UserCodeLine1</span><span
+class="ec-lmtt-9">"</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x19-80006r6"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x19-80007r7"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">//</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">argument</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">of</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">primitive</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">type</span><span
+class="ec-lmtt-9">,</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">return</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">value</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">of</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">primitive</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">type</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x19-80008r8"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Operation</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">operation2</span><span
+class="ec-lmtt-9">(</span><span
+class="ec-lmtt-9">Param1</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">int32</span><span
+class="ec-lmtt-9">,</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">Param2</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">float64</span><span
+class="ec-lmtt-9">)</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">uint16</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x19-80009r9"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">"</span><span
+class="ec-lmtt-9">UserCodeLine1</span><span
+class="ec-lmtt-9">"</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x19-80010r10"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x19-80011r11"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">//</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">arguments</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">and</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">return</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">value</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">by</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">value</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x19-80012r12"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Operation</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">operation3</span><span
+class="ec-lmtt-9">(</span><span
+class="ec-lmtt-9">Param1</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">int32</span><span
+class="ec-lmtt-9">,</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">Param2</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">DataClass1</span><span
+class="ec-lmtt-9">)</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">DataClass1</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x19-80013r13"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">"</span><span
+class="ec-lmtt-9">UserCodeLine1</span><span
+class="ec-lmtt-9">"</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x19-80014r14"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x19-80015r15"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">//</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">arguments</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">and</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">return</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">value</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">by</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">reference</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">except</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">for</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">primitive</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">types</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x19-80016r16"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Operation</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">operation4</span><span
+class="ec-lmtt-9">(</span><span
+class="ec-lmtt-9">Param1</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">int32</span><span
+class="ec-lmtt-9">,</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">Param2</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">DataClass1</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">ref</span><span
+class="ec-lmtt-9">)</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">DataClass1</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">ref</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x19-80017r17"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">"</span><span
+class="ec-lmtt-9">UserCodeLine1</span><span
+class="ec-lmtt-9">"</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x19-80018r18"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x19-80019r19"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x19-80020r20"></a></span><span
+class="ec-lmtt-9">}</span>
+</div>
+
+
+<!--l. 167--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse14.html" >next</a>] [<a
+href="etrice-docch4.html" >prev</a>] [<a
+href="etrice-docch4.html#tailetrice-docch4.html" >prev-tail</a>] [<a
+href="etrice-docse13.html" >front</a>] [<a
+href="etrice-docch4.html#etrice-docse13.html" >up</a>] </p></div>
+<!--l. 167--><p class="noindent" ><a
+ id="tailetrice-docse13.html"></a> </p>
+</body></html>
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse14.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse14.html
index 82364d3..9983d49 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse14.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse14.html
@@ -1,83 +1,137 @@
-<?xml version="1.0" encoding="iso-8859-1" ?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
-<html xmlns="http://www.w3.org/1999/xhtml"
->
-<head><title>Create a new model from scratch</title>
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
-<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
-<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
-<!-- xhtml,3,next,html -->
-<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-06-21 12:20:00" />
-<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
-</head><body
->
-<!--l. 23--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse15.html" >next</a>] [<a
-href="etrice-docse13.html" >prev</a>] [<a
-href="etrice-docse13.html#tailetrice-docse13.html" >prev-tail</a>] [<a
-href="#tailetrice-docse14.html">tail</a>] [<a
-href="etrice-docch5.html#etrice-docse14.html" >up</a>] </p></div>
-<h3 class="sectionHead"><span class="titlemark">5.2 </span> <a
- id="x21-650005.2"></a>Create a new model from scratch</h3>
-<!--l. 25--><p class="noindent" >Before you can create a new C-model, you have to create a new C project as described in <span
-class="ec-lmsso-10">Setting up the</span>
-<span
-class="ec-lmsso-10">Workspace for C Projects</span>. Remember: </p>
- <ul class="itemize1">
- <li class="itemize">select the <span
-class="ec-lmsso-10">C/C++ </span>perspective
- </li>
- <li class="itemize">From the main menue select <span
-class="ec-lmsso-10">File-&#x003E;New-&#x003E;C Project</span>
- </li>
- <li class="itemize">Name the project <span
-class="ec-lmsso-10">HelloWorldC</span>
- </li>
- <li class="itemize">Project type is <span
-class="ec-lmsso-10">Executable / Empty C Project</span>
- </li>
- <li class="itemize">Toolchain is <span
-class="ec-lmsso-10">MinGW</span></li></ul>
-<!--l. 36--><p class="noindent" >The workspace should look like this:
-</p><!--l. 38--><p class="noindent" ><img
-src="images/034-HelloWorldC01.png" alt="PIC"
- />
-</p><!--l. 41--><p class="noindent" >The next step is to add the model folder: Right click on the new project. Select <span
-class="ec-lmsso-10">New-&#x003E;Folder </span>and name it
-<span
-class="ec-lmsso-10">model</span>.
-</p><!--l. 44--><p class="noindent" ><img
-src="images/034-HelloWorldC02.png" alt="PIC"
- />
-</p><!--l. 47--><p class="noindent" >Add the model file to the folder. Right click on the new folder. Select <span
-class="ec-lmsso-10">New-&#x003E;file </span>and name it
-<span
-class="ec-lmsso-10">HelloWorldC.room</span>.
-</p><!--l. 50--><p class="noindent" ><img
-src="images/034-HelloWorldC03.png" alt="PIC"
- />
-</p><!--l. 53--><p class="noindent" >Due to the file ending <span
-class="ec-lmsso-10">.room</span>, the tool will ask you to add the Xtext nature. Answer with <span
-class="ec-lmsso-10">Yes</span>.
-</p><!--l. 56--><p class="noindent" ><img
-src="images/034-HelloWorldC04.png" alt="PIC"
- />
-</p><!--l. 59--><p class="noindent" >The workspace should look like this:
-</p><!--l. 61--><p class="noindent" ><img
-src="images/034-HelloWorldC05.png" alt="PIC"
- />
-
-
-</p>
-<!--l. 66--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse15.html" >next</a>] [<a
-href="etrice-docse13.html" >prev</a>] [<a
-href="etrice-docse13.html#tailetrice-docse13.html" >prev-tail</a>] [<a
-href="etrice-docse14.html" >front</a>] [<a
-href="etrice-docch5.html#etrice-docse14.html" >up</a>] </p></div>
-<!--l. 66--><p class="noindent" ><a
- id="tailetrice-docse14.html"></a> </p>
-</body></html>
+<?xml version="1.0" encoding="iso-8859-1" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
+<html xmlns="http://www.w3.org/1999/xhtml"
+>
+<head><title>Protocols</title>
+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
+<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
+<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
+<!-- xhtml,3,next,html -->
+<meta name="src" content="etrice-doc.tex" />
+<meta name="date" content="2013-07-04 15:04:00" />
+<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
+</head><body
+>
+<!--l. 167--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse15.html" >next</a>] [<a
+href="etrice-docse13.html" >prev</a>] [<a
+href="etrice-docse13.html#tailetrice-docse13.html" >prev-tail</a>] [<a
+href="#tailetrice-docse14.html">tail</a>] [<a
+href="etrice-docch4.html#etrice-docse14.html" >up</a>] </p></div>
+<h3 class="sectionHead"><span class="titlemark">4.2 </span> <a
+ id="x20-810004.2"></a>Protocols</h3>
+<!--l. 169--><p class="noindent" >
+</p>
+<h4 class="subsectionHead"><span class="titlemark">4.2.1 </span> <a
+ id="x20-820004.2.1"></a>Description</h4>
+<!--l. 171--><p class="noindent" >A <span id="textcolor40"><span
+class="ec-lmssbx-10">ProtocolClass</span></span> defines a set of incoming and outgoing <span id="textcolor41"><span
+class="ec-lmssbx-10">Message</span></span>s that can be exchanged between two ports.
+The exact semantics of a message is defined by the execution model.
+</p><!--l. 174--><p class="noindent" >
+</p>
+<h4 class="subsectionHead"><span class="titlemark">4.2.2 </span> <a
+ id="x20-830004.2.2"></a>Motivation</h4>
+ <ul class="itemize1">
+ <li class="itemize">Protocol classes provide a reusable interface specification for ports
+ </li>
+ <li class="itemize">Protocol classes can optionally specify valid message exchange sequences</li></ul>
+<!--l. 181--><p class="noindent" >
+</p>
+<h4 class="subsectionHead"><span class="titlemark">4.2.3 </span> <a
+ id="x20-840004.2.3"></a>Notation</h4>
+<!--l. 183--><p class="noindent" >Protocol classes have only textual notation. The example defines a protocol class with 2 incoming and two
+outgoing messages. Messages can have data attached. The data can be of a primitive type (e.g. int32, float64,
+...) or a data class.
+</p>
+<!--l. 188-->
+<div class="lstlisting" id="listing-7"><span class="label"><a
+ id="x20-84001r1"></a></span><span
+class="ec-lmssbx-10x-x-90">ProtocolClass</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ProtocolClass1</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x20-84002r2"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">incoming</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x20-84003r3"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Message</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">m1</span><span
+class="ec-lmtt-9">(</span><span
+class="ec-lmtt-9">data</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">int32</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x20-84004r4"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Message</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">m2</span><span
+class="ec-lmtt-9">()</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x20-84005r5"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x20-84006r6"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">outgoing</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x20-84007r7"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Message</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">m3</span><span
+class="ec-lmtt-9">(</span><span
+class="ec-lmtt-9">data</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">DataClass1</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x20-84008r8"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Message</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">m4</span><span
+class="ec-lmtt-9">()</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x20-84009r9"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x20-84010r10"></a></span><span
+class="ec-lmtt-9">}</span>
+</div>
+
+
+<!--l. 201--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse15.html" >next</a>] [<a
+href="etrice-docse13.html" >prev</a>] [<a
+href="etrice-docse13.html#tailetrice-docse13.html" >prev-tail</a>] [<a
+href="etrice-docse14.html" >front</a>] [<a
+href="etrice-docch4.html#etrice-docse14.html" >up</a>] </p></div>
+<!--l. 201--><p class="noindent" ><a
+ id="tailetrice-docse14.html"></a> </p>
+</body></html>
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse15.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse15.html
index 804642f..6590a54 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse15.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse15.html
@@ -1,72 +1,1013 @@
-<?xml version="1.0" encoding="iso-8859-1" ?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
-<html xmlns="http://www.w3.org/1999/xhtml"
->
-<head><title>Create the HelloWorld model</title>
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
-<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
-<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
-<!-- xhtml,3,next,html -->
-<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-06-21 12:20:00" />
-<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
-</head><body
->
-<!--l. 66--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse16.html" >next</a>] [<a
-href="etrice-docse14.html" >prev</a>] [<a
-href="etrice-docse14.html#tailetrice-docse14.html" >prev-tail</a>] [<a
-href="#tailetrice-docse15.html">tail</a>] [<a
-href="etrice-docch5.html#etrice-docse15.html" >up</a>] </p></div>
-<h3 class="sectionHead"><span class="titlemark">5.3 </span> <a
- id="x22-660005.3"></a>Create the HelloWorld model</h3>
-<!--l. 68--><p class="noindent" >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:
-</p>
- <ul class="itemize1">
- <li class="itemize">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.
- </li>
- <li class="itemize">The application must be shutdown on model level (see also <span
-class="ec-lmsso-10">etRuntimeConfig.h</span>).</li></ul>
-
-
-<div class="verbatim" id="verbatim-18">
-RoomModel&#x00A0;HelloWorldCModel&#x00A0;{
-&#x00A0;<br />import&#x00A0;room.basic.types.*&#x00A0;from&#x00A0;"../../org.eclipse.etrice.modellib.c/model/Types.room"
-&#x00A0;<br />SubSystemClass&#x00A0;HelloWorldCSubSysClass&#x00A0;{
-&#x00A0;<br />ActorRef&#x00A0;HelloETriceTopRef:AHelloWorldCTop
-&#x00A0;<br />}
-&#x00A0;<br />ActorClass&#x00A0;AHelloWorldCTop&#x00A0;{
-&#x00A0;<br />Structure&#x00A0;{&#x00A0;}
-&#x00A0;<br />Behavior&#x00A0;{
-&#x00A0;<br />StateMachine&#x00A0;{
-&#x00A0;<br />Transition&#x00A0;init:&#x00A0;initial&#x00A0;-&#x003E;&#x00A0;state0&#x00A0;{&#x00A0;}
-&#x00A0;<br />State&#x00A0;state0&#x00A0;{
-&#x00A0;<br />entry&#x00A0;{
-&#x00A0;<br />"printf(\"HelloWorldC&#x00A0;!\\n\");"
-&#x00A0;<br />"SubSysClass_shutdown();"
-&#x00A0;<br />"\t\t\t\t\t\t"
-&#x00A0;<br />}
-&#x00A0;<br />}
-&#x00A0;<br />}
-&#x00A0;<br />}
-&#x00A0;<br />}
-&#x00A0;<br />}
-</div>
-<!--l. 101--><p class="nopar" >
-
-
-</p>
-<!--l. 103--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse16.html" >next</a>] [<a
-href="etrice-docse14.html" >prev</a>] [<a
-href="etrice-docse14.html#tailetrice-docse14.html" >prev-tail</a>] [<a
-href="etrice-docse15.html" >front</a>] [<a
-href="etrice-docch5.html#etrice-docse15.html" >up</a>] </p></div>
-<!--l. 103--><p class="noindent" ><a
- id="tailetrice-docse15.html"></a> </p>
-</body></html>
+<?xml version="1.0" encoding="iso-8859-1" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
+<html xmlns="http://www.w3.org/1999/xhtml"
+>
+<head><title>Ports</title>
+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
+<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
+<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
+<!-- xhtml,3,next,html -->
+<meta name="src" content="etrice-doc.tex" />
+<meta name="date" content="2013-07-04 15:04:00" />
+<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
+</head><body
+>
+<!--l. 201--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse16.html" >next</a>] [<a
+href="etrice-docse14.html" >prev</a>] [<a
+href="etrice-docse14.html#tailetrice-docse14.html" >prev-tail</a>] [<a
+href="#tailetrice-docse15.html">tail</a>] [<a
+href="etrice-docch4.html#etrice-docse15.html" >up</a>] </p></div>
+<h3 class="sectionHead"><span class="titlemark">4.3 </span> <a
+ id="x21-850004.3"></a>Ports</h3>
+<!--l. 203--><p class="noindent" >
+</p>
+<h4 class="subsectionHead"><span class="titlemark">4.3.1 </span> <a
+ id="x21-860004.3.1"></a>Description</h4>
+<!--l. 205--><p class="noindent" ><span id="textcolor42"><span
+class="ec-lmssbx-10">Port</span></span>s are the only interfaces of actors. A port has always a protocol assigned. Service Access
+Points (SAP) and Service Provision Points (SPP) are specialized ports that are used to define
+layering.
+</p><!--l. 209--><p class="noindent" >
+</p>
+<h4 class="subsectionHead"><span class="titlemark">4.3.2 </span> <a
+ id="x21-870004.3.2"></a>Motivation</h4>
+ <ul class="itemize1">
+ <li class="itemize">Ports decouple interface definition (protocols) from interface usage
+ </li>
+ <li class="itemize">Ports decouple the logical interface from the transport</li></ul>
+<!--l. 216--><p class="noindent" >
+</p>
+<h4 class="subsectionHead"><span class="titlemark">4.3.3 </span> <a
+ id="x21-880004.3.3"></a>Notation</h4>
+<!--l. 218--><p class="noindent" >
+</p>
+<h5 class="subsubsectionHead"><a
+ id="x21-890004.3.3"></a>Class Ports</h5>
+<!--l. 220--><p class="noindent" >These symbols can only appear on the border of an actor class symbol.
+</p><!--l. 222--><p class="noindent" >Ports that define an external interface of the actor class, are defined in the <span id="textcolor43"><span
+class="ec-lmssbx-10">Interface</span></span>. Ports that define an
+internal interface are defined in the <span id="textcolor44"><span
+class="ec-lmssbx-10">Structure</span></span> (e.g. internal ports).
+</p>
+ <ul class="itemize1">
+ <li class="itemize"><span
+class="ec-lmsso-10">External end ports </span>are defined in the Interface and the Structure
+
+
+ </li>
+ <li class="itemize"><span
+class="ec-lmsso-10">Internal end ports </span>are only defined in the Structure
+ </li>
+ <li class="itemize"><span
+class="ec-lmsso-10">Relay ports </span>are only defined in the Interface
+ </li>
+ <li class="itemize"><span
+class="ec-lmsso-10">End ports </span>are always connected to the internal behavior of the ActorClass
+ </li>
+ <li class="itemize"><span
+class="ec-lmsso-10">Replicated ports </span>can be defined with a fixed replication factor, e.g.<br
+class="newline" /><span id="textcolor45"><span
+class="ec-lmtk-10">Port</span></span> <span
+class="ec-lmtt-10">port18 [5]: ProtocolClass1</span><br
+class="newline" />or a variable replication factor, e.g.<br
+class="newline" /><span id="textcolor46"><span
+class="ec-lmtk-10">Port</span></span> <span
+class="ec-lmtt-10">port18[*]: ProtocolClass1</span></li></ul>
+<!--l. 236--><p class="noindent" >The table <a
+href="#x21-89001r3">4.3<!--tex4ht:ref: tab:class_port_notation --></a> shows all kinds of class ports with textual and graphical notation.
+<a
+ id="x21-89001r3"></a>
+</p>
+<!--l. 240--><div class="longtable"> <table id="TBL-5" class="longtable"
+cellspacing="0" cellpadding="0" rules="groups"
+><colgroup id="TBL-5-1g"><col
+id="TBL-5-1" /></colgroup><colgroup id="TBL-5-2g"><col
+id="TBL-5-2" /></colgroup><colgroup id="TBL-5-3g"><col
+id="TBL-5-3" /></colgroup>
+
+
+<tr
+ style="vertical-align:baseline;" id="TBL-5-1-"><td colspan="3" style="white-space:nowrap; text-align:left; vertical-align:middle;" id="TBL-5-1-1"
+class="td11"> <div class="multicolumn" style="white-space:nowrap; text-align:center;"> <div class="caption"
+><span class="id">Table&#x00A0;4.3: </span><span
+class="content">Class Port Notation</span></div><!--tex4ht:label?: x21-89001r3 --> </div> <a
+ id="x21-89002"></a>
+</td></tr><tr
+class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
+ style="vertical-align:baseline;" id="TBL-5-2-"><td style="white-space:nowrap; text-align:left; vertical-align:middle;" id="TBL-5-2-1"
+class="td11">
+ <!--l. 243--><p class="noindent" ><span
+class="ec-lmssbx-10">Element</span> </p></td><td style="white-space:nowrap; text-align:center;" id="TBL-5-2-2"
+class="td11"> <span
+class="ec-lmssbx-10">Graphical Notation </span></td><td style="white-space:nowrap; text-align:left; vertical-align:middle;" id="TBL-5-2-3"
+class="td11">
+ <!--l. 243--><p class="noindent" ><span
+class="ec-lmssbx-10">Textual Notation</span> </p></td>
+</tr><tr
+ style="vertical-align:baseline;" id="TBL-5-3-"><td style="white-space:nowrap; text-align:left; vertical-align:middle;" id="TBL-5-3-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:center;" id="TBL-5-3-2"
+class="td11"> </td><td style="white-space:nowrap; text-align:left; vertical-align:middle;" id="TBL-5-3-3"
+class="td11">
+</td></tr>
+<tr
+class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
+ style="vertical-align:baseline;" id="TBL-5-4-"><td style="white-space:nowrap; text-align:left; vertical-align:middle;" id="TBL-5-4-1"
+class="td11">
+ <!--l. 246--><p class="noindent" >Class
+ End
+ Port </p></td><td style="white-space:nowrap; text-align:center;" id="TBL-5-4-2"
+class="td11"> <img
+src="images/040-ClassEndPort.png" alt="PIC"
+ /> </td><td style="white-space:nowrap; text-align:left; vertical-align:middle;" id="TBL-5-4-3"
+class="td11">
+ <div class="tabular"> <table id="TBL-6" class="tabular"
+cellspacing="0" cellpadding="0"
+><colgroup id="TBL-6-1g"><col
+id="TBL-6-1" /></colgroup><tr
+ style="vertical-align:baseline;" id="TBL-6-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-6-1-1"
+class="td11"><span
+class="ec-lmsso-10">External Class End Port: </span></td>
+</tr><tr
+ style="vertical-align:baseline;" id="TBL-6-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-6-2-1"
+class="td11"><!--l. 250--> <!--l. 250--><p class="noindent" ><a
+ id="x21-89003r1"></a><a
+ id="x21-89004"></a><div class="lstlisting" id="listing-8"><span class="label"><a
+ id="x21-89005r1"></a></span><span
+class="ec-lmssbx-10x-x-90">ActorClass</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ActorClass6</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89006r2"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Interface</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89007r3"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Port</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">port12</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ProtocolClass1</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89008r4"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89009r5"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Structure</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89010r6"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">external</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Port</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">port12</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89011r7"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89012r8"></a></span><span
+class="ec-lmtt-9">}</span>
+ </p> </div></td>
+</tr><tr
+ style="vertical-align:baseline;" id="TBL-6-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-6-3-1"
+class="td11"><span
+class="ec-lmsso-10">Internal Class End Port: </span></td>
+</tr><tr
+ style="vertical-align:baseline;" id="TBL-6-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-6-4-1"
+class="td11"><!--l. 263--> <!--l. 263--><p class="noindent" ><a
+ id="x21-89013r2"></a><a
+ id="x21-89014"></a><div class="lstlisting" id="listing-9"><span class="label"><a
+ id="x21-89015r1"></a></span><span
+class="ec-lmssbx-10x-x-90">ActorClass</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ActorClass6</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89016r2"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Interface</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89017r3"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89018r4"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Structure</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89019r5"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Port</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">port20</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89020r6"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89021r7"></a></span><span
+class="ec-lmtt-9">}</span>
+ </p> </div></td>
+</tr><tr
+ style="vertical-align:baseline;" id="TBL-6-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-6-5-1"
+class="td11"> </td></tr></table> </div> </td>
+</tr><tr
+class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
+ style="vertical-align:baseline;" id="TBL-5-5-"><td style="white-space:nowrap; text-align:left; vertical-align:middle;" id="TBL-5-5-1"
+class="td11">
+ <!--l. 276--><p class="noindent" >Conjugated
+ Class
+ End
+ Port </p></td><td style="white-space:nowrap; text-align:center;" id="TBL-5-5-2"
+class="td11"> <img
+src="images/040-ConjugatedClassEndPort.png" alt="PIC"
+ /> </td><td style="white-space:nowrap; text-align:left; vertical-align:middle;" id="TBL-5-5-3"
+class="td11">
+ <div class="tabular"> <table id="TBL-7" class="tabular"
+cellspacing="0" cellpadding="0"
+><colgroup id="TBL-7-1g"><col
+id="TBL-7-1" /></colgroup><tr
+ style="vertical-align:baseline;" id="TBL-7-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-7-1-1"
+class="td11"><span
+class="ec-lmsso-10">External Conjugated Class End Port: </span></td>
+</tr><tr
+ style="vertical-align:baseline;" id="TBL-7-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-7-2-1"
+class="td11"><!--l. 280--> <!--l. 280--><p class="noindent" ><a
+ id="x21-89022r3"></a><a
+ id="x21-89023"></a><div class="lstlisting" id="listing-10"><span class="label"><a
+ id="x21-89024r1"></a></span><span
+class="ec-lmssbx-10x-x-90">ActorClass</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ActorClass6</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89025r2"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Interface</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89026r3"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">conjugated</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Port</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">port13</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ProtocolClass1</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89027r4"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89028r5"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Structure</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89029r6"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">external</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Port</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">port13</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89030r7"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89031r8"></a></span><span
+class="ec-lmtt-9">}</span>
+ </p> </div></td>
+</tr><tr
+ style="vertical-align:baseline;" id="TBL-7-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-7-3-1"
+class="td11"><span
+class="ec-lmsso-10">Internal Conjugated Class End Port: </span></td>
+</tr><tr
+ style="vertical-align:baseline;" id="TBL-7-4-"><td style="white-space:nowrap; text-align:left;" id="TBL-7-4-1"
+class="td11"><!--l. 293--> <!--l. 293--><p class="noindent" ><a
+ id="x21-89032r4"></a><a
+ id="x21-89033"></a><div class="lstlisting" id="listing-11"><span class="label"><a
+ id="x21-89034r1"></a></span><span
+class="ec-lmssbx-10x-x-90">ActorClass</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ActorClass6</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89035r2"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Interface</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89036r3"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89037r4"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Structure</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89038r5"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">conjugated</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Port</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">port21</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ProtocolClass1</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89039r6"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89040r7"></a></span><span
+class="ec-lmtt-9">}</span>
+ </p> </div></td>
+</tr><tr
+ style="vertical-align:baseline;" id="TBL-7-5-"><td style="white-space:nowrap; text-align:left;" id="TBL-7-5-1"
+class="td11"> </td></tr></table> </div> </td>
+</tr><tr
+class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
+ style="vertical-align:baseline;" id="TBL-5-6-"><td style="white-space:nowrap; text-align:left; vertical-align:middle;" id="TBL-5-6-1"
+class="td11">
+ <!--l. 307--><p class="noindent" >Class
+ Relay
+ Port </p></td><td style="white-space:nowrap; text-align:center;" id="TBL-5-6-2"
+class="td11"> <img
+src="images/040-ClassRelayPort.png" alt="PIC"
+ /> </td><td style="white-space:nowrap; text-align:left; vertical-align:middle;" id="TBL-5-6-3"
+class="td11">
+ <!--l. 309-->
+ <a
+ id="x21-89041r5"></a>
+ <a
+ id="x21-89042"></a>
+ <div class="lstlisting" id="listing-12"><span class="label"><a
+ id="x21-89043r1"></a></span><span
+class="ec-lmssbx-10x-x-90">ActorClass</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ActorClass6</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89044r2"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Interface</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89045r3"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Port</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">port10</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ProtocolClass1</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89046r4"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89047r5"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Structure</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89048r6"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89049r7"></a></span><span
+class="ec-lmtt-9">}</span>
+
+</div>
+<!--l. 320--><p class="noindent" > </p></td>
+</tr><tr
+class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
+ style="vertical-align:baseline;" id="TBL-5-7-"><td style="white-space:nowrap; text-align:left; vertical-align:middle;" id="TBL-5-7-1"
+class="td11">
+ <!--l. 321--><p class="noindent" >Conjugated
+ Class
+ Relay
+ Port </p></td><td style="white-space:nowrap; text-align:center;" id="TBL-5-7-2"
+class="td11"> <img
+src="images/040-ConjugatedClassRelayPort.png" alt="PIC"
+ /> </td><td style="white-space:nowrap; text-align:left; vertical-align:middle;" id="TBL-5-7-3"
+class="td11">
+ <!--l. 323-->
+ <a
+ id="x21-89050r6"></a>
+ <a
+ id="x21-89051"></a>
+ <div class="lstlisting" id="listing-13"><span class="label"><a
+ id="x21-89052r1"></a></span><span
+class="ec-lmssbx-10x-x-90">ActorClass</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ActorClass6</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89053r2"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Interface</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89054r3"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">conjugated</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Port</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">port10</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ProtocolClass1</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89055r4"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89056r5"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Structure</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89057r6"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89058r7"></a></span><span
+class="ec-lmtt-9">}</span>
+
+</div>
+<!--l. 334--><p class="noindent" > </p></td>
+</tr><tr
+class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
+ style="vertical-align:baseline;" id="TBL-5-8-"><td style="white-space:nowrap; text-align:left; vertical-align:middle;" id="TBL-5-8-1"
+class="td11">
+ <!--l. 335--><p class="noindent" >Replicated
+ Class
+ End
+ Port </p></td><td style="white-space:nowrap; text-align:center;" id="TBL-5-8-2"
+class="td11"> <img
+src="images/040-ReplicatedClassEndPort.png" alt="PIC"
+ /> </td><td style="white-space:nowrap; text-align:left; vertical-align:middle;" id="TBL-5-8-3"
+class="td11">
+ <div class="tabular"> <table id="TBL-8" class="tabular"
+cellspacing="0" cellpadding="0"
+><colgroup id="TBL-8-1g"><col
+id="TBL-8-1" /></colgroup><tr
+ style="vertical-align:baseline;" id="TBL-8-1-"><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" id="TBL-8-1-1"
+class="td11"><!--l. 338--><p class="noindent" ><span
+class="ec-lmsso-10">External Replicated Class End Port:</span> </p></td>
+</tr><tr
+ style="vertical-align:baseline;" id="TBL-8-2-"><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" id="TBL-8-2-1"
+class="td11"><!--l. 339-->
+<a
+ id="x21-89059r7"></a>
+<a
+ id="x21-89060"></a>
+<div class="lstlisting" id="listing-14"><span class="label"><a
+ id="x21-89061r1"></a></span><span
+class="ec-lmssbx-10x-x-90">ActorClass</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ActorClass6</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89062r2"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Interface</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89063r3"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Port</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">port16</span><span
+class="ec-lmtt-9">[3]:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ProtocolClass1</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89064r4"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89065r5"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Structure</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89066r6"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">external</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Port</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">port16</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89067r7"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89068r8"></a></span><span
+class="ec-lmtt-9">}</span>
+</div>
+<!--l. 351--><p class="noindent" > </p></td>
+</tr><tr
+ style="vertical-align:baseline;" id="TBL-8-3-"><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" id="TBL-8-3-1"
+class="td11"><!--l. 351--><p class="noindent" ><span
+class="ec-lmsso-10">Internal Replicated Class End Port:</span> </p></td>
+</tr><tr
+ style="vertical-align:baseline;" id="TBL-8-4-"><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" id="TBL-8-4-1"
+class="td11"><!--l. 352-->
+<a
+ id="x21-89069r8"></a>
+<a
+ id="x21-89070"></a>
+<div class="lstlisting" id="listing-15"><span class="label"><a
+ id="x21-89071r1"></a></span><span
+class="ec-lmssbx-10x-x-90">ActorClass</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ActorClass6</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89072r2"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Interface</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89073r3"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89074r4"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Structure</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89075r5"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Port</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">port16</span><span
+class="ec-lmtt-9">[3]:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ProtocolClass1</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89076r6"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89077r7"></a></span><span
+class="ec-lmtt-9">}</span>
+</div>
+<!--l. 363--><p class="noindent" > </p></td>
+</tr><tr
+ style="vertical-align:baseline;" id="TBL-8-5-"><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" id="TBL-8-5-1"
+class="td11"> </td></tr></table> </div> </td>
+</tr><tr
+class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
+ style="vertical-align:baseline;" id="TBL-5-9-"><td style="white-space:nowrap; text-align:left; vertical-align:middle;" id="TBL-5-9-1"
+class="td11">
+ <!--l. 366--><p class="noindent" >Conjugated
+ Replicated
+ Class
+ End
+ Port </p></td><td style="white-space:nowrap; text-align:center;" id="TBL-5-9-2"
+class="td11"> <img
+src="images/040-ConjugatedReplicatedClassEndPort.png" alt="PIC"
+ /> </td><td style="white-space:nowrap; text-align:left; vertical-align:middle;" id="TBL-5-9-3"
+class="td11">
+ <div class="tabular"> <table id="TBL-9" class="tabular"
+cellspacing="0" cellpadding="0"
+><colgroup id="TBL-9-1g"><col
+id="TBL-9-1" /></colgroup><tr
+ style="vertical-align:baseline;" id="TBL-9-1-"><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" id="TBL-9-1-1"
+class="td11"><!--l. 369--><p class="noindent" ><span
+class="ec-lmsso-10">External Conjugated Replicated Class</span>
+<span
+class="ec-lmsso-10">End Port:</span> </p></td>
+</tr><tr
+ style="vertical-align:baseline;" id="TBL-9-2-"><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" id="TBL-9-2-1"
+class="td11"><!--l. 370-->
+<a
+ id="x21-89078r9"></a>
+<a
+ id="x21-89079"></a>
+<div class="lstlisting" id="listing-16"><span class="label"><a
+ id="x21-89080r1"></a></span><span
+class="ec-lmssbx-10x-x-90">ActorClass</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ActorClass6</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89081r2"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Interface</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89082r3"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">conjugated</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Port</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">port17</span><span
+class="ec-lmtt-9">[3]:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ProtocolClass1</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89083r4"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89084r5"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Structure</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89085r6"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">external</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Port</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">port17</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89086r7"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89087r8"></a></span><span
+class="ec-lmtt-9">}</span>
+</div>
+<!--l. 382--><p class="noindent" > </p></td>
+</tr><tr
+ style="vertical-align:baseline;" id="TBL-9-3-"><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" id="TBL-9-3-1"
+class="td11"><!--l. 382--><p class="noindent" ><span
+class="ec-lmsso-10">Internal Conjugated Replicated Class</span>
+<span
+class="ec-lmsso-10">End Port:</span> </p></td>
+</tr><tr
+ style="vertical-align:baseline;" id="TBL-9-4-"><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" id="TBL-9-4-1"
+class="td11"><!--l. 383-->
+<a
+ id="x21-89088r10"></a>
+<a
+ id="x21-89089"></a>
+<div class="lstlisting" id="listing-17"><span class="label"><a
+ id="x21-89090r1"></a></span><span
+class="ec-lmssbx-10x-x-90">ActorClass</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ActorClass6</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89091r2"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Interface</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89092r3"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89093r4"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Structure</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89094r5"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">conjugated</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Port</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">port23</span><span
+class="ec-lmtt-9">[3]:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ProtocolClass1</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89095r6"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89096r7"></a></span><span
+class="ec-lmtt-9">}</span>
+</div>
+<!--l. 394--><p class="noindent" > </p></td>
+</tr><tr
+ style="vertical-align:baseline;" id="TBL-9-5-"><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" id="TBL-9-5-1"
+class="td11"> </td></tr></table> </div> </td>
+</tr><tr
+class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
+ style="vertical-align:baseline;" id="TBL-5-10-"><td style="white-space:nowrap; text-align:left; vertical-align:middle;" id="TBL-5-10-1"
+class="td11">
+ <!--l. 397--><p class="noindent" >Replicated
+ Class
+ Relay
+ Port </p></td><td style="white-space:nowrap; text-align:center;" id="TBL-5-10-2"
+class="td11"> <img
+src="images/040-ReplicatedClassRelayPort.png" alt="PIC"
+ /> </td><td style="white-space:nowrap; text-align:left; vertical-align:middle;" id="TBL-5-10-3"
+class="td11">
+ <!--l. 399-->
+ <a
+ id="x21-89097r11"></a>
+ <a
+ id="x21-89098"></a>
+ <div class="lstlisting" id="listing-18"><span class="label"><a
+ id="x21-89099r1"></a></span><span
+class="ec-lmssbx-10x-x-90">ActorClass</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ActorClass6</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89100r2"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Interface</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89101r3"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Port</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">port18</span><span
+class="ec-lmtt-9">[3]:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ProtocolClass1</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89102r4"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89103r5"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Structure</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89104r6"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89105r7"></a></span><span
+class="ec-lmtt-9">}</span>
+
+</div>
+<!--l. 409--><p class="noindent" > </p></td>
+</tr><tr
+class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
+ style="vertical-align:baseline;" id="TBL-5-11-"><td style="white-space:nowrap; text-align:left; vertical-align:middle;" id="TBL-5-11-1"
+class="td11">
+ <!--l. 410--><p class="noindent" >Conjugated
+ Replicated
+ Class
+ Relay
+ Port </p></td><td style="white-space:nowrap; text-align:center;" id="TBL-5-11-2"
+class="td11"> <img
+src="images/040-ConjugatedReplicatedClassRelayPort.png" alt="PIC"
+ /> </td><td style="white-space:nowrap; text-align:left; vertical-align:middle;" id="TBL-5-11-3"
+class="td11">
+ <!--l. 412-->
+ <a
+ id="x21-89106r12"></a>
+ <a
+ id="x21-89107"></a>
+ <div class="lstlisting" id="listing-19"><span class="label"><a
+ id="x21-89108r1"></a></span><span
+class="ec-lmssbx-10x-x-90">ActorClass</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ActorClass6</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89109r2"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Interface</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89110r3"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">conjugated</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Port</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">port19</span><span
+class="ec-lmtt-9">[3]:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ProtocolClass1</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89111r4"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89112r5"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Structure</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89113r6"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x21-89114r7"></a></span><span
+class="ec-lmtt-9">}</span>
+
+</div>
+<!--l. 423--><p class="noindent" > </p></td>
+</tr><tr
+class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
+ style="vertical-align:baseline;" id="TBL-5-12-"><td style="white-space:nowrap; text-align:left; vertical-align:middle;" id="TBL-5-12-1"
+class="td11"> </td>
+
+</tr><tr
+ style="vertical-align:baseline;" id="TBL-5-13-"><td style="white-space:nowrap; text-align:left; vertical-align:middle;" id="TBL-5-13-1"
+class="td11"> </td>
+</tr><tr
+ style="vertical-align:baseline;" id="TBL-5-14-"><td style="white-space:nowrap; text-align:left; vertical-align:middle;" id="TBL-5-14-1"
+class="td11">
+ <!--l. 424--><p class="noindent" > </p></td>
+</tr><tr
+ style="vertical-align:baseline;" id="TBL-5-15-"><td style="white-space:nowrap; text-align:left; vertical-align:middle;" id="TBL-5-15-1"
+class="td11">
+ <!--l. 424--><p class="noindent" > </p></td>
+</tr><tr
+ style="vertical-align:baseline;" id="TBL-5-16-"><td style="white-space:nowrap; text-align:left; vertical-align:middle;" id="TBL-5-16-1"
+class="td11">
+ <!--l. 424--><p class="noindent" > </p></td>
+</tr>
+</table></div>
+<!--l. 427--><p class="noindent" >
+</p>
+<h5 class="subsubsectionHead"><a
+ id="x21-900004.3.3"></a>Reference Ports</h5>
+<!--l. 429--><p class="noindent" >These symbols can only appear on the border of an actor class. Since the type of port is defined in the actor
+class, no textual notation for the Reference Ports exists.
+</p><!--l. 432--><p class="noindent" >The table <a
+href="#x21-900014">4.4<!--tex4ht:ref: tab:reference_port_notation --></a> shows all kinds of reference ports with textual and graphical notation.
+</p>
+<div class="table">
+
+
+<!--l. 435--><p class="noindent" ><a
+ id="x21-900014"></a></p><hr class="float" /><div class="float"
+>
+
+
+ <div class="caption"
+><span class="id">Table&#x00A0;4.4: </span><span
+class="content">Reference Port Notation</span></div><!--tex4ht:label?: x21-900014 -->
+<div class="tabular"> <table id="TBL-10" class="tabular"
+cellspacing="0" cellpadding="0" rules="groups"
+><colgroup id="TBL-10-1g"><col
+id="TBL-10-1" /></colgroup><colgroup id="TBL-10-2g"><col
+id="TBL-10-2" /></colgroup><colgroup id="TBL-10-3g"><col
+id="TBL-10-3" /></colgroup><tr
+class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
+ style="vertical-align:baseline;" id="TBL-10-1-"><td style="white-space:nowrap; text-align:center;" id="TBL-10-1-1"
+class="td11"> <span
+class="ec-lmssbx-10">Element </span></td><td style="white-space:nowrap; text-align:center;" id="TBL-10-1-2"
+class="td11"> <span
+class="ec-lmssbx-10">Graphical Notation </span></td><td style="white-space:nowrap; text-align:center;" id="TBL-10-1-3"
+class="td11"> <span
+class="ec-lmssbx-10">Textual Notation </span></td>
+</tr><tr
+class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
+ style="vertical-align:baseline;" id="TBL-10-2-"><td style="white-space:nowrap; text-align:center;" id="TBL-10-2-1"
+class="td11"> Reference Port </td><td style="white-space:nowrap; text-align:center;" id="TBL-10-2-2"
+class="td11"> <img
+src="images/040-ReferencePort.png" alt="PIC"
+ /> </td><td style="white-space:nowrap; text-align:center;" id="TBL-10-2-3"
+class="td11"> <span
+class="ec-lmsso-10">implicit </span></td>
+</tr><tr
+class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
+ style="vertical-align:baseline;" id="TBL-10-3-"><td style="white-space:nowrap; text-align:center;" id="TBL-10-3-1"
+class="td11"> Conjugated Reference Port </td><td style="white-space:nowrap; text-align:center;" id="TBL-10-3-2"
+class="td11"> <img
+src="images/040-ConjugatedReferencePort.png" alt="PIC"
+ /> </td><td style="white-space:nowrap; text-align:center;" id="TBL-10-3-3"
+class="td11"> <span
+class="ec-lmsso-10">implicit </span></td>
+</tr><tr
+class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
+ style="vertical-align:baseline;" id="TBL-10-4-"><td style="white-space:nowrap; text-align:center;" id="TBL-10-4-1"
+class="td11"> Replicated Reference Port </td><td style="white-space:nowrap; text-align:center;" id="TBL-10-4-2"
+class="td11"> <img
+src="images/040-ReplicatedReferencePort.png" alt="PIC"
+ /> </td><td style="white-space:nowrap; text-align:center;" id="TBL-10-4-3"
+class="td11"> <span
+class="ec-lmsso-10">implicit </span></td>
+</tr><tr
+class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
+ style="vertical-align:baseline;" id="TBL-10-5-"><td style="white-space:nowrap; text-align:center;" id="TBL-10-5-1"
+class="td11"> Conjugated Replicated </td>
+</tr><tr
+ style="vertical-align:baseline;" id="TBL-10-6-"><td style="white-space:nowrap; text-align:center;" id="TBL-10-6-1"
+class="td11"> Reference Port </td><td style="white-space:nowrap; text-align:center;" id="TBL-10-6-2"
+class="td11"> <img
+src="images/040-ConjugatedReplicatedReferencePort.png" alt="PIC"
+ /> </td><td style="white-space:nowrap; text-align:center;" id="TBL-10-6-3"
+class="td11"> <span
+class="ec-lmsso-10">implicit </span></td>
+</tr><tr
+class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
+ style="vertical-align:baseline;" id="TBL-10-7-"><td style="white-space:nowrap; text-align:center;" id="TBL-10-7-1"
+class="td11"> </td></tr></table></div>
+
+
+</div><hr class="endfloat" />
+</div>
+
+
+<!--l. 450--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse16.html" >next</a>] [<a
+href="etrice-docse14.html" >prev</a>] [<a
+href="etrice-docse14.html#tailetrice-docse14.html" >prev-tail</a>] [<a
+href="etrice-docse15.html" >front</a>] [<a
+href="etrice-docch4.html#etrice-docse15.html" >up</a>] </p></div>
+<!--l. 450--><p class="noindent" ><a
+ id="tailetrice-docse15.html"></a> </p>
+</body></html>
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse16.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse16.html
index 1aa63ea..4baee32 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse16.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse16.html
@@ -1,77 +1,412 @@
-<?xml version="1.0" encoding="iso-8859-1" ?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
-<html xmlns="http://www.w3.org/1999/xhtml"
->
-<head><title>Create a launch configuration to start the C code generator</title>
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
-<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
-<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
-<!-- xhtml,3,next,html -->
-<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-06-21 12:20:00" />
-<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
-</head><body
->
-<!--l. 103--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse17.html" >next</a>] [<a
-href="etrice-docse15.html" >prev</a>] [<a
-href="etrice-docse15.html#tailetrice-docse15.html" >prev-tail</a>] [<a
-href="#tailetrice-docse16.html">tail</a>] [<a
-href="etrice-docch5.html#etrice-docse16.html" >up</a>] </p></div>
-<h3 class="sectionHead"><span class="titlemark">5.4 </span> <a
- id="x23-670005.4"></a>Create a launch configuration to start the C code generator</h3>
-<!--l. 105--><p class="noindent" >Other than in Java a launch configuration for the C code generator must be created.
-</p><!--l. 107--><p class="noindent" >From the <span
-class="ec-lmsso-10">Run </span>menu select <span
-class="ec-lmsso-10">Run Configurations</span>
-</p><!--l. 109--><p class="noindent" ><img
-src="images/034-HelloWorldC06.png" alt="PIC"
- />
-</p><!--l. 112--><p class="noindent" >Within the dialog select <span
-class="ec-lmsso-10">e</span><span
-class="ec-lmsso-10">Trice</span> <span
-class="ec-lmsso-10">C Generator </span>and click the <span
-class="ec-lmsso-10">New </span>button to create a new launch
-configuration.
-</p><!--l. 115--><p class="noindent" ><img
-src="images/034-HelloWorldC07.png" alt="PIC"
- />
-</p><!--l. 118--><p class="noindent" >A new configuration should be created. Name it <span
-class="ec-lmsso-10">gen_HelloWorldC </span>and add the model via one of the <span
-class="ec-lmsso-10">add</span>
-buttons.
-</p><!--l. 121--><p class="noindent" ><img
-src="images/034-HelloWorldC08.png" alt="PIC"
- />
-</p><!--l. 124--><p class="noindent" >In the <span
-class="ec-lmsso-10">Refresh </span>tab select <span
-class="ec-lmsso-10">The entire workspace</span>
-</p><!--l. 126--><p class="noindent" ><img
-src="images/034-HelloWorldC09.png" alt="PIC"
- />
-</p><!--l. 129--><p class="noindent" >In the <span
-class="ec-lmsso-10">Common </span>tab select <span
-class="ec-lmsso-10">Shared file </span>and add the <span
-class="ec-lmsso-10">HelloWorldC </span>project via the <span
-class="ec-lmsso-10">Browse </span>button.
-</p><!--l. 132--><p class="noindent" ><img
-src="images/034-HelloWorldC10.png" alt="PIC"
- />
-</p><!--l. 135--><p class="noindent" >Apply your changes. The new configuration should now exist in your workspace.
-</p><!--l. 137--><p class="noindent" ><img
-src="images/034-HelloWorldC11.png" alt="PIC"
- />
-
-
-</p>
-<!--l. 141--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse17.html" >next</a>] [<a
-href="etrice-docse15.html" >prev</a>] [<a
-href="etrice-docse15.html#tailetrice-docse15.html" >prev-tail</a>] [<a
-href="etrice-docse16.html" >front</a>] [<a
-href="etrice-docch5.html#etrice-docse16.html" >up</a>] </p></div>
-<!--l. 141--><p class="noindent" ><a
- id="tailetrice-docse16.html"></a> </p>
-</body></html>
+<?xml version="1.0" encoding="iso-8859-1" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
+<html xmlns="http://www.w3.org/1999/xhtml"
+>
+<head><title>DataClass</title>
+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
+<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
+<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
+<!-- xhtml,3,next,html -->
+<meta name="src" content="etrice-doc.tex" />
+<meta name="date" content="2013-07-04 15:04:00" />
+<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
+</head><body
+>
+<!--l. 450--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse17.html" >next</a>] [<a
+href="etrice-docse15.html" >prev</a>] [<a
+href="etrice-docse15.html#tailetrice-docse15.html" >prev-tail</a>] [<a
+href="#tailetrice-docse16.html">tail</a>] [<a
+href="etrice-docch4.html#etrice-docse16.html" >up</a>] </p></div>
+<h3 class="sectionHead"><span class="titlemark">4.4 </span> <a
+ id="x22-910004.4"></a>DataClass</h3>
+<!--l. 452--><p class="noindent" >
+</p>
+<h4 class="subsectionHead"><span class="titlemark">4.4.1 </span> <a
+ id="x22-920004.4.1"></a>Description</h4>
+<!--l. 454--><p class="noindent" >The <span id="textcolor47"><span
+class="ec-lmssbx-10">DataClass</span></span> enables the modeling of hierarchical complex data types and operations on them. The data
+class is the equivalent to a class in languages like Java or C++, but has less features. The content
+of a data class can always be sent via message between actors (defined as message data in a
+<span id="textcolor48"><span
+class="ec-lmssbx-10">ProtocolClass</span></span>).
+</p><!--l. 458--><p class="noindent" >
+</p>
+<h4 class="subsectionHead"><span class="titlemark">4.4.2 </span> <a
+ id="x22-930004.4.2"></a>Notation</h4>
+<!--l. 460--><p class="noindent" >Example: DataClass using PrimitiveTypes
+</p>
+<!--l. 462-->
+<div class="lstlisting" id="listing-20"><span class="label"><a
+ id="x22-93001r1"></a></span><span
+class="ec-lmssbx-10x-x-90">DataClass</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">DataClass1</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x22-93002r2"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Attribute</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">attribute1</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">int32</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">//</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">attribute</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">of</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">primitive</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">type</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x22-93003r3"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Attribute</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">attribute2</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">float32</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">//</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">attribute</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">of</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">another</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">primitive</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">type</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x22-93004r4"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x22-93005r5"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">//</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">no</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">arguments</span><span
+class="ec-lmtt-9">,</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">no</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">return</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">value</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x22-93006r6"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Operation</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">operation1</span><span
+class="ec-lmtt-9">()</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">void</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x22-93007r7"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">"</span><span
+class="ec-lmtt-9">UserCodeLine1</span><span
+class="ec-lmtt-9">"</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x22-93008r8"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x22-93009r9"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">//</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">argument</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">of</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">primitive</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">type</span><span
+class="ec-lmtt-9">,</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">no</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">return</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">value</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x22-93010r10"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Operation</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">operation2</span><span
+class="ec-lmtt-9">(</span><span
+class="ec-lmtt-9">Param1</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">int32</span><span
+class="ec-lmtt-9">)</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">void</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x22-93011r11"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">"</span><span
+class="ec-lmtt-9">UserCodeLine1</span><span
+class="ec-lmtt-9">"</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x22-93012r12"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x22-93013r13"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">//</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">argument</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">of</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">primitive</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">type</span><span
+class="ec-lmtt-9">,</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">return</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">value</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">of</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">primitive</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">type</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x22-93014r14"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Operation</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">operation3</span><span
+class="ec-lmtt-9">(</span><span
+class="ec-lmtt-9">Param1</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">int32</span><span
+class="ec-lmtt-9">)</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">float64</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x22-93015r15"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">"</span><span
+class="ec-lmtt-9">UserCodeLine1</span><span
+class="ec-lmtt-9">"</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x22-93016r16"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x22-93017r17"></a></span><span
+class="ec-lmtt-9">}</span>
+</div>
+<!--l. 483--><p class="noindent" >Example: DataClass using other DataClasses:
+</p>
+<!--l. 485-->
+<div class="lstlisting" id="listing-21"><span class="label"><a
+ id="x22-93018r1"></a></span><span
+class="ec-lmssbx-10x-x-90">DataClass</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">DataClass2</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x22-93019r2"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Attribute</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">attribute1</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">int32</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">//</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">attribute</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">of</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">primitive</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">type</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x22-93020r3"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Attribute</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">attribute2</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">DataClass1</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">//</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">attribute</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">of</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">DataClass</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x22-93021r4"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x22-93022r5"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">//</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">arguments</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">and</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">return</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">value</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">by</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">value</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x22-93023r6"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Operation</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">operation1</span><span
+class="ec-lmtt-9">(</span><span
+class="ec-lmtt-9">Param1</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">int32</span><span
+class="ec-lmtt-9">,</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">Param2</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">DataClass1</span><span
+class="ec-lmtt-9">)</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">DataClass1</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x22-93024r7"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">"</span><span
+class="ec-lmtt-9">UserCodeLine1</span><span
+class="ec-lmtt-9">"</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x22-93025r8"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x22-93026r9"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">//</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">arguments</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">and</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">return</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">value</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">by</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">reference</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">except</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">for</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">primitive</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">types</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x22-93027r10"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Operation</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">operation2</span><span
+class="ec-lmtt-9">(</span><span
+class="ec-lmtt-9">Param1</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">int32</span><span
+class="ec-lmtt-9">,</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">Param2</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">DataClass1</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">ref</span><span
+class="ec-lmtt-9">)</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">DataClass1</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">ref</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x22-93028r11"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">"</span><span
+class="ec-lmtt-9">UserCodeLine1</span><span
+class="ec-lmtt-9">"</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x22-93029r12"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x22-93030r13"></a></span><span
+class="ec-lmtt-9">}</span>
+</div>
+
+
+<!--l. 502--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse17.html" >next</a>] [<a
+href="etrice-docse15.html" >prev</a>] [<a
+href="etrice-docse15.html#tailetrice-docse15.html" >prev-tail</a>] [<a
+href="etrice-docse16.html" >front</a>] [<a
+href="etrice-docch4.html#etrice-docse16.html" >up</a>] </p></div>
+<!--l. 502--><p class="noindent" ><a
+ id="tailetrice-docse16.html"></a> </p>
+</body></html>
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse17.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse17.html
index 1c91b54..29b9d64 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse17.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse17.html
@@ -1,46 +1,501 @@
-<?xml version="1.0" encoding="iso-8859-1" ?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
-<html xmlns="http://www.w3.org/1999/xhtml"
->
-<head><title>Generate the code</title>
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
-<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
-<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
-<!-- xhtml,3,next,html -->
-<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-06-21 12:20:00" />
-<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
-</head><body
->
-<!--l. 141--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse18.html" >next</a>] [<a
-href="etrice-docse16.html" >prev</a>] [<a
-href="etrice-docse16.html#tailetrice-docse16.html" >prev-tail</a>] [<a
-href="#tailetrice-docse17.html">tail</a>] [<a
-href="etrice-docch5.html#etrice-docse17.html" >up</a>] </p></div>
-<h3 class="sectionHead"><span class="titlemark">5.5 </span> <a
- id="x24-680005.5"></a>Generate the code</h3>
-<!--l. 143--><p class="noindent" >Now you can generate the code as you know it from Java. Right click on the launch configuration and run it as
-<span
-class="ec-lmsso-10">gen_HelloWorldC</span>.
-</p><!--l. 146--><p class="noindent" ><img
-src="images/034-HelloWorldC12.png" alt="PIC"
- />
-</p><!--l. 149--><p class="noindent" >The code should be generated.
-</p><!--l. 151--><p class="noindent" ><img
-src="images/034-HelloWorldC13.png" alt="PIC"
- />
-
-
-</p>
-<!--l. 154--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse18.html" >next</a>] [<a
-href="etrice-docse16.html" >prev</a>] [<a
-href="etrice-docse16.html#tailetrice-docse16.html" >prev-tail</a>] [<a
-href="etrice-docse17.html" >front</a>] [<a
-href="etrice-docch5.html#etrice-docse17.html" >up</a>] </p></div>
-<!--l. 154--><p class="noindent" ><a
- id="tailetrice-docse17.html"></a> </p>
-</body></html>
+<?xml version="1.0" encoding="iso-8859-1" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
+<html xmlns="http://www.w3.org/1999/xhtml"
+>
+<head><title>Layering</title>
+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
+<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
+<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
+<!-- xhtml,3,next,html -->
+<meta name="src" content="etrice-doc.tex" />
+<meta name="date" content="2013-07-04 15:04:00" />
+<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
+</head><body
+>
+<!--l. 502--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse18.html" >next</a>] [<a
+href="etrice-docse16.html" >prev</a>] [<a
+href="etrice-docse16.html#tailetrice-docse16.html" >prev-tail</a>] [<a
+href="#tailetrice-docse17.html">tail</a>] [<a
+href="etrice-docch4.html#etrice-docse17.html" >up</a>] </p></div>
+<h3 class="sectionHead"><span class="titlemark">4.5 </span> <a
+ id="x23-940004.5"></a>Layering</h3>
+<!--l. 504--><p class="noindent" >
+</p>
+<h4 class="subsectionHead"><span class="titlemark">4.5.1 </span> <a
+ id="x23-950004.5.1"></a>Description</h4>
+<!--l. 506--><p class="noindent" >In addition to the actor containment hierarchies, layering provides another method to hierarchically structure a
+software system. Layering and actor hierarchies with port to port connections can be mixed on every level of
+granularity.
+</p><!--l. 510--><p class="noindent" >
+ </p><ol class="enumerate1" >
+ <li
+ class="enumerate" id="x23-95002x1">an actor class can define a Service Provision Point (<span id="textcolor49"><span
+class="ec-lmssbx-10">SPPRef</span></span>) to publish a specific service, defined
+ by a protocol class
+ </li>
+ <li
+ class="enumerate" id="x23-95004x2">an actor class can define a Service Access Point (<span id="textcolor50"><span
+class="ec-lmssbx-10">SAPRef</span></span>) if it needs a service, defined by a
+ protocol class
+ </li>
+ <li
+ class="enumerate" id="x23-95006x3">for a given actor hierarchy, a <span id="textcolor51"><span
+class="ec-lmssbx-10">LayerConnection</span></span> defines which SAP will be satisfied by (connected
+ to) which SPP</li></ol>
+<!--l. 519--><p class="noindent" >
+</p>
+<h4 class="subsectionHead"><span class="titlemark">4.5.2 </span> <a
+ id="x23-960004.5.2"></a>Notation</h4>
+<!--l. 521--><p class="noindent" >For the graphical and textual notation refer to table <a
+href="#x23-960015">4.5<!--tex4ht:ref: tab:layering_notation --></a>
+</p>
+<div class="table">
+
+
+<!--l. 524--><p class="noindent" ><a
+ id="x23-960015"></a></p><hr class="float" /><div class="float"
+>
+
+
+ <div class="caption"
+><span class="id">Table&#x00A0;4.5: </span><span
+class="content">Layering Notation</span></div><!--tex4ht:label?: x23-960015 -->
+<div class="tabular"> <table id="TBL-11" class="tabular"
+cellspacing="0" cellpadding="0" rules="groups"
+><colgroup id="TBL-11-1g"><col
+id="TBL-11-1" /></colgroup><colgroup id="TBL-11-2g"><col
+id="TBL-11-2" /></colgroup><colgroup id="TBL-11-3g"><col
+id="TBL-11-3" /></colgroup><tr
+class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
+ style="vertical-align:baseline;" id="TBL-11-1-"><td style="white-space:nowrap; text-align:left; vertical-align:middle;" id="TBL-11-1-1"
+class="td11"> <!--l. 528--><p class="noindent" ><span
+class="ec-lmssbx-10">Description</span> </p></td><td style="white-space:nowrap; text-align:center;" id="TBL-11-1-2"
+class="td11"> <span
+class="ec-lmssbx-10">Graphical Notation </span></td><td style="white-space:nowrap; text-align:left; vertical-align:middle;" id="TBL-11-1-3"
+class="td11"> <!--l. 528--><p class="noindent" ><span
+class="ec-lmssbx-10">Textual Notation</span> </p></td>
+</tr><tr
+class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
+ style="vertical-align:baseline;" id="TBL-11-2-"><td style="white-space:nowrap; text-align:left; vertical-align:middle;" id="TBL-11-2-1"
+class="td11">
+ <div class="flushleft"
+>
+ <!--l. 530--><p class="noindent" >
+ The layer
+ connections in this
+ model define which
+ services are provided
+ by the <span
+class="ec-lmsso-10">ServiceLayer</span>
+ (<span
+class="ec-lmsso-10">digitalIO </span>and
+ <span
+class="ec-lmsso-10">timer</span>)</p></div>
+ <!--l. 533--><p class="noindent" > </p></td><td style="white-space:nowrap; text-align:center;" id="TBL-11-2-2"
+class="td11"> <img
+src="images/040-LayeringModel.png" alt="PIC"
+ /> </td><td style="white-space:nowrap; text-align:left; vertical-align:middle;" id="TBL-11-2-3"
+class="td11"> <!--l. 537-->
+ <div class="lstlisting" id="listing-22"><span class="label"><a
+ id="x23-96002r1"></a></span><span
+class="ec-lmssbx-10x-x-90">ActorClass</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">Mode1</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x23-96003r2"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Structure</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x23-96004r3"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">ActorRef</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">Services</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ServiceLayer</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x23-96005r4"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">ActorRef</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">Application</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ApplicationLayer</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x23-96006r5"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">LayerConnection</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">ref</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">Application</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">satisfied_by</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">Services</span><span
+class="ec-lmtt-9">.</span><span
+class="ec-lmtt-9">timer</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x23-96007r6"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">LayerConnection</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">ref</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">Application</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">satisfied_by</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">Services</span><span
+class="ec-lmtt-9">.</span><span
+class="ec-lmtt-9">digitalIO</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x23-96008r7"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x23-96009r8"></a></span><span
+class="ec-lmtt-9">}</span>
+
+</div>
+<!--l. 548--><p class="noindent" > </p></td>
+</tr><tr
+class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
+ style="vertical-align:baseline;" id="TBL-11-3-"><td style="white-space:nowrap; text-align:left; vertical-align:middle;" id="TBL-11-3-1"
+class="td11">
+ <div class="flushleft"
+>
+ <!--l. 549--><p class="noindent" >
+ The
+ implementation of
+ the services (SPPs)
+ can be delegated to
+ sub actors. In this
+ case the actor
+ <span
+class="ec-lmsso-10">ServiceLayer </span>relays
+ (delegates) the
+ implementation
+ services <span
+class="ec-lmsso-10">digitalIO</span>
+ and <span
+class="ec-lmsso-10">timer </span>to sub
+ actors</p></div>
+ <!--l. 553--><p class="noindent" > </p></td><td style="white-space:nowrap; text-align:center;" id="TBL-11-3-2"
+class="td11"> <img
+src="images/040-LayeringServiceLayer.png" alt="PIC"
+ /> </td><td style="white-space:nowrap; text-align:left; vertical-align:middle;" id="TBL-11-3-3"
+class="td11"> <!--l. 556-->
+ <div class="lstlisting" id="listing-23"><span class="label"><a
+ id="x23-96010r1"></a></span><span
+class="ec-lmssbx-10x-x-90">ActorClass</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ServiceLayer</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x23-96011r2"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Interface</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x23-96012r3"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">SPP</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">timer</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">TimerProtocol</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x23-96013r4"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">SPP</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">digitalIO</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">DigitalIOProtocol</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x23-96014r5"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x23-96015r6"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Structure</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x23-96016r7"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">ActorRef</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">Timer</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">TimerService</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x23-96017r8"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">ActorRef</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">DigIO</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">DifitalIOService</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x23-96018r9"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">LayerConnection</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">relay_sap</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">timer</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">satisfied_by</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">Timer</span><span
+class="ec-lmtt-9">.</span><span
+class="ec-lmtt-9">timer</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x23-96019r10"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">LayerConnection</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">relay_sap</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">digitalIO</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">satisfied_by</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">DigIO</span><span
+class="ec-lmtt-9">.</span><span
+class="ec-lmtt-9">digitalIO</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x23-96020r11"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x23-96021r12"></a></span><span
+class="ec-lmtt-9">}</span>
+
+</div>
+<!--l. 571--><p class="noindent" > </p></td>
+</tr><tr
+class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
+ style="vertical-align:baseline;" id="TBL-11-4-"><td style="white-space:nowrap; text-align:left; vertical-align:middle;" id="TBL-11-4-1"
+class="td11">
+ <div class="flushleft"
+>
+ <!--l. 572--><p class="noindent" >
+ Every Actor inside
+ the
+ <span
+class="ec-lmsso-10">ApplicationLayer</span>
+ that contains an
+ SAP with the same
+ protocol as <span
+class="ec-lmsso-10">timer </span>or
+ <span
+class="ec-lmsso-10">digitalIO </span>will be
+ connected to the
+ specified SPP</p></div>
+ <!--l. 575--><p class="noindent" > </p></td><td style="white-space:nowrap; text-align:center;" id="TBL-11-4-2"
+class="td11"> <img
+src="images/040-LayeringApplicationLayer.png" alt="PIC"
+ /> </td><td style="white-space:nowrap; text-align:left; vertical-align:middle;" id="TBL-11-4-3"
+class="td11"> <!--l. 578-->
+ <div class="lstlisting" id="listing-24"><span class="label"><a
+ id="x23-96022r1"></a></span><span
+class="ec-lmssbx-10x-x-90">ActorClass</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ApplicationLayer</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x23-96023r2"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Structure</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x23-96024r3"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">ActorRef</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">function1</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">A</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x23-96025r4"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">ActorRef</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">function2</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">B</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x23-96026r5"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">ActorRef</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">function3</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">C</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x23-96027r6"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">ActorRef</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">function4</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">D</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x23-96028r7"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x23-96029r8"></a></span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x23-96030r9"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x23-96031r10"></a></span><span
+class="ec-lmssbx-10x-x-90">ActorClass</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">A</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x23-96032r11"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Structure</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x23-96033r12"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">SAP</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">timerSAP</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">TimerProtocol</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x23-96034r13"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x23-96035r14"></a></span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x23-96036r15"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x23-96037r16"></a></span><span
+class="ec-lmssbx-10x-x-90">ActorClass</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">B</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x23-96038r17"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Structure</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x23-96039r18"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">SAP</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">timerSAP</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">TimerProtocol</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x23-96040r19"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">SAP</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">digitalSAP</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">DigitalIOProtocol</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x23-96041r20"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x23-96042r21"></a></span><span
+class="ec-lmtt-9">}</span>
+
+</div>
+<!--l. 602--><p class="noindent" > </p></td>
+</tr><tr
+class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
+ style="vertical-align:baseline;" id="TBL-11-5-"><td style="white-space:nowrap; text-align:left; vertical-align:middle;" id="TBL-11-5-1"
+class="td11"> </td></tr></table></div>
+
+
+</div><hr class="endfloat" />
+</div>
+
+
+<!--l. 606--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse18.html" >next</a>] [<a
+href="etrice-docse16.html" >prev</a>] [<a
+href="etrice-docse16.html#tailetrice-docse16.html" >prev-tail</a>] [<a
+href="etrice-docse17.html" >front</a>] [<a
+href="etrice-docch4.html#etrice-docse17.html" >up</a>] </p></div>
+<!--l. 606--><p class="noindent" ><a
+ id="tailetrice-docse17.html"></a> </p>
+</body></html>
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse18.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse18.html
index a6df71d..c22a7e2 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse18.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse18.html
@@ -1,51 +1,463 @@
-<?xml version="1.0" encoding="iso-8859-1" ?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
-<html xmlns="http://www.w3.org/1999/xhtml"
->
-<head><title>Setup the include path</title>
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
-<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
-<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
-<!-- xhtml,3,next,html -->
-<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-06-21 12:20:00" />
-<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
-</head><body
->
-<!--l. 154--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse19.html" >next</a>] [<a
-href="etrice-docse17.html" >prev</a>] [<a
-href="etrice-docse17.html#tailetrice-docse17.html" >prev-tail</a>] [<a
-href="#tailetrice-docse18.html">tail</a>] [<a
-href="etrice-docch5.html#etrice-docse18.html" >up</a>] </p></div>
-<h3 class="sectionHead"><span class="titlemark">5.6 </span> <a
- id="x25-690005.6"></a>Setup the include path</h3>
-<!--l. 156--><p class="noindent" >Before you can build the application you must setup the include path for the runtime system.
-Right click the project and select <span
-class="ec-lmsso-10">Properties</span>. Add the include path as described in <span
-class="ec-lmsso-10">setting up the</span>
-<span
-class="ec-lmsso-10">workspace</span>.
-</p><!--l. 160--><p class="noindent" ><img
-src="images/034-HelloWorldC14.png" alt="PIC"
- />
-</p><!--l. 163--><p class="noindent" >Add the runtime library.
-</p><!--l. 165--><p class="noindent" ><img
-src="images/034-HelloWorldC15.png" alt="PIC"
- />
-</p><!--l. 168--><p class="noindent" >Recognize the name of the library ("org.eclipse.etrice.runtime.c"). The library file on your disk is
-"liborg.eclipse.etrice.runtime.c.a".
-
-
-</p>
-<!--l. 171--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse19.html" >next</a>] [<a
-href="etrice-docse17.html" >prev</a>] [<a
-href="etrice-docse17.html#tailetrice-docse17.html" >prev-tail</a>] [<a
-href="etrice-docse18.html" >front</a>] [<a
-href="etrice-docch5.html#etrice-docse18.html" >up</a>] </p></div>
-<!--l. 171--><p class="noindent" ><a
- id="tailetrice-docse18.html"></a> </p>
-</body></html>
+<?xml version="1.0" encoding="iso-8859-1" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
+<html xmlns="http://www.w3.org/1999/xhtml"
+>
+<head><title>Finite State Machines</title>
+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
+<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
+<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
+<!-- xhtml,3,next,html -->
+<meta name="src" content="etrice-doc.tex" />
+<meta name="date" content="2013-07-04 15:04:00" />
+<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
+</head><body
+>
+<!--l. 606--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docch5.html" >next</a>] [<a
+href="etrice-docse17.html" >prev</a>] [<a
+href="etrice-docse17.html#tailetrice-docse17.html" >prev-tail</a>] [<a
+href="#tailetrice-docse18.html">tail</a>] [<a
+href="etrice-docch4.html#etrice-docse18.html" >up</a>] </p></div>
+<h3 class="sectionHead"><span class="titlemark">4.6 </span> <a
+ id="x24-970004.6"></a>Finite State Machines</h3>
+<!--l. 608--><p class="noindent" >
+</p>
+<h4 class="subsectionHead"><span class="titlemark">4.6.1 </span> <a
+ id="x24-980004.6.1"></a>Description</h4>
+<!--l. 610--><p class="noindent" >Definition from <a
+href="http://en.wikipedia.org/wiki/Finite-state_machine" >Wikipedia</a>:
+</p><!--l. 612--><p class="noindent" >
+ </p><div class="quote">
+ <!--l. 613--><p class="noindent" >A finite-state machine (FSM) or finite-state automaton (plural: automata), or simply a
+ state machine, is a mathematical model used to design computer programs and digital logic
+ circuits. It is conceived as an abstract machine that can be in one of a finite number of
+ states. The machine is in only one state at a time; the state it is in at any given time
+ is called the current state. It can change from one state to another when initiated by a
+ triggering event or condition, this is called a transition. A particular FSM is defined by a
+ list of the possible states it can transition to from each state, and the triggering condition
+ for each transition.
+ </p><!--l. 621--><p class="noindent" >In ROOM each actor class can implement its behavior using a state machine. Events
+ occurring at the end ports of an actor will be forwarded to and processed by the state
+ machine. Events possibly trigger state transitions.</p></div>
+<!--l. 626--><p class="noindent" >
+</p>
+<h4 class="subsectionHead"><span class="titlemark">4.6.2 </span> <a
+ id="x24-990004.6.2"></a>Motivation</h4>
+<!--l. 628--><p class="noindent" >For event driven systems a finite state machine is ideal for processing the stream of events. Typically during
+processing new events are produced which are sent to peer actors.
+</p><!--l. 631--><p class="noindent" >We distinguish flat and hierarchical state machines.
+</p><!--l. 633--><p class="noindent" >
+</p>
+<h4 class="subsectionHead"><span class="titlemark">4.6.3 </span> <a
+ id="x24-1000004.6.3"></a>Notation</h4>
+<!--l. 635--><p class="noindent" >We distinguish flat finite state machines (with just one level of hierarchy) and hierarchical ones.
+
+
+</p><!--l. 637--><p class="noindent" >
+</p>
+<h5 class="subsubsectionHead"><a
+ id="x24-1010004.6.3"></a>Flat Finite State Machine</h5>
+<!--l. 639--><p class="noindent" >The simpler flat finite state machines are composed of the elements shown in table <a
+href="#x24-1010016">4.6<!--tex4ht:ref: tab:flat_fsm_notation --></a>.
+</p>
+<div class="table">
+
+
+<!--l. 642--><p class="noindent" ><a
+ id="x24-1010016"></a></p><hr class="float" /><div class="float"
+>
+
+
+ <div class="caption"
+><span class="id">Table&#x00A0;4.6: </span><span
+class="content">Flat finite state machine notation</span></div><!--tex4ht:label?: x24-1010016 -->
+<div class="tabular"> <table id="TBL-12" class="tabular"
+cellspacing="0" cellpadding="0" rules="groups"
+><colgroup id="TBL-12-1g"><col
+id="TBL-12-1" /></colgroup><colgroup id="TBL-12-2g"><col
+id="TBL-12-2" /></colgroup><colgroup id="TBL-12-3g"><col
+id="TBL-12-3" /></colgroup><tr
+class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
+ style="vertical-align:baseline;" id="TBL-12-1-"><td style="white-space:nowrap; text-align:left; vertical-align:middle;" id="TBL-12-1-1"
+class="td11"> <!--l. 646--><p class="noindent" ><span
+class="ec-lmssbx-10">Description</span> </p></td><td style="white-space:nowrap; text-align:center;" id="TBL-12-1-2"
+class="td11"> <span
+class="ec-lmssbx-10">Graphical Notation </span></td><td style="white-space:nowrap; text-align:left; vertical-align:middle;" id="TBL-12-1-3"
+class="td11"> <!--l. 646--><p class="noindent" ><span
+class="ec-lmssbx-10">Textual Notation</span> </p></td>
+</tr><tr
+class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
+ style="vertical-align:baseline;" id="TBL-12-2-"><td style="white-space:nowrap; text-align:left; vertical-align:middle;" id="TBL-12-2-1"
+class="td11"> <!--l. 648--><p class="noindent" >State </p></td><td style="white-space:nowrap; text-align:center;" id="TBL-12-2-2"
+class="td11"> <img
+src="images/040-State.jpg" alt="PIC"
+ /> </td><td style="white-space:nowrap; text-align:left; vertical-align:middle;" id="TBL-12-2-3"
+class="td11"> <!--l. 649-->
+ <div class="lstlisting" id="listing-25"><span class="label"><a
+ id="x24-101002r1"></a></span><span
+class="ec-lmssbx-10x-x-90">State</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">SomeState</span>
+
+</div>
+<!--l. 654--><p class="noindent" > </p></td>
+</tr><tr
+class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
+ style="vertical-align:baseline;" id="TBL-12-3-"><td style="white-space:nowrap; text-align:left; vertical-align:middle;" id="TBL-12-3-1"
+class="td11"> <!--l. 655--><p class="noindent" >InitialPoint </p></td><td style="white-space:nowrap; text-align:center;" id="TBL-12-3-2"
+class="td11"> <img
+src="images/040-InitialPoint.jpg" alt="PIC"
+ /> </td><td style="white-space:nowrap; text-align:left; vertical-align:middle;" id="TBL-12-3-3"
+class="td11"> <!--l. 655--><p class="noindent" ><span
+class="ec-lmsso-10">implicit</span> </p></td>
+</tr><tr
+class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
+ style="vertical-align:baseline;" id="TBL-12-4-"><td style="white-space:nowrap; text-align:left; vertical-align:middle;" id="TBL-12-4-1"
+class="td11"> <!--l. 657--><p class="noindent" >TransitionPoint </p></td><td style="white-space:nowrap; text-align:center;" id="TBL-12-4-2"
+class="td11"> <img
+src="images/040-TransitionPoint.jpg" alt="PIC"
+ /> </td><td style="white-space:nowrap; text-align:left; vertical-align:middle;" id="TBL-12-4-3"
+class="td11"> <!--l. 658-->
+ <div class="lstlisting" id="listing-26"><span class="label"><a
+ id="x24-101003r1"></a></span><span
+class="ec-lmssbx-10x-x-90">TransitionPoint</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">tp</span>
+
+</div>
+<!--l. 663--><p class="noindent" > </p></td>
+</tr><tr
+class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
+ style="vertical-align:baseline;" id="TBL-12-5-"><td style="white-space:nowrap; text-align:left; vertical-align:middle;" id="TBL-12-5-1"
+class="td11"> <!--l. 664--><p class="noindent" >ChoicePoint </p></td><td style="white-space:nowrap; text-align:center;" id="TBL-12-5-2"
+class="td11"> <img
+src="images/040-ChoicePoint.jpg" alt="PIC"
+ /> </td><td style="white-space:nowrap; text-align:left; vertical-align:middle;" id="TBL-12-5-3"
+class="td11"> <!--l. 665-->
+ <div class="lstlisting" id="listing-27"><span class="label"><a
+ id="x24-101004r1"></a></span><span
+class="ec-lmssbx-10x-x-90">ChoicePoint</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">cp</span>
+
+</div>
+<!--l. 670--><p class="noindent" > </p></td>
+</tr><tr
+class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
+ style="vertical-align:baseline;" id="TBL-12-6-"><td style="white-space:nowrap; text-align:left; vertical-align:middle;" id="TBL-12-6-1"
+class="td11"> <!--l. 671--><p class="noindent" >Initial Transition </p></td><td style="white-space:nowrap; text-align:center;" id="TBL-12-6-2"
+class="td11"> <img
+src="images/040-InitialTransition.jpg" alt="PIC"
+ /> </td><td style="white-space:nowrap; text-align:left; vertical-align:middle;" id="TBL-12-6-3"
+class="td11"> <!--l. 672-->
+ <div class="lstlisting" id="listing-28"><span class="label"><a
+ id="x24-101005r1"></a></span><span
+class="ec-lmssbx-10x-x-90">Transition</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">init</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">initial</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">-&#x003E;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">Initial</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span>
+
+</div>
+<!--l. 677--><p class="noindent" > </p></td>
+</tr><tr
+class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
+ style="vertical-align:baseline;" id="TBL-12-7-"><td style="white-space:nowrap; text-align:left; vertical-align:middle;" id="TBL-12-7-1"
+class="td11"> <!--l. 678--><p class="noindent" >Triggered Transition </p></td><td style="white-space:nowrap; text-align:center;" id="TBL-12-7-2"
+class="td11"> <img
+src="images/040-TriggeredTransition.jpg" alt="PIC"
+ /> </td><td style="white-space:nowrap; text-align:left; vertical-align:middle;" id="TBL-12-7-3"
+class="td11"> <!--l. 679-->
+ <div class="lstlisting" id="listing-29"><span class="label"><a
+ id="x24-101006r1"></a></span><span
+class="ec-lmssbx-10x-x-90">Transition</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">tr0</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">initial</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">-&#x003E;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">DoingThis</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x24-101007r2"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">triggers</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x24-101008r3"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x003C;</span><span
+class="ec-lmtt-9">doThis</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">fct</span><span
+class="ec-lmtt-9">&#x003E;</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x24-101009r4"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x24-101010r5"></a></span><span
+class="ec-lmtt-9">}</span>
+
+</div>
+<!--l. 688--><p class="noindent" > </p></td>
+</tr><tr
+class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
+ style="vertical-align:baseline;" id="TBL-12-8-"><td style="white-space:nowrap; text-align:left; vertical-align:middle;" id="TBL-12-8-1"
+class="td11"> </td></tr></table></div>
+
+
+</div><hr class="endfloat" />
+</div>
+<h5 class="subsubsectionHead"><a
+ id="x24-1020004.6.3"></a>Hierarchical Finite State Machine</h5>
+<!--l. 695--><p class="noindent" >The hierarchical finite state machine adds the notion of a sub state machine nested in a state. A few modeling
+elements listed in table <a
+href="#x24-1020017">4.7<!--tex4ht:ref: tab:hier_fsm_notation --></a> are added to the set listed above.
+</p>
+<div class="table">
+
+
+<!--l. 699--><p class="noindent" ><a
+ id="x24-1020017"></a></p><hr class="float" /><div class="float"
+>
+
+
+ <div class="caption"
+><span class="id">Table&#x00A0;4.7: </span><span
+class="content">Additional notation elements of hierarchical finite state machines</span></div><!--tex4ht:label?: x24-1020017 -->
+<div class="tabular"> <table id="TBL-13" class="tabular"
+cellspacing="0" cellpadding="0" rules="groups"
+><colgroup id="TBL-13-1g"><col
+id="TBL-13-1" /></colgroup><colgroup id="TBL-13-2g"><col
+id="TBL-13-2" /></colgroup><colgroup id="TBL-13-3g"><col
+id="TBL-13-3" /></colgroup><tr
+class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
+ style="vertical-align:baseline;" id="TBL-13-1-"><td style="white-space:nowrap; text-align:left; vertical-align:middle;" id="TBL-13-1-1"
+class="td11"> <!--l. 703--><p class="noindent" ><span
+class="ec-lmssbx-10">Description</span> </p></td><td style="white-space:nowrap; text-align:center;" id="TBL-13-1-2"
+class="td11"> <span
+class="ec-lmssbx-10">Graphical Notation </span></td><td style="white-space:nowrap; text-align:left; vertical-align:middle;" id="TBL-13-1-3"
+class="td11"> <!--l. 703--><p class="noindent" ><span
+class="ec-lmssbx-10">Textual Notation</span> </p></td>
+</tr><tr
+class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
+ style="vertical-align:baseline;" id="TBL-13-2-"><td style="white-space:nowrap; text-align:left; vertical-align:middle;" id="TBL-13-2-1"
+class="td11"> <!--l. 705--><p class="noindent" >State with sub state
+ machine </p></td><td style="white-space:nowrap; text-align:center;" id="TBL-13-2-2"
+class="td11"> <!--tex4ht:inline--><div class="tabular"> <table id="TBL-14" class="tabular"
+cellspacing="0" cellpadding="0"
+><colgroup id="TBL-14-1g"><col
+id="TBL-14-1" /></colgroup><tr
+ style="vertical-align:baseline;" id="TBL-14-1-"><td style="white-space:nowrap; text-align:center;" id="TBL-14-1-1"
+class="td00">Parent State</td></tr><tr
+ style="vertical-align:baseline;" id="TBL-14-2-"><td style="white-space:nowrap; text-align:center;" id="TBL-14-2-1"
+class="td00"> <img
+src="images/040-StateWithSubFSM.jpg" alt="PIC"
+ /></td></tr></table> </div> </td><td style="white-space:nowrap; text-align:left; vertical-align:middle;" id="TBL-13-2-3"
+class="td11"> <div class="tabular"> <table id="TBL-15" class="tabular"
+cellspacing="0" cellpadding="0"
+><colgroup id="TBL-15-1g"><col
+id="TBL-15-1" /></colgroup><tr
+ style="vertical-align:baseline;" id="TBL-15-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-15-1-1"
+class="td11">Sub state machine </td>
+</tr><tr
+ style="vertical-align:baseline;" id="TBL-15-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-15-2-1"
+class="td11"><!--l. 710--> <!--l. 710--><p class="noindent" ><div class="lstlisting" id="listing-30"><span class="label"><a
+ id="x24-102002r1"></a></span><span
+class="ec-lmssbx-10x-x-90">State</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">Running</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x24-102003r2"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">subgraph</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x24-102004r3"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Transition</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">init</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">initial</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">-&#x003E;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">Process</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x24-102005r4"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">State</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">Process</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x24-102006r5"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x24-102007r6"></a></span><span
+class="ec-lmtt-9">}</span>
+ </p> </div></td>
+</tr></table></div>
+ <!--l. 722--><p class="noindent" > </p></td>
+</tr><tr
+class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
+ style="vertical-align:baseline;" id="TBL-13-3-"><td style="white-space:nowrap; text-align:left; vertical-align:middle;" id="TBL-13-3-1"
+class="td11"> <!--l. 723--><p class="noindent" >Entry Point </p></td><td style="white-space:nowrap; text-align:center;" id="TBL-13-3-2"
+class="td11"> <!--tex4ht:inline--><div class="tabular"> <table id="TBL-16" class="tabular"
+cellspacing="0" cellpadding="0"
+><colgroup id="TBL-16-1g"><col
+id="TBL-16-1" /></colgroup><tr
+ style="vertical-align:baseline;" id="TBL-16-1-"><td style="white-space:nowrap; text-align:center;" id="TBL-16-1-1"
+class="td00">In sub state machine</td></tr><tr
+ style="vertical-align:baseline;" id="TBL-16-2-"><td style="white-space:nowrap; text-align:center;" id="TBL-16-2-1"
+class="td00"> <img
+src="images/040-EntryPoint.jpg" alt="PIC"
+ /></td></tr></table> </div> </td><td style="white-space:nowrap; text-align:left; vertical-align:middle;" id="TBL-13-3-3"
+class="td11"> <!--l. 726-->
+ <div class="lstlisting" id="listing-31"><span class="label"><a
+ id="x24-102008r1"></a></span><span
+class="ec-lmssbx-10x-x-90">EntryPoint</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">reInit</span>
+
+</div>
+<!--l. 730--><p class="noindent" > </p></td>
+</tr><tr
+class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
+ style="vertical-align:baseline;" id="TBL-13-4-"><td style="white-space:nowrap; text-align:left; vertical-align:middle;" id="TBL-13-4-1"
+class="td11"> <!--l. 731--><p class="noindent" >Exit Point </p></td><td style="white-space:nowrap; text-align:center;" id="TBL-13-4-2"
+class="td11"> <img
+src="images/040-ExitPoint.jpg" alt="PIC"
+ /> </td><td style="white-space:nowrap; text-align:left; vertical-align:middle;" id="TBL-13-4-3"
+class="td11"> <!--l. 733-->
+ <div class="lstlisting" id="listing-32"><span class="label"><a
+ id="x24-102009r1"></a></span><span
+class="ec-lmssbx-10x-x-90">ExitPoint</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">tp0</span>
+
+</div>
+<!--l. 736--><p class="noindent" > </p></td>
+</tr><tr
+class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
+ style="vertical-align:baseline;" id="TBL-13-5-"><td style="white-space:nowrap; text-align:left; vertical-align:middle;" id="TBL-13-5-1"
+class="td11"> </td></tr></table>
+</div>
+
+
+</div><hr class="endfloat" />
+</div>
+<h4 class="subsectionHead"><span class="titlemark">4.6.4 </span> <a
+ id="x24-1030004.6.4"></a>Examples</h4>
+<hr class="figure" /><div class="figure"
+>
+
+
+<a
+ id="x24-1030011"></a>
+
+
+<!--l. 743--><p class="noindent" ><img
+src="images/040-FlatFSM.jpg" alt="PIC"
+ />
+<br /> </p><div class="caption"
+><span class="id">Figure&#x00A0;4.1: </span><span
+class="content">Example of a flat finite state machine</span></div><!--tex4ht:label?: x24-1030011 -->
+
+
+</div><hr class="endfigure" />
+<hr class="figure" /><div class="figure"
+>
+
+
+<a
+ id="x24-1030022"></a>
+
+
+<!--l. 748--><p class="noindent" ><img
+src="images/040-HierarchicalFSMTop.jpg" alt="PIC"
+ />
+<br /> </p><div class="caption"
+><span class="id">Figure&#x00A0;4.2: </span><span
+class="content">Example of a hierarchical finite state machine &#8211; top level</span></div><!--tex4ht:label?: x24-1030022 -->
+
+
+</div><hr class="endfigure" />
+<hr class="figure" /><div class="figure"
+>
+
+
+<a
+ id="x24-1030033"></a>
+
+
+<!--l. 753--><p class="noindent" ><img
+src="images/040-HierarchicalFSMInitializing.jpg" alt="PIC"
+ />
+<br /> </p><div class="caption"
+><span class="id">Figure&#x00A0;4.3: </span><span
+class="content">Hierarchical finite state machine &#8211; sub state machine of <span
+class="ec-lmsso-10">Initializing</span></span></div><!--tex4ht:label?: x24-1030033 -->
+
+
+</div><hr class="endfigure" />
+<hr class="figure" /><div class="figure"
+>
+
+
+<a
+ id="x24-1030044"></a>
+
+
+<!--l. 758--><p class="noindent" ><img
+src="images/040-HierarchicalFSMRunning.jpg" alt="PIC"
+ />
+<br /> </p><div class="caption"
+><span class="id">Figure&#x00A0;4.4: </span><span
+class="content">Hierarchical finite state machine &#8211; sub state machine of <span
+class="ec-lmsso-10">Running</span></span></div><!--tex4ht:label?: x24-1030044 -->
+
+
+</div><hr class="endfigure" />
+
+
+<!--l. 71--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docch5.html" >next</a>] [<a
+href="etrice-docse17.html" >prev</a>] [<a
+href="etrice-docse17.html#tailetrice-docse17.html" >prev-tail</a>] [<a
+href="etrice-docse18.html" >front</a>] [<a
+href="etrice-docch4.html#etrice-docse18.html" >up</a>] </p></div>
+<!--l. 71--><p class="noindent" ><a
+ id="tailetrice-docse18.html"></a> </p>
+</body></html>
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse19.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse19.html
index 2123b70..aca4899 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse19.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse19.html
@@ -1,42 +1,367 @@
-<?xml version="1.0" encoding="iso-8859-1" ?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
-<html xmlns="http://www.w3.org/1999/xhtml"
->
-<head><title>Build and run the model</title>
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
-<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
-<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
-<!-- xhtml,3,next,html -->
-<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-06-21 12:20:00" />
-<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
-</head><body
->
-<!--l. 171--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse20.html" >next</a>] [<a
-href="etrice-docse18.html" >prev</a>] [<a
-href="etrice-docse18.html#tailetrice-docse18.html" >prev-tail</a>] [<a
-href="#tailetrice-docse19.html">tail</a>] [<a
-href="etrice-docch5.html#etrice-docse19.html" >up</a>] </p></div>
-<h3 class="sectionHead"><span class="titlemark">5.7 </span> <a
- id="x26-700005.7"></a>Build and run the model</h3>
-<!--l. 173--><p class="noindent" >Now you can build the application. Click the build button to build the application. Run the application as
-<span
-class="ec-lmsso-10">Local C/C++ Application</span>. Verify the output.
-</p><!--l. 177--><p class="noindent" ><img
-src="images/034-HelloWorldC16.png" alt="PIC"
- />
-
-
-</p>
-<!--l. 180--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse20.html" >next</a>] [<a
-href="etrice-docse18.html" >prev</a>] [<a
-href="etrice-docse18.html#tailetrice-docse18.html" >prev-tail</a>] [<a
-href="etrice-docse19.html" >front</a>] [<a
-href="etrice-docch5.html#etrice-docse19.html" >up</a>] </p></div>
-<!--l. 180--><p class="noindent" ><a
- id="tailetrice-docse19.html"></a> </p>
-</body></html>
+<?xml version="1.0" encoding="iso-8859-1" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
+<html xmlns="http://www.w3.org/1999/xhtml"
+>
+<head><title>Automatic Diagram Layout with KIELER</title>
+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
+<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
+<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
+<!-- xhtml,3,next,html -->
+<meta name="src" content="etrice-doc.tex" />
+<meta name="date" content="2013-07-04 15:04:00" />
+<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
+</head><body
+>
+<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse20.html" >next</a>] [<a
+href="etrice-docch5.html" >prev</a>] [<a
+href="etrice-docch5.html#tailetrice-docch5.html" >prev-tail</a>] [<a
+href="#tailetrice-docse19.html">tail</a>] [<a
+href="etrice-docch5.html#etrice-docse19.html" >up</a>] </p></div>
+<h3 class="sectionHead"><span class="titlemark">5.1 </span> <a
+ id="x26-1050005.1"></a>Automatic Diagram Layout with KIELER</h3>
+<!--l. 3--><p class="noindent" >
+</p>
+<h4 class="subsectionHead"><span class="titlemark">5.1.1 </span> <a
+ id="x26-1060005.1.1"></a>Overview</h4>
+<!--l. 5--><p class="noindent" >eTrice now provides a new feature of automatic layout of the ROOM diagrams in its graphical editors. This
+helps in improving the pragmatics of the diagrams and frees the user from the burden of manually lay-outing
+the diagrams on the canvas.
+</p><!--l. 9--><p class="noindent" >The automatic lay-outing has been provided with the help of the well known KIELER framework, which
+focuses on the pragmatics of model-based system design, which can improve comprehensibility
+of diagrams, improve development and maintenance time, and improve the analysis of dynamic
+behavior.
+</p><!--l. 13--><p class="noindent" >This chapter will answer the following questions </p>
+ <ul class="itemize1">
+ <li class="itemize"><a
+href="#x26-1070005.1.2">&#8221;How to perform automatic layout in the graphical editors of eTrice?&#8221;</a>
+ </li>
+ <li class="itemize"><a
+href="#x26-1080005.1.3">&#8221;What are layout options?&#8221;</a>
+ </li>
+ <li class="itemize"><a
+href="#x26-1090005.1.4">&#8221;How to configure the layout options to alter the diagram layout as desired?&#8221;</a></li></ul>
+<!--l. 21--><p class="noindent" >Moreover, some <a
+href="#x26-1140005.1.5">&#8221;special layout options&#8221;</a> will also be discussed.
+
+
+</p><!--l. 23--><p class="noindent" >
+</p>
+<h4 class="subsectionHead"><span class="titlemark">5.1.2 </span> <a
+ id="x26-1070005.1.2"></a>Performing Automatic Layout</h4>
+<!--l. 26--><p class="noindent" >Automatic layout could be performed in eTrice graphical editors using the command to layout the current
+diagram.
+</p><!--l. 29--><p class="noindent" >This command is available in
+</p>
+ <ul class="itemize1">
+ <li class="itemize">The context menu of the diagrams
+ </li>
+ <li class="itemize">Using the <span
+class="ec-lmsso-10">Ctrl+R L </span>shortcut.</li></ul>
+<!--l. 36--><p class="noindent" >Additionally, an entry in the context menu allows to layout only a selected part of the diagram.
+</p><!--l. 38--><p class="noindent" >
+</p>
+<h4 class="subsectionHead"><span class="titlemark">5.1.3 </span> <a
+ id="x26-1080005.1.3"></a>Layout Options</h4>
+<!--l. 41--><p class="noindent" >A layout option is a customization point for the layout algorithms, with a specific data type and optionally a
+default value, used to affect how the active layout algorithm computes concrete coordinates for the graph
+elements.
+</p><!--l. 45--><p class="noindent" >User-configurable layout options for a particular diagram object can be viewed and configured through the
+Layout View.The Layout View can be opened from the context menu of a selected diagram object by clicking
+the <span
+class="ec-lmsso-10">Show Layout View </span>entry.
+</p><!--l. 49--><p class="noindent" >On opening the layout view, and selecting any layout option, a description of the layout option is available in
+the footer of eclipse SDK. This is shown in figure <a
+href="#x26-1080011">5.1<!--tex4ht:ref: fig:layout_options --></a>.
+</p>
+<hr class="figure" /><div class="figure"
+>
+
+
+<a
+ id="x26-1080011"></a>
+
+
+
+<!--l. 53--><p class="noindent" ><img
+src="images/043-LayoutOptionDescription.png" alt="PIC"
+ />
+<br /> </p><div class="caption"
+><span class="id">Figure&#x00A0;5.1: </span><span
+class="content">Layout options</span></div><!--tex4ht:label?: x26-1080011 -->
+
+
+</div><hr class="endfigure" />
+<h4 class="subsectionHead"><span class="titlemark">5.1.4 </span> <a
+ id="x26-1090005.1.4"></a>Configuring Layout Options</h4>
+<!--l. 61--><p class="noindent" >The values of the layout options for a particular diagram object (in the visible diagram) can be changed using
+the Layout View of that diagram object. The initial values are the predefined <span
+class="ec-lmsso-10">default </span>values. These defaults
+can be changed using the context menu in Layout View as well as the Layout preference pages provided by
+eTrice.
+</p><!--l. 66--><p class="noindent" >
+</p>
+<h5 class="subsubsectionHead"><a
+ id="x26-1100005.1.4"></a>The Layout View</h5>
+<hr class="figure" /><div class="figure"
+>
+
+
+<a
+ id="x26-1100012"></a>
+
+
+
+<!--l. 70--><p class="noindent" ><img
+src="images/043-LayoutView.png" alt="PIC"
+ />
+<br /> </p><div class="caption"
+><span class="id">Figure&#x00A0;5.2: </span><span
+class="content">Layout view</span></div><!--tex4ht:label?: x26-1100012 -->
+
+
+</div><hr class="endfigure" />
+<!--l. 75--><p class="noindent" >The Layout view (figure <a
+href="#x26-1100012">5.2<!--tex4ht:ref: fig:layout_view --></a>) allows flexible customization of layout options for the selected objects in the
+eTrice diagram. If no object is selected, the view shows the options for the top-level container of the diagram.
+Options are stored persistently in diagram file (<span
+class="ec-lmsso-10">.structure file / </span>.behavior file) of the eTrice diagram, so that
+they are still available after the next Eclipse restart. Of course this requires the diagram to be saved after an
+option was changed.
+</p><!--l. 81--><p class="noindent" >The options are grouped according to the function of the selected objects. The group Nodes (respectively
+Edges, Ports, or Labels) contains options related to the object itself, such as its size or priority, while the group
+Parents contains options for the elements contained in the selected objects, such as the applied layout
+algorithm or the spacing between elements. Which layout options are displayed depends on the types of
+selected objects and the active layout algorithm, since each algorithm supports only a subset of the
+available options. Furthermore, some options are only visible if the <span
+class="ec-lmsso-10">Show Advanced Properties</span>
+button in the view toolbar is activated. The group types can be hidden using the Show Categories
+button.
+</p><!--l. 90--><p class="noindent" >An option can be changed by selecting or entering a new value in the corresponding cell of the Value
+column.
+</p><!--l. 92--><p class="noindent" >The most important option is Layout Algorithm, which is used to determine the layout algorithm for the
+contents of the selected element. Here either a specific layout algorithm or a layout type can be chosen; in the
+latter case, the most suitable layout algorithm of the given type is taken. By changing the active layout
+algorithm, the content of the layout view is updated to display only those options that are supported by the
+new layout algorithm.
+</p><!--l. 98--><p class="noindent" >Selecting <span
+class="ec-lmsso-10">Restore Default Value </span>in the context menu or the view toolbar (figure <a
+href="#x26-1100023">5.3<!--tex4ht:ref: fig:layout_context_menu --></a>) removes any value for the
+currently selected option that is stored in the current model file, thus resetting the option to its default value.
+The view menu has an entry Remove all Layout Options which resets all options of the current model by
+removing persistent data in the model file.
+</p>
+<hr class="figure" /><div class="figure"
+>
+
+
+<a
+ id="x26-1100023"></a>
+
+
+
+<!--l. 105--><p class="noindent" ><img
+src="images/043-ContextMenu.png" alt="PIC"
+ />
+<br /> </p><div class="caption"
+><span class="id">Figure&#x00A0;5.3: </span><span
+class="content">Layout in context menu</span></div><!--tex4ht:label?: x26-1100023 -->
+
+
+</div><hr class="endfigure" />
+<!--l. 110--><p class="noindent" >The context menu for a specific layout option has different alternatives to set the currently active value as
+<span
+class="ec-lmsso-10">default </span>value:
+</p>
+ <ul class="itemize1">
+ <li class="itemize"><span
+class="ec-lmsso-10">Set as Default for this Diagram</span>: Changes the open diagram file so that the same value is applied
+ to all similar objects (edit parts) of that diagram.
+ </li>
+ <li class="itemize"><span
+class="ec-lmsso-10">Set as Default for ... in this Context</span>: Applies the value to all similar objects that are displayed with
+ the any of the eTrice editors (the option is linked to the edit part class of the selected object).
+ </li>
+ <li class="itemize"><span
+class="ec-lmsso-10">Set as Default for all ...</span>: Links the option value with the domain model element or the diagram
+ type of the selected object (see the context menu depicted above).</li></ul>
+<!--l. 125--><p class="noindent" >These four alternatives have different priorities: if present, the default value for the current diagram is taken
+first, then the default value for the edit part is checked, then the default value for the domain model element,
+and then the default value for the diagram type.
+</p><!--l. 129--><p class="noindent" >Tips: </p>
+ <ul class="itemize1">
+ <li class="itemize">The information button of the view toolbar can be used to display some useful details on the
+ current selection, such as the edit part and domain model classes.
+ </li>
+ <li class="itemize">Default values for layout options can most easily be manipulated based on the eTrice domain
+ model elements.</li></ul>
+<h5 class="subsubsectionHead"><a
+ id="x26-1110005.1.4"></a>Preference Page</h5>
+<!--l. 140--><p class="noindent" >The user-defined <span
+class="ec-lmsso-10">default </span>values for layout options can also be set using the preference pages provided in
+eTrice. Three preference pages have been provided for this purpose </p>
+ <ul class="itemize1">
+ <li class="itemize"><span
+class="ec-lmsso-10">Layout</span>: for general preferences regarding layout
+ </li>
+ <li class="itemize"><span
+class="ec-lmsso-10">Behavior</span>: for setting default values of layout options for eTrice behavior diagrams
+ </li>
+ <li class="itemize"><span
+class="ec-lmsso-10">Structure</span>: for setting default values of layout options for eTrice structure diagrams</li></ul>
+<!--l. 148--><p class="noindent" >These preference pages can be accessed via <span
+class="ec-lmsso-10">Windows &#x003E; Preferences &#x003E; </span><span
+class="ec-lmsso-10">e</span><span
+class="ec-lmsso-10">Trice</span> <span
+class="ec-lmsso-10">&#x003E; Layout</span>.
+</p><!--l. 150--><p class="noindent" >Note that the contents of these preference pages are in sync with the <span
+class="ec-lmsso-10">KIELER &#x003E; Layout </span>preference page
+provided by the KIELER. Relevant entries in the <span
+class="ec-lmsso-10">KIELER &#x003E; Layout </span>page are shown in the above preference
+pages.
+</p>
+<!--l. 154--><p class="noindent" ><span class="paragraphHead"><a
+ id="x26-1120005.1.4"></a><span
+class="ec-lmssbo-10">Layout </span><span
+class="ec-lmssbx-10">Preference Page</span></span>
+<br
+class="newline" />
+
+
+</p><!--l. 156--><p class="noindent" >The <span
+class="ec-lmsso-10">Layout </span>preference page is meant to configure general options regarding the layout.
+</p><!--l. 158--><p class="noindent" >If <span
+class="ec-lmsso-10">Set routing style of all edges to oblique </span>is active, all routing styles and smoothness settings of edges are
+removed when automatic layout is performed. Since most layouters compute the routing of edges as part of
+their algorithm, these styles usually do not yield the expected results.
+</p>
+<!--l. 162--><p class="noindent" ><span class="paragraphHead"><a
+ id="x26-1130005.1.4"></a><span
+class="ec-lmssbo-10">Behavior </span><span
+class="ec-lmssbx-10">and </span><span
+class="ec-lmssbo-10">Structure </span><span
+class="ec-lmssbx-10">Preference Page</span></span>
+<br
+class="newline" />
+</p><!--l. 165--><p class="noindent" >The <span
+class="ec-lmsso-10">Behavior </span>and <span
+class="ec-lmsso-10">Structure </span>sub-preference pages help in setting up the default values of layout options in
+behavior and structure diagrams respectively.
+</p><!--l. 168--><p class="noindent" >The <span
+class="ec-lmsso-10">Default Layout Option Values </span>table is used to manage the default setting for layout options, which can
+also be modified with the context menu of the layout view (see above). All user-defined settings
+are displayed here, and the buttons on the right of the table serve to create, edit, and remove
+entries. The Type column shows the type of element the option is linked with: either edit part,
+model element, or diagram type. The Element column shows the class name for options that relate
+to edit parts or domain model elements, and the diagram type name for options that relate to
+diagram types. Option is the name of the layout option, and Value is the currently set value of the
+option.
+</p><!--l. 176--><p class="noindent" >Creating a new entry requires the selection of the type of related element (figure <a
+href="#x26-1130014">5.4<!--tex4ht:ref: fig_layout_preference_page --></a>) and entering its class
+name or identifier. Class names of edit parts can be explored using the information button of the layout view,
+while the class names for the domain model elements and the diagram type identifiers for the diagram types
+can be selected with the Browse button. After that, a layout option has to be selected from the list using the
+corresponding Browse button. Hitting OK creates an entry, and its value can then be set using the Edit
+button.
+</p>
+<hr class="figure" /><div class="figure"
+>
+
+
+<a
+ id="x26-1130014"></a><a
+ id="x27-11900048"></a>
+
+
+
+<!--l. 185--><p class="noindent" ><img
+src="images/043-PreferencePage.png" alt="PIC"
+ />
+<br /> </p><div class="caption"
+><span class="id">Figure&#x00A0;5.4: </span><span
+class="content">Layout preference page</span></div><!--tex4ht:label?: x26-1130014 -->
+
+
+</div><hr class="endfigure" />
+<!--l. 190--><p class="noindent" >Note that the <span
+class="ec-lmsso-10">Behavior </span>preference page will show only those entries which hold for the behavior diagrams.
+Moreover, it will allow setting default values of layout options for only those domain model elements and
+diagram types which could be present in the behavior editor diagrams. Similar thing holds for the <span
+class="ec-lmsso-10">Structure</span>
+preference page.
+</p>
+<h4 class="subsectionHead"><span class="titlemark">5.1.5 </span> <a
+ id="x26-1140005.1.5"></a>Special Layout Options</h4>
+<!--l. 198--><p class="noindent" >While most layout options are used to affect how the active layout algorithm computes concrete coordinates
+for the graph elements, there are some layout options that have a special role.
+</p><!--l. 201--><p class="noindent" >
+</p>
+<h5 class="subsubsectionHead"><a
+ id="x26-1150005.1.5"></a>Layout Algorithm</h5>
+<!--l. 203--><p class="noindent" >The option with identifier de.cau.cs.kieler.algorithm specifies which layout algorithm to use for the
+content of a composite node. The value can be either the identifier of a layout algorithm or the
+identifier of a layout type. In the latter case the algorithm with highest priority of that type is
+applied.
+</p><!--l. 207--><p class="noindent" >For the purpose of automatic diagram layout in eTrice, we use the <span
+class="ec-lmsso-10">Layered </span>algorithms which are meant for
+lay-outing hierarchical diagrams and are best suited for behavior and structure diagrams in eTrice. For the
+behavior diagrams we have used the <span
+class="ec-lmsso-10">Graphviz Dot </span>algorithm whereas for the structure diagrams we have used
+the <span
+class="ec-lmsso-10">KLay Layered </span>algorithm. Though the layout algorithm being used for performing layout can be changed at
+ones own will, it is recommended to use the defaults.
+</p><!--l. 213--><p class="noindent" >
+</p>
+<h5 class="subsubsectionHead"><a
+ id="x26-1160005.1.5"></a>Diagram Type</h5>
+<!--l. 215--><p class="noindent" >Diagram types are used to classify graphical diagrams for setting default layout option values for
+a set of similar diagrams. The diagram type of an element is specified with the layout option
+<span
+class="ec-lmtt-10">de.cau.cs.kieler.diagramType</span>. Thus, these help in
+</p><!--l. 219--><p class="noindent" >The following diagram types have been defined and used in eTrice: </p>
+ <ul class="itemize1">
+ <li class="itemize"><span
+class="ec-lmsso-10">General </span>- This type is automatically assigned to all diagrams for which no specific type is declared.
+ (Predefined in KIELER)
+ </li>
+ <li class="itemize"><span
+class="ec-lmsso-10">e</span><span
+class="ec-lmsso-10">Trice</span> <span
+class="ec-lmsso-10">Behavior Diagrams </span>- This type has been assigned to the diagram objects in eTrice Behavior
+ Diagrams.
+ </li>
+ <li class="itemize"><span
+class="ec-lmsso-10">e</span><span
+class="ec-lmsso-10">Trice</span> <span
+class="ec-lmsso-10">Structure Diagrams </span>- This type has been assigned to the diagram objects in eTrice Structure
+ Diagrams.</li></ul>
+<!--l. 228--><p class="noindent" >Note that not all diagrams objects in the behavior and structure diagrams are assigned the last two diagram
+types. Only the top-level container and the visible bounding box has been assigned these diagram types in
+respective editors.
+
+
+</p><!--l. 232--><p class="noindent" >
+</p>
+<h4 class="subsectionHead"><span class="titlemark">5.1.6 </span> <a
+ id="x26-1170005.1.6"></a>Further References</h4>
+<!--l. 234--><p class="noindent" >Most parts of the above documentation have been taken from the "KIML wiki"
+(<a
+href="http://rtsys.informatik.uni-kiel.de/confluence/pages/viewpage.action?pageId=328078" class="url" ><span
+class="ec-lmtt-10">http://rtsys.informatik.uni-kiel.de/confluence/pages/viewpage.action?pageId=328078</span></a> and
+have been modified for automatic layout in eTrice. A more detailed description about the layout algorithms,
+predefined diagram types and the internal structure of KIELER Infrastructure for Meta-Layout (KIML) can be
+found there.
+
+
+</p>
+<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse20.html" >next</a>] [<a
+href="etrice-docch5.html" >prev</a>] [<a
+href="etrice-docch5.html#tailetrice-docch5.html" >prev-tail</a>] [<a
+href="etrice-docse19.html" >front</a>] [<a
+href="etrice-docch5.html#etrice-docse19.html" >up</a>] </p></div>
+<!--l. 1--><p class="noindent" ><a
+ id="tailetrice-docse19.html"></a> </p>
+</body></html>
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse2.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse2.html
index d4db5d8..e9e97ec 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse2.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse2.html
@@ -1,434 +1,434 @@
-<?xml version="1.0" encoding="iso-8859-1" ?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
-<html xmlns="http://www.w3.org/1999/xhtml"
->
-<head><title>Introduction to the ROOM Language</title>
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
-<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
-<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
-<!-- xhtml,3,next,html -->
-<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-06-21 12:20:00" />
-<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
-</head><body
->
-<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docch2.html" >next</a>] [<a
-href="etrice-docse1.html" >prev</a>] [<a
-href="etrice-docse1.html#tailetrice-docse1.html" >prev-tail</a>] [<a
-href="#tailetrice-docse2.html">tail</a>] [<a
-href="etrice-docch1.html#etrice-docse2.html" >up</a>] </p></div>
-<h3 class="sectionHead"><span class="titlemark">1.2 </span> <a
- id="x5-60001.2"></a>Introduction to the ROOM Language</h3>
-<!--l. 3--><p class="noindent" >
-</p>
-<h4 class="subsectionHead"><span class="titlemark">1.2.1 </span> <a
- id="x5-70001.2.1"></a>Scope of ROOM</h4>
-<!--l. 5--><p class="noindent" >This chapter will give a rough overview of what ROOM (<span
-class="ec-lmssbx-10">R</span>eal-time <span
-class="ec-lmssbx-10">O</span>bject-<span
-class="ec-lmssbx-10">O</span>riented <span
-class="ec-lmssbx-10">M</span>odeling) is and what it
-is good for. It will try to answer the following questions:
-</p>
-
-
- <ul class="itemize1">
- <li class="itemize">Where does it come from?
- </li>
- <li class="itemize">Which kind of SW-Systems will be addressed?
- </li>
- <li class="itemize">What is the relation between object oriented programming and ROOM?
- </li>
- <li class="itemize">What are the benefits of ROOM?
- </li>
- <li class="itemize">Which consequences must be taken into account?</li></ul>
-<!--l. 17--><p class="noindent" >
-</p>
-<h5 class="subsubsectionHead"><a
- id="x5-80001.2.1"></a>Where does it come from?</h5>
-<!--l. 19--><p class="noindent" >ROOM was developed in the 1990th on the background of the upcoming mobile applications with the goal to
-manage the complexity of such huge SW-Systems. From the very beginning ROOM has focused on a
-certain type of SW-Systems and is, in contrast to the UML, well suited for this kind of systems. In
-this sense, ROOM is a DSL (Domain Specific Language) for distributed, event driven, real time
-systems.
-</p><!--l. 24--><p class="noindent" >Bran Selic, Garth Gullekson and Paul T. Ward have published the concepts 1994 in the book <span
-class="ec-lmssbx-10">Real-Time</span>
-<span
-class="ec-lmssbx-10">Object-Oriented Modeling</span>. The company <span
-class="ec-lmsso-10">ObjecTime</span><sup class="textsuperscript"><span
-class="ec-lmss-9">TM</span></sup> developed a ROOM tool which was taken over by
-<span
-class="ec-lmsso-10">Rational SW</span><sup class="textsuperscript"><span
-class="ec-lmss-9">TM</span></sup> and later on by <span
-class="ec-lmsso-10">IBM</span><sup class="textsuperscript"><span
-class="ec-lmss-9">TM</span></sup>. The company <span
-class="ec-lmsso-10">Protos Software GmbH</span><sup class="textsuperscript"><span
-class="ec-lmss-9">TM</span></sup> also developed a ROOM
-tool called <span
-class="ec-lmsso-10">Trice</span><sup class="textsuperscript"><span
-class="ec-lmss-9">TM</span></sup> for control software for production machines and automotive systems. <span
-class="ec-lmsso-10">Trice</span><sup class="textsuperscript"><span
-class="ec-lmss-9">TM</span></sup> is the
-predecessor of eTrice (see Introduction to eTrice).
-</p><!--l. 32--><p class="noindent" >From our point of view ROOM provides still the clearest, simplest, most complete and best suited modeling
-concepts for the real time domain. All later proposals like the UML do not fit as well to this kind of
-problems.
-</p><!--l. 36--><p class="noindent" >
-</p>
-<h5 class="subsubsectionHead"><a
- id="x5-90001.2.1"></a>Which kind of SW-Systems will be addressed?</h5>
-<!--l. 38--><p class="noindent" >As mentioned before ROOM addresses distributed, event driven, real time systems. But what is a <span
-class="ec-lmsso-10">real time</span>
-<span
-class="ec-lmsso-10">system</span>? ROOM defines a set of properties which are typical for a real time system. These properties
-are:
-</p>
- <ul class="itemize1">
- <li class="itemize">Timeliness
- </li>
- <li class="itemize">Dynamic internal structure
- </li>
- <li class="itemize">Reactiveness
- </li>
- <li class="itemize">Concurrency
-
-
- </li>
- <li class="itemize">Distribution
- </li>
- <li class="itemize">Reliability</li></ul>
-<!--l. 51--><p class="noindent" >Each of these properties has potential to make SW development complex. If a given system can be
-characterized with a combination of or all of these properties, ROOM might be applied to such a
-system.
-</p><!--l. 54--><p class="noindent" >As an example take a look at a washing machine. The system has to react to user interactions, has to handle
-some error conditions like a closed water tap or a defective lye pump. It has to react simultaneously to all these
-inputs. It has to close the water valve within a certain time to avoid flooding the basement. So, the system can
-be characterized as timely, concurrent and reactive. As long as the washing machine does not transform to a
-laundry drier by itself, the system has no dynamic internal structure and as long as all functions are running
-on a single micro controller the (SW)-system is not distributed. ROOM fits perfect to such a
-system.
-</p><!--l. 62--><p class="noindent" >A SW system which mainly consists of data transformations like signal/image processing or a loop controller
-(e.g. a PID controller) cannot be characterized with any of the above mentioned properties. However, in the
-real world most of the SW systems will be a combination of both. ROOM can be combined with such systems,
-so that for example an actor provides a <span
-class="ec-lmsso-10">run to completion </span>context for calculating an image processing
-algorithm or a PID controller.
-</p><!--l. 68--><p class="noindent" >
-</p>
-<h5 class="subsubsectionHead"><a
- id="x5-100001.2.1"></a>What is the relation between OOP and ROOM?</h5>
-<!--l. 70--><p class="noindent" >The relation between classical object oriented programming and ROOM is comparable to the
-relation between assembler programming and C programming. It provides a shift of the object
-paradigm. The classical object paradigm provides some kind of information hiding. Attributes can be
-accessed via access methods. Logical higher level methods provide the requested behavior to the
-user.
-</p><!--l. 75--><p class="noindent" >But as the figure illustrates, the classical object paradigm does not care about concurrency issues. The threads
-of control will be provided by the underlying operating system and the user is responsible to avoid access
-violations by using those operating system mechanisms directly (semaphore, mutex).
-</p><!--l. 79--><p class="noindent" ><img
-src="images/010-RoomIntroduction02.png" alt="PIC"
- />
-</p><!--l. 81--><p class="noindent" >ROOM provides the concept of a logical machine (called actor) with its own thread of control. It provides
-some kind of cooperative communication infrastructure with <span
-class="ec-lmsso-10">run to completion </span>semantics. That makes
-developing of business logic easy and safe (see <a
-href="#x5-130001.2.2">1.2.2<!--tex4ht:ref: sec:basic_concepts --></a> <a
-href="#x5-130001.2.2">Basic Concepts<!--tex4ht:ref: sec:basic_concepts --></a>). The logical machine provides an
-encapsulation shell including concurrency issues (see <a
-href="#x5-170001.2.2">1.2.2<!--tex4ht:ref: sec:run_to_completion --></a> <a
-href="#x5-170001.2.2">Run to Completion<!--tex4ht:ref: sec:run_to_completion --></a>).
-</p><!--l. 86--><p class="noindent" ><img
-src="images/010-RoomIntroduction03.png" alt="PIC"
- />
-</p><!--l. 88--><p class="noindent" >This thinking of an object is much more general than the classic one.
-</p><!--l. 90--><p class="noindent" >
-</p>
-<h5 class="subsubsectionHead"><a
- id="x5-110001.2.1"></a>What are the benefits of ROOM?</h5>
-<!--l. 92--><p class="noindent" >ROOM has a lot of benefits and it depends on the users point of view which is the most important one. From
-a general point of view the most important benefit is, that ROOM allows to create SW systems very efficient,
-robust and safe due to the fact that it provides some abstract, high level modeling concepts combined with
-code generation and a small efficient runtime environment.
-</p><!--l. 97--><p class="noindent" >In detail: </p>
-
-
- <ul class="itemize1">
- <li class="itemize">ROOM models contain well defined interfaces (protocols), which makes it easy to re-use
- components in different applications or e.g. in a test harness.
- </li>
- <li class="itemize">Graphical modeling makes it easy to understand, maintain and share code with other developers
- </li>
- <li class="itemize">Higher abstraction in combination with automated code generation provides very efficient
- mechanisms to the developer.
- </li>
- <li class="itemize">ROOM provides graphical model execution, which makes it easy to understand the application or
- find defects in a very early phase.</li></ul>
-<!--l. 108--><p class="noindent" >
-</p>
-<h5 class="subsubsectionHead"><a
- id="x5-120001.2.1"></a>Which consequences must be taken into account?</h5>
-<!--l. 110--><p class="noindent" >Generating code from models will introduce some overhead in terms of memory footprint as well as
-performance. For most systems the overhead will be negligible. However, the decision for using ROOM should
-be made explicitly and it is always a trade off between development costs, time to market and costs in terms of
-a little bit more of memory and performance. Thanks to the powerful component model, ROOM is
-especially well suited for the development of software product lines with their need for reusable core
-assets.
-</p><!--l. 116--><p class="noindent" >Care must be taken during the introduction of the new methodology. Due to the fact that ROOM provides a
-shift of the object paradigm, developers and teams need a phase of adaption. Every benefit comes at a
-price.
-</p><!--l. 119--><p class="noindent" >
-</p>
-<h4 class="subsectionHead"><span class="titlemark">1.2.2 </span> <a
- id="x5-130001.2.2"></a>Basic Concepts</h4>
-<!--l. 122--><p class="noindent" >
-</p>
-<h5 class="subsubsectionHead"><a
- id="x5-140001.2.2"></a>Actor, Port, Protocol</h5>
-<!--l. 124--><p class="noindent" >The basic elements of ROOM are the actors with their ports and protocols. The protocol provides a formal
-interface description. The port is an interaction point where the actor interacts with its outside world. Each
-port has exactly one protocol attached. The sum of all ports builds up the complete interface of an actor. Each
-port can receive messages, with or without data, which are defined in the attached protocol. Each message will
-be handled by the actor&#8217;s behavior (state machine) or will be delegated to the actor&#8217;s internal
-structure.
-</p>
-<div class="table">
-
-
-<!--l. 132--><p class="noindent" ><a
- id="x5-140011"></a></p><hr class="float" /><div class="float"
->
-
-
- <div class="caption"
-><span class="id">Table&#x00A0;1.1: </span><span
-class="content">Actor and Protocol Class Example</span></div><!--tex4ht:label?: x5-140011 -->
-<div class="tabular"> <table id="TBL-2" class="tabular"
-cellspacing="0" cellpadding="0" rules="groups"
-><colgroup id="TBL-2-1g"><col
-id="TBL-2-1" /></colgroup><colgroup id="TBL-2-2g"><col
-id="TBL-2-2" /></colgroup><tr
-class="hline"><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-2-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-2-1-1"
-class="td11"> <img
-src="images/040-ActorClass.png" alt="PIC"
- /> </td><td style="white-space:nowrap; text-align:left;" id="TBL-2-1-2"
-class="td11"> <img
-src="images/040-ProtocolClassTextualNotation.png" alt="PIC"
- /> </td>
-</tr><tr
-class="hline"><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-2-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-2-2-1"
-class="td11"> <span
-class="ec-lmssbx-10">Actor with sub actors </span></td><td style="white-space:nowrap; text-align:left;" id="TBL-2-2-2"
-class="td11"> <span
-class="ec-lmssbx-10">Protocol definition </span></td>
-</tr><tr
-class="hline"><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-2-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-2-3-1"
-class="td11"> </td></tr></table>
-</div>
-
-
-</div><hr class="endfloat" />
-</div>
-<!--l. 140--><p class="noindent" >The actor provides access protection for its own attributes (including complex types, i.e. classical objects),
-including concurrency protection. An actor has neither public attributes nor public operations. The
-only interaction with the outside world takes place via interface ports. This ensures a high degree
-of re-usability on the actor level and provides an effective and safe programming model to the
-developer.
-</p><!--l. 145--><p class="noindent" >Receiving a message via a port will trigger the internal state machine. A transition will be executed depending
-on the message and the current state. Within this transition, detail level code will be executed and response
-messages can be sent.
-</p><!--l. 149--><p class="noindent" >With this model, a complex behavior can be divided into many relatively simple, linked actors. To put it the
-other way round: The complex behavior will be provided by a network of relatively simple components which
-are communicating with each other via well defined interfaces.
-</p>
-<h5 class="subsubsectionHead"><a
- id="x5-150001.2.2"></a>Hierarchy in Structure and Behavior</h5>
-<!--l. 156--><p class="noindent" >ROOM provides two types of hierarchy. Behavioral hierarchy and structural hierarchy. Structural hierarchy
-means that actors can be nested to arbitrary depth. Usually you will add more and more details to your
-application with each nesting level. That means you can focus yourself on any level of abstraction with always
-the same element, the actor. Structural hierarchy provides a powerful mechanism to divide your
-problem in smaller pieces, so that you can focus on the level of abstraction you want to work
-on.
-</p><!--l. 162--><p class="noindent" >The actor&#8217;s behavior will be described with a state machine. A state in turn may contain sub states. This is
-another possibility to focus on an abstraction level. Take the simple FSM from the blinky actor from the blinky
-tutorial.
-</p><!--l. 166--><p class="noindent" >Top level:
-</p><!--l. 168--><p class="noindent" ><img
-src="images/020-Blinky15.png" alt="PIC"
- />
-</p><!--l. 170--><p class="noindent" ><span
-class="ec-lmsso-10">blinking </span>Sub machine:
-</p><!--l. 172--><p class="noindent" ><img
-src="images/020-Blinky151.png" alt="PIC"
- />
-</p><!--l. 174--><p class="noindent" >From an abstract point of view there is a state <span
-class="ec-lmsso-10">blinking</span>. But a simple LED is not able to blink autonomously.
-Therefore you have to add more details to your model to make a LED blinking, but for the current work it
-is not of interest how the blinking is realized. This will be done in the next lower level of the
-hierarchy.
-</p><!--l. 179--><p class="noindent" >This simple example might give an idea how powerful this mechanisms is.
-</p><!--l. 181--><p class="noindent" >The hierarchical FSM provides a rich tool box to describe real world problems (see chapter <a
-href="etrice-docch7.html#x35-790007">7<!--tex4ht:ref: sec:room_concepts --></a> <a
-href="etrice-docch7.html#x35-790007">ROOM
-Concepts<!--tex4ht:ref: sec:room_concepts --></a>).
-</p><!--l. 183--><p class="noindent" >
-</p>
-<h5 class="subsubsectionHead"><a
- id="x5-160001.2.2"></a>Layering</h5>
-<!--l. 185--><p class="noindent" >Layering is another well known form of abstraction to reduce complexity in the structure of systems. ROOM is
-probably the only language that supports layering directly as a language feature. Layering can be expressed in
-ROOM by actors with specialized ports, called <span
-class="ec-lmsso-10">Service Access Points </span>(SAP) and <span
-class="ec-lmsso-10">Service Provision Points</span>
-(SPP).
-</p><!--l. 190--><p class="noindent" >The actor that provides a service implements an SPP and the client of that service implements an SAP. The
-layer connection connects all SAPs of a specific protocol within an actor hierarchy with an SPP
-that implements the service. From the actor&#8217;s point of view, SAPs and SPPs behave almost like
-
-
-ports.
-</p><!--l. 194--><p class="noindent" ><img
-src="images/010-LayerExample.png" alt="PIC"
- />
-</p><!--l. 196--><p class="noindent" >The example shows a layered model. The layer connections define e.g. that the <span
-class="ec-lmsso-10">ApplicationLayer </span>can only use
-the services of the <span
-class="ec-lmsso-10">ServiceLayer </span>and the <span
-class="ec-lmsso-10">CommunicationLayer</span>. Actors inside the <span
-class="ec-lmsso-10">ApplicationLayer</span>
-that implement an SAP for those services are connected directly to the implementation of the
-services. Layering and actor hierarchies with port to port connections can be mixed on every level of
-granularity.
-</p><!--l. 202--><p class="noindent" >
-</p>
-<h5 class="subsubsectionHead"><a
- id="x5-170001.2.2"></a>Run to Completion</h5>
-<!--l. 205--><p class="noindent" ><span
-class="ec-lmsso-10">Run to completion </span>(RTC) is a very central concept of ROOM. It enables the developer to concentrate on the
-functional aspects of the system. The developer doesn&#8217;t have to care about concurrency issues all the time.
-This job is concentrated to the system designer in a very flexible way. What does <span
-class="ec-lmsso-10">run to completion </span>mean:
-RTC means that an actor, which is processing a message, can not receive the next message as long as the
-processing of the current message has been finished. Receiving of the next message will be queued by the
-underlying run time system.
-</p><!--l. 213--><p class="noindent" >Note: It is very important not to confuse <span
-class="ec-lmsso-10">run to completion </span>and <span
-class="ec-lmsso-10">cooperative multi threading</span>. Run to
-completion means that an actor will finish the processing of a message before he can receive a new one
-(regardless of its priority). That does <span
-class="ec-lmsso-10">not </span>mean that an actor cannot be preempted from an higher priority
-thread of control. But even a message from this higher prior thread of control will be queued until the current
-processing has been finished.
-</p><!--l. 220--><p class="noindent" >With this mechanism all actor internal attributes and data structures are protected. Due to the fact that
-multiple actors share one thread of control, all objects are protected which are accessed from one thread of
-control but multiple actors. This provides the possibility to decompose complex functionality into several actors
-without the risk to produce access violations or dead locks.
-</p><!--l. 225--><p class="noindent" >
-</p>
-<h4 class="subsectionHead"><span class="titlemark">1.2.3 </span> <a
- id="x5-180001.2.3"></a>Execution Models</h4>
-<!--l. 227--><p class="noindent" >Since from ROOM models executable code can be generated, it is important to define the way the actors are
-executed and communicate with each other. The combination of communication and execution is called the
-<span
-class="ec-lmsso-10">execution model</span>. Currently the eTrice tooling supports the <span
-class="ec-lmssbx-10">message driven</span>, the <span
-class="ec-lmssbx-10">data driven </span>and a mixture of
-both execution models. In future releases maybe also a synchronous execution model will be supported,
-depending on the requirements of the community.
-</p><!--l. 235--><p class="noindent" >
-</p>
-<h5 class="subsubsectionHead"><a
- id="x5-190001.2.3"></a>Communication Methods</h5>
- <ul class="itemize1">
- <li class="itemize"><span
-class="ec-lmssbx-10">message driven </span>&#8211; asynchronous, non blocking, no return value:<br
-class="newline" />Usually the message driven communication is implemented with message queues. Message queues
- are inherently asynchronous and enable a very good decoupling of the communicating parties.
-
-
- </li>
- <li class="itemize"><span
-class="ec-lmssbx-10">data driven </span>&#8211; asynchronous, non blocking, no return value:<br
-class="newline" />In data driven communication sender and receiver often have a shared block of data. The sender
- writes the data and the receiver polls the data.
- </li>
- <li class="itemize"><span
-class="ec-lmssbx-10">function call </span>&#8211; synchronous, blocking, return value:<br
-class="newline" />Regular function call as known in most programming languages.</li></ul>
-<!--l. 251--><p class="noindent" >eTrice currently supports the two former communication methods.
-</p><!--l. 253--><p class="noindent" >
-</p>
-<h5 class="subsubsectionHead"><a
- id="x5-200001.2.3"></a>Execution Methods</h5>
- <ul class="itemize1">
- <li class="itemize"><span
-class="ec-lmssbx-10">execution by receive event</span>: The message queue or the event dispatcher calls a <span
-class="ec-lmssbx-10">receive event</span>
- function of the message receiver and thereby executes the processing of the event.
- </li>
- <li class="itemize"><span
-class="ec-lmssbx-10">polled execution</span>: The objects are processed by a cyclic <span
-class="ec-lmssbx-10">execute </span>call
- </li>
- <li class="itemize"><span
-class="ec-lmssbx-10">execution by function call</span>: The caller executes the called object via function call</li></ul>
-<!--l. 262--><p class="noindent" >eTrice currently supports the two former execution methods.
-</p><!--l. 264--><p class="noindent" >
-</p>
-<h5 class="subsubsectionHead"><a
- id="x5-210001.2.3"></a>Execution Models</h5>
-<!--l. 266--><p class="noindent" >In present-day&#8217;s embedded systems in most cases one or several of the following execution models are
-used:
-</p>
-<!--l. 268--><p class="noindent" ><span class="paragraphHead"><a
- id="x5-220001.2.3"></a><span
-class="ec-lmssbx-10">message driven</span></span>
-<br
-class="newline" />
-</p><!--l. 270--><p class="noindent" >The message driven execution model is a combination of message driven communication and execution by
-receive event. This model allows for distributed systems with a very high throughput. It can be deterministic
-but the determinism is hard to proof. This execution model is often found in telecommunication systems and
-high performance automation control systems.
-</p>
-<!--l. 277--><p class="noindent" ><span class="paragraphHead"><a
- id="x5-230001.2.3"></a><span
-class="ec-lmssbx-10">data driven</span></span>
-<br
-class="newline" />
-
-
-</p><!--l. 279--><p class="noindent" >The data driven execution model is a combination of data driven communication and polled execution. This
-model is highly deterministic and very robust, but the polling creates a huge performance overhead. The
-determinism is easy to proof (simple mathematics). The execution model is also compatible with the
-execution model of control software generated by Tools like Matlab(TM) and LabView(TM). This
-model is usually used for systems with requirements for safety, such as automotive and avionic
-systems.
-</p>
-<!--l. 286--><p class="noindent" ><span class="paragraphHead"><a
- id="x5-240001.2.3"></a><span
-class="ec-lmssbx-10">synchronous</span></span>
-<br
-class="newline" />
-</p><!--l. 288--><p class="noindent" >The synchronous execution model could also be called <span
-class="ec-lmsso-10">function calls</span>. This model in general is not very well
-suited to support the <span
-class="ec-lmsso-10">run to completion </span>semantics typical for ROOM models, but could also be generated from
-ROOM models. With this execution model also lower levels of a software system, such as device drivers, could
-be generated from ROOM models.
-
-
-</p>
-<!--l. 59--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docch2.html" >next</a>] [<a
-href="etrice-docse1.html" >prev</a>] [<a
-href="etrice-docse1.html#tailetrice-docse1.html" >prev-tail</a>] [<a
-href="etrice-docse2.html" >front</a>] [<a
-href="etrice-docch1.html#etrice-docse2.html" >up</a>] </p></div>
-<!--l. 59--><p class="noindent" ><a
- id="tailetrice-docse2.html"></a> </p>
-</body></html>
+<?xml version="1.0" encoding="iso-8859-1" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
+<html xmlns="http://www.w3.org/1999/xhtml"
+>
+<head><title>Introduction to the ROOM Language</title>
+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
+<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
+<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
+<!-- xhtml,3,next,html -->
+<meta name="src" content="etrice-doc.tex" />
+<meta name="date" content="2013-07-04 15:04:00" />
+<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
+</head><body
+>
+<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docch2.html" >next</a>] [<a
+href="etrice-docse1.html" >prev</a>] [<a
+href="etrice-docse1.html#tailetrice-docse1.html" >prev-tail</a>] [<a
+href="#tailetrice-docse2.html">tail</a>] [<a
+href="etrice-docch1.html#etrice-docse2.html" >up</a>] </p></div>
+<h3 class="sectionHead"><span class="titlemark">1.2 </span> <a
+ id="x5-60001.2"></a>Introduction to the ROOM Language</h3>
+<!--l. 3--><p class="noindent" >
+</p>
+<h4 class="subsectionHead"><span class="titlemark">1.2.1 </span> <a
+ id="x5-70001.2.1"></a>Scope of ROOM</h4>
+<!--l. 5--><p class="noindent" >This chapter will give a rough overview of what ROOM (<span
+class="ec-lmssbx-10">R</span>eal-time <span
+class="ec-lmssbx-10">O</span>bject-<span
+class="ec-lmssbx-10">O</span>riented <span
+class="ec-lmssbx-10">M</span>odeling) is and what it
+is good for. It will try to answer the following questions:
+</p>
+
+
+ <ul class="itemize1">
+ <li class="itemize">Where does it come from?
+ </li>
+ <li class="itemize">Which kind of SW-Systems will be addressed?
+ </li>
+ <li class="itemize">What is the relation between object oriented programming and ROOM?
+ </li>
+ <li class="itemize">What are the benefits of ROOM?
+ </li>
+ <li class="itemize">Which consequences must be taken into account?</li></ul>
+<!--l. 17--><p class="noindent" >
+</p>
+<h5 class="subsubsectionHead"><a
+ id="x5-80001.2.1"></a>Where does it come from?</h5>
+<!--l. 19--><p class="noindent" >ROOM was developed in the 1990th on the background of the upcoming mobile applications with the goal to
+manage the complexity of such huge SW-Systems. From the very beginning ROOM has focused on a
+certain type of SW-Systems and is, in contrast to the UML, well suited for this kind of systems. In
+this sense, ROOM is a DSL (Domain Specific Language) for distributed, event driven, real time
+systems.
+</p><!--l. 24--><p class="noindent" >Bran Selic, Garth Gullekson and Paul T. Ward have published the concepts 1994 in the book <span
+class="ec-lmssbx-10">Real-Time</span>
+<span
+class="ec-lmssbx-10">Object-Oriented Modeling</span>. The company <span
+class="ec-lmsso-10">ObjecTime</span><sup class="textsuperscript"><span
+class="ec-lmss-9">TM</span></sup> developed a ROOM tool which was taken over by
+<span
+class="ec-lmsso-10">Rational SW</span><sup class="textsuperscript"><span
+class="ec-lmss-9">TM</span></sup> and later on by <span
+class="ec-lmsso-10">IBM</span><sup class="textsuperscript"><span
+class="ec-lmss-9">TM</span></sup>. The company <span
+class="ec-lmsso-10">Protos Software GmbH</span><sup class="textsuperscript"><span
+class="ec-lmss-9">TM</span></sup> also developed a ROOM
+tool called <span
+class="ec-lmsso-10">Trice</span><sup class="textsuperscript"><span
+class="ec-lmss-9">TM</span></sup> for control software for production machines and automotive systems. <span
+class="ec-lmsso-10">Trice</span><sup class="textsuperscript"><span
+class="ec-lmss-9">TM</span></sup> is the
+predecessor of eTrice (see Introduction to eTrice).
+</p><!--l. 32--><p class="noindent" >From our point of view ROOM provides still the clearest, simplest, most complete and best suited modeling
+concepts for the real time domain. All later proposals like the UML do not fit as well to this kind of
+problems.
+</p><!--l. 36--><p class="noindent" >
+</p>
+<h5 class="subsubsectionHead"><a
+ id="x5-90001.2.1"></a>Which kind of SW-Systems will be addressed?</h5>
+<!--l. 38--><p class="noindent" >As mentioned before ROOM addresses distributed, event driven, real time systems. But what is a <span
+class="ec-lmsso-10">real time</span>
+<span
+class="ec-lmsso-10">system</span>? ROOM defines a set of properties which are typical for a real time system. These properties
+are:
+</p>
+ <ul class="itemize1">
+ <li class="itemize">Timeliness
+ </li>
+ <li class="itemize">Dynamic internal structure
+ </li>
+ <li class="itemize">Reactiveness
+ </li>
+ <li class="itemize">Concurrency
+
+
+ </li>
+ <li class="itemize">Distribution
+ </li>
+ <li class="itemize">Reliability</li></ul>
+<!--l. 51--><p class="noindent" >Each of these properties has potential to make SW development complex. If a given system can be
+characterized with a combination of or all of these properties, ROOM might be applied to such a
+system.
+</p><!--l. 54--><p class="noindent" >As an example take a look at a washing machine. The system has to react to user interactions, has to handle
+some error conditions like a closed water tap or a defective lye pump. It has to react simultaneously to all these
+inputs. It has to close the water valve within a certain time to avoid flooding the basement. So, the system can
+be characterized as timely, concurrent and reactive. As long as the washing machine does not transform to a
+laundry drier by itself, the system has no dynamic internal structure and as long as all functions are running
+on a single micro controller the (SW)-system is not distributed. ROOM fits perfect to such a
+system.
+</p><!--l. 62--><p class="noindent" >A SW system which mainly consists of data transformations like signal/image processing or a loop controller
+(e.g. a PID controller) cannot be characterized with any of the above mentioned properties. However, in the
+real world most of the SW systems will be a combination of both. ROOM can be combined with such systems,
+so that for example an actor provides a <span
+class="ec-lmsso-10">run to completion </span>context for calculating an image processing
+algorithm or a PID controller.
+</p><!--l. 68--><p class="noindent" >
+</p>
+<h5 class="subsubsectionHead"><a
+ id="x5-100001.2.1"></a>What is the relation between OOP and ROOM?</h5>
+<!--l. 70--><p class="noindent" >The relation between classical object oriented programming and ROOM is comparable to the
+relation between assembler programming and C programming. It provides a shift of the object
+paradigm. The classical object paradigm provides some kind of information hiding. Attributes can be
+accessed via access methods. Logical higher level methods provide the requested behavior to the
+user.
+</p><!--l. 75--><p class="noindent" >But as the figure illustrates, the classical object paradigm does not care about concurrency issues. The threads
+of control will be provided by the underlying operating system and the user is responsible to avoid access
+violations by using those operating system mechanisms directly (semaphore, mutex).
+</p><!--l. 79--><p class="noindent" ><img
+src="images/010-RoomIntroduction02.png" alt="PIC"
+ />
+</p><!--l. 81--><p class="noindent" >ROOM provides the concept of a logical machine (called actor) with its own thread of control. It provides
+some kind of cooperative communication infrastructure with <span
+class="ec-lmsso-10">run to completion </span>semantics. That makes
+developing of business logic easy and safe (see <a
+href="#x5-130001.2.2">1.2.2<!--tex4ht:ref: sec:basic_concepts --></a> <a
+href="#x5-130001.2.2">Basic Concepts<!--tex4ht:ref: sec:basic_concepts --></a>). The logical machine provides an
+encapsulation shell including concurrency issues (see <a
+href="#x5-170001.2.2">1.2.2<!--tex4ht:ref: sec:run_to_completion --></a> <a
+href="#x5-170001.2.2">Run to Completion<!--tex4ht:ref: sec:run_to_completion --></a>).
+</p><!--l. 86--><p class="noindent" ><img
+src="images/010-RoomIntroduction03.png" alt="PIC"
+ />
+</p><!--l. 88--><p class="noindent" >This thinking of an object is much more general than the classic one.
+</p><!--l. 90--><p class="noindent" >
+</p>
+<h5 class="subsubsectionHead"><a
+ id="x5-110001.2.1"></a>What are the benefits of ROOM?</h5>
+<!--l. 92--><p class="noindent" >ROOM has a lot of benefits and it depends on the users point of view which is the most important one. From
+a general point of view the most important benefit is, that ROOM allows to create SW systems very efficient,
+robust and safe due to the fact that it provides some abstract, high level modeling concepts combined with
+code generation and a small efficient runtime environment.
+</p><!--l. 97--><p class="noindent" >In detail: </p>
+
+
+ <ul class="itemize1">
+ <li class="itemize">ROOM models contain well defined interfaces (protocols), which makes it easy to re-use
+ components in different applications or e.g. in a test harness.
+ </li>
+ <li class="itemize">Graphical modeling makes it easy to understand, maintain and share code with other developers
+ </li>
+ <li class="itemize">Higher abstraction in combination with automated code generation provides very efficient
+ mechanisms to the developer.
+ </li>
+ <li class="itemize">ROOM provides graphical model execution, which makes it easy to understand the application or
+ find defects in a very early phase.</li></ul>
+<!--l. 108--><p class="noindent" >
+</p>
+<h5 class="subsubsectionHead"><a
+ id="x5-120001.2.1"></a>Which consequences must be taken into account?</h5>
+<!--l. 110--><p class="noindent" >Generating code from models will introduce some overhead in terms of memory footprint as well as
+performance. For most systems the overhead will be negligible. However, the decision for using ROOM should
+be made explicitly and it is always a trade off between development costs, time to market and costs in terms of
+a little bit more of memory and performance. Thanks to the powerful component model, ROOM is
+especially well suited for the development of software product lines with their need for reusable core
+assets.
+</p><!--l. 116--><p class="noindent" >Care must be taken during the introduction of the new methodology. Due to the fact that ROOM provides a
+shift of the object paradigm, developers and teams need a phase of adaption. Every benefit comes at a
+price.
+</p><!--l. 119--><p class="noindent" >
+</p>
+<h4 class="subsectionHead"><span class="titlemark">1.2.2 </span> <a
+ id="x5-130001.2.2"></a>Basic Concepts</h4>
+<!--l. 122--><p class="noindent" >
+</p>
+<h5 class="subsubsectionHead"><a
+ id="x5-140001.2.2"></a>Actor, Port, Protocol</h5>
+<!--l. 124--><p class="noindent" >The basic elements of ROOM are the actors with their ports and protocols. The protocol provides a formal
+interface description. The port is an interaction point where the actor interacts with its outside world. Each
+port has exactly one protocol attached. The sum of all ports builds up the complete interface of an actor. Each
+port can receive messages, with or without data, which are defined in the attached protocol. Each message will
+be handled by the actor&#8217;s behavior (state machine) or will be delegated to the actor&#8217;s internal
+structure.
+</p>
+<div class="table">
+
+
+<!--l. 132--><p class="noindent" ><a
+ id="x5-140011"></a></p><hr class="float" /><div class="float"
+>
+
+
+ <div class="caption"
+><span class="id">Table&#x00A0;1.1: </span><span
+class="content">Actor and Protocol Class Example</span></div><!--tex4ht:label?: x5-140011 -->
+<div class="tabular"> <table id="TBL-2" class="tabular"
+cellspacing="0" cellpadding="0" rules="groups"
+><colgroup id="TBL-2-1g"><col
+id="TBL-2-1" /></colgroup><colgroup id="TBL-2-2g"><col
+id="TBL-2-2" /></colgroup><tr
+class="hline"><td><hr /></td><td><hr /></td></tr><tr
+ style="vertical-align:baseline;" id="TBL-2-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-2-1-1"
+class="td11"> <img
+src="images/040-ActorClass.png" alt="PIC"
+ /> </td><td style="white-space:nowrap; text-align:left;" id="TBL-2-1-2"
+class="td11"> <img
+src="images/040-ProtocolClassTextualNotation.png" alt="PIC"
+ /> </td>
+</tr><tr
+class="hline"><td><hr /></td><td><hr /></td></tr><tr
+ style="vertical-align:baseline;" id="TBL-2-2-"><td style="white-space:nowrap; text-align:left;" id="TBL-2-2-1"
+class="td11"> <span
+class="ec-lmssbx-10">Actor with sub actors </span></td><td style="white-space:nowrap; text-align:left;" id="TBL-2-2-2"
+class="td11"> <span
+class="ec-lmssbx-10">Protocol definition </span></td>
+</tr><tr
+class="hline"><td><hr /></td><td><hr /></td></tr><tr
+ style="vertical-align:baseline;" id="TBL-2-3-"><td style="white-space:nowrap; text-align:left;" id="TBL-2-3-1"
+class="td11"> </td></tr></table>
+</div>
+
+
+</div><hr class="endfloat" />
+</div>
+<!--l. 140--><p class="noindent" >The actor provides access protection for its own attributes (including complex types, i.e. classical objects),
+including concurrency protection. An actor has neither public attributes nor public operations. The
+only interaction with the outside world takes place via interface ports. This ensures a high degree
+of re-usability on the actor level and provides an effective and safe programming model to the
+developer.
+</p><!--l. 145--><p class="noindent" >Receiving a message via a port will trigger the internal state machine. A transition will be executed depending
+on the message and the current state. Within this transition, detail level code will be executed and response
+messages can be sent.
+</p><!--l. 149--><p class="noindent" >With this model, a complex behavior can be divided into many relatively simple, linked actors. To put it the
+other way round: The complex behavior will be provided by a network of relatively simple components which
+are communicating with each other via well defined interfaces.
+</p>
+<h5 class="subsubsectionHead"><a
+ id="x5-150001.2.2"></a>Hierarchy in Structure and Behavior</h5>
+<!--l. 156--><p class="noindent" >ROOM provides two types of hierarchy. Behavioral hierarchy and structural hierarchy. Structural hierarchy
+means that actors can be nested to arbitrary depth. Usually you will add more and more details to your
+application with each nesting level. That means you can focus yourself on any level of abstraction with always
+the same element, the actor. Structural hierarchy provides a powerful mechanism to divide your
+problem in smaller pieces, so that you can focus on the level of abstraction you want to work
+on.
+</p><!--l. 162--><p class="noindent" >The actor&#8217;s behavior will be described with a state machine. A state in turn may contain sub states. This is
+another possibility to focus on an abstraction level. Take the simple FSM from the blinky actor from the blinky
+tutorial.
+</p><!--l. 166--><p class="noindent" >Top level:
+</p><!--l. 168--><p class="noindent" ><img
+src="images/020-Blinky15.png" alt="PIC"
+ />
+</p><!--l. 170--><p class="noindent" ><span
+class="ec-lmsso-10">blinking </span>Sub machine:
+</p><!--l. 172--><p class="noindent" ><img
+src="images/020-Blinky151.png" alt="PIC"
+ />
+</p><!--l. 174--><p class="noindent" >From an abstract point of view there is a state <span
+class="ec-lmsso-10">blinking</span>. But a simple LED is not able to blink autonomously.
+Therefore you have to add more details to your model to make a LED blinking, but for the current work it
+is not of interest how the blinking is realized. This will be done in the next lower level of the
+hierarchy.
+</p><!--l. 179--><p class="noindent" >This simple example might give an idea how powerful this mechanisms is.
+</p><!--l. 181--><p class="noindent" >The hierarchical FSM provides a rich tool box to describe real world problems (see chapter <a
+href="etrice-docch4.html#x18-720004">4<!--tex4ht:ref: sec:room_concepts --></a> <a
+href="etrice-docch4.html#x18-720004">ROOM
+Concepts<!--tex4ht:ref: sec:room_concepts --></a>).
+</p><!--l. 183--><p class="noindent" >
+</p>
+<h5 class="subsubsectionHead"><a
+ id="x5-160001.2.2"></a>Layering</h5>
+<!--l. 185--><p class="noindent" >Layering is another well known form of abstraction to reduce complexity in the structure of systems. ROOM is
+probably the only language that supports layering directly as a language feature. Layering can be expressed in
+ROOM by actors with specialized ports, called <span
+class="ec-lmsso-10">Service Access Points </span>(SAP) and <span
+class="ec-lmsso-10">Service Provision Points</span>
+(SPP).
+</p><!--l. 190--><p class="noindent" >The actor that provides a service implements an SPP and the client of that service implements an SAP. The
+layer connection connects all SAPs of a specific protocol within an actor hierarchy with an SPP
+that implements the service. From the actor&#8217;s point of view, SAPs and SPPs behave almost like
+
+
+ports.
+</p><!--l. 194--><p class="noindent" ><img
+src="images/010-LayerExample.png" alt="PIC"
+ />
+</p><!--l. 196--><p class="noindent" >The example shows a layered model. The layer connections define e.g. that the <span
+class="ec-lmsso-10">ApplicationLayer </span>can only use
+the services of the <span
+class="ec-lmsso-10">ServiceLayer </span>and the <span
+class="ec-lmsso-10">CommunicationLayer</span>. Actors inside the <span
+class="ec-lmsso-10">ApplicationLayer</span>
+that implement an SAP for those services are connected directly to the implementation of the
+services. Layering and actor hierarchies with port to port connections can be mixed on every level of
+granularity.
+</p><!--l. 202--><p class="noindent" >
+</p>
+<h5 class="subsubsectionHead"><a
+ id="x5-170001.2.2"></a>Run to Completion</h5>
+<!--l. 205--><p class="noindent" ><span
+class="ec-lmsso-10">Run to completion </span>(RTC) is a very central concept of ROOM. It enables the developer to concentrate on the
+functional aspects of the system. The developer doesn&#8217;t have to care about concurrency issues all the time.
+This job is concentrated to the system designer in a very flexible way. What does <span
+class="ec-lmsso-10">run to completion </span>mean:
+RTC means that an actor, which is processing a message, can not receive the next message as long as the
+processing of the current message has been finished. Receiving of the next message will be queued by the
+underlying run time system.
+</p><!--l. 213--><p class="noindent" >Note: It is very important not to confuse <span
+class="ec-lmsso-10">run to completion </span>and <span
+class="ec-lmsso-10">cooperative multi threading</span>. Run to
+completion means that an actor will finish the processing of a message before he can receive a new one
+(regardless of its priority). That does <span
+class="ec-lmsso-10">not </span>mean that an actor cannot be preempted from an higher priority
+thread of control. But even a message from this higher prior thread of control will be queued until the current
+processing has been finished.
+</p><!--l. 220--><p class="noindent" >With this mechanism all actor internal attributes and data structures are protected. Due to the fact that
+multiple actors share one thread of control, all objects are protected which are accessed from one thread of
+control but multiple actors. This provides the possibility to decompose complex functionality into several actors
+without the risk to produce access violations or dead locks.
+</p><!--l. 225--><p class="noindent" >
+</p>
+<h4 class="subsectionHead"><span class="titlemark">1.2.3 </span> <a
+ id="x5-180001.2.3"></a>Execution Models</h4>
+<!--l. 227--><p class="noindent" >Since from ROOM models executable code can be generated, it is important to define the way the actors are
+executed and communicate with each other. The combination of communication and execution is called the
+<span
+class="ec-lmsso-10">execution model</span>. Currently the eTrice tooling supports the <span
+class="ec-lmssbx-10">message driven</span>, the <span
+class="ec-lmssbx-10">data driven </span>and a mixture of
+both execution models. In future releases maybe also a synchronous execution model will be supported,
+depending on the requirements of the community.
+</p><!--l. 235--><p class="noindent" >
+</p>
+<h5 class="subsubsectionHead"><a
+ id="x5-190001.2.3"></a>Communication Methods</h5>
+ <ul class="itemize1">
+ <li class="itemize"><span
+class="ec-lmssbx-10">message driven </span>&#8211; asynchronous, non blocking, no return value:<br
+class="newline" />Usually the message driven communication is implemented with message queues. Message queues
+ are inherently asynchronous and enable a very good decoupling of the communicating parties.
+
+
+ </li>
+ <li class="itemize"><span
+class="ec-lmssbx-10">data driven </span>&#8211; asynchronous, non blocking, no return value:<br
+class="newline" />In data driven communication sender and receiver often have a shared block of data. The sender
+ writes the data and the receiver polls the data.
+ </li>
+ <li class="itemize"><span
+class="ec-lmssbx-10">function call </span>&#8211; synchronous, blocking, return value:<br
+class="newline" />Regular function call as known in most programming languages.</li></ul>
+<!--l. 251--><p class="noindent" >eTrice currently supports the two former communication methods.
+</p><!--l. 253--><p class="noindent" >
+</p>
+<h5 class="subsubsectionHead"><a
+ id="x5-200001.2.3"></a>Execution Methods</h5>
+ <ul class="itemize1">
+ <li class="itemize"><span
+class="ec-lmssbx-10">execution by receive event</span>: The message queue or the event dispatcher calls a <span
+class="ec-lmssbx-10">receive event</span>
+ function of the message receiver and thereby executes the processing of the event.
+ </li>
+ <li class="itemize"><span
+class="ec-lmssbx-10">polled execution</span>: The objects are processed by a cyclic <span
+class="ec-lmssbx-10">execute </span>call
+ </li>
+ <li class="itemize"><span
+class="ec-lmssbx-10">execution by function call</span>: The caller executes the called object via function call</li></ul>
+<!--l. 262--><p class="noindent" >eTrice currently supports the two former execution methods.
+</p><!--l. 264--><p class="noindent" >
+</p>
+<h5 class="subsubsectionHead"><a
+ id="x5-210001.2.3"></a>Execution Models</h5>
+<!--l. 266--><p class="noindent" >In present-day&#8217;s embedded systems in most cases one or several of the following execution models are
+used:
+</p>
+<!--l. 268--><p class="noindent" ><span class="paragraphHead"><a
+ id="x5-220001.2.3"></a><span
+class="ec-lmssbx-10">message driven</span></span>
+<br
+class="newline" />
+</p><!--l. 270--><p class="noindent" >The message driven execution model is a combination of message driven communication and execution by
+receive event. This model allows for distributed systems with a very high throughput. It can be deterministic
+but the determinism is hard to proof. This execution model is often found in telecommunication systems and
+high performance automation control systems.
+</p>
+<!--l. 277--><p class="noindent" ><span class="paragraphHead"><a
+ id="x5-230001.2.3"></a><span
+class="ec-lmssbx-10">data driven</span></span>
+<br
+class="newline" />
+
+
+</p><!--l. 279--><p class="noindent" >The data driven execution model is a combination of data driven communication and polled execution. This
+model is highly deterministic and very robust, but the polling creates a huge performance overhead. The
+determinism is easy to proof (simple mathematics). The execution model is also compatible with the
+execution model of control software generated by Tools like Matlab(TM) and LabView(TM). This
+model is usually used for systems with requirements for safety, such as automotive and avionic
+systems.
+</p>
+<!--l. 286--><p class="noindent" ><span class="paragraphHead"><a
+ id="x5-240001.2.3"></a><span
+class="ec-lmssbx-10">synchronous</span></span>
+<br
+class="newline" />
+</p><!--l. 288--><p class="noindent" >The synchronous execution model could also be called <span
+class="ec-lmsso-10">function calls</span>. This model in general is not very well
+suited to support the <span
+class="ec-lmsso-10">run to completion </span>semantics typical for ROOM models, but could also be generated from
+ROOM models. With this execution model also lower levels of a software system, such as device drivers, could
+be generated from ROOM models.
+
+
+</p>
+<!--l. 59--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docch2.html" >next</a>] [<a
+href="etrice-docse1.html" >prev</a>] [<a
+href="etrice-docse1.html#tailetrice-docse1.html" >prev-tail</a>] [<a
+href="etrice-docse2.html" >front</a>] [<a
+href="etrice-docch1.html#etrice-docse2.html" >up</a>] </p></div>
+<!--l. 59--><p class="noindent" ><a
+ id="tailetrice-docse2.html"></a> </p>
+</body></html>
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse20.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse20.html
index adfa808..0988acf 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse20.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse20.html
@@ -1,40 +1,1385 @@
-<?xml version="1.0" encoding="iso-8859-1" ?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
-<html xmlns="http://www.w3.org/1999/xhtml"
->
-<head><title>Summary</title>
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
-<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
-<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
-<!-- xhtml,3,next,html -->
-<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-06-21 12:20:00" />
-<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
-</head><body
->
-<!--l. 180--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docch6.html" >next</a>] [<a
-href="etrice-docse19.html" >prev</a>] [<a
-href="etrice-docse19.html#tailetrice-docse19.html" >prev-tail</a>] [<a
-href="#tailetrice-docse20.html">tail</a>] [<a
-href="etrice-docch5.html#etrice-docse20.html" >up</a>] </p></div>
-<h3 class="sectionHead"><span class="titlemark">5.8 </span> <a
- id="x27-710005.8"></a>Summary</h3>
-<!--l. 182--><p class="noindent" >You are now familiar with all necessary steps to create, build and run an eTrice C model from scratch. You are
-able to create a launch configuration to start the code generator and to perform all necessary settings to
-compile and link the application.
-</p><!--l. 186--><p class="noindent" >The next tutorial provides an exercise to get more familiar with these working steps.
-
-
-</p>
-<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docch6.html" >next</a>] [<a
-href="etrice-docse19.html" >prev</a>] [<a
-href="etrice-docse19.html#tailetrice-docse19.html" >prev-tail</a>] [<a
-href="etrice-docse20.html" >front</a>] [<a
-href="etrice-docch5.html#etrice-docse20.html" >up</a>] </p></div>
-<!--l. 1--><p class="noindent" ><a
- id="tailetrice-docse20.html"></a> </p>
-</body></html>
+<?xml version="1.0" encoding="iso-8859-1" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
+<html xmlns="http://www.w3.org/1999/xhtml"
+>
+<head><title>eTrice Models and Their Relations</title>
+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
+<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
+<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
+<!-- xhtml,3,next,html -->
+<meta name="src" content="etrice-doc.tex" />
+<meta name="date" content="2013-07-04 15:04:00" />
+<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
+</head><body
+>
+<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docch6.html" >next</a>] [<a
+href="etrice-docse19.html" >prev</a>] [<a
+href="etrice-docse19.html#tailetrice-docse19.html" >prev-tail</a>] [<a
+href="#tailetrice-docse20.html">tail</a>] [<a
+href="etrice-docch5.html#etrice-docse20.html" >up</a>] </p></div>
+<h3 class="sectionHead"><span class="titlemark">5.2 </span> <a
+ id="x27-1180005.2"></a>eTrice Models and Their Relations</h3>
+<!--l. 3--><p class="noindent" >eTrice comprises several models:
+</p>
+ <ul class="itemize1">
+ <li class="itemize">the ROOM model (*.room) &#8211; defines model classes and the logical structure of the model
+ </li>
+ <li class="itemize">the Config model (*.config) &#8211; defines configuration values for attributes
+ </li>
+ <li class="itemize">the Physical model (*.etphys) &#8211; defines the structure and properties of the physical system
+ </li>
+ <li class="itemize">the Mapping model (*.etmap) &#8211; defines a mapping from logical elements to physical elements</li></ul>
+<!--l. 12--><p class="noindent" >In the following diagram the models and their relations are depicted. The meaning of the arrows is:
+uses/references.
+</p><!--l. 15--><p class="noindent" ><img
+src="images/080-models.jpg" alt="PIC"
+ />
+</p><!--l. 17--><p class="noindent" >In the following sections we will describe those models with emphasis of their cross relations.
+</p><!--l. 19--><p class="noindent" >
+</p>
+<h4 class="subsectionHead"><span class="titlemark">5.2.1 </span> <a
+ id="x27-1190005.2.1"></a>The ROOM Model</h4>
+<!--l. 21--><p class="noindent" >The ROOM model defines <span id="textcolor52"><span
+class="ec-lmssbx-10">DataClass</span></span>es, <span id="textcolor53"><span
+class="ec-lmssbx-10">ProtocolClass</span></span>es, <span id="textcolor54"><span
+class="ec-lmssbx-10">ActorClass</span></span>es, <span id="textcolor55"><span
+class="ec-lmssbx-10">SubSystemClass</span></span>es and
+<span id="textcolor56"><span
+class="ec-lmssbx-10">LogicalSystem</span></span>s. Thereby the three latter form a hierarchy. The <span id="textcolor57"><span
+class="ec-lmssbx-10">LogicalSystem</span></span> is the top level element of the
+structure. It contains references to <span id="textcolor58"><span
+class="ec-lmssbx-10">SubSystemClass</span></span> elements. The <span id="textcolor59"><span
+class="ec-lmssbx-10">SubSystemClass</span></span> in turn contains
+references to <span id="textcolor60"><span
+class="ec-lmssbx-10">ActorClass</span></span> elements which again contain (recursively) references to <span id="textcolor61"><span
+class="ec-lmssbx-10">ActorClass</span></span> elements. The
+complete structural hierarchy implies a tree which has the <span id="textcolor62"><span
+class="ec-lmssbx-10">LogicalSystem</span></span> as root and where each reference
+stands for a new node with possibly further branches.
+</p><!--l. 29--><p class="noindent" >Let&#8217;s consider a simple example. It doesn&#8217;t implement anything meaningful and completely omits behavioral
+and other aspects.
+</p>
+<!--l. 32--><div class="lstinputlisting">
+<a
+ id="x27-119001r1"></a>
+<a
+ id="x27-119002"></a>
+<span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-119003r1"></a></span><span
+class="ec-lmssbx-10x-x-90">RoomModel</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">test</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-119004r2"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">LogicalSystem</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">Main</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-119005r3"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">SubSystemRef</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">subA</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">SubA</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-119006r4"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">SubSystemRef</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">subB</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">SubB</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-119007r5"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-119008r6"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-119009r7"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">SubSystemClass</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">SubA</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-119010r8"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">ActorRef</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">actA</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ActA</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-119011r9"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">ActorRef</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">actB</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ActB</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-119012r10"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-119013r11"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">LogicalThread</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">dflt</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-119014r12"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">LogicalThread</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">extra</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-119015r13"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">ActorInstanceMapping</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">actA</span><span
+class="ec-lmtt-9">/</span><span
+class="ec-lmtt-9">actB1</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">-&#x003E;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">extra</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-119016r14"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">ActorInstanceMapping</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">actC1</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">-&#x003E;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">dflt</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-119017r15"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-119018r16"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">ActorInstanceMapping</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">actA</span><span
+class="ec-lmtt-9">/</span><span
+class="ec-lmtt-9">actB2</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">-&#x003E;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">extra</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-119019r17"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-119020r18"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-119021r19"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">SubSystemClass</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">SubB</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-119022r20"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">ActorRef</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">actA</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ActA</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-119023r21"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">ActorRef</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">actB</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ActB</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-119024r22"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-119025r23"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">LogicalThread</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">dflt</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-119026r24"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">LogicalThread</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">extra</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-119027r25"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">ActorInstanceMapping</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">actB</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">-&#x003E;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">extra</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-119028r26"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-119029r27"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-119030r28"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">ActorClass</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ActA</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-119031r29"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Structure</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-119032r30"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Attribute</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">val</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">int</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-119033r31"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">ActorRef</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">actB1</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ActB</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-119034r32"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">ActorRef</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">actB2</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ActB</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-119035r33"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-119036r34"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-119037r35"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-119038r36"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">ActorClass</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ActB</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-119039r37"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Structure</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-119040r38"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Attribute</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">val</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">int</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-119041r39"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">ActorRef</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">actC1</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ActC</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-119042r40"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">ActorRef</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">actC2</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ActC</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-119043r41"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-119044r42"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-119045r43"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-119046r44"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">ActorClass</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ActC</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-119047r45"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-119048r46"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">PrimitiveType</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">int</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">ptInteger</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">-&#x003E;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">int</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">(</span><span
+class="ec-lmtt-9">Integer</span><span
+class="ec-lmtt-9">)</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">default</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">"</span><span
+class="ec-lmtt-9">0</span><span
+class="ec-lmtt-9">"</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-119049r47"></a></span><span
+class="ec-lmtt-9">}</span>
+<br />
+ <div class="caption"
+><span class="id">Listing&#x00A0;5.1:
+ </span><span
+class="content">ROOM
+ example
+
+
+ code</span></div><!--tex4ht:label?: x27-1190005.2 -->
+</div>
+<!--l. 34--><p class="noindent" >When a <span id="textcolor63"><span
+class="ec-lmssbx-10">LogicalSystem</span></span> is instantiated then recursively all of the contained referenced elements are
+instantiated as instances of the corresponding class. Thus the instance tree of the above example looks like in
+figure <a
+href="#x27-1190505">5.5<!--tex4ht:ref: fig:instance_tree --></a> (the third line in the white boxes shows some mapping information, see section <a
+href="#x27-1220005.2.4">5.2.4<!--tex4ht:ref: sec:mapping_model --></a> <a
+href="#x27-1220005.2.4">The Mapping
+Model<!--tex4ht:ref: sec:mapping_model --></a>):
+</p>
+<hr class="figure" /><div class="figure"
+>
+
+
+<a
+ id="x27-1190505"></a><a
+ id="x27-12000025"></a><a
+ id="x27-12100011"></a><a
+ id="x27-12100046"></a><a
+ id="x27-12200017"></a>
+
+
+<!--l. 40--><p class="noindent" ><img
+src="images/080-instances.jpg" alt="PIC"
+ />
+<br /> </p><div class="caption"
+><span class="id">Figure&#x00A0;5.5: </span><span
+class="content">Instances of a ROOM system</span></div><!--tex4ht:label?: x27-1190505 -->
+
+
+</div><hr class="endfigure" />
+<h4 class="subsectionHead"><span class="titlemark">5.2.2 </span> <a
+ id="x27-1200005.2.2"></a>The Config Model</h4>
+<!--l. 47--><p class="noindent" >Once we have the ROOM class model we can configure values using the Config model. This can be done on
+the class level and/or on the instance level. Values defined for class attributes are used for all instances unless
+there is an instance value configured for the same attribute.
+</p>
+<!--l. 51--><div class="lstinputlisting">
+<a
+ id="x27-120001r2"></a>
+<a
+ id="x27-120002"></a>
+<span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-120003r1"></a></span><span
+class="ec-lmssbx-10x-x-90">ConfigModel</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">test</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-120004r2"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-120005r3"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">import</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">test</span><span
+class="ec-lmtt-9">.*</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">from</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">"</span><span
+class="ec-lmtt-9">room</span><span
+class="ec-lmtt-9">-</span><span
+class="ec-lmtt-9">example</span><span
+class="ec-lmtt-9">.</span><span
+class="ec-lmtt-9">room</span><span
+class="ec-lmtt-9">"</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-120006r4"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-120007r5"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">ActorClassConfig</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ActA</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-120008r6"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Attr</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">val</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">=</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">1</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-120009r7"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-120010r8"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-120011r9"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">ActorClassConfig</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ActB</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-120012r10"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Attr</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">val</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">=</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">2</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-120013r11"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-120014r12"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-120015r13"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">ActorInstanceConfig</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">Main</span><span
+class="ec-lmtt-9">/</span><span
+class="ec-lmtt-9">subA</span><span
+class="ec-lmtt-9">/</span><span
+class="ec-lmtt-9">actA</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-120016r14"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Attr</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">val</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">=</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">12</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-120017r15"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-120018r16"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-120019r17"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">ActorInstanceConfig</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">Main</span><span
+class="ec-lmtt-9">/</span><span
+class="ec-lmtt-9">subA</span><span
+class="ec-lmtt-9">/</span><span
+class="ec-lmtt-9">actB</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-120020r18"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Attr</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">val</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">=</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">13</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-120021r19"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-120022r20"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-120023r21"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">ActorInstanceConfig</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">Main</span><span
+class="ec-lmtt-9">/</span><span
+class="ec-lmtt-9">subA</span><span
+class="ec-lmtt-9">/</span><span
+class="ec-lmtt-9">actA</span><span
+class="ec-lmtt-9">/</span><span
+class="ec-lmtt-9">actB2</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-120024r22"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Attr</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">val</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">=</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">14</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-120025r23"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-120026r24"></a></span><span
+class="ec-lmtt-9">}</span>
+<br />
+ <div class="caption"
+><span class="id">Listing&#x00A0;5.2:
+ </span><span
+class="content">Config
+ example
+ code</span></div><!--tex4ht:label?: x27-1200005.2 -->
+</div>
+<!--l. 53--><p class="noindent" >
+</p>
+<h4 class="subsectionHead"><span class="titlemark">5.2.3 </span> <a
+ id="x27-1210005.2.3"></a>The Physical Model</h4>
+<!--l. 55--><p class="noindent" >The physical model defines the physical resources onto which the logical system will be deployed. It is
+possible to define runtime classes which (currently) only define the overall execution model of the
+platform.
+</p>
+<!--l. 59--><div class="lstinputlisting">
+<a
+ id="x27-121001r3"></a>
+<a
+ id="x27-121002"></a>
+<span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-121003r1"></a></span><span
+class="ec-lmssbx-10x-x-90">PhysicalModel</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">runtimes</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-121004r2"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-121005r3"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">RuntimeClass</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">PCRuntime</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-121006r4"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">model</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">=</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">multiThreaded</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-121007r5"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-121008r6"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-121009r7"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">RuntimeClass</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">MSP430Runtime</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-121010r8"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">model</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">=</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">singleThreaded</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-121011r9"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-121012r10"></a></span><span
+class="ec-lmtt-9">}</span>
+<br />
+ <div class="caption"
+><span class="id">Listing&#x00A0;5.3:
+ </span><span
+class="content">etPhys
+ runtime
+ definition</span></div><!--tex4ht:label?: x27-1210005.2 -->
+</div>
+<!--l. 61--><p class="noindent" >The <span id="textcolor64"><span
+class="ec-lmssbx-10">PhysicalSystem</span></span> is composed of <span id="textcolor65"><span
+class="ec-lmssbx-10">NodeRef</span></span>erences which are instances of <span id="textcolor66"><span
+class="ec-lmssbx-10">NodeClass</span></span>es. Each <span id="textcolor67"><span
+class="ec-lmssbx-10">NodeClass</span></span>
+is referencing a <span id="textcolor68"><span
+class="ec-lmssbx-10">RuntimeClass</span></span> and is defining <span id="textcolor69"><span
+class="ec-lmssbx-10">Threads</span></span>.
+</p>
+<!--l. 65--><div class="lstinputlisting">
+<a
+ id="x27-121013r4"></a>
+<a
+ id="x27-121014"></a>
+<span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-121015r1"></a></span><span
+class="ec-lmssbx-10x-x-90">PhysicalModel</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">test</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-121016r2"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-121017r3"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">import</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">test</span><span
+class="ec-lmtt-9">.*</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">from</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">"</span><span
+class="ec-lmtt-9">etphys</span><span
+class="ec-lmtt-9">-</span><span
+class="ec-lmtt-9">runtimes</span><span
+class="ec-lmtt-9">.</span><span
+class="ec-lmtt-9">etphys</span><span
+class="ec-lmtt-9">"</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-121018r4"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-121019r5"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">PhysicalSystem</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">MainPhys</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-121020r6"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">NodeRef</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">pc1</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">PC_Node</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-121021r7"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">NodeRef</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">pc2</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">PC_Node</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-121022r8"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">NodeRef</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">mc</span><span
+class="ec-lmtt-9">:</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">MSP430_Node</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-121023r9"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-121024r10"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-121025r11"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">NodeClass</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">PC_Node</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-121026r12"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">runtime</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">=</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">runtimes</span><span
+class="ec-lmtt-9">.</span><span
+class="ec-lmtt-9">PCRuntime</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-121027r13"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">priomin</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">=</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">1</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-121028r14"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">priomax</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">=</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">10</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-121029r15"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">DefaultThread</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">thread1</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-121030r16"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">execmode</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">=</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">blocked</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-121031r17"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">prio</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">=</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">10</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-121032r18"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">stacksize</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">=</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">1024</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-121033r19"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">msgblocksize</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">=</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">64</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-121034r20"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">msgpoolsize</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">=</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">50</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-121035r21"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-121036r22"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Thread</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">thread2</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-121037r23"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">execmode</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">=</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">polled</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-121038r24"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">interval</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">=</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">1</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">ms</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-121039r25"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">prio</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">=</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">10</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-121040r26"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">stacksize</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">=</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">1024</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-121041r27"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">msgblocksize</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">=</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">64</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-121042r28"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">msgpoolsize</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">=</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">50</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-121043r29"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-121044r30"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-121045r31"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-121046r32"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">NodeClass</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">MSP430_Node</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-121047r33"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">runtime</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">=</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">runtimes</span><span
+class="ec-lmtt-9">.</span><span
+class="ec-lmtt-9">MSP430Runtime</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-121048r34"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">priomin</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">=</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">1</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-121049r35"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">priomax</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">=</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">10</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-121050r36"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">DefaultThread</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">main</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-121051r37"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">execmode</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">=</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">polled</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-121052r38"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">interval</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">=</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">10</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">us</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-121053r39"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">prio</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">=</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">10</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-121054r40"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">stacksize</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">=</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">256</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-121055r41"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">msgblocksize</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">=</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">64</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-121056r42"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">msgpoolsize</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">=</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">50</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-121057r43"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-121058r44"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-121059r45"></a></span><span
+class="ec-lmtt-9">}</span>
+
+
+<br />
+ <div class="caption"
+><span class="id">Listing&#x00A0;5.4:
+ </span><span
+class="content">etPhys
+ example
+ code</span></div><!--tex4ht:label?: x27-1210005.2 -->
+</div>
+<!--l. 67--><p class="noindent" >
+</p>
+<h4 class="subsectionHead"><span class="titlemark">5.2.4 </span> <a
+ id="x27-1220005.2.4"></a>The Mapping Model</h4>
+<!--l. 70--><p class="noindent" >The last model finally combines all this information by mapping logical to physical entities.
+</p>
+<!--l. 72--><div class="lstinputlisting">
+<a
+ id="x27-122001r5"></a>
+<a
+ id="x27-122002"></a>
+<span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-122003r1"></a></span><span
+class="ec-lmssbx-10x-x-90">MappingModel</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">test</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-122004r2"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-122005r3"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">import</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">test</span><span
+class="ec-lmtt-9">.*</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">from</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">"</span><span
+class="ec-lmtt-9">etphys</span><span
+class="ec-lmtt-9">-</span><span
+class="ec-lmtt-9">example</span><span
+class="ec-lmtt-9">.</span><span
+class="ec-lmtt-9">etphys</span><span
+class="ec-lmtt-9">"</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-122006r4"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">import</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">test</span><span
+class="ec-lmtt-9">.*</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">from</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">"</span><span
+class="ec-lmtt-9">room</span><span
+class="ec-lmtt-9">-</span><span
+class="ec-lmtt-9">example</span><span
+class="ec-lmtt-9">.</span><span
+class="ec-lmtt-9">room</span><span
+class="ec-lmtt-9">"</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-122007r5"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-122008r6"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">Mapping</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">Main</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">-&#x003E;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">MainPhys</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-122009r7"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">SubSystemMapping</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">subA</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">-&#x003E;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">pc1</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-122010r8"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ThreadMapping</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">dflt</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">-&#x003E;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">thread1</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-122011r9"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ThreadMapping</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">extra</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">-&#x003E;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">thread2</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-122012r10"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-122013r11"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmssbx-10x-x-90">SubSystemMapping</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">subB</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">-&#x003E;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">mc</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">{</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-122014r12"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ThreadMapping</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">dflt</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">-&#x003E;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">main</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-122015r13"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">ThreadMapping</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">extra</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">-&#x003E;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">main</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-122016r14"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-122017r15"></a></span><span
+class="ec-lmtt-9">&#x00A0;</span><span
+class="ec-lmtt-9">}</span><span
+class="ec-lmtt-9">&#x00A0;</span><br /><span class="label"><a
+ id="x27-122018r16"></a></span><span
+class="ec-lmtt-9">}</span>
+<br />
+ <div class="caption"
+><span class="id">Listing&#x00A0;5.5:
+ </span><span
+class="content">etMap
+ example
+ code</span></div><!--tex4ht:label?: x27-1220005.2 -->
+</div>
+<!--l. 74--><p class="noindent" >The result of the mapping is also depicted in above tree diagram (figure <a
+href="#x27-1190505">5.5<!--tex4ht:ref: fig:instance_tree --></a>) of the instances. All actor
+instances (the white boxes) are mapped to a node and a thread running on this node (shown as @<span
+class="ec-lmsso-10">node </span>:
+<span
+class="ec-lmsso-10">thread</span>).
+
+
+</p>
+<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docch6.html" >next</a>] [<a
+href="etrice-docse19.html" >prev</a>] [<a
+href="etrice-docse19.html#tailetrice-docse19.html" >prev-tail</a>] [<a
+href="etrice-docse20.html" >front</a>] [<a
+href="etrice-docch5.html#etrice-docse20.html" >up</a>] </p></div>
+<!--l. 1--><p class="noindent" ><a
+ id="tailetrice-docse20.html"></a> </p>
+</body></html>
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse21.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse21.html
index 2b83dfa..d6529b2 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse21.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse21.html
@@ -1,61 +1,160 @@
-<?xml version="1.0" encoding="iso-8859-1" ?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
-<html xmlns="http://www.w3.org/1999/xhtml"
->
-<head><title>Scope</title>
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
-<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
-<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
-<!-- xhtml,3,next,html -->
-<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-06-21 12:20:00" />
-<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
-</head><body
->
-<!--l. 3--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse22.html" >next</a>] [<a
-href="etrice-docch6.html" >prev</a>] [<a
-href="etrice-docch6.html#tailetrice-docch6.html" >prev-tail</a>] [<a
-href="#tailetrice-docse21.html">tail</a>] [<a
-href="etrice-docch6.html#etrice-docse21.html" >up</a>] </p></div>
-<h3 class="sectionHead"><span class="titlemark">6.1 </span> <a
- id="x29-730006.1"></a>Scope</h3>
-<!--l. 5--><p class="noindent" >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, while the second actor implements the
-parser.
-</p><!--l. 9--><p class="noindent" >You will perform the following steps:
-</p><!--l. 11--><p class="noindent" >
- </p><ol class="enumerate1" >
- <li
- class="enumerate" id="x29-73002x1">create a new model from scratch for C
- </li>
- <li
- class="enumerate" id="x29-73004x2">define a protocol
- </li>
- <li
- class="enumerate" id="x29-73006x3">define your own data type
- </li>
- <li
- class="enumerate" id="x29-73008x4">create the structure and the behavior by yourself
- </li>
- <li
- class="enumerate" id="x29-73010x5">generate, build and run the model</li></ol>
-<!--l. 19--><p class="noindent" >Make sure that you have set up the workspace as described in <span
-class="ec-lmsso-10">Setting up the Workspace for C</span>
-<span
-class="ec-lmsso-10">Projects</span>.
-
-
-</p>
-<!--l. 22--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse22.html" >next</a>] [<a
-href="etrice-docch6.html" >prev</a>] [<a
-href="etrice-docch6.html#tailetrice-docch6.html" >prev-tail</a>] [<a
-href="etrice-docse21.html" >front</a>] [<a
-href="etrice-docch6.html#etrice-docse21.html" >up</a>] </p></div>
-<!--l. 22--><p class="noindent" ><a
- id="tailetrice-docse21.html"></a> </p>
-</body></html>
+<?xml version="1.0" encoding="iso-8859-1" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
+<html xmlns="http://www.w3.org/1999/xhtml"
+>
+<head><title>Architecture</title>
+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
+<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
+<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
+<!-- xhtml,3,next,html -->
+<meta name="src" content="etrice-doc.tex" />
+<meta name="date" content="2013-07-04 15:04:00" />
+<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
+</head><body
+>
+<!--l. 3--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse22.html" >next</a>] [<a
+href="etrice-docch6.html" >prev</a>] [<a
+href="etrice-docch6.html#tailetrice-docch6.html" >prev-tail</a>] [<a
+href="#tailetrice-docse21.html">tail</a>] [<a
+href="etrice-docch6.html#etrice-docse21.html" >up</a>] </p></div>
+<h3 class="sectionHead"><span class="titlemark">6.1 </span> <a
+ id="x29-1240006.1"></a>Architecture</h3>
+<!--l. 5--><p class="noindent" >The basic components of eTrice are depicted in the following diagram.
+</p><!--l. 7--><p class="noindent" ><img
+src="images/200-components.jpg" alt="PIC"
+ />
+</p><!--l. 9--><p class="noindent" >Additional to that the eTrice project comprises runtime libraries and unit tests which are treated in subsequent
+sections.
+</p><!--l. 12--><p class="noindent" >
+</p>
+<h4 class="subsectionHead"><span class="titlemark">6.1.1 </span> <a
+ id="x29-1250006.1.1"></a>Editor and Generator Components</h4>
+ <ul class="itemize1">
+ <li class="itemize">core
+ <ul class="itemize2">
+ <li class="itemize">core.room is an Xtext based language called ROOM. It consists of the plug-ins
+ <span
+class="ec-lmtt-10">org.eclipse.etrice.core.room </span>and <span
+class="ec-lmtt-10">org.eclipse.etrice.core.room.ui</span>. ROOM is
+ the basic modeling language of eTrice.
+ </li>
+ <li class="itemize">core.config is an Xtext based
+ language called Config. It consists of the plug-ins <span
+class="ec-lmtt-10">org.eclipse.etrice.core.config</span>
+ and <span
+class="ec-lmtt-10">org.eclipse.etrice.core.config.ui</span>. Config is a language designed for the data
+ configuration of model
+ </li>
+ <li class="itemize">core.etphys is an Xtext based
+ language called etPhys. It consists of the plug-ins <span
+class="ec-lmtt-10">org.eclipse.etrice.core.etphys </span>and
+
+
+ <span
+class="ec-lmtt-10">org.eclipse.etrice.core.etphys.ui</span>. etPhys is a language designed for the description
+ of physical systems onto which the logical ROOM systems are deployed.
+ </li>
+ <li class="itemize">core.etmap is an Xtext based language called etMap. It consists of the plug-ins
+ <span
+class="ec-lmtt-10">org.eclipse.etrice.core.etmap </span>and <span
+class="ec-lmtt-10">org.eclipse.etrice.core.etmap.ui</span>. etMap
+ is a language designed for the mapping of logical to physical systems.
+ </li>
+ <li class="itemize">core.genmodel is an EMF based aggregation layer for Room models. It consists of the
+ plugin <span
+class="ec-lmtt-10">org.eclipse.etrice.core.genmodel</span>. A Room model can be transformed into a
+ genmodel which allows easy access to implicit relations of the Room model.</li></ul>
+ </li>
+ <li class="itemize">ui
+ <ul class="itemize2">
+ <li class="itemize">textual
+ <ul class="itemize3">
+ <li class="itemize">room.ui is the ui counterpart of core.room. It consists of the plug-in
+ <span
+class="ec-lmtt-10">org.eclipse.etrice.core.room.ui</span>. This plug-in realizes IDE concepts like content
+ assist, error markers and navigation by hyper links for the Room language.
+ </li>
+ <li class="itemize">config.ui is the ui counterpart of core.config. It consists of the plug-in
+ <span
+class="ec-lmtt-10">org.eclipse.etrice.core.config.ui</span>. This plug-in realizes IDE concepts like
+ content assist, error markers and navigation by hyper links for the Config language.
+ </li>
+ <li class="itemize">etphys.ui is the ui counterpart of core.etphys. It consists of the plug-in
+ <span
+class="ec-lmtt-10">org.eclipse.etrice.core.etphys.ui</span>. This plug-in realizes IDE concepts like
+ content assist, error markers and navigation by hyper links for the etPhys language.
+ </li>
+ <li class="itemize">etmap.ui is the ui counterpart of core.etmap. It consists of the plug-in
+ <span
+class="ec-lmtt-10">org.eclipse.etrice.core.etmap.ui</span>. This plug-in realizes IDE concepts like content
+ assist, error markers and navigation by hyper links for the etPhys language.</li></ul>
+ </li>
+ <li class="itemize">graphical
+ <ul class="itemize3">
+ <li class="itemize">ui.common is a set of common code for the two diagram editors. It consists of the
+ plug-in <span
+class="ec-lmtt-10">org.eclipse.etrice.ui.common</span>.
+ </li>
+ <li class="itemize">ui.commands encapsulates some commands related to the navigation between eTrice
+ editors. It consists of the plug-in <span
+class="ec-lmtt-10">org.eclipse.etrice.ui.commands</span>.
+ </li>
+ <li class="itemize">ui.structure is the Graphiti based editor for the Actor structure. It consists of the plug-in
+ <span
+class="ec-lmtt-10">org.eclipse.etrice.ui.structure</span>.
+ </li>
+ <li class="itemize">ui.behavior is the Graphiti based editor for the Actor behavior. It consists of the plug-in
+ <span
+class="ec-lmtt-10">org.eclipse.etrice.ui.behavior</span>.</li></ul>
+ </li></ul>
+ </li>
+ <li class="itemize">generators
+ <ul class="itemize2">
+ <li class="itemize">generator is a set of general classes and language independent parts of all generators. It
+ consists of the plug-in <span
+class="ec-lmsso-10">org.eclipse.etrice.generator</span>.
+
+
+ </li>
+ <li class="itemize">generator.c is the generator for the ANSI-C target language. It consists of the plug-in
+ <span
+class="ec-lmtt-10">org.eclipse.etrice.generator.c</span>.
+ </li>
+ <li class="itemize">generator.cpp is the generator for the C++ target language. It consists of the plug-in
+ <span
+class="ec-lmtt-10">org.eclipse.etrice.generator.cpp</span>.
+ </li>
+ <li class="itemize">generator.java is the generator for the Java target language. It consists of the plug-in
+ <span
+class="ec-lmtt-10">org.eclipse.etrice.generator.java</span>.
+ </li>
+ <li class="itemize">generator.doc is the generator for the model documentation. It consists of the plug-in
+ <span
+class="ec-lmtt-10">org.eclipse.etrice.generator.doc</span>.</li></ul>
+ </li></ul>
+<!--l. 84--><p class="noindent" >
+</p>
+<h4 class="subsectionHead"><span class="titlemark">6.1.2 </span> <a
+ id="x29-1260006.1.2"></a>Runtimes</h4>
+<!--l. 86--><p class="noindent" >Currently eTrice ships with a C and a Java runtime. The C++ runtime is still a prototype. The runtimes are
+libraries written in the target language against which the generated code is compiled.
+</p><!--l. 90--><p class="noindent" >
+</p>
+<h4 class="subsectionHead"><span class="titlemark">6.1.3 </span> <a
+ id="x29-1270006.1.3"></a>Unit Tests</h4>
+<!--l. 92--><p class="noindent" >Most plug-ins and other parts of the code have related unit tests.
+
+
+</p>
+<!--l. 94--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse22.html" >next</a>] [<a
+href="etrice-docch6.html" >prev</a>] [<a
+href="etrice-docch6.html#tailetrice-docch6.html" >prev-tail</a>] [<a
+href="etrice-docse21.html" >front</a>] [<a
+href="etrice-docch6.html#etrice-docse21.html" >up</a>] </p></div>
+<!--l. 94--><p class="noindent" ><a
+ id="tailetrice-docse21.html"></a> </p>
+</body></html>
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse22.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse22.html
index 157a557..df37e87 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse22.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse22.html
@@ -1,72 +1,405 @@
-<?xml version="1.0" encoding="iso-8859-1" ?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
-<html xmlns="http://www.w3.org/1999/xhtml"
->
-<head><title>Create a new model from scratch</title>
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
-<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
-<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
-<!-- xhtml,3,next,html -->
-<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-06-21 12:20:00" />
-<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
-</head><body
->
-<!--l. 22--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse23.html" >next</a>] [<a
-href="etrice-docse21.html" >prev</a>] [<a
-href="etrice-docse21.html#tailetrice-docse21.html" >prev-tail</a>] [<a
-href="#tailetrice-docse22.html">tail</a>] [<a
-href="etrice-docch6.html#etrice-docse22.html" >up</a>] </p></div>
-<h3 class="sectionHead"><span class="titlemark">6.2 </span> <a
- id="x30-740006.2"></a>Create a new model from scratch</h3>
-<!--l. 24--><p class="noindent" >Remember the following steps from the previous tutorials: </p>
- <ul class="itemize1">
- <li class="itemize">select the <span
-class="ec-lmsso-10">C/C++ </span>perspective
- </li>
- <li class="itemize">From the main menue select <span
-class="ec-lmsso-10">File-&#x003E;New-&#x003E;C Project</span>
- </li>
- <li class="itemize">Name the project <span
-class="ec-lmsso-10">RemoveComment</span>
- </li>
- <li class="itemize">Project type is <span
-class="ec-lmsso-10">Executable / Empty C Project</span>
- </li>
- <li class="itemize">Toolchain is <span
-class="ec-lmsso-10">MinGW</span>
- </li>
- <li class="itemize">Add the folder <span
-class="ec-lmsso-10">model</span>
- </li>
- <li class="itemize">Add the model file and name it <span
-class="ec-lmsso-10">RemoveComment.room</span>
- </li>
- <li class="itemize">Add the Xtext nature.</li></ul>
-<!--l. 36--><p class="noindent" >The workspace should look like this:
-</p><!--l. 38--><p class="noindent" ><img
-src="images/036-RemoveCommentC01.png" alt="PIC"
- />
-</p><!--l. 41--><p class="noindent" >Create a launch configuration for the C generator and add the include path and library as described in
-<span
-class="ec-lmsso-10">HelloWorldC</span>.
-</p><!--l. 44--><p class="noindent" >The workspace should look like this:
-</p><!--l. 46--><p class="noindent" ><img
-src="images/036-RemoveCommentC02.png" alt="PIC"
- />
-</p><!--l. 49--><p class="noindent" >Now the model is created and all settings for the code generator, compiler and linker are done.
-
-
-</p>
-<!--l. 52--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse23.html" >next</a>] [<a
-href="etrice-docse21.html" >prev</a>] [<a
-href="etrice-docse21.html#tailetrice-docse21.html" >prev-tail</a>] [<a
-href="etrice-docse22.html" >front</a>] [<a
-href="etrice-docch6.html#etrice-docse22.html" >up</a>] </p></div>
-<!--l. 52--><p class="noindent" ><a
- id="tailetrice-docse22.html"></a> </p>
-</body></html>
+<?xml version="1.0" encoding="iso-8859-1" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
+<html xmlns="http://www.w3.org/1999/xhtml"
+>
+<head><title>Component Overview</title>
+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
+<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
+<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
+<!-- xhtml,3,next,html -->
+<meta name="src" content="etrice-doc.tex" />
+<meta name="date" content="2013-07-04 15:04:00" />
+<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
+</head><body
+>
+<!--l. 94--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse21.html" >prev</a>] [<a
+href="etrice-docse21.html#tailetrice-docse21.html" >prev-tail</a>] [<a
+href="#tailetrice-docse22.html">tail</a>] [<a
+href="etrice-docch6.html#etrice-docse22.html" >up</a>] </p></div>
+<h3 class="sectionHead"><span class="titlemark">6.2 </span> <a
+ id="x30-1280006.2"></a>Component Overview</h3>
+<!--l. 96--><p class="noindent" >
+</p>
+<h4 class="subsectionHead"><span class="titlemark">6.2.1 </span> <a
+ id="x30-1290006.2.1"></a>Room Language Overview</h4>
+<!--l. 98--><p class="noindent" >We assume that the reader is familiar with the Xtext concepts. So we concentrate on the details of our
+implementation that are worth to be pointed out.
+</p><!--l. 101--><p class="noindent" >
+</p>
+<h5 class="subsubsectionHead"><a
+ id="x30-1300006.2.1"></a>Model Tweaks</h5>
+<!--l. 103--><p class="noindent" >The Room EMF model is inferred from the grammar. However, this powerful mechanism has to be tweaked at
+some places. This is done in the <span
+class="ec-lmsso-10">/org.eclipse.etrice.core.room/src/org/eclipse/etrice/core/RoomPostprocessor.ext</span>
+which is written in the legacy Xtend language.
+</p><!--l. 109--><p class="noindent" >The following parts of the model are changed or added: </p>
+ <ul class="itemize1">
+ <li class="itemize">the default
+
+
+ <div class="verbatim" id="verbatim-19">
+ multiplicity
+</div>
+ <!--l. 111--><p class="nopar" > of the <span
+class="ec-lmtt-10">Port </span>is set to 1
+ </p></li>
+ <li class="itemize">the operation <span
+class="ec-lmtt-10">isReplicated </span>is added to the <span
+class="ec-lmtt-10">Port</span>
+ </li>
+ <li class="itemize">the default <span
+class="ec-lmtt-10">size </span>of the <span
+class="ec-lmtt-10">ActorRef </span>is set to 1
+ </li>
+ <li class="itemize">an operation <span
+class="ec-lmtt-10">getName </span>is add to the <span
+class="ec-lmtt-10">State </span>class
+ </li>
+ <li class="itemize">an operation <span
+class="ec-lmtt-10">getName </span>is add to the <span
+class="ec-lmtt-10">StateGraphItem </span>class
+ </li>
+ <li class="itemize">an operation <span
+class="ec-lmtt-10">getGeneralProtocol </span>is added to the <span
+class="ec-lmtt-10">InterfaceItem</span></li></ul>
+<!--l. 119--><p class="noindent" >
+</p>
+<h5 class="subsubsectionHead"><a
+ id="x30-1310006.2.1"></a>Imports by URI Using Namespaces</h5>
+<!--l. 121--><p class="noindent" >The import mechanism employed is based on URIs. This is configured for one part in the GenerateRoom.mwe2
+model workflow by setting the fragments ImportURIScopingFragment and ImportUriValidator). For the other
+part it is configured in the Guice modules by binding </p>
+ <ul class="itemize1">
+ <li class="itemize"><span
+class="ec-lmtt-10">PlatformRelativeUriResolver </span>&#8211; this class tries to convert the import URI into a platform
+ relative URI. It also replaces environment variables written in $ with their respective values.
+ </li>
+ <li class="itemize"><span
+class="ec-lmtt-10">ImportedNamespaceAwareLocalScopeProvider </span>&#8211; this is a standard scope provider which is
+ aware of namespaces
+ </li>
+ <li class="itemize"><span
+class="ec-lmtt-10">GlobalNonPlatformURIEditorOpener </span>&#8211; this editor opener tries to convert general URIs into
+ platform URIs because editors can only open platform URIs
+ </li>
+ <li class="itemize"><span
+class="ec-lmtt-10">ImportAwareHyperlinkHelper </span>&#8211; turns the URI part of an import into a navigatable hyper link</li></ul>
+<!--l. 134--><p class="noindent" >
+</p>
+<h5 class="subsubsectionHead"><a
+ id="x30-1320006.2.1"></a>Naming</h5>
+<!--l. 136--><p class="noindent" >Two classes provide object names used for link resolution and for labels. The <span
+class="ec-lmtt-10">RoomNameProvider </span>provides
+frequently used name strings, some of them are hierarchical like State paths. The <span
+class="ec-lmtt-10">RoomFragmentProvider</span>
+serves a more formal purpose since it provides a link between EMF models (as used by the diagram editors)
+and the textual model representation used by Xtext.
+
+
+</p><!--l. 142--><p class="noindent" >
+</p>
+<h5 class="subsubsectionHead"><a
+ id="x30-1330006.2.1"></a>Helpers</h5>
+<!--l. 144--><p class="noindent" >The <span
+class="ec-lmtt-10">RoomHelpers </span>class provides a great deal of static methods that help retrieve frequently used information
+from the model. Among many, many others </p>
+ <ul class="itemize1">
+ <li class="itemize"><span
+class="ec-lmtt-10">getAllEndPorts(ActorClass) </span>- returns a list of all end ports of an actor class including
+ inherited ones
+ </li>
+ <li class="itemize"><span
+class="ec-lmtt-10">getInheritedActionCode(Transition, ActorClass) </span>- get the inherited part of a transition&#8217;s
+ action code
+ </li>
+ <li class="itemize"><span
+class="ec-lmtt-10">getSignature(Operation) </span>- returns a string representing the operation signature suited for a
+ label</li></ul>
+<!--l. 156--><p class="noindent" >
+</p>
+<h5 class="subsubsectionHead"><a
+ id="x30-1340006.2.1"></a>Validation</h5>
+<!--l. 158--><p class="noindent" >Validation is used from various places. Therefore all validation code is accumulated in the @ValidationUtil@
+class. All methods are static and many of them return a Result object which contains information about the
+problem detected as well as object and feature as suited for most validation purposes.
+</p><!--l. 162--><p class="noindent" >
+</p>
+<h4 class="subsectionHead"><span class="titlemark">6.2.2 </span> <a
+ id="x30-1350006.2.2"></a>Config Language Overview</h4>
+<!--l. 164--><p class="noindent" >
+</p>
+<h5 class="subsubsectionHead"><a
+ id="x30-1360006.2.2"></a>Model Tweaks</h5>
+<!--l. 166--><p class="noindent" >A couple of operations are added to the ConfigModel </p>
+ <ul class="itemize1">
+ <li class="itemize"><span
+class="ec-lmtt-10">getActorClassConfigs</span>
+ </li>
+ <li class="itemize"><span
+class="ec-lmtt-10">getActorInstanceConfigs</span>
+ </li>
+ <li class="itemize"><span
+class="ec-lmtt-10">getProtocolClassConfigs</span>
+ </li>
+ <li class="itemize"><span
+class="ec-lmtt-10">getSubSystemConfigs</span></li></ul>
+
+
+<!--l. 174--><p class="noindent" >
+</p>
+<h5 class="subsubsectionHead"><a
+ id="x30-1370006.2.2"></a>Imports by URI Using Namespaces</h5>
+<!--l. 176--><p class="noindent" >Imports are treated like in Room language, section <span
+class="ec-lmsso-10">Imports by URI Using Namespaces</span>.
+</p><!--l. 178--><p class="noindent" >
+</p>
+<h5 class="subsubsectionHead"><a
+ id="x30-1380006.2.2"></a>Util</h5>
+<!--l. 180--><p class="noindent" >A set of static utility methods can be found in the <span
+class="ec-lmtt-10">ConfigUtil </span>class.
+</p><!--l. 182--><p class="noindent" >
+</p>
+<h4 class="subsectionHead"><span class="titlemark">6.2.3 </span> <a
+ id="x30-1390006.2.3"></a>Aggregation Layer Overview</h4>
+<!--l. 184--><p class="noindent" >The eTrice Generator Model (genmodel) serves as an aggregation layer. Its purpose is to allow easy access to
+information which is implicitly contained in the Room model but not simple to retrieve. Examples of this are
+the state machine with inherited items or a list of all triggers active at a state in the order in which
+they will be evaluated or the actual peer port of an end port (following bindings through relay
+ports).
+</p><!--l. 190--><p class="noindent" >The Generator Model is created from a list of Room models by a call of the
+
+
+</p>
+<div class="verbatim" id="verbatim-20">
+createGeneratorModel(List&#x003C;RoomModel&#x003E;,&#x00A0;boolean)
+</div>
+<!--l. 192--><p class="nopar" >
+</p><!--l. 194--><p class="noindent" >method of the <span
+class="ec-lmtt-10">GeneratorModelBuilder </span>class.
+</p><!--l. 196--><p class="noindent" >The <span
+class="ec-lmtt-10">Root </span>object of the resulting Generator Model provides chiefly two things: </p>
+ <ul class="itemize1">
+ <li class="itemize">a tree of instances starting at each <span
+class="ec-lmtt-10">SubSystem </span>with representations of each <span
+class="ec-lmtt-10">ActorInstance </span>and
+ <span
+class="ec-lmtt-10">PortInstance</span>
+ </li>
+ <li class="itemize">for each <span
+class="ec-lmtt-10">ActorClass </span>a corresponding <span
+class="ec-lmtt-10">ExpandedActorClass </span>with an explicit state machine
+ containing all inherited state graph items</li></ul>
+<!--l. 204--><p class="noindent" >
+</p>
+<h5 class="subsubsectionHead"><a
+ id="x30-1400006.2.3"></a>The Instance Model</h5>
+<!--l. 206--><p class="noindent" >The instance model allows easy access to instances including their unique paths and object IDs. Also it is
+possible to get a list of all peer port instances for each port instance without having to bother about port and
+actor replication.
+</p><!--l. 210--><p class="noindent" >
+</p>
+<h5 class="subsubsectionHead"><a
+ id="x30-1410006.2.3"></a>The Expanded Actor Class</h5>
+<!--l. 212--><p class="noindent" >The expanded actor class contains, as already mentioned, the complete state machine of the actor class. This
+considerably simplifies the task of state machine generation. Note that the generated code always
+contains the complete state machine of an actor. I.e. no target language inheritance is used to
+implement the state machine inheritance. Furthermore the <span
+class="ec-lmtt-10">ExpandedActorClass </span>gives access to
+</p>
+ <ul class="itemize1">
+ <li class="itemize"><span
+class="ec-lmtt-10">getIncomingTransitions(StateGraphNode) </span>&#8211; the set of incoming transition of a
+ <span
+class="ec-lmtt-10">StateGraphNode </span>(<span
+class="ec-lmtt-10">State</span>, <span
+class="ec-lmtt-10">ChoicePoint </span>or <span
+class="ec-lmtt-10">TransitionPoint</span>)
+ </li>
+ <li class="itemize"><span
+class="ec-lmtt-10">getOutgoingTransitions(StateGraphNode) </span>&#8211; the set of outgoing transition of a
+ <span
+class="ec-lmtt-10">StateGraphNode</span>
+ </li>
+ <li class="itemize"><span
+class="ec-lmtt-10">getActiveTriggers(State) </span>&#8211; the triggers that are active in this <span
+class="ec-lmtt-10">State </span>in the order they are
+ evaluated</li></ul>
+
+
+<!--l. 226--><p class="noindent" >
+</p>
+<h5 class="subsubsectionHead"><a
+ id="x30-1420006.2.3"></a>Transition Chains</h5>
+<!--l. 228--><p class="noindent" >By transition chains we denote a connected subset of the (hierarchical) state machine that starts with a
+transition starting at a state and continues over transitional state graph nodes (choice points and transition
+points) and continuation transitions until a state is reached. In general a transition chain starts at one state
+and ends in several states (the chain may branch in choice points). A <span
+class="ec-lmtt-10">TransitionChain </span>of a
+transition is retrieved by a call of <span
+class="ec-lmtt-10">getChain(Transition) </span>of the <span
+class="ec-lmtt-10">ExpandedActorClass</span>. The
+<span
+class="ec-lmtt-10">TransitionChain </span>accepts an <span
+class="ec-lmtt-10">ITransitionChainVisitor </span>which is called along the chain to generate the
+action codes of involved transitions and the conditional statements arising from the involved choice
+points.
+</p><!--l. 238--><p class="noindent" >
+</p>
+<h4 class="subsectionHead"><span class="titlemark">6.2.4 </span> <a
+ id="x30-1430006.2.4"></a>Generator Overview</h4>
+<!--l. 240--><p class="noindent" >There is one plug-in that consists of base classes and some generic generator parts which are re-used by all
+language specific generators
+</p><!--l. 243--><p class="noindent" >
+</p>
+<h5 class="subsubsectionHead"><a
+ id="x30-1440006.2.4"></a>Base Classes and Interfaces</h5>
+<!--l. 245--><p class="noindent" >We just want to mention the most important classes and interfaces.
+</p>
+ <ul class="itemize1">
+ <li class="itemize">
+ <div class="flushleft"
+>
+<!--l. 248--><p class="noindent" >
+<span
+class="ec-lmtt-10">ITranslationProvider </span>&#8212; this interface is used by the <span
+class="ec-lmtt-10">DetailCodeTranslator </span>for the language
+dependent translation of e.g. port.message() notation in detail code</p></div>
+ </li>
+ <li class="itemize"><span
+class="ec-lmtt-10">AbstractGenerator </span>&#8212; concrete language generators should derive from this base class
+ </li>
+ <li class="itemize">
+ <div class="flushleft"
+>
+<!--l. 252--><p class="noindent" >
+<span
+class="ec-lmtt-10">DefaultTranslationProvider </span>&#8212; a stub implementation of <span
+class="ec-lmtt-10">ITranslationProvider </span>from which
+clients may derive</p></div>
+ </li>
+ <li class="itemize"><span
+class="ec-lmtt-10">Indexed </span>&#8212; provides an indexed iterable of a given iterable
+ </li>
+ <li class="itemize"><span
+class="ec-lmtt-10">GeneratorBaseModule </span>&#8212; a Google Guice module that binds a couple of basic services. Concrete
+ language generators should use a module that derives from this</li></ul>
+
+
+<!--l. 259--><p class="noindent" >
+</p>
+<h5 class="subsubsectionHead"><a
+ id="x30-1450006.2.4"></a>Generic Generator Parts</h5>
+<!--l. 261--><p class="noindent" >The generic generator parts provide code generation blocks on a medium granularity. The language dependent
+top level generators embed those blocks in a larger context (file, class, ...). Language dependent low level
+constructs are provided by means of an <span
+class="ec-lmtt-10">ILanguageExtension</span>. This extension and other parts of the generator
+be configured using Google Guice dependency injection.
+</p>
+<!--l. 266--><p class="noindent" ><span class="paragraphHead"><a
+ id="x30-1460006.2.4"></a><span
+class="ec-lmssbx-10">GenericActorClassGenerator</span></span>
+The <span
+class="ec-lmtt-10">GenericActorClassGenerator </span>generates constants for the interface items of a actor. Those constants
+are used by the generated state machine.
+</p>
+<!--l. 271--><p class="noindent" ><span class="paragraphHead"><a
+ id="x30-1470006.2.4"></a><span
+class="ec-lmssbx-10">GenericProtocolClassGenerator</span></span>
+The <span
+class="ec-lmtt-10">GenericProtocolClassGenerator </span>generates message ID constants for a protocol.
+</p>
+<!--l. 275--><p class="noindent" ><span class="paragraphHead"><a
+ id="x30-1480006.2.4"></a><span
+class="ec-lmssbx-10">GenericStateMachineGenerator</span></span>
+</p>
+<div class="flushleft"
+>
+<!--l. 277--><p class="noindent" >
+The <span
+class="ec-lmtt-10">GenericStateMachineGenerator </span>generates the complete state machine implementation. The
+skeleton of the generated code is</p></div>
+ <ul class="itemize1">
+ <li class="itemize">definition state ID constants
+ </li>
+ <li class="itemize">definition of transition chain constants
+ </li>
+ <li class="itemize">definition of trigger constants
+ </li>
+ <li class="itemize">entry, exit and action code methods
+ </li>
+ <li class="itemize">the <span
+class="ec-lmtt-10">exitTo </span>method
+ </li>
+ <li class="itemize">the <span
+class="ec-lmtt-10">executeTransitionChain </span>method
+ </li>
+ <li class="itemize">the <span
+class="ec-lmtt-10">enterHistory </span>method
+
+
+ </li>
+ <li class="itemize">the <span
+class="ec-lmtt-10">executeInitTransition </span>method
+ </li>
+ <li class="itemize">the <span
+class="ec-lmtt-10">receiveEvent </span>method</li></ul>
+<!--l. 292--><p class="noindent" >The state machine works as follows. The main entry method is the <br
+class="newline" /><span
+class="ec-lmtt-10">receiveEvent </span>method. This is the case for both, data driven (polled) and event driven state machines. Then
+a number of nested switch/case statements evaluates trigger conditions and derives the transition chain that is
+executed. If a trigger fires then the <span
+class="ec-lmtt-10">exitTo </span>method is called to execute all exit codes involved. Then the
+transition chain action codes are executed and the choice point conditions are evaluated in the
+<span
+class="ec-lmtt-10">executeTransitionChain </span>method. Finally the history of the state where the chain ends is entered and all
+entry codes are executed by <span
+class="ec-lmtt-10">enterHistory</span>.
+</p><!--l. 300--><p class="noindent" >
+</p>
+<h5 class="subsubsectionHead"><a
+ id="x30-1490006.2.4"></a>The Java Generator</h5>
+<!--l. 302--><p class="noindent" >The Java generator employs the generic parts of the generator. The <span
+class="ec-lmtt-10">JavaTranslationProvider</span>
+is very simple and only handles the case of sending a message from a distinct replicated port:
+<span
+class="ec-lmtt-10">replPort[2].message()</span>. Other cases are handled by the base class by returning the original
+text.
+</p><!--l. 306--><p class="noindent" >The <span
+class="ec-lmtt-10">DataClassGen </span>uses Java inheritance for the generated data classes. Otherwise it is pretty much straight
+forward.
+</p><!--l. 309--><p class="noindent" >The <span
+class="ec-lmtt-10">ProtocolClassGen </span>generates a class for the protocol with nested static classes for regular and
+conjugated ports and similar for replicated ports.
+</p><!--l. 312--><p class="noindent" >The <span
+class="ec-lmtt-10">ActorClassGen </span>uses Java inheritance for the generated actor classes. So ports, SAPs and attributes and
+detail code methods are inherited. Not inherited is the state machine implementation.
+</p><!--l. 315--><p class="noindent" >
+</p>
+<h5 class="subsubsectionHead"><a
+ id="x30-1500006.2.4"></a>The ANSI-C Generator</h5>
+<!--l. 317--><p class="noindent" >The C generator translates data, protocol and actor classes into structs together with a set of methods
+that operate on them and receive a pointer to those data (called <span
+class="ec-lmtt-10">self </span>in analogy to the implicit
+C++ <span
+class="ec-lmtt-10">this </span>pointer). No dynamic memory allocation is employed. All actor instances are statically
+initialized. One of the design goals for the generated C code was an optimized footprint in terms of
+memory and performance to be able to utilize modeling with ROOM also for tiny low end micro
+controllers.
+</p><!--l. 324--><p class="noindent" >
+</p>
+<h5 class="subsubsectionHead"><a
+ id="x30-1510006.2.4"></a>The Documentation Generator</h5>
+<!--l. 326--><p class="noindent" >The documentation generator creates documentation in LaTex format which can be converted into PDF and
+many other formats.
+</p>
+<!--l. 81--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse21.html" >prev</a>] [<a
+href="etrice-docse21.html#tailetrice-docse21.html" >prev-tail</a>] [<a
+href="etrice-docse22.html" >front</a>] [<a
+href="etrice-docch6.html#etrice-docse22.html" >up</a>] </p></div>
+<!--l. 81--><p class="noindent" ><a
+ id="tailetrice-docse22.html"></a> </p>
+</body></html>
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse23.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse23.html
index b6756d0..d92c278 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse23.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse23.html
@@ -1,73 +1,73 @@
-<?xml version="1.0" encoding="iso-8859-1" ?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
-<html xmlns="http://www.w3.org/1999/xhtml"
->
-<head><title>Create your own data type</title>
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
-<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
-<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
-<!-- xhtml,3,next,html -->
-<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-06-21 12:20:00" />
-<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
-</head><body
->
-<!--l. 52--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse24.html" >next</a>] [<a
-href="etrice-docse22.html" >prev</a>] [<a
-href="etrice-docse22.html#tailetrice-docse22.html" >prev-tail</a>] [<a
-href="#tailetrice-docse23.html">tail</a>] [<a
-href="etrice-docch6.html#etrice-docse23.html" >up</a>] </p></div>
-<h3 class="sectionHead"><span class="titlemark">6.3 </span> <a
- id="x31-750006.3"></a>Create your own data type</h3>
-<!--l. 54--><p class="noindent" >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="ec-lmsso-10">FILE</span>. To make
-this type available on the model level, you have to declare the type.
-</p><!--l. 58--><p class="noindent" >Open the file <span
-class="ec-lmsso-10">Types.room </span>from <span
-class="ec-lmsso-10">org.eclipse.modellib.c </span>and take a look at the declaration of <span
-class="ec-lmsso-10">string </span>(last line)
-which is not a basic C type.
-</p><!--l. 61--><p class="noindent" ><span
-class="ec-lmsso-10">PrimitiveType string:ptCharacter -&#x003E; charPtr default "0"</span>
-</p><!--l. 63--><p class="noindent" >With this declaration, you make the <span
-class="ec-lmsso-10">string </span>keyword available on model level as a primitive type. This type will
-be translated to <span
-class="ec-lmsso-10">charPtr </span>in your C sources. <span
-class="ec-lmsso-10">charPtr </span>is defined in <span
-class="ec-lmsso-10">etDatatypes.h</span>. This header file is platform
-specific (<span
-class="ec-lmsso-10">generic</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><!--l. 68--><p class="noindent" >To not interfere with other models, we will declare the type direct in the model. Add the following line to your
-model:
-
-
-</p>
-<div class="verbatim" id="verbatim-19">
-RoomModel&#x00A0;RemoveComment&#x00A0;{
-&#x00A0;<br />import&#x00A0;room.basic.types.*&#x00A0;from
-&#x00A0;<br />"../../../org.eclipse.etrice.modellib.c/model/Types.room"
-&#x00A0;<br />
-&#x00A0;<br />PrimitiveType&#x00A0;file:ptInteger&#x00A0;-&#x003E;&#x00A0;FILE&#x00A0;default&#x00A0;"0"
-</div>
-<!--l. 78--><p class="nopar" >
-</p><!--l. 81--><p class="noindent" ><span
-class="ec-lmsso-10">FILE </span>is the native type for MinGW. Therefore you don&#8217;t need a mapping within <span
-class="ec-lmsso-10">etDatatypes.h</span>. If your model
-should be portable across different platforms you should not take this shortcut.
-
-
-</p>
-<!--l. 85--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse24.html" >next</a>] [<a
-href="etrice-docse22.html" >prev</a>] [<a
-href="etrice-docse22.html#tailetrice-docse22.html" >prev-tail</a>] [<a
-href="etrice-docse23.html" >front</a>] [<a
-href="etrice-docch6.html#etrice-docse23.html" >up</a>] </p></div>
-<!--l. 85--><p class="noindent" ><a
- id="tailetrice-docse23.html"></a> </p>
-</body></html>
+<?xml version="1.0" encoding="iso-8859-1" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
+<html xmlns="http://www.w3.org/1999/xhtml"
+>
+<head><title>Create your own data type</title>
+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
+<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
+<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
+<!-- xhtml,3,next,html -->
+<meta name="src" content="etrice-doc.tex" />
+<meta name="date" content="2013-07-04 14:25:00" />
+<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
+</head><body
+>
+<!--l. 52--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse24.html" >next</a>] [<a
+href="etrice-docse22.html" >prev</a>] [<a
+href="etrice-docse22.html#tailetrice-docse22.html" >prev-tail</a>] [<a
+href="#tailetrice-docse23.html">tail</a>] [<a
+href="etrice-docch6.html#etrice-docse23.html" >up</a>] </p></div>
+<h3 class="sectionHead"><span class="titlemark">6.3 </span> <a
+ id="x31-750006.3"></a>Create your own data type</h3>
+<!--l. 54--><p class="noindent" >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="ec-lmsso-10">FILE</span>. To make
+this type available on the model level, you have to declare the type.
+</p><!--l. 58--><p class="noindent" >Open the file <span
+class="ec-lmsso-10">Types.room </span>from <span
+class="ec-lmsso-10">org.eclipse.modellib.c </span>and take a look at the declaration of <span
+class="ec-lmsso-10">string </span>(last line)
+which is not a basic C type.
+</p><!--l. 61--><p class="noindent" ><span
+class="ec-lmsso-10">PrimitiveType string:ptCharacter -&#x003E; charPtr default "0"</span>
+</p><!--l. 63--><p class="noindent" >With this declaration, you make the <span
+class="ec-lmsso-10">string </span>keyword available on model level as a primitive type. This type will
+be translated to <span
+class="ec-lmsso-10">charPtr </span>in your C sources. <span
+class="ec-lmsso-10">charPtr </span>is defined in <span
+class="ec-lmsso-10">etDatatypes.h</span>. This header file is platform
+specific (<span
+class="ec-lmsso-10">generic</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><!--l. 68--><p class="noindent" >To not interfere with other models, we will declare the type direct in the model. Add the following line to your
+model:
+
+
+</p>
+<div class="verbatim" id="verbatim-19">
+RoomModel&#x00A0;RemoveComment&#x00A0;{
+&#x00A0;<br />import&#x00A0;room.basic.types.*&#x00A0;from
+&#x00A0;<br />"../../../org.eclipse.etrice.modellib.c/model/Types.room"
+&#x00A0;<br />
+&#x00A0;<br />PrimitiveType&#x00A0;file:ptInteger&#x00A0;-&#x003E;&#x00A0;FILE&#x00A0;default&#x00A0;"0"
+</div>
+<!--l. 78--><p class="nopar" >
+</p><!--l. 81--><p class="noindent" ><span
+class="ec-lmsso-10">FILE </span>is the native type for MinGW. Therefore you don&#8217;t need a mapping within <span
+class="ec-lmsso-10">etDatatypes.h</span>. If your model
+should be portable across different platforms you should not take this shortcut.
+
+
+</p>
+<!--l. 85--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse24.html" >next</a>] [<a
+href="etrice-docse22.html" >prev</a>] [<a
+href="etrice-docse22.html#tailetrice-docse22.html" >prev-tail</a>] [<a
+href="etrice-docse23.html" >front</a>] [<a
+href="etrice-docch6.html#etrice-docse23.html" >up</a>] </p></div>
+<!--l. 85--><p class="noindent" ><a
+ id="tailetrice-docse23.html"></a> </p>
+</body></html>
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse24.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse24.html
index f5943b8..9307f28 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse24.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse24.html
@@ -1,85 +1,85 @@
-<?xml version="1.0" encoding="iso-8859-1" ?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
-<html xmlns="http://www.w3.org/1999/xhtml"
->
-<head><title>Create the model</title>
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
-<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
-<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
-<!-- xhtml,3,next,html -->
-<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-06-21 12:20:00" />
-<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
-</head><body
->
-<!--l. 85--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse25.html" >next</a>] [<a
-href="etrice-docse23.html" >prev</a>] [<a
-href="etrice-docse23.html#tailetrice-docse23.html" >prev-tail</a>] [<a
-href="#tailetrice-docse24.html">tail</a>] [<a
-href="etrice-docch6.html#etrice-docse24.html" >up</a>] </p></div>
-<h3 class="sectionHead"><span class="titlemark">6.4 </span> <a
- id="x32-760006.4"></a>Create the model</h3>
-<!--l. 87--><p class="noindent" >Due to the former tutorials you should be familiar with the steps to create the model with protocols, actors
-and state machines.
-</p><!--l. 90--><p class="noindent" >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><!--l. 94--><p class="noindent" >Remember the logical steps: </p>
- <ul class="itemize1">
- <li class="itemize">create the model by the help of content assist (CTRL Space)
- </li>
- <li class="itemize">name the model, subsystem and top level actor
- </li>
- <li class="itemize">define the protocol (in this case it should be able to send a char, and to request the next char
- from the file reader)
- </li>
- <li class="itemize">create the structure (file reader and parser with an appropriate port, create the references and
- connect the ports)
- </li>
- <li class="itemize">create the state machines</li></ul>
-<!--l. 105--><p class="noindent" >Try to create the model by yourself and take the following solution as an example.
-</p><!--l. 107--><p class="noindent" >Structure:
-</p><!--l. 109--><p class="noindent" ><img
-src="images/036-RemoveCommentC04.png" alt="PIC"
- />
-</p><!--l. 112--><p class="noindent" >File reader FSM:
-</p><!--l. 114--><p class="noindent" ><img
-src="images/036-RemoveCommentC05.png" alt="PIC"
- />
-</p><!--l. 117--><p class="noindent" >Parser FSM:
-</p><!--l. 119--><p class="noindent" ><img
-src="images/036-RemoveCommentC06.png" alt="PIC"
- />
-</p><!--l. 122--><p class="noindent" >The complete model can be found in <span
-class="ec-lmsso-10">org.eclipse.etrice.tutorials.c</span>
-</p><!--l. 124--><p class="noindent" >Take a look at the file attribute of the file reader.
-
-
-</p>
-<div class="verbatim" id="verbatim-20">
-Attribute&#x00A0;f:file&#x00A0;ref
-</div>
-<!--l. 128--><p class="nopar" >
-</p><!--l. 130--><p class="noindent" ><span
-class="ec-lmsso-10">fopen </span>expects a <span
-class="ec-lmsso-10">FILE *</span>. <span
-class="ec-lmsso-10">f:file ref </span>declares a variable <span
-class="ec-lmsso-10">f </span>from type reference to <span
-class="ec-lmsso-10">file</span>, which is a pointer to
-<span
-class="ec-lmsso-10">FILE</span>.
-
-
-</p>
-<!--l. 134--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse25.html" >next</a>] [<a
-href="etrice-docse23.html" >prev</a>] [<a
-href="etrice-docse23.html#tailetrice-docse23.html" >prev-tail</a>] [<a
-href="etrice-docse24.html" >front</a>] [<a
-href="etrice-docch6.html#etrice-docse24.html" >up</a>] </p></div>
-<!--l. 134--><p class="noindent" ><a
- id="tailetrice-docse24.html"></a> </p>
-</body></html>
+<?xml version="1.0" encoding="iso-8859-1" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
+<html xmlns="http://www.w3.org/1999/xhtml"
+>
+<head><title>Create the model</title>
+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
+<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
+<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
+<!-- xhtml,3,next,html -->
+<meta name="src" content="etrice-doc.tex" />
+<meta name="date" content="2013-07-04 14:25:00" />
+<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
+</head><body
+>
+<!--l. 85--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse25.html" >next</a>] [<a
+href="etrice-docse23.html" >prev</a>] [<a
+href="etrice-docse23.html#tailetrice-docse23.html" >prev-tail</a>] [<a
+href="#tailetrice-docse24.html">tail</a>] [<a
+href="etrice-docch6.html#etrice-docse24.html" >up</a>] </p></div>
+<h3 class="sectionHead"><span class="titlemark">6.4 </span> <a
+ id="x32-760006.4"></a>Create the model</h3>
+<!--l. 87--><p class="noindent" >Due to the former tutorials you should be familiar with the steps to create the model with protocols, actors
+and state machines.
+</p><!--l. 90--><p class="noindent" >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><!--l. 94--><p class="noindent" >Remember the logical steps: </p>
+ <ul class="itemize1">
+ <li class="itemize">create the model by the help of content assist (CTRL Space)
+ </li>
+ <li class="itemize">name the model, subsystem and top level actor
+ </li>
+ <li class="itemize">define the protocol (in this case it should be able to send a char, and to request the next char
+ from the file reader)
+ </li>
+ <li class="itemize">create the structure (file reader and parser with an appropriate port, create the references and
+ connect the ports)
+ </li>
+ <li class="itemize">create the state machines</li></ul>
+<!--l. 105--><p class="noindent" >Try to create the model by yourself and take the following solution as an example.
+</p><!--l. 107--><p class="noindent" >Structure:
+</p><!--l. 109--><p class="noindent" ><img
+src="images/036-RemoveCommentC04.png" alt="PIC"
+ />
+</p><!--l. 112--><p class="noindent" >File reader FSM:
+</p><!--l. 114--><p class="noindent" ><img
+src="images/036-RemoveCommentC05.png" alt="PIC"
+ />
+</p><!--l. 117--><p class="noindent" >Parser FSM:
+</p><!--l. 119--><p class="noindent" ><img
+src="images/036-RemoveCommentC06.png" alt="PIC"
+ />
+</p><!--l. 122--><p class="noindent" >The complete model can be found in <span
+class="ec-lmsso-10">org.eclipse.etrice.tutorials.c</span>
+</p><!--l. 124--><p class="noindent" >Take a look at the file attribute of the file reader.
+
+
+</p>
+<div class="verbatim" id="verbatim-20">
+Attribute&#x00A0;f:file&#x00A0;ref
+</div>
+<!--l. 128--><p class="nopar" >
+</p><!--l. 130--><p class="noindent" ><span
+class="ec-lmsso-10">fopen </span>expects a <span
+class="ec-lmsso-10">FILE *</span>. <span
+class="ec-lmsso-10">f:file ref </span>declares a variable <span
+class="ec-lmsso-10">f </span>from type reference to <span
+class="ec-lmsso-10">file</span>, which is a pointer to
+<span
+class="ec-lmsso-10">FILE</span>.
+
+
+</p>
+<!--l. 134--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse25.html" >next</a>] [<a
+href="etrice-docse23.html" >prev</a>] [<a
+href="etrice-docse23.html#tailetrice-docse23.html" >prev-tail</a>] [<a
+href="etrice-docse24.html" >front</a>] [<a
+href="etrice-docch6.html#etrice-docse24.html" >up</a>] </p></div>
+<!--l. 134--><p class="noindent" ><a
+ id="tailetrice-docse24.html"></a> </p>
+</body></html>
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse25.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse25.html
index ad9dd14..00afd82 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse25.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse25.html
@@ -1,47 +1,47 @@
-<?xml version="1.0" encoding="iso-8859-1" ?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
-<html xmlns="http://www.w3.org/1999/xhtml"
->
-<head><title>Generate, build and run the model</title>
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
-<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
-<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
-<!-- xhtml,3,next,html -->
-<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-06-21 12:20:00" />
-<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
-</head><body
->
-<!--l. 134--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse26.html" >next</a>] [<a
-href="etrice-docse24.html" >prev</a>] [<a
-href="etrice-docse24.html#tailetrice-docse24.html" >prev-tail</a>] [<a
-href="#tailetrice-docse25.html">tail</a>] [<a
-href="etrice-docch6.html#etrice-docse25.html" >up</a>] </p></div>
-<h3 class="sectionHead"><span class="titlemark">6.5 </span> <a
- id="x33-770006.5"></a>Generate, build and run the model</h3>
-<!--l. 136--><p class="noindent" >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="ec-lmsso-10">test.txt</span>.
-</p><!--l. 139--><p class="noindent" ><img
-src="images/036-RemoveCommentC07.png" alt="PIC"
- />
-</p><!--l. 142--><p class="noindent" >Generate, build and run the model.
-</p><!--l. 144--><p class="noindent" >Your output should start like this:
-</p><!--l. 146--><p class="noindent" ><img
-src="images/036-RemoveCommentC08.png" alt="PIC"
- />
-
-
-</p>
-<!--l. 150--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse26.html" >next</a>] [<a
-href="etrice-docse24.html" >prev</a>] [<a
-href="etrice-docse24.html#tailetrice-docse24.html" >prev-tail</a>] [<a
-href="etrice-docse25.html" >front</a>] [<a
-href="etrice-docch6.html#etrice-docse25.html" >up</a>] </p></div>
-<!--l. 150--><p class="noindent" ><a
- id="tailetrice-docse25.html"></a> </p>
-</body></html>
+<?xml version="1.0" encoding="iso-8859-1" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
+<html xmlns="http://www.w3.org/1999/xhtml"
+>
+<head><title>Generate, build and run the model</title>
+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
+<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
+<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
+<!-- xhtml,3,next,html -->
+<meta name="src" content="etrice-doc.tex" />
+<meta name="date" content="2013-07-04 14:25:00" />
+<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
+</head><body
+>
+<!--l. 134--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse26.html" >next</a>] [<a
+href="etrice-docse24.html" >prev</a>] [<a
+href="etrice-docse24.html#tailetrice-docse24.html" >prev-tail</a>] [<a
+href="#tailetrice-docse25.html">tail</a>] [<a
+href="etrice-docch6.html#etrice-docse25.html" >up</a>] </p></div>
+<h3 class="sectionHead"><span class="titlemark">6.5 </span> <a
+ id="x33-770006.5"></a>Generate, build and run the model</h3>
+<!--l. 136--><p class="noindent" >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="ec-lmsso-10">test.txt</span>.
+</p><!--l. 139--><p class="noindent" ><img
+src="images/036-RemoveCommentC07.png" alt="PIC"
+ />
+</p><!--l. 142--><p class="noindent" >Generate, build and run the model.
+</p><!--l. 144--><p class="noindent" >Your output should start like this:
+</p><!--l. 146--><p class="noindent" ><img
+src="images/036-RemoveCommentC08.png" alt="PIC"
+ />
+
+
+</p>
+<!--l. 150--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse26.html" >next</a>] [<a
+href="etrice-docse24.html" >prev</a>] [<a
+href="etrice-docse24.html#tailetrice-docse24.html" >prev-tail</a>] [<a
+href="etrice-docse25.html" >front</a>] [<a
+href="etrice-docch6.html#etrice-docse25.html" >up</a>] </p></div>
+<!--l. 150--><p class="noindent" ><a
+ id="tailetrice-docse25.html"></a> </p>
+</body></html>
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse26.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse26.html
index a219e8a..f5c5e19 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse26.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse26.html
@@ -1,40 +1,40 @@
-<?xml version="1.0" encoding="iso-8859-1" ?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
-<html xmlns="http://www.w3.org/1999/xhtml"
->
-<head><title>Summary</title>
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
-<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
-<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
-<!-- xhtml,3,next,html -->
-<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-06-21 12:20:00" />
-<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
-</head><body
->
-<!--l. 150--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docch7.html" >next</a>] [<a
-href="etrice-docse25.html" >prev</a>] [<a
-href="etrice-docse25.html#tailetrice-docse25.html" >prev-tail</a>] [<a
-href="#tailetrice-docse26.html">tail</a>] [<a
-href="etrice-docch6.html#etrice-docse26.html" >up</a>] </p></div>
-<h3 class="sectionHead"><span class="titlemark">6.6 </span> <a
- id="x34-780006.6"></a>Summary</h3>
-<!--l. 152--><p class="noindent" >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>
-<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docch7.html" >next</a>] [<a
-href="etrice-docse25.html" >prev</a>] [<a
-href="etrice-docse25.html#tailetrice-docse25.html" >prev-tail</a>] [<a
-href="etrice-docse26.html" >front</a>] [<a
-href="etrice-docch6.html#etrice-docse26.html" >up</a>] </p></div>
-<!--l. 1--><p class="noindent" ><a
- id="tailetrice-docse26.html"></a> </p>
-</body></html>
+<?xml version="1.0" encoding="iso-8859-1" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
+<html xmlns="http://www.w3.org/1999/xhtml"
+>
+<head><title>Summary</title>
+<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
+<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
+<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
+<!-- xhtml,3,next,html -->
+<meta name="src" content="etrice-doc.tex" />
+<meta name="date" content="2013-07-04 14:25:00" />
+<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
+</head><body
+>
+<!--l. 150--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docch7.html" >next</a>] [<a
+href="etrice-docse25.html" >prev</a>] [<a
+href="etrice-docse25.html#tailetrice-docse25.html" >prev-tail</a>] [<a
+href="#tailetrice-docse26.html">tail</a>] [<a
+href="etrice-docch6.html#etrice-docse26.html" >up</a>] </p></div>
+<h3 class="sectionHead"><span class="titlemark">6.6 </span> <a
+ id="x34-780006.6"></a>Summary</h3>
+<!--l. 152--><p class="noindent" >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>
+<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docch7.html" >next</a>] [<a
+href="etrice-docse25.html" >prev</a>] [<a
+href="etrice-docse25.html#tailetrice-docse25.html" >prev-tail</a>] [<a
+href="etrice-docse26.html" >front</a>] [<a
+href="etrice-docch6.html#etrice-docse26.html" >up</a>] </p></div>
+<!--l. 1--><p class="noindent" ><a
+ id="tailetrice-docse26.html"></a> </p>
+</body></html>
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse27.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse27.html
index 699202a..f52b473 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse27.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse27.html
@@ -1,781 +1,781 @@
-<?xml version="1.0" encoding="iso-8859-1" ?>
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
-<html xmlns="http://www.w3.org/1999/xhtml"
->
-<head><title>Actors</title>
-<meta http-equiv="