summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFrank Lippert2013-03-26 16:54:27 (EDT)
committerFrank Lippert2013-03-26 16:54:27 (EDT)
commit004b2bf2afc63ef783629737c5cc897c8923e37e (patch)
treeaf461c72b8868f97868ba7d318bc1ae3d0847109
parentd5d02973f16a8a05c79dcf42f5e1bdb2d4f23930 (diff)
downloadorg.eclipse.etrice-004b2bf2afc63ef783629737c5cc897c8923e37e.zip
org.eclipse.etrice-004b2bf2afc63ef783629737c5cc897c8923e37e.tar.gz
org.eclipse.etrice-004b2bf2afc63ef783629737c5cc897c8923e37e.tar.bz2
[doc] Wider margins for PDF, removed boxes around hyperlinks, added two forgotten chapters, general sanitizing, altered links in toc.xmlrefs/changes/00/11500/1
-rw-r--r--plugins/org.eclipse.etrice.doc/build-etrice-doc.xml273
-rw-r--r--plugins/org.eclipse.etrice.doc/build.xml5
-rw-r--r--plugins/org.eclipse.etrice.doc/doc-tex/010-room-introduction.tex4
-rw-r--r--plugins/org.eclipse.etrice.doc/doc-tex/013-setting-up-the-workspace.tex10
-rw-r--r--plugins/org.eclipse.etrice.doc/doc-tex/etrice-doc.pdf150
-rw-r--r--plugins/org.eclipse.etrice.doc/doc/010-room-introduction.tex8
-rw-r--r--plugins/org.eclipse.etrice.doc/doc/013-setting-up-the-workspace.tex14
-rw-r--r--plugins/org.eclipse.etrice.doc/doc/015-getting-started.tex16
-rw-r--r--plugins/org.eclipse.etrice.doc/doc/020-tutorial-blinky.tex30
-rw-r--r--plugins/org.eclipse.etrice.doc/doc/025-tutorial-sending-data.tex24
-rw-r--r--plugins/org.eclipse.etrice.doc/doc/030-tutorial-ped-lights.tex8
-rw-r--r--plugins/org.eclipse.etrice.doc/doc/032-setting-up-the-workspace_c.tex21
-rw-r--r--plugins/org.eclipse.etrice.doc/doc/034-getting-started_c.tex4
-rw-r--r--plugins/org.eclipse.etrice.doc/doc/036-tutorial-remove-comment_c.tex8
-rw-r--r--plugins/org.eclipse.etrice.doc/doc/043-layout-with-kieler.tex8
-rw-r--r--plugins/org.eclipse.etrice.doc/doc/080-etrice-models.tex2
-rw-r--r--plugins/org.eclipse.etrice.doc/doc/etrice-doc.tex8
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-doc.html230
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-doc0x.pngbin176 -> 175 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-doc1x.pngbin177 -> 176 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-doc2x.pngbin177 -> 176 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-doc3x.pngbin180 -> 178 bytes
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docch1.html2
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docch10.html80
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docch11.html43
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docch12.html79
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docch13.html50
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docch14.html39
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docch15.html61
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docch16.html52
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docch17.html65
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docch18.html56
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docch2.html7
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docch3.html33
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docch4.html60
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docch5.html7
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docch6.html7
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docch7.html7
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docch8.html7
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docch9.html44
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docli1.html261
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse1.html17
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse10.html12
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse11.html26
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse12.html34
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse13.html28
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse14.html11
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse15.html21
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse16.html73
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse17.html53
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse18.html172
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse19.html26
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse2.html28
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse20.html17
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse21.html20
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse22.html27
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse23.html16
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse24.html21
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse25.html35
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse26.html14
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse27.html21
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse28.html62
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse29.html55
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse3.html190
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse30.html74
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse31.html58
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse32.html79
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse33.html99
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse34.html97
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse35.html107
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse36.html70
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse37.html77
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse38.html242
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse39.html57
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse4.html166
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse40.html410
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse41.html51
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse42.html179
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse43.html329
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse44.html86
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse45.html74
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse46.html42
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse47.html197
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse48.html259
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse49.html64
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse5.html106
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse50.html417
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse51.html76
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse52.html161
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse53.html290
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse54.html70
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse55.html137
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse56.html449
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse57.html173
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse58.html80
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse59.html46
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse6.html17
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse60.html51
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse61.html60
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse62.html42
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse63.html47
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse64.html49
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse65.html129
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse66.html413
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse7.html62
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse8.html39
-rw-r--r--plugins/org.eclipse.etrice.doc/html/etrice-docse9.html33
-rw-r--r--plugins/org.eclipse.etrice.doc/manual/etrice.pdf21441
-rw-r--r--plugins/org.eclipse.etrice.doc/plugin.xml28
-rw-r--r--plugins/org.eclipse.etrice.doc/styles/build_eclipse_toc.xsl6
-rw-r--r--plugins/org.eclipse.etrice.doc/toc.xml182
111 files changed, 19134 insertions, 11049 deletions
diff --git a/plugins/org.eclipse.etrice.doc/build-etrice-doc.xml b/plugins/org.eclipse.etrice.doc/build-etrice-doc.xml
deleted file mode 100644
index 579e6e7..0000000
--- a/plugins/org.eclipse.etrice.doc/build-etrice-doc.xml
+++ /dev/null
@@ -1,273 +0,0 @@
-<!--
- Some of the code below is
- (c) Chris Aniszczyk <caniszczyk@gmail.com>
- (c) Lawrence Mandel <lmandel@ca.ibm.com>
- (c) Peter Friese <peter.friese@itemis.com>
--->
-<!--
- Henrik Rentz-Reichert:
- - copied from the xtext project
- - updated remote sites
- - fixed class path usage (requires ant 1.8.2)
--->
-<project name="org.eclipse.etrice.doc" default="build-doc" basedir=".">
-
- <!--
- Global vars
- -->
- <property name="document.name" value="etrice" />
- <property name="document.stylesheet" value="styles/html.xsl" />
- <property name="document.pdf.stylesheet" value="styles/xmpp.xsl" />
-
- <property name="document.eclipse.stylesheet" value="styles/eclipsehelp.xsl" />
- <property name="eclipsehelp-css.file" value="styles/book.css" />
- <property name="html-css.file" value="styles/book.css" />
-
- <property name="build.dir" value="build" />
- <property name="download.dir" value="${java.io.tmpdir}${file.separator}downloads" />
-
- <path id="xslt.class.path">
- <pathelement location="${fop.dir}${file.separator}build${file.separator}fop.jar" />
- <pathelement location="${fop.dir}${file.separator}lib${file.separator}xalan-2.7.0.jar" />
- <fileset dir="${fop.dir}${file.separator}lib">
- <include name="**/*.jar" />
- </fileset>
- </path>
-
- <!--
- WikiText Toolchain
- <property name="wikitext.url" value="http://ftp-stud.fht-esslingen.de/pub/Mirrors/eclipse/tools/mylyn/update/weekly/mylyn-wikitext-standalone-latest.zip"/>
- <property name="wikitext.url" value="http://download.eclipse.org/tools/mylyn/update/weekly/mylyn-wikitext-standalone-latest.zip" />
- -->
- <property name="wikitext.url" value="http://www.eclipse.org/downloads/download.php?file_id=1362554" />
- <property name="wikitext.dir" value="${download.dir}${file.separator}wikitext" />
-
- <target name="check-wikitext">
- <condition property="hasWikiText">
- <and>
- <available file="${download.dir}${file.separator}wikitext.zip" property="hasWikiTextZIP" />
- <available file="${wikitext.dir}" property="hasWikiTextDir" />
- </and>
- </condition>
- </target>
-
- <target name="get-wikitext" description="Downloads WikiText" depends="check-wikitext" unless="hasWikiText">
- <echo>Downloading WikiText...</echo>
- <get dest="${download.dir}${file.separator}wikitext.zip" src="${wikitext.url}" />
- <unzip src="${download.dir}${file.separator}wikitext.zip" dest="${wikitext.dir}">
- <patternset includes="**/*.jar" />
- <mapper type="flatten" />
- </unzip>
- </target>
-
- <target name="install-wikitext" depends="get-wikitext">
- <taskdef resource="org/eclipse/mylyn/wikitext/core/util/anttask/tasks.properties">
- <classpath>
- <fileset dir="${wikitext.dir}">
- <include name="org.eclipse.mylyn.wikitext.*core*.jar" />
- </fileset>
- </classpath>
- </taskdef>
- </target>
-
- <target name="assemble">
- <loadfile srcfile="doc/${document.name}-index.txt" property="inputfiles">
- <filterchain>
- <tokenfilter>
- <replacestring from="\n" to="," />
- </tokenfilter>
- </filterchain>
- </loadfile>
- <concat encoding="ISO-8859-1" destfile="${build.dir}${file.separator}${document.name}.textile" append="false" fixlastline="yes">
- <filelist dir="doc" files="${inputfiles}" />
- </concat>
- </target>
-
- <target name="wikitext2docbook" depends="assemble" description="Generate DocBook from Textile">
- <wikitext-to-docbook markupLanguage="Textile" booktitle="eTrice User Guide" validate="true" sourceencoding="ISO-8859-1">
- <fileset dir="${build.dir}">
- <include name="${document.name}.textile" />
- </fileset>
- </wikitext-to-docbook>
- </target>
-
- <target name="tune-html" description="cleaning up html after build">
- <!-- deleting the list-of-tables -->
-
- <replaceregexp file="${basedir}/html${file.separator}${document.name}.html"
- match="&lt;div class=&quot;list-of-tables&quot;&gt;.*?&lt;/div&gt;"
- replace=" "
- flags="s"/>
-
- </target>
-
-
- <!--
- DocBook Toolchain
- -->
- <!-- <property name="docbook.version" value="1.73.2" /> -->
- <property name="docbook.version" value="1.75.1" />
- <property name="docbook.dir" value="${download.dir}${file.separator}docbook-xsl-${docbook.version}" />
- <property name="docbookxsl.url" value="http://downloads.sourceforge.net/project/docbook/docbook-xsl/1.75.1/docbook-xsl-${docbook.version}.zip" />
- <property name="fop.dir" value="${download.dir}${file.separator}fop-1.0" />
- <property name="fop.url" value="http://archive.apache.org/dist/xmlgraphics/fop/binaries/fop-1.0-bin.zip" />
- <property name="jai.dir" value="ENTER_JAI_DIRECTORY" />
-
- <macrodef name="docbook2pdf">
- <attribute name="source" />
- <attribute name="target" />
- <sequential>
- <taskdef name="fop" classname="org.apache.fop.tools.anttasks.Fop">
- <classpath refid="xslt.class.path" />
- </taskdef>
- <fop format="application/pdf" fofile="@{source}" outfile="@{target}" messagelevel="info" />
- </sequential>
- </macrodef>
-
- <target name="init">
- <mkdir dir="${download.dir}" />
- <mkdir dir="${build.dir}" />
- </target>
-
- <target name="build-doc" depends="init, install-wikitext, get-docbook-xsl, get-fop">
- <echo>Building Output...</echo>
- <antcall target="wikitext2docbook" />
- <antcall target="docbook2html" />
- <antcall target="tune-html" />
- <antcall target="docbook2eclipsehelp" />
- <antcall target="docbook2pdf" />
- <!--
- <antcall target="wikitext2eclipsehelp"/>
- -->
- </target>
-
- <target name="check-docbook">
- <condition property="hasDocbook">
- <and>
- <available file="${download.dir}${file.separator}docbook.zip" property="hasDocbookZip" />
- <available file="${docbook.dir}" type="dir" property="hasDocbookDir" />
- </and>
- </condition>
- </target>
-
- <target name="check-fop">
- <condition property="hasFOP">
- <and>
- <available file="${download.dir}${file.separator}fop.zip" property="hasFOPZip" />
- <available file="${fop.dir}" type="dir" property="hasFOPDir" />
- </and>
- </condition>
- </target>
-
- <target name="get-docbook-xsl" description="Downloads docbook xsl" depends="check-docbook" unless="hasDocbook">
- <echo>Downloading DocBook XSL...</echo>
- <get dest="${download.dir}${file.separator}docbook.zip" src="${docbookxsl.url}" />
- <unzip src="${download.dir}${file.separator}docbook.zip" dest="${download.dir}" />
- </target>
-
- <target name="get-fop" description="Downloads FOP" depends="check-fop" unless="hasFOP">
- <echo>Downloading FOP...</echo>
- <get dest="${download.dir}${file.separator}fop.zip" src="${fop.url}" />
- <unzip src="${download.dir}${file.separator}fop.zip" dest="${download.dir}" />
- </target>
-
- <target name="docbook2html">
- <echo>Converting article to HTML...</echo>
- <delete dir="${basedir}/html" failonerror="false" excludes="CVS" includeemptydirs="true" />
-
- <copy todir="${basedir}/html">
- <fileset dir="doc/">
- <include name="images/**" />
- </fileset>
- </copy>
- <copy file="${html-css.file}" todir="${basedir}/html" />
-
- <xslt in="${build.dir}${file.separator}${document.name}.xml" classpathref="xslt.class.path" extension="xml" out="${basedir}/html${file.separator}${document.name}.html" style="${document.stylesheet}">
- <factory name="org.apache.xalan.processor.TransformerFactoryImpl">
- <attribute name="http://xml.apache.org/xalan/features/optimize" value="true" />
- </factory>
- <xmlcatalog>
- <entity publicId="docbook.xsl" location="${docbook.dir}${file.separator}html${file.separator}docbook.xsl" />
- </xmlcatalog>
- <param name="header.rule" expression="1" />
- <param name="admon.graphics.extension" expression=".gif" />
- <param name="admon.textlabel" expression="0" />
- <param name="ulink.target" expression="_new" />
- <param name="ignore.image.scaling" expression="1" />
- </xslt>
- </target>
-
- <target name="docbook2pdf">
- <echo>Converting article to PDF... </echo>
- <delete file="manual${file.separator}${document.name}.pdf" failonerror="false" />
- <delete file="${build.dir}${file.separator}${document.name}.fo" />
- <mkdir dir="manual" />
-
- <!-- HACK! images should rather be copied to build/images -->
- <copy todir="${basedir}">
- <fileset dir="doc/">
- <include name="images/**" />
- </fileset>
- </copy>
-
-
- <xslt in="${build.dir}${file.separator}${document.name}.xml" classpathref="xslt.class.path" extension="xml" out="${build.dir}${file.separator}${document.name}.fo" style="${document.pdf.stylesheet}">
- <factory name="org.apache.xalan.processor.TransformerFactoryImpl">
- <attribute name="http://xml.apache.org/xalan/features/optimize" value="true" />
- </factory>
- <xmlcatalog>
- <entity publicId="docbook.xsl" location="${docbook.dir}${file.separator}fo${file.separator}docbook.xsl" />
- </xmlcatalog>
- <param name="generate.toc" expression="book toc" />
- <param name="show.comments" expression="0" />
- <param name="header.rule" expression="1" />
- <param name="admon.graphics.extension" expression=".gif" />
- <param name="admon.textlabel" expression="0" />
- <param name="admon.graphics" expression="1" />
- <param name="double.sided" expression="1" />
- </xslt>
-
- <docbook2pdf source="${build.dir}${file.separator}${document.name}.fo" target="manual${file.separator}${document.name}.pdf" />
-
- <!-- Remove the resulting formatting object. This object isn't necessary in the
- result of this build. -->
- <delete file="${build.dir}${file.separator}${document.name}.fo" />
- <delete dir="${basedir}/images" />
- </target>
-
- <target name="wikitext2eclipsehelp" depends="assemble" description="Generate Eclipse Help from textile">
- <wikitext-to-eclipse-help markupLanguage="Textile" multipleOutputFiles="true" navigationImages="false" formatoutput="true" helpPrefix="help">
- <fileset dir="${build.dir}">
- <include name="${document.name}.textile" />
- </fileset>
- <stylesheet url="book.css" />
- <stylesheet file="${basedir}/help/styles/main.css" />
- </wikitext-to-eclipse-help>
- </target>
-
- <target name="docbook2eclipsehelp">
- <echo>Converting article to Eclipse Help...</echo>
- <delete dir="${basedir}/help" failonerror="false" excludes="CVS" includeemptydirs="true" />
- <copy todir="${basedir}/help/images">
- <fileset dir="doc/images">
- <include name="**/*" />
- </fileset>
- </copy>
- <copy file="${eclipsehelp-css.file}" todir="${basedir}/help" />
-
- <xslt basedir="${build.dir}" classpathref="xslt.class.path" destdir="${basedir}" style="${document.eclipse.stylesheet}">
- <param name="chunk.quietly" expression="1" />
- <include name="etrice.xml" />
- <factory name="org.apache.xalan.processor.TransformerFactoryImpl">
- <attribute name="http://xml.apache.org/xalan/features/optimize" value="true" />
- </factory>
- <xmlcatalog>
- <entity publicId="chunk.xsl" location="${docbook.dir}${file.separator}html${file.separator}chunk.xsl" />
- </xmlcatalog>
- <param name="header.rule" expression="1" />
- <param name="ignore.image.scaling" expression="1" />
- </xslt>
- <delete file="${basedir}/etrice.html" />
- </target>
-
-</project>
diff --git a/plugins/org.eclipse.etrice.doc/build.xml b/plugins/org.eclipse.etrice.doc/build.xml
index dcebaaa..8b64825 100644
--- a/plugins/org.eclipse.etrice.doc/build.xml
+++ b/plugins/org.eclipse.etrice.doc/build.xml
@@ -53,10 +53,10 @@
<target name="checkPdfCreationNeeded">
<condition property="pdfCreation.notNeeded">
<and>
- <uptodate targetfile="${pdf.file}" >
+ <uptodate targetfile="${pdf.file}" >
<srcfiles dir="${doc.dir}" includes="**/*.tex" />
</uptodate>
- <uptodate targetfile="${pdf.file}" >
+ <uptodate targetfile="${pdf.file}" >
<srcfiles dir="${image.dir}" includes="**/*.*" />
</uptodate>
</and>
@@ -133,6 +133,7 @@
<and>
<available file="${html.file}" />
<uptodate srcfile="${html.file}" targetfile="${toc.file}" />
+ <uptodate srcfile="${style.file}" targetfile="${toc.file}" />
</and>
</condition>
</target>
diff --git a/plugins/org.eclipse.etrice.doc/doc-tex/010-room-introduction.tex b/plugins/org.eclipse.etrice.doc/doc-tex/010-room-introduction.tex
index e7dc13a..1c8e23a 100644
--- a/plugins/org.eclipse.etrice.doc/doc-tex/010-room-introduction.tex
+++ b/plugins/org.eclipse.etrice.doc/doc-tex/010-room-introduction.tex
@@ -121,12 +121,12 @@ The actor's behavior will be described with a state machine. A state in turn may
Top level:
-\includegraphics[width=\linewidth]{images/020-Blinky15.png}
+\includegraphics[width=0.8\textwidth]{images/020-Blinky15.png}
% !images/020-Blinky15.png!
\textit{blinking} Sub machine:
-\includegraphics[width=\linewidth]{images/020-Blinky151.png}
+\includegraphics[width=0.8\textwidth]{images/020-Blinky151.png}
% !images/020-Blinky151.png!
From an abstract point of view there is a state \textit{blinking}. 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.
diff --git a/plugins/org.eclipse.etrice.doc/doc-tex/013-setting-up-the-workspace.tex b/plugins/org.eclipse.etrice.doc/doc-tex/013-setting-up-the-workspace.tex
index c86175b..6a0b8ab 100644
--- a/plugins/org.eclipse.etrice.doc/doc-tex/013-setting-up-the-workspace.tex
+++ b/plugins/org.eclipse.etrice.doc/doc-tex/013-setting-up-the-workspace.tex
@@ -23,29 +23,29 @@ Open the \textit{eTrice} tab and select \textit{eTrice Java Runtime}
Press \textit{Next} and \textit{Finish} to install the Runtime into your workspace.
-\includegraphics[width=\linewidth]{images/013-SetupWorkspace03.png}
+\includegraphics[width=0.8\textwidth]{images/013-SetupWorkspace03.png}
% !images/013-SetupWorkspace03.png!
Do the same steps for \textit{eTrice Java Modellib} and \textit{eTrice Java Tutorials}. To avoid temporary error markers you should keep the proposed order of installation. The resulting workspace should look like this:
-\includegraphics[width=\linewidth]{images/013-SetupWorkspace04.png}
+\includegraphics[width=0.8\textwidth]{images/013-SetupWorkspace04.png}
% !images/013-SetupWorkspace04.png!
Now workspace is set up and you can perform the tutorials or start with your work.
The tutorial models are available in the \textit{org.eclipse.etrice.tutorials} project. All tutorials are ready to generate and run without any changes. To start the code generator simply run \textbf{gen\_org.eclipse.etrice.tutorials.launch} as \textbf{gen\_org.eclipse.etrice.tutorials.launch}:
-\includegraphics[width=\linewidth]{images/013-SetupWorkspace05.png}
+\includegraphics[width=0.8\textwidth]{images/013-SetupWorkspace05.png}
% !images/013-SetupWorkspace05.png!
After generation for each tutorial a java file called \textbf{SubSystem\_ModelnameRunner.java} is generated. To run the model simply run this file as a java application:
-\includegraphics[width=\linewidth]{images/013-SetupWorkspace06.png}
+\includegraphics[width=0.8\textwidth]{images/013-SetupWorkspace06.png}
% !images/013-SetupWorkspace06.png!
To stop the application type \textit{quit} in the console window.
-\includegraphics[width=\linewidth]{images/013-SetupWorkspace07.png}
+\includegraphics[0.8\textwidth]{images/013-SetupWorkspace07.png}
% !images/013-SetupWorkspace07.png!
Performing the tutorials will setup an dedicated project for each tutorial. Therefore there are some slight changes especially whenever a path must be set (e.g. to the model library) within your own projects. All this is described in the tutorials.
diff --git a/plugins/org.eclipse.etrice.doc/doc-tex/etrice-doc.pdf b/plugins/org.eclipse.etrice.doc/doc-tex/etrice-doc.pdf
index ec089af..23b41eb 100644
--- a/plugins/org.eclipse.etrice.doc/doc-tex/etrice-doc.pdf
+++ b/plugins/org.eclipse.etrice.doc/doc-tex/etrice-doc.pdf
@@ -2432,7 +2432,7 @@ eU RJ#K8%eEB).EYDTIN<"J+ oI 8BꆦȠj(,
$'b\2O%*)jm +nMP%E?乐2p|ٷ##NN&UYB>a:R:::yHe(!.),A$8\&RD{\*E}j<Y e?FU&#.HHVBC
M."%čZ!NJ#J!̬[COG;4)J΀CAeBS{
B8w݆R֑!PC 5|QZ*N_^|^
-:z!U(6KaiH,=G#b$]C>c
+:z!U(6KaiH,=G#b$]C>c

,_rF"X *d ,ֿ{i/쳙eB-"dx? i !TL\L ˜JHX2/D٤*=Gc y;z!b$!e}z:
@|h 
@@ -3018,7 +3018,7 @@ endobj
/Filter /FlateDecode
>>
stream
-x
+x
endstream
endobj
669 0 obj
@@ -3238,7 +3238,7 @@ aõX;}k !&֦5zdA7
%@jhGD< :7BVTɄ*Ey!DH`KJVG 
"
J&R4X`i V8:/:K"&4hYK bDfՄMD@>Uhx(L,.
-ZGDއdDŽZbQ(@&O
+ZGDއdDŽZbQ(@&O

[!b z9،D!'J:j&(1IXkȲxF!;K!IT0QYɭF]@̆º3kI yMj1Q`E
}
@@ -3514,7 +3514,7 @@ x5 E4Ͳ
iUfk d+%#)EDa}aܫ ˲V@Kڡb& 8dnTȢ7ܙrs0QRdJ4Q7$E\= nݖ~,:4
r6 @g/JKyRݡ
w[ |DWx֧^`\J6bpG)U9-Jrwqᴟᗠd)SyhF;孍mj֘f(f3Ts̻yv탧gfk3j*#-Pϐ>À~3g^ۯ|\G{~oiW~>;79'`+OwQW+}_x?2}w+> x?~;COx)Ox<~"
- =}j4) bQwLe:Oݛ̜Nd^=i w6nXVȌ9f4L.5MͰLJ9(cT
+ =}j4) bQwLe:Oݛ̜Nd^=i w6nXVȌ9f4L.5MͰLJ9(cT
*5Wj#-TDQ\*IrɽVDwR6l<ϙiL3s5Y6@RVa
U{g!+
;[VlȘ{9NBm US7m8FD@ֵzQ\
@@ -4368,7 +4368,7 @@ YϜ:V=T}t`'j0VBHPU
[:dހ/
ӷUn"a) /8MZ}0l#4w</~Ƨ&%Df1jj;:Vt7-Gvg.MJ~mgݯ{^)/x@O1m4k:LqW=ifG8㋮?/5 ?x7N>s'5~5nYCggTH;k>=}2UaSKoͼW(/$~VIlڤ!:nǼS2&QTt~z甴Sg|"p?U^n$nûg0ϔaWxqeg>h+\6O!aóm
{f]
-tQ`Y
+tQ`Y
 t |^Ă LEfr2jrA @]

@@ -4463,7 +4463,7 @@ qxt
^;&x'˻
_Wׅ  ={I A,6"0CȉەqX+c(E 6AR
XEEE)ptoۗ*tz.ptttVJ6w8̂v̛gro
-]WoOw/ns?V7goe_/B\1=8bSdt|.dcΝJ;ү&***ωjC=Z'KXRvCbOYX7x<3Ѫ[Wm9y^,RҦqjOm[\ dX짙[q܌y4|T+@2RsJwN{mK>˸UTTT
+]WoOw/ns?V7goe_/B\1=8bSdt|.dcΝJ;ү&***ωjC=Z'KXRvCbOYX7x<3Ѫ[Wm9y^,RҦqjOm[\ dX짙[q܌y4|T+@2RsJwN{mK>˸UTTT
"z9(W&/_ުU+__ߒF&A vH|bj\ ځ }g_.wWق~5//_s_%;hҾEB;}7\/S0 Uٯƺ8;˹+pHٶ53Fc
C7̶|KWW zmDy
@@ -4650,7 +4650,7 @@ GgFP&W+*+@$<Gpo[?Q5D*9%Y*KNYrkj)b1
Qr
zsS"
6lVjYXy/
--GrA7rל0Dh@FD
+-GrA7rל0Dh@FD
us)S}տD$CݛϜau=ͷukq֭[k4.gi0T㏰&Xẋ) 0ܟ<R e9a[aa^
׺{o
&U+[+<t\ێxUBTxvl {-
@@ -5008,7 +5008,7 @@ JTj5*I,Spϫ"),%^ǩ}o}g_ݽe]J߯\_YQ+<*6J}{iN h
U(%(J3h}3
|5:t;g/
U_{0GBZUR 'UnX+H7 FU*C@-2P*iSpY\\.;bc8qXf. U7Z#FҨyFۼ<lЗ^LW?Y% SR**Z-6iwL)g.jX/4T8h0joWwo_~Y*ۏ⿽(:zꩩ*5k4G>ۭj>f̘+r1 /W_}fyW^񹽡,IR޽5텳(0L @p$2+ڏ&_rp*8dA&E5AzF_ZO_wԔiEQ||ubG/|o%UBr7wȮ uyVcDm}ڦك^ՠqbΖƮ.Zv:
-^j^C>5<n[ԟ[3{ӳ/~ӱ0u1eNVqZvuRէ۩ձϟ|TZ$ad8n-S~aU";KF8]vG>/4}_ϝ `Zn6$"￷mV;ƃ ) rOpkr"yow-PB k ByHIjRFV|y???t#˲#(z<N7yd
+^j^C>5<n[ԟ[3{ӳ/~ӱ0u1eNVqZvuRէ۩ձϟ|TZ$ad8n-S~aU";KF8]vG>/4}_ϝ `Zn6$"￷mV;ƃ ) rOpkr"yow-PB k ByHIjRFV|y???t#˲#(z<N7yd
p&\$)eB||km۲i͹?h$etW LܟtEꡔсupyǗ~gWPIRݻjJ*i4LA݌.}>oo4)&>jaD*
2 @#H­k׸sA\Aͣ3!`R._HQ|4hOK,Ps~J^[- ENي3Fn9We^\?盅5Ԥg`n
.S([E$pd/6PxQkɥ{bG ^h= ?Z(p{$ N\}͚7|`J$}rMO=zK:P (m_}Zο˩T˗/ߜգG-ZhZ6ly<Cz;J=3,
@@ -6076,7 +6076,7 @@ H
b ?-Af2'Wwya= СCG.TЭ[r`1&4q",Մ7Eiʣ؇ݥyvPRef0TY6O߭M
i(١:$>(|52 Pi.1@\p24kP 0c

-" 9j5B sAMjU{$ xf0XWf|dZӡkwԮ3?0BSg[0
+" 9j5B sAMjU{$ xf0XWf|dZӡkwԮ3?0BSg[0
uO'm~Eu; W0 >
d@RYqt]\I gq_X<P@o]}_PAR7Y#j
O7{f.TJNNlJY5645 0Ǚ~.:PJ_Svm#4]B-ۛ>~t*vI9%k@)tzsmx(]*f'Z"U=(]}Z^@)wOLF?Z6SJN߹6(Ķ]2
@@ -7330,7 +7330,7 @@ s^uYŃ{|
DdIeGwv
>AAkTU~Gqͩ֬<'0,i i-c^)0
}{#--hou];-vtB
- R1U"%A gWxw` dYK
+ R1U"%A gWxw` dYK
AZ.2ZV,
bד_q> Z+++˟\.WTČ1fӧy
@@ -7489,7 +7489,7 @@ dW`gf\2PPHCkcgyOiɜHTξd+:]͎MQU-)Y.,&6f
}wNmj护>?.,JDfFF?\JND_bkE>){smӤS]KWO?r|* viJM=ek#I6[ݒ߾cFV,ᎍZ8 _@5?iF4l܋Ƿr0((.Bݼ
^cQ.UoYαKu;Ц
!Dqe!$(`!03Ǻ- %1dbc!oFhDA`Y]R3]N>/(&oV, J'0_Tl`Q3LX6cȗ9O r?n_PCsc8keҷc?y@TtjےD<Ou;Իm5ǐSm'}@壳W>:{oߵV(0a'aɡK66ZHoC,q+/tEoǰѡCGӿ_pAE,;?&S+vFzo-6sqM
-$@]b%S:t|
+$@]b%S:t|

6e3FV?
(U+.^kޞ돶й]>l=׫$6Ы7
@@ -7546,7 +7546,7 @@ f,FhRk7wa·6b$G`"H!˃<9MTl^az<
bӍkEh9bP5W¡7
(@ 0IK6w[GAH?
-WRIޮ<yͺFg.~Yk 8o}
+WRIޮ<yͺFg.~Yk 8o}
kr⚷+sgٗ)
NmUخJuWB&=g:ql:DFDѱFxk.mxo3>~TZ MƤdRfI[._몋=նmm]m[T:o>?rF!k%9s*޺t+ǯ˾=y{Rޅ
?lߘ$*jo~pX}b󖯳fT: [_|rO}dyD9c8ວ+ze
@@ -8246,7 +8246,7 @@ x}w`=BI(HhRTFSAJSԯ?
D4IԙTQ<.0l
z izaC%^ڻq~%
0$:"O ] )USsx+T\!H^ܚ<bdϴ$sb_Dwŧ"WzӢjP*!kG
-GL=$MDͫ+&9I@C9_y{s3Q5B
+GL=$MDͫ+&9I@C9_y{s3Q5B
7]`J9,t2=4%$rܩ)QB~ShEb!$x'IЈ.$109jzfpmu]N^ϳVWFlЪCb|>Cƒ9KsVbBb#"zZ)j#
5ʳ`YcsƆZ/"y_egS}
^n G>{*ieHS
@@ -8285,7 +8285,7 @@ YiRm "!cBy
7Xřt
nc
|-yۇ&M/ЬWsn0z+kj'xϨ[O;V^T,
-*Ο|)+h*,Ehph*/)R^\PN񉱱"Fwvy_cJK 1x9
+*Ο|)+h*,Ehph*/)R^\PN񉱱"Fwvy_cJK 1x9
`_FSY
HFU;N`s
(On<Dp3"qDەH9Hج 0C3\\y萄>q`sՊzk~yf`.2"6`3 %e {*FBoV{P<s!S:Y |\!}1n$^
@@ -9373,7 +9373,7 @@ S4ݫ-Ϧa?\8
 ѳv9rVc
 3S{~x!`{g
-wKO\er
+wKO\er
1bz -k*i{+?!թh bNd
:s5pJ
@@ -9865,7 +9865,7 @@ ctxZȘ8) X)'$w[ޞ =`au~MvY !DK,Zx"ի94Yr
EH3t- %uY&1˨cgf!wVT"
mtAUlpᅪ3k&|zᴞu)ȊV#KSE>!M=aݰ@$EdI0 $+߂UUd׻c
5<N9@G"Us8TG"&hoB(+
-X8C'~=V;;)̡ [35[sʻgFbrw<f(}'.;/X=W.+v6(.>s- )w?ѿ3יөqp"6-V]#B]I >8Lqz',vwa eZmz8dRϾN~sHL~o׋hKq`=plKD[߼f;j9A2-2[Yn-N۹qOfe[jp|i+O&Qrz[YY!8ŧ˱V\%שԜ&o]_,T~2?٣ +x[D2;t^u|}o~n(sOJ1E= lG̚5뭷ުRRrr'NHLL8,+nB
+X8C'~=V;;)̡ [35[sʻgFbrw<f(}'.;/X=W.+v6(.>s- )w?ѿ3יөqp"6-V]#B]I >8Lqz',vwa eZmz8dRϾN~sHL~o׋hKq`=plKD[߼f;j9A2-2[Yn-N۹qOfe[jp|i+O&Qrz[YY!8ŧ˱V\%שԜ&o]_,T~2?٣ +x[D2;t^u|}o~n(sOJ1E= lG̚5뭷ުRRrr'NHLL8,+nB
Tvx $wj{XJ $,Ѱnri"{{8SS5ٿop뇿=x~+<z&+X9w7PW+>îbҡw2x|˻fnY9MԔTmۿPԩPPB.X*
*b++VxBG=&,q'Gl9=[8rf o⬤ 3On}l{xK=ߠ9N[tjm~0&O<xZթWRJ5jHJJDCSUCC=G>!
N !3ѯOmB7k1 R2K;֯ i>ܭ]sѻ?#7zc`\@0ph.Kq
@@ -10363,7 +10363,7 @@ VdJ( #55ſ}a
zSNMɓ'?۰aFam`0?U2eJ՚yi~ eVnRMӎ 76lبժ$U+1K돭bֵ0Xډ7M5l4w1w޼yZ2m#/<t#6C4ȸoF6#FXp﯏䵁q3aļi[+2a]VfB[3u>,[m6:(IIAf!o
c@ 33sɋ/n׮]yyy˖-5kV~~5O!z %*!U;:9 ":_Cj}U,4,:yq \lq>Lbrh6 A`Dt2E
: %Pu.R
-4}d(!@Ha=1ҽ3!4۲e$ g2JAiӦ2Ʊ
+4}d(!@Ha=1ҽ3!4۲e$ g2JAiӦ2Ʊ
+%D&q/nIм! r41#,mris( 45}2U4-d%a&Nj$ u朇p8#NPUh1GA$fA4Č2Hwt>NGe
yt߹~`7|m _?^>
nuWoq<-/8Ws<ܟ}aÆT=%KR?uMQo8
@@ -10414,10 +10414,10 @@ ZQEQn
”,%0@$ _+!26`\
_W
Jr=hN 
-bbYٚp53D/
+bbYٚp53D/
`V
-<(MaE8
+<(MaE8
4"Ff%*b$1A 23؃
id!w\3s}1pvfzV?L_k71q;LZLƽ3ϥ;oǗ_ts 'g<((7^EQ (
@@ -10426,7 +10426,7 @@ id!w\3s}1pvfzV?L_k71q;LZLƽ3ϥ;oǗ_ts
K8C\rоDlgtqvFڮ}!a
!ٹȉ6j0u|}'ҝ_۴8I1+J*hEQE((7^EQ
.LDH D=ʆdP alG 5,:|MvޗDLH[{CzDڃ´o273}I\1EOAb0]<+&S8焮]lt6¤ǩ ,LxZdfT`)=0|tJBv_A؅P5g!"xᩯ~ !θ#x
-\(bd8"V /fX[c=n Z 7.I!㹫-R#:菉1( p2%rښ^T| t21^0]_L:uzbM栈Qx
+\(bd8"V /fX[c=n Z 7.I!㹫-R#:菉1( p2%rښ^T| t21^0]_L:uzbM栈Qx
`ܹ2?:eG~ussDvDho^f xK8uرԮ!
j~|]`
5ώ1g2b5/)8+ҝߒ 1S31{œ3)|BRz
@@ -10517,7 +10517,7 @@ NSodJUuCF]O
7/:Fp_PV*
5EQU^:jŊs:>Yfz}vWDq3k+vzΘ^u64
h@!
-h:x"B.
+h:x"B.
SN:jѢEÆ njs f%ce߬q(h42_

@@ -11502,7 +11502,7 @@ bs(bQ8kR9WcSBaX|
`6c$WX5k2\I ٫AYaPDR YF,A>e<b q{OX#6et02a/Mi3‰X̦Sz+6X}zƒ,%94o4NLPy!!jIB㰛9E$U9BQ*L<%9fY4%2䊭)BH?:ZD
bIyX ٕT
*&CǜSdø& / Q*2O]Rގ
-[ b\n(정fĺEɉ͟Y֘5 Bo4ؒˣ7wa YABQ.^b͝Mm/ZeMcժU:@PU0N:5?=5EQDE\pwid4iVW+( .-䂖a|:֏HddkU;X2Zip>XfޖؾG9f[&2jeVFl-P2[JIMޖZdQRR2}^z@έpX]ӿ_2r&Eк_wܽ1Xs҆Lek\׷`Sw;~c5'
+[ b\n(정fĺEɉ͟Y֘5 Bo4ؒˣ7wa YABQ.^b͝Mm/ZeMcժU:@PU0N:5?=5EQDE\pwid4iVW+( .-䂖a|:֏HddkU;X2Zip>XfޖؾG9f[&2jeVFl-P2[JIMޖZdQRR2}^z@έpX]ӿ_2r&Eк_wܽ1Xs҆Lek\׷`Sw;~c5'
@! 193BT" `RSR?=~fQs3җD26ӆax4LDACtx{NEWlĦNi~b a/푖OTf<-@;D?%gǦr!po՘%)y3 fmYA,qQF3
n9Kˆ4*4_ςXB`ڜQBl֘ؔ3ٕ؂Q(`Z0WLfO<'MC&3e, a0il102kfΣ!cX
4LXT&00&,LѴ0ag1f{N ]]xHDuv?l۳ؤB
@@ -11545,7 +11545,7 @@ l9).谨u>:,(vi.6Et 2%Bcpޘ+=~ *` AE1>(Y7
O

6`%LcD
-
+
s{G n;T}'T*&,PMD: )^(`'2
`)R`c&jBrL;PY FhE]`fVRjK*#*ֵ
]ІaJAe
@@ -12073,7 +12073,7 @@ L ~t'ˍ;K/ 
$,
zP0|(*GI&C S~Z0
"""HD ;
-clN|Jxz>: X "b/zep a|Ϣ \
+clN|Jxz>: X "b/zep a|Ϣ \
0K>p~B)eWW׸qۻ2߿ƨxaÐ|DJ**ʻ
{
I\D6SbH< {!`GC yGm̂ba{rkc|C>7?!<Ѭn`!X;=`F~,DZ\pD/o!U%!9
@@ -12082,7 +12082,7 @@ clN|Jxz>: X "b/zep a|Ϣ \
CUp|<|9Ea_b̀Z
c0dHI5cWF<*!]<qnfPţ"#8AKÐn97*T\KEDJh4ZZZy:^|J2kP9-mQ>̈
6 Ҁ˾yG?b_B=ׅ3Mo~b[ [Xi!A}!{!
-4k-81¾-&i6`ny
+4k-81¾-&i6`ny
zk҈e( ϽN9rݧh^/|$85[l2|?ON;&Շwr'o,# P=G
J+V`XngC\V^]+c պ5WY^# P-UU懎%"}֊xԧ^kDt
܊fiU<`URJi_#ä{RU}m%n:mCo< Tdr6yuW8B^ɝL=OYQNaZ@W~.{O7Z8`Ue%6xث=';m}7_IQ^;Tg29u*M3u==;n[O_9|!pp$9MkA3q{*2Et۶.&4*wȖW<M>KL?oS~rw6" H'5?Hvi5xM8;pUο'gR,93L=-]:e~A\k%hucE 3=?+*_h~R27^9&V:$Q{)O3dKJn&z`۶lF1HF-1%캹t_V15XI<H72)ZRjN) t-dm RZ_u} B?rO2[E}u̬mv]gfzՏmzRٜ<{{ 蚚w薿>={۩F#6dYEŦ-\:m[Sj%P
@@ -12269,7 +12269,7 @@ v
ozA~,q.>mtg5
ypeA@doc>=뀞#{|$.wȻ
kg2$C&m(CS
-Bfi&K)_~#Fh_W%lZTNE8@NdH88*LVc%4L2$
+Bfi&K)_~#Fh_W%lZTNE8@NdH88*LVc%4L2$
;9ˬ
p]-i::?鄈-e=N9BAKEIonr?'2yCT~G}W^eǞ}i\ 勃% AyHJ`[pA&#kfm$I2'mPq ZA yUGD9NL]ڐo S />dwq}'\ad`g&i:DDDַ}eѮ 鋧MwnԨ+z4tC+Җ
έr*ʇ"IR4V\.O$ڬ*M
@@ -12287,7 +12287,7 @@ JJ33<AM<hî"1@p%j <F&{ui],eu-Ȃ
J6]}gykjx:P],0x`ߝvڱs8
$bM`\>J@M5?cC|[Dޓ\D~<?ޒ@KVpvWr>
`c;@@h"! {pb/Ssta̬l^F>y7FwjUm2,/Y
-:?l *\C$M2F3(
+:?l *\C$M2F3(
: J|
I?|a !I
DZs?4WD5#v[ִ
@@ -12864,7 +12864,7 @@ NdjZ2;lsVK,ѣ #Sj*Hp"JFf <nn<z֬Yӹs
_xX.m=oV_{vw½~ş͇?V2{WNZ>|
Kv?A6
6czn{'`LT>^'m ѓ9ku[u{e{QBs>`}{mqۇ>|8q*HϪ ~r-\
-''KN*t(ݙ=s;ubۥ qa"uθCք }\7+;biO&UgW?mFZwZߵ;ҧ4HSF}Aa/Ӕ`@zd/S7v}mđWB-}`÷OdvhO>|x8jo߮RJDDDJJVl6~-_׳:apΨ8t;O+ -
+''KN*t(ݙ=s;ubۥ qa"uθCք }\7+;biO&UgW?mFZwZߵ;ҧ4HSF}Aa/Ӕ`@zd/S7v}mđWB-}`÷OdvhO>|x8jo߮RJDDDJJVl6~-_׳:apΨ8t;O+ -
jXmsgoZrϬ
of-]"Ֆ_Р|dM?
Y뫯🮜[Ç!D;v^ݺ+U,_.~#GTT#l&T+RZHA&cBnܹv?^ D2tN{+tu<ɹ:y)
@@ -13122,7 +13122,7 @@ rh͚qr.糖xL-Y>,$_Ɣ(#Njq* }j 5biLTj>Vœn k
+QOMQɹd
xA'C0#pS#xnQȢ\q%`5ɘJq0pYC@Ȩ$&q(C18 A #Z''u8Ldq
qpП!
-.v#  )­chG
+.v#  )­chG
k'CZ \I>DzyaH:(iXDv2=* _aHic6 _uO'=gbs
O'UɴzC$t*%-oRE1Tc:tHdE1EI
$78PSoײdt@VՋ.kf2cI*/CJt&t Se^Y!^tISJyeu{}>۰z?7_T`V#GWcy7U
@@ -13234,7 +13234,7 @@ P*kܩ
jQJLiݦݎϾ )k68'')a9*k(<q߿Ǟ?x͛μmy[}yO7r0V
E-;7 
wŇ~tGO<_7CT2, xN!j\nlHHI5J(F7R"n IxqIjI)S F'QltwlH-#jr*;x篻 ,J)KJJ2{u )e~~R!/mE6'Ǝ=*<BZuUHE+h&Yէ+?#ӊ
-U
+U
}3-iAeƳ ͞j+iAi|;-jVm!4*ZrzӠТ57*l==Ը}(P~k[5"@ܴJ#[7F]ݖ] ܇tвw2=-QFW䎲͚ܼiC fH )Qq2(ˑFeHB+H(B=dH$UBd:vR$]kxut;[04.C/:~,w!9 a!R@+vÂ}vk X0gk*;:ecOXq4MS>!DaaܹsgϞ=dȐC=tߌF6reVː^)Nju; iaؿ@AR)| 7Yc=9a$,Cy
UsE;BBEQ
o?>wcE ̛Os-9 s&9k̖uQSŶjʢTUeo8AA+ZnqE<gxg;1pDʃ!a,菝
@@ -13273,7 +13273,7 @@ ZؤM6Aͤt>hY1ݯPx1Io8{?v6mwhm!|`
Tɥm2Օpܹg2dHCq s'?ޘk65 2>s5{v\np+{YdE]BrV4)+o؇ mݝ4 $>NJy];aj:U wUQbK~Ȩ>6ul蹳zI/cKc+']c*
**CJJR7}PѡP-B*H(RjQJ %"$%Rx8ltb(20*%7xaJ.#к.e*݋LG:":B[*k4>9! [xؑ'u}ny_n^~B*_5k6kߏQO=n.8QoW鈎GԫNڴs)c!# ?|{o?W]JwG ِ׶5Tه<qKIC.rO5] sfZtI/K6$btvJ0zE_ύ<p\s
E<xӍ<3[zs+~k+oOlm{7o
-xyT Ӆ^.^U{Ɍ#5n'˛: T+w* tvn!IY6,1tM}z"
+xyT Ӆ^.^U{Ɍ#5n'˛: T+w* tvn!IY6,1tM}z"
0q(-,@@=82
_hR;J
kC
@@ -13916,7 +13916,7 @@ RET
(
^
-~
+~
 YX|Q}8rz YU3cff)е˘wooo_2ZoCVpSמ W )rOi#>]bAG]8<yF:MOT8ZΆmsޙR>ҢNR6 #"6h6o:_G*ˆNC`;2$El@gp?
uJƱ_~f
 `"cjO=7U]l T,b!
@@ -13978,7 +13978,7 @@ xHDBV PkuYkӚ;moS|5f90
Ӽl
ݼ^{^
P C*8<}&4ѽ\"OC 
-Eb
+Eb
P_]?Gv:ԠY×jUj
Mݽxh57>|pz5#,K8A
K*p(_hZtdDzIBɯ8?q5x^bg\T38i<g
@@ -14103,7 +14103,7 @@ HeeZeAZΑ7Z-uuY]|^ӟ +LM`{0Ѐ Z<l`ril
-W>5\[61
õlĭn CǬ1
/&,B<p-0#^@#^@#^@#^@#^@#^кtF,u#-G0Co\Zr ôgF"EHA^^D-9Ll@a:Ó<:L v^tVKm6:+<J& t.Zi9f'Q9%Q<:L0M)R6o *ӅWt΅ôʑ)Ӆ :LK(b#!
-|Y $0E␺tVV3]S;x0@xNh(hTc{RЦ˩OV`lGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjG7
+|Y $0E␺tVV3]S;x0@xNh(hTc{RЦ˩OV`lGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjGjG7
endstream
endobj
875 0 obj <<
@@ -15026,7 +15026,7 @@ E?I.Q<e|vju^j G[deLTH9"#\v$䥚*R3n$=
"y`Igeu/c"T]䜓L{8iIàIفH'zhMmQRQ(=R™iMk5| qT@,XZ#J)`@+nD<+ "CxI^gkK
@2J:\
l F$M8Y;" \T*DK*"4(rEl*My
-s &JpEg[2 UBdM ]P*hX #Fs%ik/ 3e/l)e
+s &JpEg[2 UBdM ]P*hX #Fs%ik/ 3e/l)e
oT2^qr2PNRpy2tBg(*N,j!3$[9OU9-sg\|_s"mz&,<8:! Z;~m#*rm5KkDiQYTiqJX]"VTmF8L@ŅXwl)/UBʹ$3a"@9E)δf#LKHu:ӚUF]%)
9Yyġ۷{j4;A
j1征@0ST>C
@@ -15878,7 +15878,7 @@ bXHk}8ihhhhhAP^cy衇?ɴ$dS R.]=ըhuo P
6*Ħ$0 d<"` ktpj›R$4Mq9l6vtth,R9{t%.kƾGS/]-:w'T1&D"L6ee˖-Z$N#T'U J)YFL`) &b&lDDDŒh(xHG'n)U#_dFOOٳ?{'|rRqIA]1a tL7"O#ˏv"O45 ͝5kɲeDӣ,<+Ȅ" 8X
V 􂈄 a!
#щYwt\xWWW[[;JZ^s\{=:M{vsFS/NuNu]f>#8f,Z3!BE?B 03#=`I !LpPt E@Ƣgq8CCC%t.|&unwըsGBt IW{yl /d2f<iq
-6am۶T*U`mtbNjCNmۖd.+eGQ11\ j1*#L
+6am۶T*U`mtbNjCNmۖd.+eGQ11\ j1*#L
t)tcHSL7
~vs_~|X5<Q'#
"6TRᤣEd,)A]. QDDEW!3%(@Ô ^42M'`t]m:'N_~N_~B!]'*H=RYJ"# S@/UU` `;
@@ -16060,7 +16060,7 @@ Lm}
Q˝릥
jCV\2%*M־5O5`䙉-헮5g/^zw%ߍԈN>Ai{ww_3ԩ+Xq8
<;i2`WV+U+lf
-|w,+jRųxz焰~ñN jv;:֎ҶbYNb[CE0P8rkÑwڥ5[!ϪG:|;%mpp0oû~ RNS޿hnvAr8J>N>E|/ܵcXzm ( #"[k%jy*l.A5gM]OBZEYPNĹHP*ުZZ(n%wӢ}/*렦X%\E+91R+=f)gzuf ؽ־h݊_PIןb[֩0 Ј=W
+|w,+jRųxz焰~ñN jv;:֎ҶbYNb[CE0P8rkÑwڥ5[!ϪG:|;%mpp0oû~ RNS޿hnvAr8J>N>E|/ܵcXzm ( #"[k%jy*l.A5gM]OBZEYPNĹHP*ުZZ(n%wӢ}/*렦X%\E+91R+=f)gzuf ؽ־h݊_PIןb[֩0 Ј=W
S+fmޒΕjTϱb*_3lqpAW
LVM;
(VG;(*3~Ct".EQԷ@%`A}l]~GBQEQS@n[Vg~BQEQPzD ɫ)(Qp z6(O+0u3{L<BREQT~+0 X+wEQ
@@ -16323,7 +16323,7 @@ C?~?ЦMwE|nݺj%?~wlS?Tl4axNO"$
EcU&K"$0S%Q@EId`Z (um3\
KsB*FVhCE:(HI@eimJ@+
uTXj(Nu[=.*JH@5"õ R /=,r1-Pj3{,4e>.KCV 2L^!mv3,rYЅQhd,$-rN`h3fJJ)8H볥IOkS]JzT=@T;]$A
-Hb`auUbTZٝ1^ʾaTmf{"f<,tЌإaۥ⥲MeUmVXXثWaL"Q$&DIXnԩS%I4M{[n9묳iN\$%DIؿ7ؿ9s(2o޼}N6m5i+5ig|bbjNGv ׾޷A<IӦm ָ^nNVFZF^XC7}qX0
+Hb`auUbTZٝ1^ʾaTmf{"f<,tЌإaۥ⥲MeUmVXXثWaL"Q$&DIXnԩS%I4M{[n9묳iN\$%DIؿ7ؿ9s(2o޼}N6m5i+5ig|bbjNGv ׾޷A<IӦm ָ^nNVFZF^XC7}qX0
Do8|VN,ecPb}vB:ZlOke#ɉie#*V=QgevT6:`=*C(!v]bԟ쒀J]:Dǎ#V 5M)<U*rڦ@(PTL)j݇W
NSUUGK+))w<F R8`"qb0PDsMU32Ozfd&܋8"K 3Ƣ Lb2׎J(P# P%PU%0L?@A8LL<Zj%0IHfgqSũ@CBǠ{m ƅ89 53R5@Mfd,C PM'JR{*X1JaZSBSd@DpJVQ[%)R5hot곇;mhY7rٿFމ8n&-~ߟ]t:}
Bgza^kS1{\T hʴ7;4ɘ b0
@@ -16445,7 +16445,7 @@ Z
l{̛v6;._4_t
r\Z%DCSp &!L<QL!uI1I &XqQvkc -ٖ[ "=RR pE7JAg&
CsPjWAAPfVS&8dT&%.s^5P,#19Gѭv(TrPZBIc$x503(: Ĩ
-JdJEQwu*ۤJjfqxaRλFͺT);<5#%$[dY7k
+JdJEQwu*ۤJjfqxaRλFͺT);<5#%$[dY7k
?zT&%[#u[2"l3rh!#Sr֫>Ty)!BjWFTFvhɭ @{僌jZ.'#f*Z{sl0*"6k?AtIDh]Ty&-0/~.5N}|CU@PR\CŅ$yQvvn#" Q!UPU>뻁ljAA T!>wŧhyΧŢ<7_ f އjewQTAUihhh|r'` 544444F
5PAE2}UvzUISoQb*xeRHS[r
:PJJc4(F%}[]b|qO. J)UE+Č3AXgHa @qN/8&j/0 uW"V5eDLyMTaTPb=VkCW*[Aç
@@ -16454,11 +16454,11 @@ CsPjWAAPfVS&8dT&%.s^5P,#19Gѭv(TrPZBIc$x5
F5PEŅκ-1IVsm*:47n6Mc#]wlQW
v.Y#U"T\MԻ&CPTi^P]EBcC"TɣHɩx?E,NT; JǕ}b
5PA
- AmVQ{֫-.L1Ȩ+QAUUСχJT*Uz@O#
+ AmVQ{֫-.L1Ȩ+QAUUСχJT*Uz@O#
R2*beR }>TYH8** @_NꌕAE.HJL%5q
* QEcH*rwJ{|by6E2H+]ݚ4Np<+$fܮ5z3[NH6J"mH0@pD! {rebDTʹ*jDPJPGeB lG JæhUPU&! P2*\T!Tި(*a(B
c{SjvbVYf.?^
-JY#0 JpTU)/*lm__b{e V4xE &6R聩KY5F-LB`yj!upPM!(>M~j3.
+JY#0 JpTU)/*lm__b{e V4xE &6R聩KY5F-LB`yj!upPM!(>M~j3.
2%W!&8dT&%.s^5P,#19GJAU:PL H&`O&8 *Uj3'hyH\=y|
Lb+6u09üBmUo5X
e&l*1f[]Mfp@TXuWMjHʻL!BQ TQym_G**hlʈV$q@{僌jZ.'#f*Z{sl0*"Ԯ]҇*wd"ZW%8UoI5F/i+$uT
@@ -16848,7 +16848,7 @@ yr?9da){:v!d[bU
=I
VpN4!
L
-S{;qtky2>
+S{;qtky2>
Tpx_s{TYyp
,DžZHL*T`,n\bLCPA
X޲7>Xg9iOC lmB83F 
@@ -16986,7 +16986,7 @@ t=/ko~gn+=9_rE-i*dqcBd惃`׮]3Ջ㚦%1
3
8jTx]sPbY#
Ze?&/\YjD۶i99_~g4 7.ۧUbq<+e;8m)NJ6"~PX%㥥kZ=״,3eKccgű:HX:JZ$=b曋]=qu;STs]nG~VinO_(ˠe>ئ?)Ybk1!i)S y&M8q#<r+>({k;`[Q[]X
-@Jrcpl3;kod2ywL<2<y]wݕL&38鐗sq\iZ^;f3ݲEqms.DG,
+@Jrcpl3;kod2ywL<2<y]wݕL&38鐗sq\iZ^;f3ݲEqms.DG,
#q})غcsǙ^7[ir⒇.*jzMkٽKXiQPm۸SVSQ]A
ڳzIY?8f[H85;PSpj{-ljQϓOMnsV2Szh͞~EpO헫K'OFضm&U=_p
EEgyeYex-ntr"x,fun]bXNf6]n%(zw>Z7{}px'75"چo3\1oz-!AeW)]{B^agw^2pn׏Z9CѺ8
@@ -17459,7 +17459,7 @@ jX\~`Ěna+
`aaTLBC(+ f(af"aHA*(`9|6-
,<"sPew{muVV@򯼢=+g -jr%<$_3_88(-}p x`(OA,
(58ώ4:#?h{-Wt^]R>*;﷼ .7l\
-lm$IF~Ej{uСۿ=":g'G¹{mhBW8ΊC<:)A/Bl4[n={N
+lm$IF~Ej{uСۿ=":g'G¹{mhBW8ΊC<:)A/Bl4[n={N
endstream
endobj
908 0 obj <<
@@ -17685,7 +17685,7 @@ LE GRT4tp
(,R@2B3`Fъ 3nisE{6C,'&48%rx0brb
TUNן0tP!+E頮*0R66663
,19p*,ǣjK|e1W-g;G]23++ev)Nrc>?%L O$Q,^;7ZNݱ 7TQ<:eP-=H
-oKdֺe_FǗyskM9㧝xdgfYg9
+oKdֺe_FǗyskM9㧝xdgfYg9
QLaZjZYwG,5Pǎ@Ib 3ki"eU$L-ǭjZ5aHuy挹GoZ_yw.v~x9TPQHAy[ضsCEiRXS7_'7CV kj4鞻@ Ҹ$tpwJ'+p;P 4W6B;7^ڰ5@ȼ
ļ%NoUN p( áUu+m _mtc?i;69
@@ -18002,7 +18002,7 @@ Jxo;B@@[štf}P$37ن/
dHTY
~iLju!?V;QT(r봴
dh0eh
-Ff-̷"?-<}~E%7 [;~z
+Ff-̷"?-<}~E%7 [;~z
pJqY.Pxrp)HC
8 호%%O/ifNsʶUF" S +zl朓ǭ\^=öbt_{+gk7fw:X~/rvځX ʂ
@@ -18377,7 +18377,7 @@ p&:/M=6r饗?c}M7޴ron4¢v;SO
.C?):(X<qNކ(
w$Tȗ(7>6uj&ކ(
w"!-ћřZsM} "UlQ?--p4 d6cc1@3J I>7 Rf
-BEБ;_@e¬Dr++c3
+BEБ;_@e¬Dr++c3
4JMY!. (h8-|4xI LQd%ƍޅ)%"H#t5o7Cf sWD%4O^s!2h̲Lel~ 6P
B@)ѨFiCB
qIJK=x󓜖%P_B I$4CuݻMGAW,ŦJ(EA&dѭl<sn]tإWNv}53śvܩsaaHƌ0یv;ͻs{#FA !(hRRzY|
@@ -18512,7 +18512,7 @@ Ow~Z_Wm۲e~#eZO//7l$CtZ'\|>oP[m֯[
Q y~?lټxqfz>~yFT8BXk5K;+As~˳ 3}߼g,޵]{"nwCmP,^^&=?w|«^~ <Ky '>> |9jss{`k+Ou?8o>-}ϻw7\;on v0Ƭt=C֟mt4KK2o@n-[ 4\Oȷvtd̍Atk4Wap(2VĮ4HZzcea.Ɛ31V{oz~U?S^gs񧞴t>[7o U<<
NNrэߖ} 37딩'CUX~o7xl߰_.rL%>$t۫ C*Q0Bh5{koپclݲr#K*$lccð1q=$OIܾĒN:\h4zi=Fk1Jb-H5$!;bsq3O48iODT|;r`
X`${F`\k^jr .Q[?*
--Kݧɺm.i@qDЎ7L
+-Kݧɺm.i@qDЎ7L
NJ)bfii146Ie`k;qz(Qb( %J,
L秧0ԁwrw3ZGbdB)] 6zH p
w7DmaSu$zSXrAj<LR%60
@@ -18663,7 +18663,7 @@ TrL&*KF0hS=D @nd$R 7ɥiėMZ~WIR"%)FsPe+wӀ
!Cc^$ޏb렄J( ^}(ɐJ(Xt#<Dzڐ?t49M$Z O|5t E-:+/UEΒkpv!vaDbTWBi^i(JU tl^%Ȏ.dnqW^Ls'sWԫW{S$*K@E#AVHdpx`)ݦ
w:Plt^%8s /E湮ns @dlͶ{W:b)!P9C+ReJy᜗&Q 9Rpk*SNSH%pґ+Zɯ%ƴmdԯ4,H qԇ Je:}ZcT4ntN4
 ;< (X7 H^k6B:Y/d\‘anq !_.)p,[" 9չ `V5
- SYdGܛ"%ݯjȝU<PɼV!U=sylV͝;1&!=Rc,[2 jʰ`}8FJ[" ^2$!=z KeO\*l\xyT0>CIGJ'q$WVAe<k;ftĪ7G0TZLXl6DA2f]v٥ib⨂L: mߓUY$C*TH}B>?e(3;wQƌRLBj+}g͚x [4_? ?}eB)dᘁ<w<Owu913ʂ>
+ SYdGܛ"%ݯjȝU<PɼV!U=sylV͝;1&!=Rc,[2 jʰ`}8FJ[" ^2$!=z KeO\*l\xyT0>CIGJ'q$WVAe<k;ftĪ7G0TZLXl6DA2f]v٥ib⨂L: mߓUY$C*TH}B>?e(3;wQƌRLBj+}g͚x [4_? ?}eB)dᘁ<w<Owu913ʂ>
^±lAc޶/fhyJZ>msG 3i
Adь~',{ L^"eK4:v [%±L^O)% !>/ C6LMMM-i+tp'pq!F˗//ihTsUS̽`ӿ]03H q伛w
RJƲ#(l.4F\
@@ -18699,7 +18699,7 @@ P<.colmէ{o O띊~{k6~b+}ی~Ob=(|nXpa"bspL
d[cJkar3efƈ-eܒ9HX8=+)`@ BY!"h"RHGtӷ~{K[??cgo#[a)6SMw9gO+ph<Ag45v>r?C[Kߴ}~'ȝ3n)1{cbL,Z&lu1ʹH&ݶ ߛnͳoLYy!\d2PDJdTaRPfq`N@wUKʣ-Q!d!Cqʼn7cƌH)eSSSNoqKeE[s>k7V09{&7K7t#
3η>KwS"}MK v/AK,\a5)yI]8ϪZAn%Jaَ`0 >@ZD"a::x>CƆw=HE5RPtAѲo#ׄvTm}/N@%zMY l>=xulO7{[IOދFX.-!>_
=%KX(S<y6=/ףx D#+!3selԞ`2XМHKVKcTR0m)RJ
-;>Kc:dsk4* +okߝHlmTe?%ck(3/[At+=䱧|d`,5!{_Nzg<<;3gsE4w;V,ھt<be?-h<lDe
+;>Kc:dsk4* +okߝHlmTe?%ck(3/[At+=䱧|d`,5!{_Nzg<<;3gsE4w;V,ھt<be?-h<lDe
LcmʷzgZ6G_U,Z?Uvn<yOQbN1JYaocoڐ$u\n7=ܾ}_d|`ƻO6P]M!5
ՙ8
(:=R(Ņܒ8\9TsKN2JyfLz"WZUHo;C&BL$,
@@ -19109,7 +19109,7 @@ $1.T{%e>~$̠Y5GD2W?
$L:]HI0aO\p `%^֪ԉs腟Y\yOĮVo돁⾯ tݯOoã^xKzru
H۹AkDb&
Y%Pd
-%{%)PD &F$2HBI&J(VX_!"$\m <[IB#ҕ$rdDRr
+%{%)PD &F$2HBI&J(VX_!"$\m <[IB#ҕ$rdDRr
R@R[咹2
}sKR껮f!0XT.Z F!G4#RR1HB>fD2ֈΓU!ZJTЌ|ȷ҈v\#b$*:> Vw2FP=%\R0\$C+ %=$KPN/D>
)$xQ$OBU0+g+rq!RB~8 !s T
@@ -19828,7 +19828,7 @@ $bB| Gm:޾簝sq!yɎ2=
IaN%BmD0i)JWj34D (b%H~ҿlq!`0"!42Lф 3t&3FZXtxdhZbB5Ϊ رcN:ztZ{wĉ6Z
z5srSi<X&jBa+b&9Kk(5)
ӈ.$nTN]w4̞l
-`oB*sKK3
+`oB*sKK3
kWzA'(
@
1LLx\ĥQݶL$1 l
@@ -20313,7 +20313,7 @@ JR Qsܟ[l9Ks7n?qmwb-+A 3f
B5X(襓[lӱCzz+5NrC`+aݏSwrɿny75['7X['MRbi5_XN\d )gm{C[*Z!.% #`)lZl n|蟮%CϥVq/w={MzD_>a;E}ӚqmTS7-5ݩi_p ׍W\w(lP2$p(PB}:3aq8,׳WJO^7O?UbN9o3\~^2LI]_|Q
-N-f3DR=LH3HEQ{Cp\'ܐ:&fcRGQ<"_$6*qaׇ )n-Z^ؼ=>}uڔB
+N-f3DR=LH3HEQ{Cp\'ܐ:&fcRGQ<"_$6*qaׇ )n-Z^ؼ=>}uڔB
0PxP .+`6R(W6tǵ~x萐XRTC2o4ZN]`Maz>!&'#2
80~*
TQv ձ6^:չ ']ե%#9~
@@ -20678,7 +20678,7 @@ EI3,@ц;4H*=" L?j li^ň  {Yu&I og q#CC,
U)B[@z&6a(O4f
{F%q-o+
.uk0he:WiWpi`  k%Aǜ": r㥧岏PGz$P,k,`^@mOIG?PkBȺ\(Vwo\I@D>fU~JD BY>$D=2'&0*o[$ǶΜ_z
-ޒ2^W𮷲խ][}ZP9A,WzA_NЮk'u.6[OQmkFRHtimZV޷EXX#"""""
+ޒ2^W𮷲խ][}ZP9A,WzA_NЮk'u.6[OQmkFRHtimZV޷EXX#"""""
"8.P[L\Bz&`Z-6 kPZt
"
0
@@ -20688,7 +20688,7 @@ EI3,@ц;4H*=" L?j li^ň  {Yu&I og q#CC,
>i`  k%Aǜ"Zr㥧岏PGz$P,k]@mOIG?PkBȺ\>h)ʱy[-;'|bn>QsVJ0zZD"CB#srhíi>֙S5Z@
U.lL,!uDxr͚~H,/{JW__G!/`WK3[|#vJ[w!8wCDCaKIHb.A8r
@T3c[sRAiHz)Dxjs9_h
-R-}FJP '
+R-}FJP '
(2!LJ_FFlr \F ʕ) $ Y) FiXG@=Jr"< u- פSJ3pׁIjmM_Vk#=Av+BDrVPPZ&Z%ę
6rk^UR3 XBjՇMm3 3h3՞>c㕔Vz6;f^l!竮WiL8B)&湁Y*P&H}飼<pO <
9c)s&Ɍ_-|J0!H.cHVN2CDnc%2%W(>pP**Ka.PfF 4nyejҳB.@7uW+@Sc%h7^z-%KO9
@@ -20715,7 +20715,7 @@ zڠ"Tu$i=f0D
n)90~ 2NnP*Myl{,2eѶb3CD뛜Bt̛1X.a# J)
djeY$Wfl$Jlb 0 EEK l,e1s(18[1P FZG6W\5 , +5GXER20PCURRG )9>sn
J2aV8k{=zKer&(LSq+*J %' ,tJ嶯TUE!D(i0iIC \\!"c֊*2H@r.JeWc0Iv)`N3!VlKo䈔G-eޢXc)@H~\YӼI
-ĈD">\绎y\BA0Rcےax<3 wmǶmXhPJ D)jX4 BG}OQ|qO!_ 1+c$|IE { V"H]ױmԊx$
+ĈD">\绎y\BA0Rcےax<3 wmǶmXhPJ D)jX4 BG}OQ|qO!_ 1+c$|IE { V"H]ױmԊx$
S=CH~[_b/:o}<Egr08_'1vTzƩR [B]R{*PQޫuw]:` qF% _[h.skT4 V_.h4XsOG\RHũae/BK*F)?Bc)|w7\eiH)[7ݺoLX4)yU}Y@>z7<#ZӞP!dSFLӧd^w4Y %o_H毇:riREBm>[V^IYjH㙆wӲh{νK͍ h&wUKq+/\Ë|ۉ7O]r}mԌ7{ϟlӻ34_2ևL*>D'hP/z_Cܭ^\~+ȼ}+s\'233sޔ}
B-cdzL$cRlhjnNg \:5i<_ʬLIoTsSC``C9ey`ُ[:SVcx&֞hlL'̕t0?9k "o 4cg81úFo5O83~vg:͖;%]ݰs2gn\}&
ǜ~W8F3->;MMۃ\l3ljLHs}NL76Xd0Si `d!c\9g=cYo5h0~w}<ޘ|/}3h(f|qOX0L 1E }|+wt[f<Ɩ/{Ԑ@<. \\f%|#ɤ^LK-4u4?)Hfڦ~Z?+ROe'hkδ;[;:&o{>s^~\܌"L4L5y`Ƃ#c[i~z2M+9-юuW7?Qs->86 \PrS&a,בI% -NyqJcϗY&~Oٟhi̤?scNZrI54O?֦O]_6/DQpX4o%Dȩ5巇LzU$']"bk]g,0aurb_Lpѧ\iJ+[t庞w^o1O>p/z׿)w']Ww^J}⅛ ?}AG^;i˕&f:N8dw^pkΔ_(_ir~cњ~Ś[li Fx[>e1땯3=fu|>wgmm9LT(C<F a`[Xzʥ/_+|~e·^+|tEk앇[BwU/Sv? g<Y0v֥ޭɤ7gWBP+R  
@@ -21136,7 +21136,7 @@ h<\p./GsiU%BCaRe8DYl:em0S6
(0
H43ӡڝ`y?^W啚(iD+dm֒UXEe]{IE)vʌ-?!C:C|6RvB,myƸBڿ.ϪfrH)oR
1va׮C %A *]iꮸ*U'Mmݧ~ck$bF.dR/&*ap
-CLY1ԜMM9Blͱ)!Ȼ(K6P̺|
+CLY1ԜMM9Blͱ)!Ȼ(K6P̺|
خ`\vϤ QL"%phw
&.KAYY@e-y0cqJHnJ̈́cT_/")ҽ%gp%
[0 +$\ƨmoM<ꨬ# D*lVurȆPA"\!JJ#T !I R3@PZ1\y[ vɻB#QH
@@ -22134,7 +22134,7 @@ b鹅\A[kt;A)ZȄ,
4*]R
}YBdsݦ0
%i8E瓮p!+:eE& I`Fg& ATƕi쀤*p,M+24Zkś*|nKYTD 6=#VJ_Dad
-'PUrp6)TJK|芔<r%q
+'PUrp6)TJK|芔<r%q
ҞϽz10|E=CNK
U+-
@@ -22765,7 +22765,7 @@ xgxיT
B4%~(teU(l
[tܟTZJhC}38
zOv;gj,ͮT "/oҦ2;SOUUX:z/Oev B(kdq
-}o:4.**lOwh-_x覥f
+}o:4.**lOwh-_x覥f
dV Qo 8in/m]\[mZάغ 4w ic0==ɎE\ֶz띷jQce]]
$y|ý=S3SsQ{iCMuGaXA޳dZPbq;p~;v^>$rcOoK2K$,QdVeБTaZ
-Iq_ZqґETl8qdN`ЗĴ'e!Iw
@@ -22846,7 +22846,7 @@ m׭u/ެ;{*QTtLa#ykݭZ~6jjl`g^f%l$4WNZ_
=MM GFjYԫpqsN@Cfͱq$Jel,tY
\jMu>@gh2?Co(\ґ@P;ӝ.WjTj5%%Njsfk茻YhcIvGېfC5tN[ʒLK]kW*agdXTUfξj@R) S3$vl
F3/W%%ɱ g49JҦFnwl+smywoZX)dG-k4(sSPf% b<iIq`_K0H))PchfsYQ.+KX`,d'A@ҬNȩPtg)
-fdP ,ް$%!͙Z"#0}^^f''!ڒvRYpgPl JOR6u76 VlY:$sY 9.-965:
+fdP ,ް$%!͙Z"#0}^^f''!ڒvRYpgPl JOR6u76 VlY:$sY 9.-965:
Ӛݙv-GVwILhoִlm[=h 6(rxw"a;4pg `,$!c1
5I
nH$RiChR>2g V}u;B7b2٧䤉pmթyب >U7h0P)TԟL>nHFL&cFvk-z͆qfc[礡i)
@@ -23374,7 +23374,7 @@ I 2M4|@W
u=kj?dԣ!eeʦ\ͷQ:| //(AR
E\T*
CUVGC R',5A1
-' %0rOp]yeh:q<m7ɅpP )*ht]Grkgp6g'sk˩4T:*+a#w\ 8R y-sC`~b"8'¤gА@0TrDF
+' %0rOp]yeh:q<m7ɅpP )*ht]Grkgp6g'sk˩4T:*+a#w\ 8R y-sC`~b"8'¤gА@0TrDF

Wdev
3۸!o$IK 
@@ -23675,7 +23675,7 @@ eJf;,'vy)'/߽Iq-Qv$zL`zRH-T|Y{Z[
]y{z@ϩyYjE
#'}r?33cji=qL;k9
ឞ0::tg{GwH
-sC
+sC
jP!;yuJir/ykɩH6ˍ?r]w[<w܅@L&4z 9zo˷eשεV,UYع#}mR/| 'vK{M 1zHrc'7. 荓?>?x15[/MYB ;Vn`YM~C쯂[([}RweT2 Rl_ٟ,p
`5OvN}?9kG9:]me).<On]{L/^1⴫;<0/TVӸ ᠹ |%t\ؗlXz??}HTYosm gzDZ兑1ce]u<Of+
J8v
@@ -26098,7 +26098,7 @@ f'''d>)TL|yY(,,`e= >?P"\5FU9_Frqb^ۆ[
uѪzN=tզFۮvNM}7ݵ;QoǞ:K^]zG_M@Mˠ:Fu{5TYCzk^z5=hT?F`qFFu'Lk:~fS?ti[!3F8j֠Qc菙?v|q [8h" OZb:iefS,~IM3f2i%qhhBF&S|عA1SoD6]>ͦ3g/G_w4FcH G= cRoϔ}=! {"ch豇ϲ/ڧ|>޺s9ph޶k9,p|hںCh׸E[C5mհiJa8|I4נQr^>8jqzw8xU9I,쭷Vww{|;}G}Pz|P}1jQ&>iZa o-?nܪA֟4Em>iֶav [oԢCԸU&;7mݥiM۪5k׭yhAE-;j٩W:nݥOmjQnM]7vѯzzSc5u۠s.]4w2mmMǴYf haP0ި^G4Fm``\C 5O4e<Idd):f:fS~IY2ҴMdƞq8x<c8'1bޞz#Gv7Θg3 h f```1|Ǿ^]]~mM|_~׺KoACOM6kn۴M&4iչ|nّQ{}8p4PQs%>jp1# Ǔ>syz<ǟw;rD?8fq_ZNj!?Eʿ+%%%UGոqcu/%%%U YwLRRRRu@z?)))ZȢ$JIImih,*%%%U;YdQ))ޒEj+ɖѐ[CTd?鏹E6-YTJJJv'ɢRRRu[}$JIIIVdQ))---MɢRRRREH$JIIIF_%JIIqhwIJJJvWɢRRRu[}%JIIIV}뭿IWGTdѿ ))̢J,ϓ,*%%Uտ?ɢRRRRE%JIIm+W ;|ॉO/ϓ+%%fE ,uK$'- yMOƎsXۥsǛ׎󅔔΢Oylh]dɤIǶjJM+%!?9O>míݭU,zr8III,H8POxΎ9r޼yN\rű˕o\lV&M[nYdƈy6ZM`* j&8lҩS-˗
mm6m45-^Jiϋ?"JSeѴk֬4JINdg%ḴξhooO!;wSZB-]ryl-cmEc,^ܸqc==qG堒Xޕ,*%%U5'h%^
ZZZ.ΐdZi Ŷ,^-[SZrY2DGѢТׯjd y^JJcTfQAϢ,:vkެYB|`ё#GKϽ{G~O*In43ϛWvTܯرo,*ۢ48RR,/ٰ~=,jjb~BdAFիWM6  TˋY
-wdQ))_E?yEJJn@YVqQ舰nߺU}pTKK7lX%@nÇR޳7jEaQJ>|ءCJSXf*¢C̢"ӭ}ut@JPTtRK˂#Flݲʗhф oS]]=$x*f&>RRRRUv(htnEG^ʢ~dQ))-CCWaђ۷23Ο|Ϟ}UX
+wdQ))_E?yEJJn@YVqQ舰nߺU}pTKK7lX%@nÇR޳7jEaQJ>|ءCJSXf*¢C̢"ӭ}ut@JPTtRK˂#Flݲʗhф oS]]=$x*f&>RRRRUv(htnEG^ʢ~dQ))-CCWaђ۷23Ο|Ϟ}UX
2dHΝ6)ֻwmn_Tؿ_?WS'OpA
UΝ3z6Dze٬VVGccO/Y\
?r,غUک[7'N8!+3K..CJuXe/f7쎔ѣ^E9^rP?PǏ>IN
@@ -26275,7 +26275,7 @@ R(...cƌ{rf.Ȍqppضm[vvvt;RK.]fMFFv {n
uW"N\M=N׮FgUM6Z
U~Q{<tQe"%whC _?΍7*ȈE3YD%V6~uod-m(
+-
-
+
innOII)//ߔ^mϒSRI
\~)S$+++u:]BBSLL޽{7oW_ܼyS?w\PPӧw)j4/|6m:yFĕ:qĖ-[8PZZ*L-OZ'3U!66`0H 2$--slXbʕpƍnlZ
@@ -26462,7 +26462,7 @@ stream

   
-
+
 
U%۔zVOmлbJa5p5U2c=cDtlIR991Ӓ0;#rͤޙD&1&bi$
Xz@QTbS*LĀ=Tgr&kT$sb%;[>^^~~NYŎlhb+ZUDݶ༵_/N["ˠ62%K."5OU
@@ -27467,7 +27467,7 @@ Ww@~?wW~ o[Dv}({61'=UxN 3}]ݨuZMՠpr:?VAU%
"~dSlHUDU
:>h`i,a1a1a1a1a1a Wy
;1yny%LQLOXm9hmaS-$ǞVL4n#v$^|ettwnl~=; e0/i"(<ޕoMhj-m՜F Epj8"8 h>脂&>,,<vƉAàml]B!m;m3
-yZIv
+yZIv
M'@"'&}c0ǖ<k^it0-6ye'YV7y@T>WXmyRC'9Zsy\`Q $ W/&Mx^jٻ.Ciωfv񉴷+:e\8ԘOAٙ÷U$Ly[⚂D=BAsu$]G7AG.Q#Wٮ4޽9,*n62,%=}M[V\E:uU,=wURO**V$z)0~jH<cBMt?>+?oMM k[K}2c<QJIּ%+d%]UETUs(~j,f=Ϩ^ORsj>?xWʻyF6<q]pKI3|Dzqϡ|*"z,j
ܚ*Znj?4.
70(-n-\,kjY7g]Y" ?/88I1;
@@ -27752,7 +27752,7 @@ X/foгQϦg4C~],k\ 10j!QyMD75=`X/f
Z_i/3^Q&R!mlW7d$̋n?:"vMdgB#2:8?KTM훛掂'¾$FGr_+Ԣ
zfߔ섴:W)
f#q'oOLY2f-j*| \דCtVwdSV`|or|ELbvl45!(%FES3*qg:k)11kPp윥,3U\~bFݚK5fEc$ӯ3#h{!5UU0
-%l/ih-&4b BЈk5F
+%l/ih-&4b BЈk5F
FFdc\@hK)KBkdT@l[(&ZqA0tʦ;w Yka^[(&TTwk 6meKA{xk-l8:Z StJ/-@l[(&ZqA0tʦ_-Q[ٵPL-ᬵ`h/o M(ZYk-l8:Z Yka^*Q|GynfZqA0tÊ .U7Dj dͬ`h/o eKA{x\nE Yka^[(&T;w56Ê 5PL-r%Twk 6meKA{xk-l8:Z StJ/-@l[(&ZqA0tʦ_-Q[ٵPL-ᬵ`h/o M(ZYk-l8:Z Yka^*Q|GynfZqA0tÊ .U7Dj dͬ`h/o eKA{x\nE Yka^[(&T;w56Ê 5PL-r%Twk 6meKA{xk-l8:Z StJ/-@l[(&ZqA0tʦ_-Q[ٵPL-ᬵ`h/o M(ZYk-l8:Z Yka^*Q|GynfZqA0tÊ .U7Dj dͬ`h/o eKA{x\nE Yka^[(&T;w56Ê 5PL-r%Twk 6meKA{xk-l8:Z StJ/-@l[(&ZqA0tʦ_-Q[ٵPL-ᬵ`h/o M(ZYk-l8:Z Yka^*Q|GynfZqA0tÊ .U7Dj dͬ`h/o eKA{x\nE Yka^[(&T;w56Ê 5PL-r%Twk 6meKA{xk-l8:Z StJ/-k 6meKA{xk-l8:Z StJ/_56Ê 5PL-r%TwEr>3̒d~do1{ã%A R٩$j2~3":1h͒O:XR r#UZ
o܅֦ޒH I[o }DT/܂;V!si+mϹH
V9ZGzJx} d3x %m>2< P*?r SI[o }C>"T*XAja+mϹ4@g$JB-L#%m>2<H P_cwC>V!s* s 0@gJx} d3x%B|U~ޒH I[o }DT/܂;V!si+mϹH
@@ -27802,7 +27802,7 @@ iC*fvGiRR} d ]c`x9Čȟa
8g<aU|:l9-^l+4Llإ؍ɑbDw$JUNXv2͛Ʀvw[Y5#nlTԓZ+CkAGlV9['rZOL(ihK=ߗ2g{*~- 3?/& }W
kdKlɲ؛bh"4N蕢~pRZF'%\RE^ܳC"YYLFNӋUR<2q G7>=I+TփYe2u˓4CG֬)O
]j6ijJjgBLk`qH+fP>%hdFlTF<oϼd^զk3p{Zؼ;< ifًT5fjIU7H"2L~Z%e&cD
-jlPhjWH$U%(?XQxT5Ra xD䨡%d6O7,"5fuFXKj
+jlPhjWH$U%(?XQxT5Ra xD䨡%d6O7,"5fuFXKj
|g. p׶  KGV"BP+jQЋi)
&mI]-mP)4 $lS: .M
HerUTEDX𢬧zW&4y# i32f=jJv2٩)B-:]%Jf
@@ -27955,7 +27955,7 @@ dضDAw 99VSI1% Sb&XOL<1ɱ$+Ϙy%QMi|D]Y[
<5o?KΐtZv4<̜!^pIL}zh@qed4]jE16Q
VDrRw[xd/r7^P-_~ÈxwTv ,=kI{ZʕP'A e\+;LU.DSb;\gu
N֨}{$vAݨ?Nb 9s§}IM<%ǴOh~˒
-`֢( ]їلM\2Q&; jA N "ɢKSK XJn@w{k=r'XTG+~ G^cP$yapd`}pڰ8o/Ukse5 5r]Ԍ
+`֢( ]їلM\2Q&; jA N "ɢKSK XJn@w{k=r'XTG+~ G^cP$yapd`}pڰ8o/Ukse5 5r]Ԍ
}yJj̶nv6O9 ק 6ܱ ӛr4t|$f׭AO+& % /M[A
endstream
endobj
@@ -27997,7 +27997,7 @@ FaivG\Poe`钇Z(K]~Kƹ;dK(bS?HgP]>r|)VkF5
t}%(ImuX:~"~= 4!hl5r@egL9h$R[Tu+)1p48A31c/ ',Yt[f8\:VŘb^yDwG9!JU["_K&5
Uc99  MR9 
 w!1ʖpvz7ZC[PjqaN%d|wl?]KOwٵY/UmUδwGx`AcXI$sQp.%GvY&K8\ 3N 'zEeVFMRju!>݅# 5mDq2<s
->' I}#PV`śųOJ(vCwss
+>' I}#PV`śųOJ(vCwss
 \Rc'x#utuߢjdGqoJ\ͿjmL?,^$ mѢ+Vo+ n#r%S7tLW%!ie=[;~EQ*t#>7`m 槧[J-VLc,yj.q$4(GILڂq/LɖP޸!G ԟ;$ ),B+^fsƻڬQvxqD'RwzQOm@D 8'٩ 3rj⿘
endstream
endobj
@@ -29424,7 +29424,7 @@ endobj
/Filter /FlateDecode
>>
stream
-x1n0/ʀ! &HYj کC @9j1CNjKޠ{iˊs.y^,V\.x_ЉۜWH[KEԯ|9_do\g ƃHLd pLi'
+x1n0/ʀ! &HYj کC @9j1CNjKޠ{iˊs.y^,V\.x_ЉۜWH[KEԯ|9_do\g ƃHLd pLi'
endstream
endobj
1382 0 obj <<
@@ -31734,7 +31734,7 @@ endobj
/Filter /FlateDecode
>>
stream
-xڅбJ@YR#d^@7l 'BB+RgvE8X>Y؟/Η%YJyN^RaaB<oq]}|Fh[zxESJ3{
+xڅбJ@YR#d^@7l 'BB+RgvE8X>Y؟/Η%YJyN^RaaB<oq]}|Fh[zxESJ3{
1k!k/;f8qUڢsf"^xDŘ=
endstream
endobj
@@ -32367,7 +32367,7 @@ endobj
stream
x}J@ 0HsP輀nHLOZ=yBA=
*
-̣Q9P:v9} 3U5g|Zp5szn<iِ"w}r5}<[\pNn9gkjV,"VFZે
+̣Q9P:v9} 3U5g|Zp5szn<iِ"w}r5}<[\pNn9gkjV,"VFZે
endstream
endobj
1670 0 obj <<
@@ -32763,7 +32763,7 @@ endobj
stream
x331Q0P0bScSKCB.S
%E\N
-@QhX.O g``~
+@QhX.O g``~
endstream
endobj
1708 0 obj <<
@@ -33266,7 +33266,7 @@ endobj
>>
stream
x%1
-@@$|'0+AA),DQ<e`_췰&# L_MH.bڣ؟$I%ب$Xp ]z?Ju[>I:IUuO)Fh~!;:c̐ېዬQ֑)HpIH]RY#H[m(l2Oe-?uC
+@@$|'0+AA),DQ<e`_췰&# L_MH.bڣ؟$I%ب$Xp ]z?Ju[>I:IUuO)Fh~!;:c̐ېዬQ֑)HpIH]RY#H[m(l2Oe-?uC
endstream
endobj
1762 0 obj <<
diff --git a/plugins/org.eclipse.etrice.doc/doc/010-room-introduction.tex b/plugins/org.eclipse.etrice.doc/doc/010-room-introduction.tex
index e7dc13a..7e3f383 100644
--- a/plugins/org.eclipse.etrice.doc/doc/010-room-introduction.tex
+++ b/plugins/org.eclipse.etrice.doc/doc/010-room-introduction.tex
@@ -50,12 +50,12 @@ The relation between classical object oriented programming and ROOM is comparabl
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).
-\includegraphics{images/010-RoomIntroduction02.png}
+\includegraphics[width=0.8\textwidth]{images/010-RoomIntroduction02.png}
% !images/010-RoomIntroduction02.png!
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 *run to completion* semantic. That makes developing of business logic easy and safe (see basic concepts). The logical machine provides an encapsulation shell including concurrency issues (see chapter \textbf{Run to completion}).
-\includegraphics[width=\linewidth]{images/010-RoomIntroduction03.png}
+\includegraphics[width=0.8\textwidth]{images/010-RoomIntroduction03.png}
% !images/010-RoomIntroduction03.png!
This thinking of an object is much more general than the classic one.
@@ -121,12 +121,12 @@ The actor's behavior will be described with a state machine. A state in turn may
Top level:
-\includegraphics[width=\linewidth]{images/020-Blinky15.png}
+\includegraphics[width=0.8\textwidth]{images/020-Blinky15.png}
% !images/020-Blinky15.png!
\textit{blinking} Sub machine:
-\includegraphics[width=\linewidth]{images/020-Blinky151.png}
+\includegraphics[width=0.8\textwidth]{images/020-Blinky151.png}
% !images/020-Blinky151.png!
From an abstract point of view there is a state \textit{blinking}. 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.
diff --git a/plugins/org.eclipse.etrice.doc/doc/013-setting-up-the-workspace.tex b/plugins/org.eclipse.etrice.doc/doc/013-setting-up-the-workspace.tex
index c86175b..b5e964d 100644
--- a/plugins/org.eclipse.etrice.doc/doc/013-setting-up-the-workspace.tex
+++ b/plugins/org.eclipse.etrice.doc/doc/013-setting-up-the-workspace.tex
@@ -10,42 +10,42 @@ ETrice generates code out of ROOM models. The code generator and the generated c
Additionally some tutorial models will be provided to make it easy to start with eTrice. All this parts must be available in our workspace before you can start working. After installation of eclipse (juno) and the eTrice plug in, your workspace should look like this:
-\includegraphics[width=\linewidth]{images/013-SetupWorkspace01.png}
+\includegraphics[width=0.8\textwidth]{images/013-SetupWorkspace01.png}
% !images/013-SetupWorkspace01.png!
Just the \textit{eTrice} menu item is visible from the eTrice tool.
From the \textit{File} menu select \textbf{File->New->Project}
-\includegraphics[width=\linewidth]{images/013-SetupWorkspace02.png}
+\includegraphics[width=0.8\textwidth]{images/013-SetupWorkspace02.png}
% !images/013-SetupWorkspace02.png!
Open the \textit{eTrice} tab and select \textit{eTrice Java Runtime}
Press \textit{Next} and \textit{Finish} to install the Runtime into your workspace.
-\includegraphics[width=\linewidth]{images/013-SetupWorkspace03.png}
+\includegraphics[width=0.8\textwidth]{images/013-SetupWorkspace03.png}
% !images/013-SetupWorkspace03.png!
Do the same steps for \textit{eTrice Java Modellib} and \textit{eTrice Java Tutorials}. To avoid temporary error markers you should keep the proposed order of installation. The resulting workspace should look like this:
-\includegraphics[width=\linewidth]{images/013-SetupWorkspace04.png}
+\includegraphics[width=0.8\textwidth]{images/013-SetupWorkspace04.png}
% !images/013-SetupWorkspace04.png!
Now workspace is set up and you can perform the tutorials or start with your work.
The tutorial models are available in the \textit{org.eclipse.etrice.tutorials} project. All tutorials are ready to generate and run without any changes. To start the code generator simply run \textbf{gen\_org.eclipse.etrice.tutorials.launch} as \textbf{gen\_org.eclipse.etrice.tutorials.launch}:
-\includegraphics[width=\linewidth]{images/013-SetupWorkspace05.png}
+\includegraphics[width=0.8\textwidth]{images/013-SetupWorkspace05.png}
% !images/013-SetupWorkspace05.png!
After generation for each tutorial a java file called \textbf{SubSystem\_ModelnameRunner.java} is generated. To run the model simply run this file as a java application:
-\includegraphics[width=\linewidth]{images/013-SetupWorkspace06.png}
+\includegraphics[width=0.8\textwidth]{images/013-SetupWorkspace06.png}
% !images/013-SetupWorkspace06.png!
To stop the application type \textit{quit} in the console window.
-\includegraphics[width=\linewidth]{images/013-SetupWorkspace07.png}
+\includegraphics[width=0.8\textwidth]{images/013-SetupWorkspace07.png}
% !images/013-SetupWorkspace07.png!
Performing the tutorials will setup an dedicated project for each tutorial. Therefore there are some slight changes especially whenever a path must be set (e.g. to the model library) within your own projects. All this is described in the tutorials.
diff --git a/plugins/org.eclipse.etrice.doc/doc/015-getting-started.tex b/plugins/org.eclipse.etrice.doc/doc/015-getting-started.tex
index 95d5fa6..4970d26 100644
--- a/plugins/org.eclipse.etrice.doc/doc/015-getting-started.tex
+++ b/plugins/org.eclipse.etrice.doc/doc/015-getting-started.tex
@@ -18,7 +18,7 @@ Make sure that you have set up the workspace as described in \textit{Setting up
The easiest way to create a new eTrice Project is to use the eclipse project wizard. From the eclipse file menu select \textbf{File->New->Project} and create a new eTrice project and name it \textbf{HelloWorld}.
-\includegraphics[width=\linewidth]{images/015-HelloWorld10.png}
+\includegraphics[width=0.8\textwidth]{images/015-HelloWorld10.png}
% !images/015-HelloWorld10.png!
The wizard creates everything that is needed to create, build and run an eTrice model. The resulting project should look like this:
@@ -28,7 +28,7 @@ The wizard creates everything that is needed to create, build and run an eTrice
Within the model directory the model file \textit{HelloWorld.room} was created. Open the \textit{HelloWorld.room} file and delete the contents of the file. Open the content assist with Ctrl+Space and select \textit{model skeleton}.
-\includegraphics[width=\linewidth]{images/015-HelloWorld12.png}
+\includegraphics[width=0.8\textwidth]{images/015-HelloWorld12.png}
% !images/015-HelloWorld12.png!
Edit the template variables by typing the new names and jumping with Tab from name to name.
@@ -62,7 +62,7 @@ The \textit{LogicalSystem} represents the complete distributed system and contai
The outline view of the textual ROOM editor shows the main modeling elements in an easy to navigate tree.
-\includegraphics[width=\linewidth]{images/015-HelloWorld02.png}
+\includegraphics[width=0.8\textwidth]{images/015-HelloWorld02.png}
% !images/015-HelloWorld02.png!
@@ -81,12 +81,12 @@ The state machine editor will be opened. Drag and drop an \textit{Initial Point}
The result should look like this:
-\includegraphics[width=\linewidth]{images/015-HelloWorld04.png}
+\includegraphics[width=0.8\textwidth]{images/015-HelloWorld04.png}
% !images/015-HelloWorld04.png!
Save the diagram and inspect the model file. Note that the textual representation was created after saving the diagram.
-\includegraphics[width=\linewidth]{images/015-HelloWorld05.png}
+\includegraphics[width=0.8\textwidth]{images/015-HelloWorld05.png}
% !images/015-HelloWorld05.png!
@@ -94,7 +94,7 @@ Save the diagram and inspect the model file. Note that the textual representatio
Now the model is finished and source code can be generated. The project wizard has created a launch configuration that is responsible for generating the source code. From \textit{HelloWorld/} right click \textbf{gen\_HelloWorld.launch} and run it as gen\_HelloWorld. All model files in the model directory will be generated.
-\includegraphics[width=\linewidth]{images/015-HelloWorld06.png}
+\includegraphics[width=0.8\textwidth]{images/015-HelloWorld06.png}
% !images/015-HelloWorld06.png!
The code will be generated to the src-gen directory. The main function will be contained in \textbf{SubSystem\_HelloWorldRunner.java}. Select this file and run it as Java application.
@@ -105,14 +105,14 @@ The code will be generated to the src-gen directory. The main function will be c
The Hello World application starts and the string will be printed on the console window. To stop the application the user must type \textbf{quit} in the console window.
-\includegraphics[width=\linewidth]{images/015-HelloWorld08.png}
+\includegraphics[width=0.8\textwidth]{images/015-HelloWorld08.png}
% !images/015-HelloWorld08.png!
\section{Open the Message Sequence Chart}
During runtime the application produced a MSC and wrote it to a file. Open HelloWorld/tmp/log/SubSystem\_HelloWorld\_Async.seq using Trace2UML (it is open source and can be obtained from http://trace2uml.tigris.org/). You should see something like this:
-\includegraphics[width=\linewidth]{images/015-HelloWorld09.png}
+\includegraphics[width=0.8\textwidth]{images/015-HelloWorld09.png}
% !images/015-HelloWorld09.png!
diff --git a/plugins/org.eclipse.etrice.doc/doc/020-tutorial-blinky.tex b/plugins/org.eclipse.etrice.doc/doc/020-tutorial-blinky.tex
index aa64161..6543b12 100644
--- a/plugins/org.eclipse.etrice.doc/doc/020-tutorial-blinky.tex
+++ b/plugins/org.eclipse.etrice.doc/doc/020-tutorial-blinky.tex
@@ -58,12 +58,12 @@ RoomModel Blinky {
Position the cursor outside any class definition and right click the mouse within the editor window. From the context menu select \textit{Content Assist}
-\includegraphics[width=\linewidth]{images/020-Blinky02.png}
+\includegraphics[width=0.8\textwidth]{images/020-Blinky02.png}
% !images/020-Blinky02.png!
Select \textit{ActorClass - actor class skeleton} and name it \textit{Blinky}.
-\includegraphics[width=\linewidth]{images/020-Blinky01.png}
+\includegraphics[width=0.8\textwidth]{images/020-Blinky01.png}
% !images/020-Blinky01.png!
Repeat the described procedure and name the new actor \textit{BlinkyController}.
@@ -79,7 +79,7 @@ Inside the brackets use the \textit{Content Assist} (CTRL+Space) to create two i
The resulting code should look like this:
-\includegraphics[width=\linewidth]{images/020-Blinky03.png}
+\includegraphics[width=0.8\textwidth]{images/020-Blinky03.png}
% !images/020-Blinky03.png!
With Ctrl-Shift+F or selecting \textit{Format} from the context menu you can format the text. Note that all elements are displayed in the outline view.
@@ -91,7 +91,7 @@ Switching on and off the LED is timing controlled. The timing service is provide
This is the first time you use an element from the modellib. Make sure that your Java Build Path has the appropriate entry to the modellib. Otherwise the jave code, which will be generated from the modellib, can not be referenced.
(right click to \textit{Blinky} and select properties. Select the \textit{Java Build Path} tab)
-\includegraphics[width=\linewidth]{images/020-Blinky16.png}
+\includegraphics[width=0.8\textwidth]{images/020-Blinky16.png}
% !images/020-Blinky16.png!
After the build path is set up return to the model and navigate the cursor at the beginning of the model and import the timing service:
@@ -115,7 +115,7 @@ Make sure that the path fits to your folder structure. The original tutorial cod
Now it can be used within the model. Right click to \textbf{SubSystem\_Blinky} within the outline view. Select \textit{Edit Structure}. The \textit{application} is already referenced in the subsystem. Drag and Drop an \textit{ActorRef} to the \textbf{SubSystem\_Blinky} and name it \textit{timingService}. From the actor class drop down list select \textit{room.basic.service.timing.ATimingService}. Draw a \textit{LayerConnection} from \textit{application} to each service provision point (SPP) of the \textit{timingService}. The resulting structure should look like this:
-\includegraphics[width=\linewidth]{images/020-Blinky06.png}
+\includegraphics[width=0.8\textwidth]{images/020-Blinky06.png}
% !images/020-Blinky06.png!
The current version of eTrice does not provide a graphical element for a service access point (SAP). Therefore the SAPs to access the timing service must be added in the .room file. Open the \textit{Blinky.room} file and navigate to the \textit{Blinky} actor. Add the following line to the structure of the actor:
@@ -126,7 +126,7 @@ Do the same thing for \textit{BlinkyController}.
The resulting code should look like this:
-\includegraphics[width=\linewidth]{images/020-Blinky07.png}
+\includegraphics[width=0.8\textwidth]{images/020-Blinky07.png}
% !images/020-Blinky07.png!
@@ -134,7 +134,7 @@ The resulting code should look like this:
From the outline view right click to \textit{Blinky} and select \textit{Edit Structure}. Drag and Drop an \textit{Interface Port} to the boarder of the \textit{Blinky} actor. Note that an interface port is not possible inside the actor. Name the port \textit{ControlPort} and select \textit{BlinkyControlProtocol} from the drop down list. Uncheck \textit{Conjugated} and \textit{Is Relay Port}. Click \textit{ok}. The resulting structure should look like this:
-\includegraphics[width=\linewidth]{images/020-Blinky04.png}
+\includegraphics[width=0.8\textwidth]{images/020-Blinky04.png}
% !images/020-Blinky04.png!
Repeat the above steps for the \textit{BlinkyController}. Make the port \textit{Conjugated}
@@ -146,7 +146,7 @@ From the outline view right click \textit{BlinkyTop} and select \textit{Edit Str
Drag and Drop an \textit{ActorRef} inside the \textit{BlinkyTop} actor. Name it \textit{blinky}. From the actor class drop down list select \textit{Blinky}. Do the same for \textit{controller}. Connect the ports via the binding tool. The resulting structure should look like this:
-\includegraphics[width=\linewidth]{images/020-Blinky05.png}
+\includegraphics[width=0.8\textwidth]{images/020-Blinky05.png}
% !images/020-Blinky05.png!
\section{Implement the Behavior}
@@ -161,7 +161,7 @@ Open the transition dialog by double click the arrow to specify the trigger even
The transition dialog should look like this:
-\includegraphics[width=\linewidth]{images/020-Blinky09.png}
+\includegraphics[width=0.8\textwidth]{images/020-Blinky09.png}
% !{width=500px}images/020-Blinky09.png!
The defined ports will be generated as a member attribute of the actor class from type of the attached protocol. So, to send e message you must state \textit{port.message(param);}. In this example \textit{ControlPort.start()} sends the \textit{start} message via the \textit{ControlPort} to the outside world. Assuming that \textit{Blinky} is connected to this port, the message will start the one second blinking FSM. It is the same thing with the \textit{timer}. The SAP is also a port and follows the same rules. So it is clear that \textit{timer.Start(5000);} will send the \textit{Start} message to the timing service. The timing service will send a \textit{timeoutTick} message back after 5000ms.
@@ -171,12 +171,12 @@ Within each transition the timer will be restarted and the appropriate message w
The resulting state machine should look like this:
(Note that the arrows peak changes if the transition contains action code.)
-\includegraphics[width=\linewidth]{images/020-Blinky10.png}
+\includegraphics[width=0.8\textwidth]{images/020-Blinky10.png}
% !images/020-Blinky10.png!
Save the diagram and inspect the \textit{Blinky.room} file. The \textit{BlinkyController} should look like this:
-\includegraphics[width=\linewidth]{images/020-Blinky11.png}
+\includegraphics[width=0.8\textwidth]{images/020-Blinky11.png}
% !images/020-Blinky11.png!
Now we will implement \textit{Blinky}. Due to the fact that \textit{Blinky} interacts with the GUI class a view things must to be done in the model file.
@@ -185,7 +185,7 @@ Double click \textit{Blinky} in the outline view to navigate to \textit{Blinky}
Add the following code:
(type it or simply copy it from the tutorial project)
-\includegraphics[width=\linewidth]{images/020-Blinky12.png}
+\includegraphics[width=0.8\textwidth]{images/020-Blinky12.png}
% !images/020-Blinky12.png!
\textit{usercode1} will be generated at the beginning of the file, outside the class definition. \textit{usercode2} will be generated within the class definition. The code imports the GUI class and instantiates the window class. Attributes for the carLights and pedLights will be declared to easily access the lights in the state machine.
@@ -195,12 +195,12 @@ Now design the FSM of \textit{Blinky}. Remember, as the name suggested \textit{b
Open the behavior diagram of \textit{Blinky} by right clicking the \textit{Blinky} actor in the outline view. Create two states named \textit{blinking} and \textit{off}. Right click to \textit{blinking} and create a subgraph.
-\includegraphics[width=\linewidth]{images/020-Blinky13.png}
+\includegraphics[width=0.8\textwidth]{images/020-Blinky13.png}
% !images/020-Blinky13.png!
Create the following state machine. The trigger events between \textit{on} and \textit{off} are the \textit{timeoutTick} from the \textit{timer} port.
-\includegraphics[width=\linewidth]{images/020-Blinky14.png}
+\includegraphics[width=0.8\textwidth]{images/020-Blinky14.png}
% !images/020-Blinky14.png!
Create entry code for both states by right clicking the state and select \textit{Edit State...}
@@ -222,7 +222,7 @@ carLights.setState(TrafficLight3.OFF);
Navigate to the Top level state by double clicking the \textit{/blinking} state. Create the following state machine:
-\includegraphics[width=\linewidth]{images/020-Blinky15.png}
+\includegraphics[width=0.8\textwidth]{images/020-Blinky15.png}
% !images/020-Blinky15.png!
The trigger event from \textit{off} to \textit{blinking} is the \textit{start} event from the \textit{ControlPort}.The trigger event from \textit{blinking} to \textit{off} is the \textit{stop} event from the \textit{ControlPort}.
diff --git a/plugins/org.eclipse.etrice.doc/doc/025-tutorial-sending-data.tex b/plugins/org.eclipse.etrice.doc/doc/025-tutorial-sending-data.tex
index 89e0db7..1fe9029 100644
--- a/plugins/org.eclipse.etrice.doc/doc/025-tutorial-sending-data.tex
+++ b/plugins/org.eclipse.etrice.doc/doc/025-tutorial-sending-data.tex
@@ -40,7 +40,7 @@ RoomModel SendingData {
Position the cursor outside any class definition and right click the mouse within the editor window. From the context menu select \textit{Content Assist} (or Ctrl+Space).
-\includegraphics[width=\linewidth]{images/025-SendingData01.png}
+\includegraphics[width=0.8\textwidth]{images/025-SendingData01.png}
% !images/025-SendingData01.png!
Select \textit{DataClass - data class skeleton} and name it \textit{DemoData}.
@@ -134,7 +134,7 @@ The outline view should look like this:
Save the model and visit the outline view. Within the outline view, right click on the \textit{MrPong} actor and select \textit{Edit Structure}. Select an \textit{Interface Port} from the toolbox and add it to MrPong. Name the Port \textit{PingPongPort} and select the \textit{PingPongProtocol}.
-\includegraphics[width=\linewidth]{images/025-SendingData02.png}
+\includegraphics[width=0.8\textwidth]{images/025-SendingData02.png}
% !images/025-SendingData02.png!
Do the same with MrPing but mark the port as \textit{conjugated}
@@ -143,18 +143,18 @@ Do the same with MrPing but mark the port as \textit{conjugated}
Within the outline view, right click MrPong and select \textit{Edit Behavior}. Create the following state machine:
-\includegraphics[width=\linewidth]{images/025-SendingData04.png}
+\includegraphics[width=0.8\textwidth]{images/025-SendingData04.png}
% !images/025-SendingData04.png!
The transition dialogues should look like this:
For \textit{ping}:
-\includegraphics[width=\linewidth]{images/025-SendingData05.png}
+\includegraphics[width=0.8\textwidth]{images/025-SendingData05.png}
% !images/025-SendingData05.png!
For \textit{pingSimple}:
-\includegraphics[width=\linewidth]{images/025-SendingData06.png}
+\includegraphics[width=0.8\textwidth]{images/025-SendingData06.png}
% !images/025-SendingData06.png!
@@ -162,7 +162,7 @@ For \textit{pingSimple}:
Within the outline view double click MrPing. Navigate the cursor to the behavior of MrPing. With the help of content assist create a new operation.
-\includegraphics[width=\linewidth]{images/025-SendingData07.png}
+\includegraphics[width=0.8\textwidth]{images/025-SendingData07.png}
% !images/025-SendingData07.png!
Name the operation \textit{printData} and define the DemoData as a parameter.
@@ -185,36 +185,36 @@ Operation printData(d: DemoData) : void {
For MrPing create the following state machine:
(Remember that you can copy and paste the action code from the tutorial directory.)
-\includegraphics[width=\linewidth]{images/025-SendingData08.png}
+\includegraphics[width=0.8\textwidth]{images/025-SendingData08.png}
% !images/025-SendingData08.png!
The transition dialogues should look like this:
For \textit{init}:
-\includegraphics[width=\linewidth]{images/025-SendingData09.png}
+\includegraphics[width=0.8\textwidth]{images/025-SendingData09.png}
% !images/025-SendingData09.png!
For \textit{wait1}:
-\includegraphics[width=\linewidth]{images/025-SendingData10.png}
+\includegraphics[width=0.8\textwidth]{images/025-SendingData10.png}
% !images/025-SendingData10.png!
For \textit{next}:
-\includegraphics[width=\linewidth]{images/025-SendingData11.png}
+\includegraphics[width=0.8\textwidth]{images/025-SendingData11.png}
% !images/025-SendingData11.png!
For \textit{wait2}:
-\includegraphics[width=\linewidth]{images/025-SendingData12.png}
+\includegraphics[width=0.8\textwidth]{images/025-SendingData12.png}
% !images/025-SendingData12.png!
\section{Define the top level}
Open the Structure from SendingDataTop and add MrPing and MrPong as a reference. Connect the ports.
-\includegraphics[width=\linewidth]{images/025-SendingData13.png}
+\includegraphics[width=0.8\textwidth]{images/025-SendingData13.png}
% !images/025-SendingData13.png!
\begin{flushleft}The model is finished now and can be found in /org.eclipse.etrice.tutorials/model/SendingData.\end{flushleft}
diff --git a/plugins/org.eclipse.etrice.doc/doc/030-tutorial-ped-lights.tex b/plugins/org.eclipse.etrice.doc/doc/030-tutorial-ped-lights.tex
index 20d4884..203a37b 100644
--- a/plugins/org.eclipse.etrice.doc/doc/030-tutorial-ped-lights.tex
+++ b/plugins/org.eclipse.etrice.doc/doc/030-tutorial-ped-lights.tex
@@ -46,15 +46,15 @@ import room.basic.service.timing.* from
\item Arrange the Structure and the Statemachines to understand the model
\end{itemize}
-\includegraphics[width=\linewidth]{images/030-PedLights01.png}
+\includegraphics[width=0.8\textwidth]{images/030-PedLights01.png}
% !images/030-PedLights01.png!
The \textit{GuiAdapter} represents the interface to the external code. It registers its \textit{ControlPort} by the external code.
-\includegraphics[width=\linewidth]{images/030-PedLights02.png}
+\includegraphics[width=0.8\textwidth]{images/030-PedLights02.png}
% !images/030-PedLights02.png!
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.
-\includegraphics[width=\linewidth]{images/030-PedLights03.png}
+\includegraphics[width=0.8\textwidth]{images/030-PedLights03.png}
% !images/030-PedLights03.png!
The \textit{Controller} receives the \textit{start} message and controls the timing of the lights. Note that the \textit{start} message will be sent from the external code whenever the \textit{REQUEST} button is pressed.
@@ -70,7 +70,7 @@ The \textit{Controller} receives the \textit{start} message and controls the tim
\item Take a look at the generated MSC => notice that the start message will shown as if the \textit{GuiAdapter} had sent it.
\end{itemize}
-\includegraphics[width=\linewidth]{images/030-PedLights04.png}
+\includegraphics[width=0.8\textwidth]{images/030-PedLights04.png}
% !images/030-PedLights04.png!
\section{Why does it work and why is it safe?}
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
index 7aa3fb8..88ee34b 100644
--- 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
@@ -3,8 +3,8 @@
Before you can start with C, some preconditions must be fulfilled:
\begin{description}
-- A C compiler must be installed on your machine (all tests and tutorials are based on MinGW)
-- The CDT-Eclipse plug in must be installed as the C development environment.
+\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.
@@ -18,8 +18,7 @@ The resulting workspace should look like this:
\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.
+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!
@@ -37,7 +36,7 @@ Name the project. Select an \textit{Executable->Hello World ANSI C} as project t
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!
+% !images/032-SetupWorkspaceC05.png!
The binary should be generated. Run the binary as \textit{Local C/C++ Application}.
@@ -54,20 +53,22 @@ Remember these steps. In the following Tutorials these steps will be referenced
\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 _src/config_.
+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 _Includes}.
+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
-_src/config_
-_src/common_
-_src/platforms/generic_
+\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}
diff --git a/plugins/org.eclipse.etrice.doc/doc/034-getting-started_c.tex b/plugins/org.eclipse.etrice.doc/doc/034-getting-started_c.tex
index 3322dd2..eca96d3 100644
--- a/plugins/org.eclipse.etrice.doc/doc/034-getting-started_c.tex
+++ b/plugins/org.eclipse.etrice.doc/doc/034-getting-started_c.tex
@@ -35,7 +35,7 @@ The workspace should look like this:
% !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 _model}.
+Right click on the new project. Select \textit{New->Folder} and name it \textit{model}.
\includegraphics{images/034-HelloWorldC02.png}
% !images/034-HelloWorldC02.png!
@@ -128,7 +128,7 @@ Apply your changes. The new configuration should now exist in your workspace.
\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 _gen_HelloWorldC_.
+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!
diff --git a/plugins/org.eclipse.etrice.doc/doc/036-tutorial-remove-comment_c.tex b/plugins/org.eclipse.etrice.doc/doc/036-tutorial-remove-comment_c.tex
index c8383f3..4c05ce8 100644
--- a/plugins/org.eclipse.etrice.doc/doc/036-tutorial-remove-comment_c.tex
+++ b/plugins/org.eclipse.etrice.doc/doc/036-tutorial-remove-comment_c.tex
@@ -89,17 +89,17 @@ Try to create the model by yourself and take the following solution as an exampl
Structure:
-\includegraphics[width=\linewidth]{images/036-RemoveCommentC04.png}
+\includegraphics[width=0.8\textwidth]{images/036-RemoveCommentC04.png}
% !images/036-RemoveCommentC04.png!
File reader FSM:
-\includegraphics[width=\linewidth]{images/036-RemoveCommentC05.png}
+\includegraphics[width=0.8\textwidth]{images/036-RemoveCommentC05.png}
% !images/036-RemoveCommentC05.png!
Parser FSM:
-\includegraphics[width=\linewidth]{images/036-RemoveCommentC06.png}
+\includegraphics[width=0.8\textwidth]{images/036-RemoveCommentC06.png}
% !images/036-RemoveCommentC06.png!
The complete model can be found in \textit{org.eclipse.etrice.tutorials.c}
@@ -124,7 +124,7 @@ Generate, build and run the model.
Your output should start like this:
-\includegraphics[width=\linewidth]{images/036-RemoveCommentC08.png}
+\includegraphics[width=0.8\textwidth]{images/036-RemoveCommentC08.png}
% !images/036-RemoveCommentC08.png!
diff --git a/plugins/org.eclipse.etrice.doc/doc/043-layout-with-kieler.tex b/plugins/org.eclipse.etrice.doc/doc/043-layout-with-kieler.tex
index 2313635..09c65bb 100644
--- a/plugins/org.eclipse.etrice.doc/doc/043-layout-with-kieler.tex
+++ b/plugins/org.eclipse.etrice.doc/doc/043-layout-with-kieler.tex
@@ -37,7 +37,7 @@ User-configurable layout options for a particular diagram object can be viewed a
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 below:
-\includegraphics[width=\linewidth]{images/043-LayoutOptionDescription.png}
+\includegraphics[width=0.8\textwidth]{images/043-LayoutOptionDescription.png}
% !images/043-LayoutOptionDescription.png!
\section{\label{configureOptions}Configuring Layout Options}
@@ -48,7 +48,7 @@ The values of the layout options for a particular diagram object (in the visible
\subsection{\label{layoutView}The Layout View}
% h3(#layoutView). The Layout View
-\includegraphics[width=\linewidth]{images/043-LayoutView.png}
+\includegraphics[width=0.8\textwidth]{images/043-LayoutView.png}
% !images/043-LayoutView.png!
The Layout view 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 (*.structure file / *.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.
@@ -61,7 +61,7 @@ The most important option is Layout Algorithm, which is used to determine the la
Selecting Restore Default Value in the context menu or the view toolbar 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.
-\includegraphics[width=\linewidth]{images/043-ContextMenu.png}
+\includegraphics[width=0.8\textwidth]{images/043-ContextMenu.png}
% !images/043-ContextMenu.png!
The context menu for a specific layout option has different alternatives to set the currently active value as \textbf{default} value:
@@ -111,7 +111,7 @@ The \textit{Default Layout Option Values} table is used to manage the default se
Creating a new entry requires the selection of the type of related element 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.
-\includegraphics[width=\linewidth]{images/043-PreferencePage.png}
+\includegraphics[width=0.8\textwidth]{images/043-PreferencePage.png}
% !images/043-PreferencePage.png!
Note that the \textit{Behavior} 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 \textit{Structure} preference page.
diff --git a/plugins/org.eclipse.etrice.doc/doc/080-etrice-models.tex b/plugins/org.eclipse.etrice.doc/doc/080-etrice-models.tex
index 4adbc9f..eb1d497 100644
--- a/plugins/org.eclipse.etrice.doc/doc/080-etrice-models.tex
+++ b/plugins/org.eclipse.etrice.doc/doc/080-etrice-models.tex
@@ -28,7 +28,7 @@ Let's consider a simple example. It doesn't implement any meaningful and complet
When a \texttt{LogicalSstem} is instantiated then recursively all of the contained referenced elements are instantiated as instances of the corresponding class. Thus the instance tree of above example looks like this (the third line in the white boxes shows some mapping information, s.b.):
-\includegraphics[scale=0.35]{images/080-instances.jpg}
+\includegraphics[scale=0.45]{images/080-instances.jpg}
% !{width:40%}images/080-instances.jpg!
diff --git a/plugins/org.eclipse.etrice.doc/doc/etrice-doc.tex b/plugins/org.eclipse.etrice.doc/doc/etrice-doc.tex
index d0c735d..42d7010 100644
--- a/plugins/org.eclipse.etrice.doc/doc/etrice-doc.tex
+++ b/plugins/org.eclipse.etrice.doc/doc/etrice-doc.tex
@@ -1,8 +1,10 @@
\documentclass[a4paper,oneside,10pt]{book}
+\usepackage[portrait,a4paper,margin=3.0cm,headsep=5mm]{geometry}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{longtable}
-\usepackage[urlcolor=blue]{hyperref}
+\usepackage{hyperref}
+\hypersetup{hidelinks}
\usepackage{array}
\usepackage{graphicx}
\setlength{\parindent}{0pt}
@@ -29,8 +31,8 @@
\include{020-tutorial-blinky}
\include{025-tutorial-sending-data}
\include{030-tutorial-ped-lights}
-\include{032-setting-up-the-workspace-c}
-\include{034-getting-started-c}
+\include{032-setting-up-the-workspace_c}
+\include{034-getting-started_c}
\include{036-tutorial-remove-comment_c}
\include{040-room-concepts}
\include{043-layout-with-kieler}
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-doc.html b/plugins/org.eclipse.etrice.doc/html/etrice-doc.html
index b325f75..938ea1d 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-doc.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-doc.html
@@ -10,17 +10,15 @@
<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-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41: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
@@ -29,14 +27,12 @@ class="ecrm-1200">Thomas Sch</span><span
class="ecrm-1200">tz</span></div>
<br />
<div class="date" ><span
-class="ecrm-1200">March 25, 2013</span></div>
-
-
-
+class="ecrm-1200">March 26, 2013</span></div>
+
+
</div>
-
-
-
+
+
<div class="tableofcontents">
<span class="likechapterToc" ><a
href="etrice-docli1.html#x2-1000" id="QQ2-2-1">Contents</a></span>
@@ -98,9 +94,6 @@ href="etrice-docse20.html#x29-430007.1" id="QQ2-29-44">Scope</a></span>
href="etrice-docse21.html#x30-440007.2" id="QQ2-30-45">Create a new model from scratch</a></span>
<br />&#x00A0;<span class="sectionToc" >7.3 <a
href="etrice-docse22.html#x31-450007.3" id="QQ2-31-46">Add a data class</a></span>
-
-
-
<br />&#x00A0;<span class="sectionToc" >7.4 <a
href="etrice-docse23.html#x32-460007.4" id="QQ2-32-47">Create a new protocol</a></span>
<br />&#x00A0;<span class="sectionToc" >7.5 <a
@@ -109,6 +102,8 @@ href="etrice-docse24.html#x33-470007.5" id="QQ2-33-48">Create MrPing and MrPong
href="etrice-docse25.html#x34-480007.6" id="QQ2-34-49">Define Actor Structure and Behavior</a></span>
<br />&#x00A0;<span class="sectionToc" >7.7 <a
href="etrice-docse26.html#x35-510007.7" id="QQ2-35-52">Define the top level</a></span>
+
+
<br />&#x00A0;<span class="sectionToc" >7.8 <a
href="etrice-docse27.html#x36-520007.8" id="QQ2-36-53">Generate and run the model</a></span>
<br />&#x00A0;<span class="sectionToc" >7.9 <a
@@ -122,143 +117,156 @@ href="etrice-docse30.html#x40-560008.2" id="QQ2-40-57">Setup the model</a></span
<br />&#x00A0;<span class="sectionToc" >8.3 <a
href="etrice-docse31.html#x41-570008.3" id="QQ2-41-58">Why does it work and why is it safe?</a></span>
<br /><span class="chapterToc" >9 <a
-href="etrice-docch9.html#x42-580009" id="QQ2-42-59">Tutorial Remove C-Comment ( C )</a></span>
+href="etrice-docch9.html#x42-580009" id="QQ2-42-59">Setting up the Workspace for C Projects</a></span>
<br />&#x00A0;<span class="sectionToc" >9.1 <a
-href="etrice-docse32.html#x43-590009.1" id="QQ2-43-60">Scope</a></span>
+href="etrice-docse32.html#x43-590009.1" id="QQ2-43-60">Testing the environment</a></span>
<br />&#x00A0;<span class="sectionToc" >9.2 <a
-href="etrice-docse33.html#x44-600009.2" id="QQ2-44-61">Create a new model from scratch</a></span>
-<br />&#x00A0;<span class="sectionToc" >9.3 <a
-href="etrice-docse34.html#x45-610009.3" id="QQ2-45-62">Create your own data type</a></span>
-<br />&#x00A0;<span class="sectionToc" >9.4 <a
-href="etrice-docse35.html#x46-620009.4" id="QQ2-46-63">Create the model</a></span>
-<br />&#x00A0;<span class="sectionToc" >9.5 <a
-href="etrice-docse36.html#x47-630009.5" id="QQ2-47-64">Generate, build and run the model</a></span>
-<br />&#x00A0;<span class="sectionToc" >9.6 <a
-href="etrice-docse37.html#x48-640009.6" id="QQ2-48-65">Summary</a></span>
+href="etrice-docse33.html#x44-600009.2" id="QQ2-44-61">Building the C runtime system</a></span>
<br /><span class="chapterToc" >10 <a
-href="etrice-docch10.html#x49-6500010" id="QQ2-49-66">ROOM Concepts</a></span>
+href="etrice-docch10.html#x45-6100010" id="QQ2-45-62">Tutorial HelloWorld for C</a></span>
<br />&#x00A0;<span class="sectionToc" >10.1 <a
-href="etrice-docse38.html#x50-6600010.1" id="QQ2-50-67">Actors</a></span>
+href="etrice-docse34.html#x46-6200010.1" id="QQ2-46-63">Scope</a></span>
<br />&#x00A0;<span class="sectionToc" >10.2 <a
-href="etrice-docse39.html#x51-7400010.2" id="QQ2-51-77">Protocols</a></span>
+href="etrice-docse35.html#x47-6300010.2" id="QQ2-47-64">Create a new model from scratch</a></span>
<br />&#x00A0;<span class="sectionToc" >10.3 <a
-href="etrice-docse40.html#x52-7800010.3" id="QQ2-52-81">Ports</a></span>
+href="etrice-docse36.html#x48-6400010.3" id="QQ2-48-65">Create the HelloWorld model</a></span>
<br />&#x00A0;<span class="sectionToc" >10.4 <a
-href="etrice-docse41.html#x53-8400010.4" id="QQ2-53-89">DataClass</a></span>
+href="etrice-docse37.html#x49-6500010.4" id="QQ2-49-66">Create a launch configuration to start the C code generator</a></span>
<br />&#x00A0;<span class="sectionToc" >10.5 <a
-href="etrice-docse42.html#x54-8700010.5" id="QQ2-54-92">Layering</a></span>
+href="etrice-docse38.html#x50-6600010.5" id="QQ2-50-67">Generate the code</a></span>
<br />&#x00A0;<span class="sectionToc" >10.6 <a
-href="etrice-docse43.html#x55-9000010.6" id="QQ2-55-95">Finite State Machines</a></span>
+href="etrice-docse39.html#x51-6700010.6" id="QQ2-51-68">Setup the include path</a></span>
+<br />&#x00A0;<span class="sectionToc" >10.7 <a
+href="etrice-docse40.html#x52-6800010.7" id="QQ2-52-69">Build and run the model</a></span>
+<br />&#x00A0;<span class="sectionToc" >10.8 <a
+href="etrice-docse41.html#x53-6900010.8" id="QQ2-53-70">Summary</a></span>
<br /><span class="chapterToc" >11 <a
-href="etrice-docch11.html#x56-9900011" id="QQ2-56-106">Automatic Diagram Layout with KIELER</a></span>
+href="etrice-docch11.html#x54-7000011" id="QQ2-54-71">Tutorial Remove C-Comment ( C )</a></span>
<br />&#x00A0;<span class="sectionToc" >11.1 <a
-href="etrice-docse44.html#x57-10000011.1" id="QQ2-57-107">Overview</a></span>
+href="etrice-docse42.html#x55-7100011.1" id="QQ2-55-72">Scope</a></span>
<br />&#x00A0;<span class="sectionToc" >11.2 <a
-href="etrice-docse45.html#x58-10100011.2" id="QQ2-58-108">Performing Automatic Layout</a></span>
+href="etrice-docse43.html#x56-7200011.2" id="QQ2-56-73">Create a new model from scratch</a></span>
<br />&#x00A0;<span class="sectionToc" >11.3 <a
-href="etrice-docse46.html#x59-10200011.3" id="QQ2-59-109">Layout Options</a></span>
+href="etrice-docse44.html#x57-7300011.3" id="QQ2-57-74">Create your own data type</a></span>
<br />&#x00A0;<span class="sectionToc" >11.4 <a
-href="etrice-docse47.html#x60-10300011.4" id="QQ2-60-110">Configuring Layout Options</a></span>
+href="etrice-docse45.html#x58-7400011.4" id="QQ2-58-75">Create the model</a></span>
<br />&#x00A0;<span class="sectionToc" >11.5 <a
-href="etrice-docse48.html#x61-10800011.5" id="QQ2-61-115">Special Layout Options</a></span>
+href="etrice-docse46.html#x59-7500011.5" id="QQ2-59-76">Generate, build and run the model</a></span>
<br />&#x00A0;<span class="sectionToc" >11.6 <a
-href="etrice-docse49.html#x62-11100011.6" id="QQ2-62-118">Further References</a></span>
+href="etrice-docse47.html#x60-7600011.6" id="QQ2-60-77">Summary</a></span>
<br /><span class="chapterToc" >12 <a
-href="etrice-docch12.html#x63-11200012" id="QQ2-63-119">eTrice Features</a></span>
+href="etrice-docch12.html#x61-7700012" id="QQ2-61-78">ROOM Concepts</a></span>
<br />&#x00A0;<span class="sectionToc" >12.1 <a
-href="etrice-docse50.html#x64-11300012.1" id="QQ2-64-120">Codegenerators</a></span>
+href="etrice-docse48.html#x62-7800012.1" id="QQ2-62-79">Actors</a></span>
+<br />&#x00A0;<span class="sectionToc" >12.2 <a
+href="etrice-docse49.html#x63-8600012.2" id="QQ2-63-89">Protocols</a></span>
+<br />&#x00A0;<span class="sectionToc" >12.3 <a
+href="etrice-docse50.html#x64-9000012.3" id="QQ2-64-93">Ports</a></span>
+<br />&#x00A0;<span class="sectionToc" >12.4 <a
+href="etrice-docse51.html#x65-9600012.4" id="QQ2-65-101">DataClass</a></span>
+<br />&#x00A0;<span class="sectionToc" >12.5 <a
+href="etrice-docse52.html#x66-9900012.5" id="QQ2-66-104">Layering</a></span>
+<br />&#x00A0;<span class="sectionToc" >12.6 <a
+href="etrice-docse53.html#x67-10200012.6" id="QQ2-67-107">Finite State Machines</a></span>
<br /><span class="chapterToc" >13 <a
-href="etrice-docch13.html#x65-11700013" id="QQ2-65-124">Codegenerators</a></span>
+href="etrice-docch13.html#x68-11100013" id="QQ2-68-118">Automatic Diagram Layout with KIELER</a></span>
+<br />&#x00A0;<span class="sectionToc" >13.1 <a
+href="etrice-docse54.html#x69-11200013.1" id="QQ2-69-119">Overview</a></span>
+<br />&#x00A0;<span class="sectionToc" >13.2 <a
+href="etrice-docse55.html#x70-11300013.2" id="QQ2-70-120">Performing Automatic Layout</a></span>
+<br />&#x00A0;<span class="sectionToc" >13.3 <a
+href="etrice-docse56.html#x71-11400013.3" id="QQ2-71-121">Layout Options</a></span>
+<br />&#x00A0;<span class="sectionToc" >13.4 <a
+href="etrice-docse57.html#x72-11500013.4" id="QQ2-72-122">Configuring Layout Options</a></span>
+<br />&#x00A0;<span class="sectionToc" >13.5 <a
+href="etrice-docse58.html#x73-12000013.5" id="QQ2-73-127">Special Layout Options</a></span>
+<br />&#x00A0;<span class="sectionToc" >13.6 <a
+href="etrice-docse59.html#x74-12300013.6" id="QQ2-74-130">Further References</a></span>
<br /><span class="chapterToc" >14 <a
-href="etrice-docch14.html#x66-11800014" id="QQ2-66-125">Runtimes</a></span>
+href="etrice-docch14.html#x75-12400014" id="QQ2-75-131">eTrice Features</a></span>
+<br />&#x00A0;<span class="sectionToc" >14.1 <a
+href="etrice-docse60.html#x76-12500014.1" id="QQ2-76-132">Codegenerators</a></span>
<br /><span class="chapterToc" >15 <a
-href="etrice-docch15.html#x67-11900015" id="QQ2-67-126">eTrice Models and Their Relations</a></span>
-<br />&#x00A0;<span class="sectionToc" >15.1 <a
-href="etrice-docse51.html#x68-12000015.1" id="QQ2-68-127">The ROOM Model</a></span>
-
-
-
-<br />&#x00A0;<span class="sectionToc" >15.2 <a
-href="etrice-docse52.html#x69-12100015.2" id="QQ2-69-128">The Config Model</a></span>
-<br />&#x00A0;<span class="sectionToc" >15.3 <a
-href="etrice-docse53.html#x70-12200015.3" id="QQ2-70-129">The Physical Model</a></span>
-<br />&#x00A0;<span class="sectionToc" >15.4 <a
-href="etrice-docse54.html#x71-12300015.4" id="QQ2-71-130">The Mapping Model</a></span>
+href="etrice-docch15.html#x77-12900015" id="QQ2-77-136">Codegenerators</a></span>
+
+
<br /><span class="chapterToc" >16 <a
-href="etrice-docch16.html#x72-12400016" id="QQ2-72-131">eTrice Developer&#8217;s Reference</a></span>
-<br />&#x00A0;<span class="sectionToc" >16.1 <a
-href="etrice-docse55.html#x73-12500016.1" id="QQ2-73-132">Architecture</a></span>
-<br />&#x00A0;<span class="sectionToc" >16.2 <a
-href="etrice-docse56.html#x74-12900016.2" id="QQ2-74-136">Component Overview</a></span>
+href="etrice-docch16.html#x78-13000016" id="QQ2-78-137">Runtimes</a></span>
+<br /><span class="chapterToc" >17 <a
+href="etrice-docch17.html#x79-13100017" id="QQ2-79-138">eTrice Models and Their Relations</a></span>
+<br />&#x00A0;<span class="sectionToc" >17.1 <a
+href="etrice-docse61.html#x80-13200017.1" id="QQ2-80-139">The ROOM Model</a></span>
+<br />&#x00A0;<span class="sectionToc" >17.2 <a
+href="etrice-docse62.html#x81-13300017.2" id="QQ2-81-140">The Config Model</a></span>
+<br />&#x00A0;<span class="sectionToc" >17.3 <a
+href="etrice-docse63.html#x82-13400017.3" id="QQ2-82-141">The Physical Model</a></span>
+<br />&#x00A0;<span class="sectionToc" >17.4 <a
+href="etrice-docse64.html#x83-13500017.4" id="QQ2-83-142">The Mapping Model</a></span>
+<br /><span class="chapterToc" >18 <a
+href="etrice-docch18.html#x84-13600018" id="QQ2-84-143">eTrice Developer&#8217;s Reference</a></span>
+<br />&#x00A0;<span class="sectionToc" >18.1 <a
+href="etrice-docse65.html#x85-13700018.1" id="QQ2-85-144">Architecture</a></span>
+<br />&#x00A0;<span class="sectionToc" >18.2 <a
+href="etrice-docse66.html#x86-14100018.2" id="QQ2-86-148">Component Overview</a></span>
</div>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
-
+
+
-
+
+
-
+
+
-
+
+
-
+
+
-
+
+
-
+
+
-
+
+
-
+
+
-
+
+
-
+
+
-
+
+
-
+
+
-
+
+
-
+
+
-
+
+
-
+
+
-<!--l. 42--><p class="noindent" ><span class="next">[<a
+<!--l. 44--><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-doc0x.png b/plugins/org.eclipse.etrice.doc/html/etrice-doc0x.png
index e98d5a6..8aded17 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-doc0x.png
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-doc0x.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-doc1x.png b/plugins/org.eclipse.etrice.doc/html/etrice-doc1x.png
index 5429920..4d3edca 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-doc1x.png
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-doc1x.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-doc2x.png b/plugins/org.eclipse.etrice.doc/html/etrice-doc2x.png
index 5429920..4d3edca 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-doc2x.png
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-doc2x.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-doc3x.png b/plugins/org.eclipse.etrice.doc/html/etrice-doc3x.png
index 7177399..4df1195 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-doc3x.png
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-doc3x.png
Binary files differ
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docch1.html b/plugins/org.eclipse.etrice.doc/html/etrice-docch1.html
index da5caf0..0f53c56 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docch1.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docch1.html
@@ -10,7 +10,7 @@
<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
<!-- xhtml,3,next,html -->
<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docch10.html b/plugins/org.eclipse.etrice.doc/html/etrice-docch10.html
index 78f4c0d..53161a0 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docch10.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docch10.html
@@ -4,91 +4,55 @@
<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
<html xmlns="http://www.w3.org/1999/xhtml"
>
-<head><title>10 ROOM Concepts</title>
+<head><title>10 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-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse38.html" >next</a>] [<a
-href="etrice-docse37.html" >prev</a>] [<a
-href="etrice-docse37.html#tailetrice-docse37.html" >prev-tail</a>] [<a
+href="etrice-docse34.html" >next</a>] [<a
+href="etrice-docse33.html" >prev</a>] [<a
+href="etrice-docse33.html#tailetrice-docse33.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="x49-6500010"></a>ROOM Concepts</h2>
-<!--l. 3--><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 here: <a
-href="http://git.eclipse.org/c/etrice/org.eclipse.etrice.git/tree/plugins/org.eclipse.etrice.core.room/src/org/eclipse/etrice/core/Room.xtext" >ROOM Grammar</a>
-</p>
+ id="x45-6100010"></a>Tutorial HelloWorld for C</h2>
<div class="sectionTOCS">
&#x00A0;<span class="sectionToc" >10.1 <a
-href="etrice-docse38.html#x50-6600010.1">Actors</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >10.1.1 <a
-href="etrice-docse38.html#x50-6700010.1.1">Description</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >10.1.2 <a
-href="etrice-docse38.html#x50-6800010.1.2">Motivation</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >10.1.3 <a
-href="etrice-docse38.html#x50-6900010.1.3">Notation</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >10.1.4 <a
-href="etrice-docse38.html#x50-7000010.1.4">Details</a></span>
+href="etrice-docse34.html#x46-6200010.1">Scope</a></span>
<br />&#x00A0;<span class="sectionToc" >10.2 <a
-href="etrice-docse39.html#x51-7400010.2">Protocols</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >10.2.1 <a
-href="etrice-docse39.html#x51-7500010.2.1">Description</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >10.2.2 <a
-href="etrice-docse39.html#x51-7600010.2.2">Motivation</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >10.2.3 <a
-href="etrice-docse39.html#x51-7700010.2.3">Notation</a></span>
+href="etrice-docse35.html#x47-6300010.2">Create a new model from scratch</a></span>
<br />&#x00A0;<span class="sectionToc" >10.3 <a
-href="etrice-docse40.html#x52-7800010.3">Ports</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >10.3.1 <a
-href="etrice-docse40.html#x52-7900010.3.1">Description</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >10.3.2 <a
-href="etrice-docse40.html#x52-8000010.3.2">Motivation</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >10.3.3 <a
-href="etrice-docse40.html#x52-8100010.3.3">Notation</a></span>
+href="etrice-docse36.html#x48-6400010.3">Create the HelloWorld model</a></span>
<br />&#x00A0;<span class="sectionToc" >10.4 <a
-href="etrice-docse41.html#x53-8400010.4">DataClass</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >10.4.1 <a
-href="etrice-docse41.html#x53-8500010.4.1">Description</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >10.4.2 <a
-href="etrice-docse41.html#x53-8600010.4.2">Notation</a></span>
+href="etrice-docse37.html#x49-6500010.4">Create a launch configuration to start the C code generator</a></span>
<br />&#x00A0;<span class="sectionToc" >10.5 <a
-href="etrice-docse42.html#x54-8700010.5">Layering</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >10.5.1 <a
-href="etrice-docse42.html#x54-8800010.5.1">Description</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >10.5.2 <a
-href="etrice-docse42.html#x54-8900010.5.2">Notation</a></span>
+href="etrice-docse38.html#x50-6600010.5">Generate the code</a></span>
<br />&#x00A0;<span class="sectionToc" >10.6 <a
-href="etrice-docse43.html#x55-9000010.6">Finite State Machines</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >10.6.1 <a
-href="etrice-docse43.html#x55-9100010.6.1">Description</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >10.6.2 <a
-href="etrice-docse43.html#x55-9200010.6.2">Motivation</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >10.6.3 <a
-href="etrice-docse43.html#x55-9300010.6.3">Notation</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >10.6.4 <a
-href="etrice-docse43.html#x55-9600010.6.4">Examples</a></span>
+href="etrice-docse39.html#x51-6700010.6">Setup the include path</a></span>
+<br />&#x00A0;<span class="sectionToc" >10.7 <a
+href="etrice-docse40.html#x52-6800010.7">Build and run the model</a></span>
+<br />&#x00A0;<span class="sectionToc" >10.8 <a
+href="etrice-docse41.html#x53-6900010.8">Summary</a></span>
</div>
-
-
+
+
+
<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse38.html" >next</a>] [<a
-href="etrice-docse37.html" >prev</a>] [<a
-href="etrice-docse37.html#tailetrice-docse37.html" >prev-tail</a>] [<a
+href="etrice-docse34.html" >next</a>] [<a
+href="etrice-docse33.html" >prev</a>] [<a
+href="etrice-docse33.html#tailetrice-docse33.html" >prev-tail</a>] [<a
href="etrice-docch10.html" >front</a>] [<a
href="etrice-doc.html#etrice-docch10.html" >up</a>] </p></div>
<!--l. 1--><p class="noindent" ><a
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docch11.html b/plugins/org.eclipse.etrice.doc/html/etrice-docch11.html
index 5af3ca6..02a043d 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docch11.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docch11.html
@@ -4,58 +4,49 @@
<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
<html xmlns="http://www.w3.org/1999/xhtml"
>
-<head><title>11 Automatic Diagram Layout with KIELER</title>
+<head><title>11 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-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse44.html" >next</a>] [<a
-href="etrice-docse43.html" >prev</a>] [<a
-href="etrice-docse43.html#tailetrice-docse43.html" >prev-tail</a>] [<a
+href="etrice-docse42.html" >next</a>] [<a
+href="etrice-docse41.html" >prev</a>] [<a
+href="etrice-docse41.html#tailetrice-docse41.html" >prev-tail</a>] [<a
href="#tailetrice-docch11.html">tail</a>] [<a
href="etrice-doc.html#etrice-docch11.html" >up</a>] </p></div>
<h2 class="chapterHead"><span class="titlemark">Chapter&#x00A0;11</span><br /><a
- id="x56-9900011"></a>Automatic Diagram Layout with KIELER</h2>
+ id="x54-7000011"></a>Tutorial Remove C-Comment ( C )</h2>
<div class="sectionTOCS">
&#x00A0;<span class="sectionToc" >11.1 <a
-href="etrice-docse44.html#x57-10000011.1">Overview</a></span>
+href="etrice-docse42.html#x55-7100011.1">Scope</a></span>
<br />&#x00A0;<span class="sectionToc" >11.2 <a
-href="etrice-docse45.html#x58-10100011.2">Performing Automatic Layout</a></span>
+href="etrice-docse43.html#x56-7200011.2">Create a new model from scratch</a></span>
<br />&#x00A0;<span class="sectionToc" >11.3 <a
-href="etrice-docse46.html#x59-10200011.3">Layout Options</a></span>
+href="etrice-docse44.html#x57-7300011.3">Create your own data type</a></span>
<br />&#x00A0;<span class="sectionToc" >11.4 <a
-href="etrice-docse47.html#x60-10300011.4">Configuring Layout Options</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >11.4.1 <a
-href="etrice-docse47.html#x60-10400011.4.1">The Layout View</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >11.4.2 <a
-href="etrice-docse47.html#x60-10500011.4.2">Preference Page</a></span>
+href="etrice-docse45.html#x58-7400011.4">Create the model</a></span>
<br />&#x00A0;<span class="sectionToc" >11.5 <a
-href="etrice-docse48.html#x61-10800011.5">Special Layout Options</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >11.5.1 <a
-href="etrice-docse48.html#x61-10900011.5.1">Layout Algorithm</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >11.5.2 <a
-href="etrice-docse48.html#x61-11000011.5.2">Diagram Type</a></span>
+href="etrice-docse46.html#x59-7500011.5">Generate, build and run the model</a></span>
<br />&#x00A0;<span class="sectionToc" >11.6 <a
-href="etrice-docse49.html#x62-11100011.6">Further References</a></span>
+href="etrice-docse47.html#x60-7600011.6">Summary</a></span>
</div>
-
-
-
+
+
<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse44.html" >next</a>] [<a
-href="etrice-docse43.html" >prev</a>] [<a
-href="etrice-docse43.html#tailetrice-docse43.html" >prev-tail</a>] [<a
+href="etrice-docse42.html" >next</a>] [<a
+href="etrice-docse41.html" >prev</a>] [<a
+href="etrice-docse41.html#tailetrice-docse41.html" >prev-tail</a>] [<a
href="etrice-docch11.html" >front</a>] [<a
href="etrice-doc.html#etrice-docch11.html" >up</a>] </p></div>
<!--l. 1--><p class="noindent" ><a
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docch12.html b/plugins/org.eclipse.etrice.doc/html/etrice-docch12.html
index 3a2eea9..b57d53b 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docch12.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docch12.html
@@ -4,41 +4,90 @@
<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
<html xmlns="http://www.w3.org/1999/xhtml"
>
-<head><title>12 eTrice Features</title>
+<head><title>12 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-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse50.html" >next</a>] [<a
-href="etrice-docse49.html" >prev</a>] [<a
-href="etrice-docse49.html#tailetrice-docse49.html" >prev-tail</a>] [<a
+href="etrice-docse48.html" >next</a>] [<a
+href="etrice-docse47.html" >prev</a>] [<a
+href="etrice-docse47.html#tailetrice-docse47.html" >prev-tail</a>] [<a
href="#tailetrice-docch12.html">tail</a>] [<a
href="etrice-doc.html#etrice-docch12.html" >up</a>] </p></div>
<h2 class="chapterHead"><span class="titlemark">Chapter&#x00A0;12</span><br /><a
- id="x63-11200012"></a>eTrice Features</h2>
+ id="x61-7700012"></a>ROOM Concepts</h2>
+<!--l. 3--><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 here: <a
+href="http://git.eclipse.org/c/etrice/org.eclipse.etrice.git/tree/plugins/org.eclipse.etrice.core.room/src/org/eclipse/etrice/core/Room.xtext" >ROOM
+Grammar</a>
+</p>
<div class="sectionTOCS">
&#x00A0;<span class="sectionToc" >12.1 <a
-href="etrice-docse50.html#x64-11300012.1">Codegenerators</a></span>
+href="etrice-docse48.html#x62-7800012.1">Actors</a></span>
<br />&#x00A0;&#x00A0;<span class="subsectionToc" >12.1.1 <a
-href="etrice-docse50.html#x64-11400012.1.1">Java Generator</a></span>
+href="etrice-docse48.html#x62-7900012.1.1">Description</a></span>
<br />&#x00A0;&#x00A0;<span class="subsectionToc" >12.1.2 <a
-href="etrice-docse50.html#x64-11500012.1.2">C++ Generator</a></span>
+href="etrice-docse48.html#x62-8000012.1.2">Motivation</a></span>
<br />&#x00A0;&#x00A0;<span class="subsectionToc" >12.1.3 <a
-href="etrice-docse50.html#x64-11600012.1.3">C Generator</a></span>
+href="etrice-docse48.html#x62-8100012.1.3">Notation</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >12.1.4 <a
+href="etrice-docse48.html#x62-8200012.1.4">Details</a></span>
+<br />&#x00A0;<span class="sectionToc" >12.2 <a
+href="etrice-docse49.html#x63-8600012.2">Protocols</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >12.2.1 <a
+href="etrice-docse49.html#x63-8700012.2.1">Description</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >12.2.2 <a
+href="etrice-docse49.html#x63-8800012.2.2">Motivation</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >12.2.3 <a
+href="etrice-docse49.html#x63-8900012.2.3">Notation</a></span>
+<br />&#x00A0;<span class="sectionToc" >12.3 <a
+href="etrice-docse50.html#x64-9000012.3">Ports</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >12.3.1 <a
+href="etrice-docse50.html#x64-9100012.3.1">Description</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >12.3.2 <a
+href="etrice-docse50.html#x64-9200012.3.2">Motivation</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >12.3.3 <a
+href="etrice-docse50.html#x64-9300012.3.3">Notation</a></span>
+<br />&#x00A0;<span class="sectionToc" >12.4 <a
+href="etrice-docse51.html#x65-9600012.4">DataClass</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >12.4.1 <a
+href="etrice-docse51.html#x65-9700012.4.1">Description</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >12.4.2 <a
+href="etrice-docse51.html#x65-9800012.4.2">Notation</a></span>
+<br />&#x00A0;<span class="sectionToc" >12.5 <a
+href="etrice-docse52.html#x66-9900012.5">Layering</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >12.5.1 <a
+href="etrice-docse52.html#x66-10000012.5.1">Description</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >12.5.2 <a
+href="etrice-docse52.html#x66-10100012.5.2">Notation</a></span>
+<br />&#x00A0;<span class="sectionToc" >12.6 <a
+href="etrice-docse53.html#x67-10200012.6">Finite State Machines</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >12.6.1 <a
+href="etrice-docse53.html#x67-10300012.6.1">Description</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >12.6.2 <a
+href="etrice-docse53.html#x67-10400012.6.2">Motivation</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >12.6.3 <a
+href="etrice-docse53.html#x67-10500012.6.3">Notation</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >12.6.4 <a
+href="etrice-docse53.html#x67-10800012.6.4">Examples</a></span>
</div>
-
-
+
+
+
+
+
+
<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse50.html" >next</a>] [<a
-href="etrice-docse49.html" >prev</a>] [<a
-href="etrice-docse49.html#tailetrice-docse49.html" >prev-tail</a>] [<a
+href="etrice-docse48.html" >next</a>] [<a
+href="etrice-docse47.html" >prev</a>] [<a
+href="etrice-docse47.html#tailetrice-docse47.html" >prev-tail</a>] [<a
href="etrice-docch12.html" >front</a>] [<a
href="etrice-doc.html#etrice-docch12.html" >up</a>] </p></div>
<!--l. 1--><p class="noindent" ><a
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docch13.html b/plugins/org.eclipse.etrice.doc/html/etrice-docch13.html
index 898c40a..dfa456f 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docch13.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docch13.html
@@ -4,37 +4,57 @@
<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
<html xmlns="http://www.w3.org/1999/xhtml"
>
-<head><title>13 Codegenerators</title>
+<head><title>13 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-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docch14.html" >next</a>] [<a
-href="etrice-docse50.html" >prev</a>] [<a
-href="etrice-docse50.html#tailetrice-docse50.html" >prev-tail</a>] [<a
+href="etrice-docse54.html" >next</a>] [<a
+href="etrice-docse53.html" >prev</a>] [<a
+href="etrice-docse53.html#tailetrice-docse53.html" >prev-tail</a>] [<a
href="#tailetrice-docch13.html">tail</a>] [<a
href="etrice-doc.html#etrice-docch13.html" >up</a>] </p></div>
<h2 class="chapterHead"><span class="titlemark">Chapter&#x00A0;13</span><br /><a
- id="x65-11700013"></a>Codegenerators</h2>
-
+ id="x68-11100013"></a>Automatic Diagram Layout with KIELER</h2>
+<div class="sectionTOCS">
+&#x00A0;<span class="sectionToc" >13.1 <a
+href="etrice-docse54.html#x69-11200013.1">Overview</a></span>
+<br />&#x00A0;<span class="sectionToc" >13.2 <a
+href="etrice-docse55.html#x70-11300013.2">Performing Automatic Layout</a></span>
+<br />&#x00A0;<span class="sectionToc" >13.3 <a
+href="etrice-docse56.html#x71-11400013.3">Layout Options</a></span>
+<br />&#x00A0;<span class="sectionToc" >13.4 <a
+href="etrice-docse57.html#x72-11500013.4">Configuring Layout Options</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >13.4.1 <a
+href="etrice-docse57.html#x72-11600013.4.1">The Layout View</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >13.4.2 <a
+href="etrice-docse57.html#x72-11700013.4.2">Preference Page</a></span>
+<br />&#x00A0;<span class="sectionToc" >13.5 <a
+href="etrice-docse58.html#x73-12000013.5">Special Layout Options</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >13.5.1 <a
+href="etrice-docse58.html#x73-12100013.5.1">Layout Algorithm</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >13.5.2 <a
+href="etrice-docse58.html#x73-12200013.5.2">Diagram Type</a></span>
+<br />&#x00A0;<span class="sectionToc" >13.6 <a
+href="etrice-docse59.html#x74-12300013.6">Further References</a></span>
+</div>
-
-
-
-
-
+
+
+
+
<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docch14.html" >next</a>] [<a
-href="etrice-docse50.html" >prev</a>] [<a
-href="etrice-docse50.html#tailetrice-docse50.html" >prev-tail</a>] [<a
+href="etrice-docse54.html" >next</a>] [<a
+href="etrice-docse53.html" >prev</a>] [<a
+href="etrice-docse53.html#tailetrice-docse53.html" >prev-tail</a>] [<a
href="etrice-docch13.html" >front</a>] [<a
href="etrice-doc.html#etrice-docch13.html" >up</a>] </p></div>
<!--l. 1--><p class="noindent" ><a
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docch14.html b/plugins/org.eclipse.etrice.doc/html/etrice-docch14.html
index 71a4bca..841ce19 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docch14.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docch14.html
@@ -4,37 +4,40 @@
<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
<html xmlns="http://www.w3.org/1999/xhtml"
>
-<head><title>14 Runtimes</title>
+<head><title>14 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-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docch15.html" >next</a>] [<a
-href="etrice-docch13.html" >prev</a>] [<a
-href="etrice-docch13.html#tailetrice-docch13.html" >prev-tail</a>] [<a
+href="etrice-docse60.html" >next</a>] [<a
+href="etrice-docse59.html" >prev</a>] [<a
+href="etrice-docse59.html#tailetrice-docse59.html" >prev-tail</a>] [<a
href="#tailetrice-docch14.html">tail</a>] [<a
href="etrice-doc.html#etrice-docch14.html" >up</a>] </p></div>
<h2 class="chapterHead"><span class="titlemark">Chapter&#x00A0;14</span><br /><a
- id="x66-11800014"></a>Runtimes</h2>
-
-
-
-
-
-
-
-
-
+ id="x75-12400014"></a>eTrice Features</h2>
+<div class="sectionTOCS">
+&#x00A0;<span class="sectionToc" >14.1 <a
+href="etrice-docse60.html#x76-12500014.1">Codegenerators</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >14.1.1 <a
+href="etrice-docse60.html#x76-12600014.1.1">Java Generator</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >14.1.2 <a
+href="etrice-docse60.html#x76-12700014.1.2">C++ Generator</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >14.1.3 <a
+href="etrice-docse60.html#x76-12800014.1.3">C Generator</a></span>
+</div>
+
+
<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docch15.html" >next</a>] [<a
-href="etrice-docch13.html" >prev</a>] [<a
-href="etrice-docch13.html#tailetrice-docch13.html" >prev-tail</a>] [<a
+href="etrice-docse60.html" >next</a>] [<a
+href="etrice-docse59.html" >prev</a>] [<a
+href="etrice-docse59.html#tailetrice-docse59.html" >prev-tail</a>] [<a
href="etrice-docch14.html" >front</a>] [<a
href="etrice-doc.html#etrice-docch14.html" >up</a>] </p></div>
<!--l. 1--><p class="noindent" ><a
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docch15.html b/plugins/org.eclipse.etrice.doc/html/etrice-docch15.html
index 237fcdb..c8b6446 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docch15.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docch15.html
@@ -4,65 +4,34 @@
<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
<html xmlns="http://www.w3.org/1999/xhtml"
>
-<head><title>15 eTrice Models and Their Relations</title>
+<head><title>15 Codegenerators</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-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse51.html" >next</a>] [<a
-href="etrice-docch14.html" >prev</a>] [<a
-href="etrice-docch14.html#tailetrice-docch14.html" >prev-tail</a>] [<a
+href="etrice-docch16.html" >next</a>] [<a
+href="etrice-docse60.html" >prev</a>] [<a
+href="etrice-docse60.html#tailetrice-docse60.html" >prev-tail</a>] [<a
href="#tailetrice-docch15.html">tail</a>] [<a
href="etrice-doc.html#etrice-docch15.html" >up</a>] </p></div>
<h2 class="chapterHead"><span class="titlemark">Chapter&#x00A0;15</span><br /><a
- id="x67-11900015"></a>eTrice Models and Their Relations</h2>
-<!--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">Config model (*.config) &#8211; defines configuration values for attributes
- </li>
- <li class="itemize">Physical model (*.etphys) &#8211; defines the structure and properties of the
- physical system
- </li>
- <li class="itemize">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. 14--><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>
-<div class="sectionTOCS">
-&#x00A0;<span class="sectionToc" >15.1 <a
-href="etrice-docse51.html#x68-12000015.1">The ROOM Model</a></span>
-<br />&#x00A0;<span class="sectionToc" >15.2 <a
-href="etrice-docse52.html#x69-12100015.2">The Config Model</a></span>
-<br />&#x00A0;<span class="sectionToc" >15.3 <a
-href="etrice-docse53.html#x70-12200015.3">The Physical Model</a></span>
-<br />&#x00A0;<span class="sectionToc" >15.4 <a
-href="etrice-docse54.html#x71-12300015.4">The Mapping Model</a></span>
-</div>
-
-
-
-
-
-
+ id="x77-12900015"></a>Codegenerators</h2>
+
+
+
+
+
+
<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse51.html" >next</a>] [<a
-href="etrice-docch14.html" >prev</a>] [<a
-href="etrice-docch14.html#tailetrice-docch14.html" >prev-tail</a>] [<a
+href="etrice-docch16.html" >next</a>] [<a
+href="etrice-docse60.html" >prev</a>] [<a
+href="etrice-docse60.html#tailetrice-docse60.html" >prev-tail</a>] [<a
href="etrice-docch15.html" >front</a>] [<a
href="etrice-doc.html#etrice-docch15.html" >up</a>] </p></div>
<!--l. 1--><p class="noindent" ><a
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docch16.html b/plugins/org.eclipse.etrice.doc/html/etrice-docch16.html
index fc83852..b2794c3 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docch16.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docch16.html
@@ -4,54 +4,36 @@
<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
<html xmlns="http://www.w3.org/1999/xhtml"
>
-<head><title>16 eTrice Developer&#8217;s Reference</title>
+<head><title>16 Runtimes</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-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse55.html" >next</a>] [<a
-href="etrice-docse54.html" >prev</a>] [<a
-href="etrice-docse54.html#tailetrice-docse54.html" >prev-tail</a>] [<a
+href="etrice-docch17.html" >next</a>] [<a
+href="etrice-docch15.html" >prev</a>] [<a
+href="etrice-docch15.html#tailetrice-docch15.html" >prev-tail</a>] [<a
href="#tailetrice-docch16.html">tail</a>] [<a
href="etrice-doc.html#etrice-docch16.html" >up</a>] </p></div>
<h2 class="chapterHead"><span class="titlemark">Chapter&#x00A0;16</span><br /><a
- id="x72-12400016"></a>eTrice Developer&#8217;s Reference</h2>
-<div class="sectionTOCS">
-&#x00A0;<span class="sectionToc" >16.1 <a
-href="etrice-docse55.html#x73-12500016.1">Architecture</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >16.1.1 <a
-href="etrice-docse55.html#x73-12600016.1.1">Editor and Generator Components</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >16.1.2 <a
-href="etrice-docse55.html#x73-12700016.1.2">Runtimes</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >16.1.3 <a
-href="etrice-docse55.html#x73-12800016.1.3">Unit Tests</a></span>
-<br />&#x00A0;<span class="sectionToc" >16.2 <a
-href="etrice-docse56.html#x74-12900016.2">Component Overview</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >16.2.1 <a
-href="etrice-docse56.html#x74-13000016.2.1">Room Language Overview</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >16.2.2 <a
-href="etrice-docse56.html#x74-13600016.2.2">Config Language Overview</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >16.2.3 <a
-href="etrice-docse56.html#x74-14000016.2.3">Aggregation Layer Overview</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >16.2.4 <a
-href="etrice-docse56.html#x74-14400016.2.4">Generator Overview</a></span>
-</div>
-
-
-
-
-<!--l. 42--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse55.html" >next</a>] [<a
-href="etrice-docse54.html" >prev</a>] [<a
-href="etrice-docse54.html#tailetrice-docse54.html" >prev-tail</a>] [<a
+ id="x78-13000016"></a>Runtimes</h2>
+
+
+
+
+
+
+<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docch17.html" >next</a>] [<a
+href="etrice-docch15.html" >prev</a>] [<a
+href="etrice-docch15.html#tailetrice-docch15.html" >prev-tail</a>] [<a
href="etrice-docch16.html" >front</a>] [<a
href="etrice-doc.html#etrice-docch16.html" >up</a>] </p></div>
-<!--l. 42--><p class="noindent" ><a
+<!--l. 1--><p class="noindent" ><a
id="tailetrice-docch16.html"></a> </p>
</body></html>
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docch17.html b/plugins/org.eclipse.etrice.doc/html/etrice-docch17.html
new file mode 100644
index 0000000..ae20f3b
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docch17.html
@@ -0,0 +1,65 @@
+<?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>17 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-03-26 21:41:00" />
+<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
+</head><body
+>
+<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse61.html" >next</a>] [<a
+href="etrice-docch16.html" >prev</a>] [<a
+href="etrice-docch16.html#tailetrice-docch16.html" >prev-tail</a>] [<a
+href="#tailetrice-docch17.html">tail</a>] [<a
+href="etrice-doc.html#etrice-docch17.html" >up</a>] </p></div>
+<h2 class="chapterHead"><span class="titlemark">Chapter&#x00A0;17</span><br /><a
+ id="x79-13100017"></a>eTrice Models and Their Relations</h2>
+<!--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">Config model (*.config) &#8211; defines configuration values for attributes
+ </li>
+ <li class="itemize">Physical model (*.etphys) &#8211; defines the structure and properties of the physical system
+ </li>
+ <li class="itemize">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. 14--><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>
+<div class="sectionTOCS">
+&#x00A0;<span class="sectionToc" >17.1 <a
+href="etrice-docse61.html#x80-13200017.1">The ROOM Model</a></span>
+<br />&#x00A0;<span class="sectionToc" >17.2 <a
+href="etrice-docse62.html#x81-13300017.2">The Config Model</a></span>
+<br />&#x00A0;<span class="sectionToc" >17.3 <a
+href="etrice-docse63.html#x82-13400017.3">The Physical Model</a></span>
+<br />&#x00A0;<span class="sectionToc" >17.4 <a
+href="etrice-docse64.html#x83-13500017.4">The Mapping Model</a></span>
+</div>
+
+
+
+
+
+<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse61.html" >next</a>] [<a
+href="etrice-docch16.html" >prev</a>] [<a
+href="etrice-docch16.html#tailetrice-docch16.html" >prev-tail</a>] [<a
+href="etrice-docch17.html" >front</a>] [<a
+href="etrice-doc.html#etrice-docch17.html" >up</a>] </p></div>
+<!--l. 1--><p class="noindent" ><a
+ id="tailetrice-docch17.html"></a> </p>
+</body></html>
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docch18.html b/plugins/org.eclipse.etrice.doc/html/etrice-docch18.html
new file mode 100644
index 0000000..4912609
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docch18.html
@@ -0,0 +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>18 eTrice 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-03-26 21:41:00" />
+<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
+</head><body
+>
+<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse65.html" >next</a>] [<a
+href="etrice-docse64.html" >prev</a>] [<a
+href="etrice-docse64.html#tailetrice-docse64.html" >prev-tail</a>] [<a
+href="#tailetrice-docch18.html">tail</a>] [<a
+href="etrice-doc.html#etrice-docch18.html" >up</a>] </p></div>
+<h2 class="chapterHead"><span class="titlemark">Chapter&#x00A0;18</span><br /><a
+ id="x84-13600018"></a>eTrice Developer&#8217;s Reference</h2>
+<div class="sectionTOCS">
+&#x00A0;<span class="sectionToc" >18.1 <a
+href="etrice-docse65.html#x85-13700018.1">Architecture</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >18.1.1 <a
+href="etrice-docse65.html#x85-13800018.1.1">Editor and Generator Components</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >18.1.2 <a
+href="etrice-docse65.html#x85-13900018.1.2">Runtimes</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >18.1.3 <a
+href="etrice-docse65.html#x85-14000018.1.3">Unit Tests</a></span>
+<br />&#x00A0;<span class="sectionToc" >18.2 <a
+href="etrice-docse66.html#x86-14100018.2">Component Overview</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >18.2.1 <a
+href="etrice-docse66.html#x86-14200018.2.1">Room Language Overview</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >18.2.2 <a
+href="etrice-docse66.html#x86-14800018.2.2">Config Language Overview</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >18.2.3 <a
+href="etrice-docse66.html#x86-15200018.2.3">Aggregation Layer Overview</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >18.2.4 <a
+href="etrice-docse66.html#x86-15600018.2.4">Generator Overview</a></span>
+</div>
+
+
+
+<!--l. 44--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse65.html" >next</a>] [<a
+href="etrice-docse64.html" >prev</a>] [<a
+href="etrice-docse64.html#tailetrice-docse64.html" >prev-tail</a>] [<a
+href="etrice-docch18.html" >front</a>] [<a
+href="etrice-doc.html#etrice-docch18.html" >up</a>] </p></div>
+<!--l. 44--><p class="noindent" ><a
+ id="tailetrice-docch18.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 850fcf4..f17047e 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docch2.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docch2.html
@@ -10,7 +10,7 @@
<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
<!-- xhtml,3,next,html -->
<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
@@ -56,9 +56,8 @@ href="etrice-docse5.html#x9-200002.3.3">Execution Models</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
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docch3.html b/plugins/org.eclipse.etrice.doc/html/etrice-docch3.html
index c134cd5..be5308b 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docch3.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docch3.html
@@ -10,7 +10,7 @@
<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
<!-- xhtml,3,next,html -->
<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
@@ -22,24 +22,19 @@ 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="x10-240003"></a>Working with the eTrice Tutorials</h2>
-<!--l. 3--><p class="noindent" >The eTrice Tutorials will help you to learn and understand the eTrice tool and
-concepts. ETrice supports several target languages. The concepts will not be
-explained for each language.
-</p><!--l. 5--><p class="noindent" >Most of the common concepts will be described for Java as target language. To start
-with a new language the first steps to setup the workspace and to generate and run
-the first model will be described also. Target language specific aspects will be
-described as well.
-</p><!--l. 7--><p class="noindent" >Therefore the best way to start with eTrice is to follow the Java Tutorials and after
-that switch to your target language.
-
-
-
-
-
-
-
-
-
+<!--l. 3--><p class="noindent" >The eTrice Tutorials will help you to learn and understand the eTrice tool and concepts. ETrice supports
+several target languages. The concepts will not be explained for each language.
+</p><!--l. 5--><p class="noindent" >Most of the common concepts will be described for Java as target language. To start with a new language
+the first steps to setup the workspace and to generate and run the first model will be described also.
+Target language specific aspects will be described as well.
+</p><!--l. 7--><p class="noindent" >Therefore the best way to start with eTrice is to follow the Java Tutorials and after that switch to your
+target language.
+
+
+
+
+
+
</p>
<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docch4.html" >next</a>] [<a
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docch4.html b/plugins/org.eclipse.etrice.doc/html/etrice-docch4.html
index 20fd4b4..118f0d9 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docch4.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docch4.html
@@ -10,7 +10,7 @@
<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
<!-- xhtml,3,next,html -->
<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
@@ -22,9 +22,9 @@ 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="x11-250004"></a>Setting up the Workspace for Java Projects</h2>
-<!--l. 3--><p class="noindent" >ETrice generates code out of ROOM models. The code generator and the generated
-code relies on a runtime framework and on some ready to use model parts. This parts
-provide services like:
+<!--l. 3--><p class="noindent" >ETrice generates code out of ROOM models. The code generator and the generated code relies
+on a runtime framework and on some ready to use model parts. This parts provide services
+like:
</p>
<ul class="itemize1">
<li class="itemize">messaging
@@ -32,10 +32,9 @@ provide services like:
<li class="itemize">logging
</li>
<li class="itemize">timing</li></ul>
-<!--l. 11--><p class="noindent" >Additionally some tutorial models will be provided to make it easy to start with
-eTrice. All this parts must be available in our workspace before you can start
-working. After installation of eclipse (juno) and the eTrice plug in, your workspace
-should look like this:
+<!--l. 11--><p class="noindent" >Additionally some tutorial models will be provided to make it easy to start with eTrice. All this parts
+must be available in our workspace before you can start working. After installation of eclipse (juno) and
+the eTrice plug in, your workspace should look like this:
</p><!--l. 13--><p class="noindent" ><img
src="images/013-SetupWorkspace01.png" alt="PIC"
/>
@@ -58,28 +57,26 @@ src="images/013-SetupWorkspace03.png" alt="PIC"
/>
</p><!--l. 29--><p class="noindent" >Do the same steps for <span
class="ecti-1000">eTrice Java Modellib </span>and <span
-class="ecti-1000">eTrice Java Tutorials</span>. To avoid
-temporary error markers you should keep the proposed order of installation. The
-resulting workspace should look like this:
+class="ecti-1000">eTrice Java Tutorials</span>. To avoid temporary error markers
+you should keep the proposed order of installation. The resulting workspace should look like
+this:
</p><!--l. 31--><p class="noindent" ><img
src="images/013-SetupWorkspace04.png" alt="PIC"
/>
-</p><!--l. 34--><p class="noindent" >Now workspace is set up and you can perform the tutorials or start with your
-work.
+</p><!--l. 34--><p class="noindent" >Now workspace is set up and you can perform the tutorials or start with your work.
</p><!--l. 36--><p class="noindent" >The tutorial models are available in the <span
-class="ecti-1000">org.eclipse.etrice.tutorials </span>project. All
-tutorials are ready to generate and run without any changes. To start the
-code generator simply run <span
-class="ecbx-1000">gen_org.eclipse.etrice.tutorials.launch </span>as
+class="ecti-1000">org.eclipse.etrice.tutorials </span>project. All tutorials are
+ready to generate and run without any changes. To start the code generator simply run
<span
+class="ecbx-1000">gen_org.eclipse.etrice.tutorials.launch </span>as <span
class="ecbx-1000">gen_org.eclipse.etrice.tutorials.launch</span>:
</p><!--l. 38--><p class="noindent" ><img
src="images/013-SetupWorkspace05.png" alt="PIC"
/>
</p><!--l. 41--><p class="noindent" >After generation for each tutorial a java file called <span
-class="ecbx-1000">SubSystem_ModelnameRunner.java</span>
-is generated. To run the model simply run this file as a java application:
+class="ecbx-1000">SubSystem_ModelnameRunner.java </span>is generated.
+To run the model simply run this file as a java application:
</p><!--l. 43--><p class="noindent" ><img
src="images/013-SetupWorkspace06.png" alt="PIC"
/>
@@ -88,22 +85,15 @@ class="ecti-1000">quit </span>in the console window.
</p><!--l. 48--><p class="noindent" ><img
src="images/013-SetupWorkspace07.png" alt="PIC"
/>
-
-
-
-</p><!--l. 51--><p class="noindent" >Performing the tutorials will setup an dedicated project for each tutorial. Therefore
-there are some slight changes especially whenever a path must be set (e.g. to
-the model library) within your own projects. All this is described in the
-tutorials.
-
-
-
-
-
-
-
-
-
+</p><!--l. 51--><p class="noindent" >Performing the tutorials will setup an dedicated project for each tutorial. Therefore there are some slight
+changes especially whenever a path must be set (e.g. to the model library) within your own projects. All
+this is described in the tutorials.
+
+
+
+
+
+
</p>
<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docch5.html" >next</a>] [<a
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docch5.html b/plugins/org.eclipse.etrice.doc/html/etrice-docch5.html
index 60fe1b0..83fd5b9 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docch5.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docch5.html
@@ -10,7 +10,7 @@
<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
<!-- xhtml,3,next,html -->
<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
@@ -41,9 +41,8 @@ href="etrice-docse11.html#x18-320005.6">Summary</a></span>
-
-
-
+
+
<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docse6.html" >next</a>] [<a
href="etrice-docch4.html" >prev</a>] [<a
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docch6.html b/plugins/org.eclipse.etrice.doc/html/etrice-docch6.html
index 897c87f..133fc76 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docch6.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docch6.html
@@ -10,7 +10,7 @@
<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
<!-- xhtml,3,next,html -->
<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
@@ -47,9 +47,8 @@ href="etrice-docse19.html#x27-410006.8">Summary</a></span>
-
-
-
+
+
<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docse12.html" >next</a>] [<a
href="etrice-docse11.html" >prev</a>] [<a
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docch7.html b/plugins/org.eclipse.etrice.doc/html/etrice-docch7.html
index acf09d0..6780f63 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docch7.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docch7.html
@@ -10,7 +10,7 @@
<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
<!-- xhtml,3,next,html -->
<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
@@ -54,9 +54,8 @@ href="etrice-docse28.html#x37-530007.9">Summary</a></span>
-
-
-
+
+
<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docse20.html" >next</a>] [<a
href="etrice-docse19.html" >prev</a>] [<a
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docch8.html b/plugins/org.eclipse.etrice.doc/html/etrice-docch8.html
index fc087ee..5098e1a 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docch8.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docch8.html
@@ -10,7 +10,7 @@
<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
<!-- xhtml,3,next,html -->
<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
@@ -32,9 +32,8 @@ href="etrice-docse31.html#x41-570008.3">Why does it work and why is it safe?</a>
</div>
-
-
-
+
+
<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docse29.html" >next</a>] [<a
href="etrice-docse28.html" >prev</a>] [<a
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docch9.html b/plugins/org.eclipse.etrice.doc/html/etrice-docch9.html
index cce1b9d..16d1a42 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docch9.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docch9.html
@@ -4,13 +4,13 @@
<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
<html xmlns="http://www.w3.org/1999/xhtml"
>
-<head><title>9 Tutorial Remove C-Comment ( C )</title>
+<head><title>9 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-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
@@ -21,29 +21,33 @@ href="etrice-docse31.html#tailetrice-docse31.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="x42-580009"></a>Tutorial Remove C-Comment ( C )</h2>
+ id="x42-580009"></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="ecti-1000">File-&#x003E;New-&#x003E;Project-&#x003E;eTrice</span>
+select <span
+class="ecti-1000">eTrice C runtime </span>/ <span
+class="ecti-1000">eTrice 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" >9.1 <a
-href="etrice-docse32.html#x43-590009.1">Scope</a></span>
+href="etrice-docse32.html#x43-590009.1">Testing the environment</a></span>
<br />&#x00A0;<span class="sectionToc" >9.2 <a
-href="etrice-docse33.html#x44-600009.2">Create a new model from scratch</a></span>
-<br />&#x00A0;<span class="sectionToc" >9.3 <a
-href="etrice-docse34.html#x45-610009.3">Create your own data type</a></span>
-<br />&#x00A0;<span class="sectionToc" >9.4 <a
-href="etrice-docse35.html#x46-620009.4">Create the model</a></span>
-<br />&#x00A0;<span class="sectionToc" >9.5 <a
-href="etrice-docse36.html#x47-630009.5">Generate, build and run the model</a></span>
-<br />&#x00A0;<span class="sectionToc" >9.6 <a
-href="etrice-docse37.html#x48-640009.6">Summary</a></span>
+href="etrice-docse33.html#x44-600009.2">Building the C runtime system</a></span>
</div>
-
-
-
-
-
-
-
+
+
<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docse32.html" >next</a>] [<a
href="etrice-docse31.html" >prev</a>] [<a
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docli1.html b/plugins/org.eclipse.etrice.doc/html/etrice-docli1.html
index 7f4841b..76f2c53 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docli1.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docli1.html
@@ -10,11 +10,11 @@
<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-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
-<!--l. 22--><div class="crosslinks"><p class="noindent">[<a
+<!--l. 24--><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
@@ -73,13 +73,12 @@ href="etrice-docse6.html#x13-270005.1">Scope</a></span>
href="etrice-docse7.html#x14-280005.2">Create a new model from scratch</a></span>
<br />&#x00A0;<span class="sectionToc" >5.3 <a
href="etrice-docse8.html#x15-290005.3">Create a state machine</a></span>
-
-
-
<br />&#x00A0;<span class="sectionToc" >5.4 <a
href="etrice-docse9.html#x16-300005.4">Build and run the model</a></span>
<br />&#x00A0;<span class="sectionToc" >5.5 <a
href="etrice-docse10.html#x17-310005.5">Open the Message Sequence Chart</a></span>
+
+
<br />&#x00A0;<span class="sectionToc" >5.6 <a
href="etrice-docse11.html#x18-320005.6">Summary</a></span>
<br /><span class="chapterToc" >6 <a
@@ -133,148 +132,168 @@ href="etrice-docse30.html#x40-560008.2">Setup the model</a></span>
<br />&#x00A0;<span class="sectionToc" >8.3 <a
href="etrice-docse31.html#x41-570008.3">Why does it work and why is it safe?</a></span>
<br /><span class="chapterToc" >9 <a
-href="etrice-docch9.html#x42-580009">Tutorial Remove C-Comment ( C )</a></span>
+href="etrice-docch9.html#x42-580009">Setting up the Workspace for C Projects</a></span>
<br />&#x00A0;<span class="sectionToc" >9.1 <a
-href="etrice-docse32.html#x43-590009.1">Scope</a></span>
+href="etrice-docse32.html#x43-590009.1">Testing the environment</a></span>
<br />&#x00A0;<span class="sectionToc" >9.2 <a
-href="etrice-docse33.html#x44-600009.2">Create a new model from scratch</a></span>
-<br />&#x00A0;<span class="sectionToc" >9.3 <a
-href="etrice-docse34.html#x45-610009.3">Create your own data type</a></span>
-<br />&#x00A0;<span class="sectionToc" >9.4 <a
-href="etrice-docse35.html#x46-620009.4">Create the model</a></span>
-<br />&#x00A0;<span class="sectionToc" >9.5 <a
-href="etrice-docse36.html#x47-630009.5">Generate, build and run the model</a></span>
-<br />&#x00A0;<span class="sectionToc" >9.6 <a
-href="etrice-docse37.html#x48-640009.6">Summary</a></span>
+href="etrice-docse33.html#x44-600009.2">Building the C runtime system</a></span>
<br /><span class="chapterToc" >10 <a
-href="etrice-docch10.html#x49-6500010">ROOM Concepts</a></span>
+href="etrice-docch10.html#x45-6100010">Tutorial HelloWorld for C</a></span>
<br />&#x00A0;<span class="sectionToc" >10.1 <a
-href="etrice-docse38.html#x50-6600010.1">Actors</a></span>
-
-
-
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >10.1.1 <a
-href="etrice-docse38.html#x50-6700010.1.1" id="QQ2-50-68">Description</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >10.1.2 <a
-href="etrice-docse38.html#x50-6800010.1.2" id="QQ2-50-69">Motivation</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >10.1.3 <a
-href="etrice-docse38.html#x50-6900010.1.3" id="QQ2-50-70">Notation</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >10.1.4 <a
-href="etrice-docse38.html#x50-7000010.1.4" id="QQ2-50-72">Details</a></span>
+href="etrice-docse34.html#x46-6200010.1">Scope</a></span>
<br />&#x00A0;<span class="sectionToc" >10.2 <a
-href="etrice-docse39.html#x51-7400010.2">Protocols</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >10.2.1 <a
-href="etrice-docse39.html#x51-7500010.2.1" id="QQ2-51-78">Description</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >10.2.2 <a
-href="etrice-docse39.html#x51-7600010.2.2" id="QQ2-51-79">Motivation</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >10.2.3 <a
-href="etrice-docse39.html#x51-7700010.2.3" id="QQ2-51-80">Notation</a></span>
+href="etrice-docse35.html#x47-6300010.2">Create a new model from scratch</a></span>
<br />&#x00A0;<span class="sectionToc" >10.3 <a
-href="etrice-docse40.html#x52-7800010.3">Ports</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >10.3.1 <a
-href="etrice-docse40.html#x52-7900010.3.1" id="QQ2-52-82">Description</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >10.3.2 <a
-href="etrice-docse40.html#x52-8000010.3.2" id="QQ2-52-83">Motivation</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >10.3.3 <a
-href="etrice-docse40.html#x52-8100010.3.3" id="QQ2-52-84">Notation</a></span>
+href="etrice-docse36.html#x48-6400010.3">Create the HelloWorld model</a></span>
<br />&#x00A0;<span class="sectionToc" >10.4 <a
-href="etrice-docse41.html#x53-8400010.4">DataClass</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >10.4.1 <a
-href="etrice-docse41.html#x53-8500010.4.1" id="QQ2-53-90">Description</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >10.4.2 <a
-href="etrice-docse41.html#x53-8600010.4.2" id="QQ2-53-91">Notation</a></span>
+href="etrice-docse37.html#x49-6500010.4">Create a launch configuration to start the C code generator</a></span>
<br />&#x00A0;<span class="sectionToc" >10.5 <a
-href="etrice-docse42.html#x54-8700010.5">Layering</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >10.5.1 <a
-href="etrice-docse42.html#x54-8800010.5.1" id="QQ2-54-93">Description</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >10.5.2 <a
-href="etrice-docse42.html#x54-8900010.5.2" id="QQ2-54-94">Notation</a></span>
+href="etrice-docse38.html#x50-6600010.5">Generate the code</a></span>
<br />&#x00A0;<span class="sectionToc" >10.6 <a
-href="etrice-docse43.html#x55-9000010.6">Finite State Machines</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >10.6.1 <a
-href="etrice-docse43.html#x55-9100010.6.1" id="QQ2-55-96">Description</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >10.6.2 <a
-href="etrice-docse43.html#x55-9200010.6.2" id="QQ2-55-97">Motivation</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >10.6.3 <a
-href="etrice-docse43.html#x55-9300010.6.3" id="QQ2-55-98">Notation</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >10.6.4 <a
-href="etrice-docse43.html#x55-9600010.6.4" id="QQ2-55-103">Examples</a></span>
+href="etrice-docse39.html#x51-6700010.6">Setup the include path</a></span>
+<br />&#x00A0;<span class="sectionToc" >10.7 <a
+href="etrice-docse40.html#x52-6800010.7">Build and run the model</a></span>
+<br />&#x00A0;<span class="sectionToc" >10.8 <a
+href="etrice-docse41.html#x53-6900010.8">Summary</a></span>
<br /><span class="chapterToc" >11 <a
-href="etrice-docch11.html#x56-9900011">Automatic Diagram Layout with KIELER</a></span>
+href="etrice-docch11.html#x54-7000011">Tutorial Remove C-Comment ( C )</a></span>
<br />&#x00A0;<span class="sectionToc" >11.1 <a
-href="etrice-docse44.html#x57-10000011.1">Overview</a></span>
+href="etrice-docse42.html#x55-7100011.1">Scope</a></span>
<br />&#x00A0;<span class="sectionToc" >11.2 <a
-href="etrice-docse45.html#x58-10100011.2">Performing Automatic Layout</a></span>
+href="etrice-docse43.html#x56-7200011.2">Create a new model from scratch</a></span>
<br />&#x00A0;<span class="sectionToc" >11.3 <a
-href="etrice-docse46.html#x59-10200011.3">Layout Options</a></span>
+href="etrice-docse44.html#x57-7300011.3">Create your own data type</a></span>
+
+
<br />&#x00A0;<span class="sectionToc" >11.4 <a
-href="etrice-docse47.html#x60-10300011.4">Configuring Layout Options</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >11.4.1 <a
-href="etrice-docse47.html#x60-10400011.4.1" id="QQ2-60-111">The Layout View</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >11.4.2 <a
-href="etrice-docse47.html#x60-10500011.4.2" id="QQ2-60-112">Preference Page</a></span>
+href="etrice-docse45.html#x58-7400011.4">Create the model</a></span>
<br />&#x00A0;<span class="sectionToc" >11.5 <a
-href="etrice-docse48.html#x61-10800011.5">Special Layout Options</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >11.5.1 <a
-href="etrice-docse48.html#x61-10900011.5.1" id="QQ2-61-116">Layout Algorithm</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >11.5.2 <a
-href="etrice-docse48.html#x61-11000011.5.2" id="QQ2-61-117">Diagram Type</a></span>
+href="etrice-docse46.html#x59-7500011.5">Generate, build and run the model</a></span>
<br />&#x00A0;<span class="sectionToc" >11.6 <a
-href="etrice-docse49.html#x62-11100011.6">Further References</a></span>
+href="etrice-docse47.html#x60-7600011.6">Summary</a></span>
<br /><span class="chapterToc" >12 <a
-href="etrice-docch12.html#x63-11200012">eTrice Features</a></span>
+href="etrice-docch12.html#x61-7700012">ROOM Concepts</a></span>
<br />&#x00A0;<span class="sectionToc" >12.1 <a
-href="etrice-docse50.html#x64-11300012.1">Codegenerators</a></span>
+href="etrice-docse48.html#x62-7800012.1">Actors</a></span>
<br />&#x00A0;&#x00A0;<span class="subsectionToc" >12.1.1 <a
-href="etrice-docse50.html#x64-11400012.1.1" id="QQ2-64-121">Java Generator</a></span>
-
-
-
+href="etrice-docse48.html#x62-7900012.1.1" id="QQ2-62-80">Description</a></span>
<br />&#x00A0;&#x00A0;<span class="subsectionToc" >12.1.2 <a
-href="etrice-docse50.html#x64-11500012.1.2" id="QQ2-64-122">C++ Generator</a></span>
+href="etrice-docse48.html#x62-8000012.1.2" id="QQ2-62-81">Motivation</a></span>
<br />&#x00A0;&#x00A0;<span class="subsectionToc" >12.1.3 <a
-href="etrice-docse50.html#x64-11600012.1.3" id="QQ2-64-123">C Generator</a></span>
+href="etrice-docse48.html#x62-8100012.1.3" id="QQ2-62-82">Notation</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >12.1.4 <a
+href="etrice-docse48.html#x62-8200012.1.4" id="QQ2-62-84">Details</a></span>
+<br />&#x00A0;<span class="sectionToc" >12.2 <a
+href="etrice-docse49.html#x63-8600012.2">Protocols</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >12.2.1 <a
+href="etrice-docse49.html#x63-8700012.2.1" id="QQ2-63-90">Description</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >12.2.2 <a
+href="etrice-docse49.html#x63-8800012.2.2" id="QQ2-63-91">Motivation</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >12.2.3 <a
+href="etrice-docse49.html#x63-8900012.2.3" id="QQ2-63-92">Notation</a></span>
+<br />&#x00A0;<span class="sectionToc" >12.3 <a
+href="etrice-docse50.html#x64-9000012.3">Ports</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >12.3.1 <a
+href="etrice-docse50.html#x64-9100012.3.1" id="QQ2-64-94">Description</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >12.3.2 <a
+href="etrice-docse50.html#x64-9200012.3.2" id="QQ2-64-95">Motivation</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >12.3.3 <a
+href="etrice-docse50.html#x64-9300012.3.3" id="QQ2-64-96">Notation</a></span>
+<br />&#x00A0;<span class="sectionToc" >12.4 <a
+href="etrice-docse51.html#x65-9600012.4">DataClass</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >12.4.1 <a
+href="etrice-docse51.html#x65-9700012.4.1" id="QQ2-65-102">Description</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >12.4.2 <a
+href="etrice-docse51.html#x65-9800012.4.2" id="QQ2-65-103">Notation</a></span>
+<br />&#x00A0;<span class="sectionToc" >12.5 <a
+href="etrice-docse52.html#x66-9900012.5">Layering</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >12.5.1 <a
+href="etrice-docse52.html#x66-10000012.5.1" id="QQ2-66-105">Description</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >12.5.2 <a
+href="etrice-docse52.html#x66-10100012.5.2" id="QQ2-66-106">Notation</a></span>
+<br />&#x00A0;<span class="sectionToc" >12.6 <a
+href="etrice-docse53.html#x67-10200012.6">Finite State Machines</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >12.6.1 <a
+href="etrice-docse53.html#x67-10300012.6.1" id="QQ2-67-108">Description</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >12.6.2 <a
+href="etrice-docse53.html#x67-10400012.6.2" id="QQ2-67-109">Motivation</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >12.6.3 <a
+href="etrice-docse53.html#x67-10500012.6.3" id="QQ2-67-110">Notation</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >12.6.4 <a
+href="etrice-docse53.html#x67-10800012.6.4" id="QQ2-67-115">Examples</a></span>
<br /><span class="chapterToc" >13 <a
-href="etrice-docch13.html#x65-11700013">Codegenerators</a></span>
+href="etrice-docch13.html#x68-11100013">Automatic Diagram Layout with KIELER</a></span>
+<br />&#x00A0;<span class="sectionToc" >13.1 <a
+href="etrice-docse54.html#x69-11200013.1">Overview</a></span>
+<br />&#x00A0;<span class="sectionToc" >13.2 <a
+href="etrice-docse55.html#x70-11300013.2">Performing Automatic Layout</a></span>
+<br />&#x00A0;<span class="sectionToc" >13.3 <a
+href="etrice-docse56.html#x71-11400013.3">Layout Options</a></span>
+<br />&#x00A0;<span class="sectionToc" >13.4 <a
+href="etrice-docse57.html#x72-11500013.4">Configuring Layout Options</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >13.4.1 <a
+href="etrice-docse57.html#x72-11600013.4.1" id="QQ2-72-123">The Layout View</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >13.4.2 <a
+href="etrice-docse57.html#x72-11700013.4.2" id="QQ2-72-124">Preference Page</a></span>
+<br />&#x00A0;<span class="sectionToc" >13.5 <a
+href="etrice-docse58.html#x73-12000013.5">Special Layout Options</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >13.5.1 <a
+href="etrice-docse58.html#x73-12100013.5.1" id="QQ2-73-128">Layout Algorithm</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >13.5.2 <a
+href="etrice-docse58.html#x73-12200013.5.2" id="QQ2-73-129">Diagram Type</a></span>
+<br />&#x00A0;<span class="sectionToc" >13.6 <a
+href="etrice-docse59.html#x74-12300013.6">Further References</a></span>
<br /><span class="chapterToc" >14 <a
-href="etrice-docch14.html#x66-11800014">Runtimes</a></span>
+href="etrice-docch14.html#x75-12400014">eTrice Features</a></span>
+<br />&#x00A0;<span class="sectionToc" >14.1 <a
+href="etrice-docse60.html#x76-12500014.1">Codegenerators</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >14.1.1 <a
+href="etrice-docse60.html#x76-12600014.1.1" id="QQ2-76-133">Java Generator</a></span>
+
+
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >14.1.2 <a
+href="etrice-docse60.html#x76-12700014.1.2" id="QQ2-76-134">C++ Generator</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >14.1.3 <a
+href="etrice-docse60.html#x76-12800014.1.3" id="QQ2-76-135">C Generator</a></span>
<br /><span class="chapterToc" >15 <a
-href="etrice-docch15.html#x67-11900015">eTrice Models and Their Relations</a></span>
-<br />&#x00A0;<span class="sectionToc" >15.1 <a
-href="etrice-docse51.html#x68-12000015.1">The ROOM Model</a></span>
-<br />&#x00A0;<span class="sectionToc" >15.2 <a
-href="etrice-docse52.html#x69-12100015.2">The Config Model</a></span>
-<br />&#x00A0;<span class="sectionToc" >15.3 <a
-href="etrice-docse53.html#x70-12200015.3">The Physical Model</a></span>
-<br />&#x00A0;<span class="sectionToc" >15.4 <a
-href="etrice-docse54.html#x71-12300015.4">The Mapping Model</a></span>
+href="etrice-docch15.html#x77-12900015">Codegenerators</a></span>
<br /><span class="chapterToc" >16 <a
-href="etrice-docch16.html#x72-12400016">eTrice Developer&#8217;s Reference</a></span>
-<br />&#x00A0;<span class="sectionToc" >16.1 <a
-href="etrice-docse55.html#x73-12500016.1">Architecture</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >16.1.1 <a
-href="etrice-docse55.html#x73-12600016.1.1" id="QQ2-73-133">Editor and Generator Components</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >16.1.2 <a
-href="etrice-docse55.html#x73-12700016.1.2" id="QQ2-73-134">Runtimes</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >16.1.3 <a
-href="etrice-docse55.html#x73-12800016.1.3" id="QQ2-73-135">Unit Tests</a></span>
-<br />&#x00A0;<span class="sectionToc" >16.2 <a
-href="etrice-docse56.html#x74-12900016.2">Component Overview</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >16.2.1 <a
-href="etrice-docse56.html#x74-13000016.2.1" id="QQ2-74-137">Room Language Overview</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >16.2.2 <a
-href="etrice-docse56.html#x74-13600016.2.2" id="QQ2-74-143">Config Language Overview</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >16.2.3 <a
-href="etrice-docse56.html#x74-14000016.2.3" id="QQ2-74-147">Aggregation Layer Overview</a></span>
-<br />&#x00A0;&#x00A0;<span class="subsectionToc" >16.2.4 <a
-href="etrice-docse56.html#x74-14400016.2.4" id="QQ2-74-151">Generator Overview</a></span>
+href="etrice-docch16.html#x78-13000016">Runtimes</a></span>
+<br /><span class="chapterToc" >17 <a
+href="etrice-docch17.html#x79-13100017">eTrice Models and Their Relations</a></span>
+<br />&#x00A0;<span class="sectionToc" >17.1 <a
+href="etrice-docse61.html#x80-13200017.1">The ROOM Model</a></span>
+<br />&#x00A0;<span class="sectionToc" >17.2 <a
+href="etrice-docse62.html#x81-13300017.2">The Config Model</a></span>
+<br />&#x00A0;<span class="sectionToc" >17.3 <a
+href="etrice-docse63.html#x82-13400017.3">The Physical Model</a></span>
+<br />&#x00A0;<span class="sectionToc" >17.4 <a
+href="etrice-docse64.html#x83-13500017.4">The Mapping Model</a></span>
+<br /><span class="chapterToc" >18 <a
+href="etrice-docch18.html#x84-13600018">eTrice Developer&#8217;s Reference</a></span>
+<br />&#x00A0;<span class="sectionToc" >18.1 <a
+href="etrice-docse65.html#x85-13700018.1">Architecture</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >18.1.1 <a
+href="etrice-docse65.html#x85-13800018.1.1" id="QQ2-85-145">Editor and Generator Components</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >18.1.2 <a
+href="etrice-docse65.html#x85-13900018.1.2" id="QQ2-85-146">Runtimes</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >18.1.3 <a
+href="etrice-docse65.html#x85-14000018.1.3" id="QQ2-85-147">Unit Tests</a></span>
+<br />&#x00A0;<span class="sectionToc" >18.2 <a
+href="etrice-docse66.html#x86-14100018.2">Component Overview</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >18.2.1 <a
+href="etrice-docse66.html#x86-14200018.2.1" id="QQ2-86-149">Room Language Overview</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >18.2.2 <a
+href="etrice-docse66.html#x86-14800018.2.2" id="QQ2-86-155">Config Language Overview</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >18.2.3 <a
+href="etrice-docse66.html#x86-15200018.2.3" id="QQ2-86-159">Aggregation Layer Overview</a></span>
+<br />&#x00A0;&#x00A0;<span class="subsectionToc" >18.2.4 <a
+href="etrice-docse66.html#x86-15600018.2.4" id="QQ2-86-163">Generator Overview</a></span>
</div>
-
-
-
-
-
-
+
+
+
+
<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docch1.html" >next</a>] [<a
href="etrice-doc.html" >prev</a>] [<a
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse1.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse1.html
index c81f221..12f0db7 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse1.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse1.html
@@ -10,7 +10,7 @@
<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
<!-- xhtml,3,next,html -->
<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
@@ -22,14 +22,13 @@ 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>What is eTrice?</h3>
-<!--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. 7--><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.
-
-
-
+<!--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. 7--><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. 9--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docse2.html" >next</a>] [<a
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse10.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse10.html
index e7863c1..49e5e90 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse10.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse10.html
@@ -10,7 +10,7 @@
<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
<!-- xhtml,3,next,html -->
<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
@@ -23,15 +23,13 @@ href="etrice-docch5.html#etrice-docse10.html" >up</a>] </p></div>
<h3 class="sectionHead"><span class="titlemark">5.5 </span> <a
id="x17-310005.5"></a>Open the Message Sequence Chart</h3>
<!--l. 113--><p class="noindent" >During runtime the application produced a MSC and wrote it to a file. Open
-HelloWorld/tmp/log/SubSystem_HelloWorld_Async.seq using Trace2UML (it is
-open source and can be obtained from http://trace2uml.tigris.org/). You should see
-something like this:
+HelloWorld/tmp/log/SubSystem_HelloWorld_Async.seq using Trace2UML (it is open source and can be
+obtained from http://trace2uml.tigris.org/). You should see something like this:
</p><!--l. 115--><p class="noindent" ><img
src="images/015-HelloWorld09.png" alt="PIC"
/>
-
-
-
+
+
</p>
<!--l. 119--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docse11.html" >next</a>] [<a
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse11.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse11.html
index 1332088..6f8df47 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse11.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse11.html
@@ -10,7 +10,7 @@
<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
<!-- xhtml,3,next,html -->
<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
@@ -22,21 +22,17 @@ href="#tailetrice-docse11.html">tail</a>] [<a
href="etrice-docch5.html#etrice-docse11.html" >up</a>] </p></div>
<h3 class="sectionHead"><span class="titlemark">5.6 </span> <a
id="x18-320005.6"></a>Summary</h3>
-<!--l. 121--><p class="noindent" >Now you have generated your first eTrice model from scratch. You can switch
-between diagram editor and model (.room file) and you can see what will be
-generated during editing and saving the diagram files. You should take a look at the
-generated source files to understand how the state machine is generated and the life
-cycle of the application. The next tutorials will deal with more complex hierarchies in
+<!--l. 121--><p class="noindent" >Now you have generated your first eTrice model from scratch. You can switch between diagram editor and
+model (.room file) and you can see what will be generated during editing and saving the diagram files.
+You should take a look at the generated source files to understand how the state machine is generated
+and the life cycle of the application. The next tutorials will deal with more complex hierarchies in
structure and behavior.
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
</p>
<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docch6.html" >next</a>] [<a
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse12.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse12.html
index 81d933f..3bef09a 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse12.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse12.html
@@ -10,7 +10,7 @@
<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
<!-- xhtml,3,next,html -->
<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
@@ -23,19 +23,17 @@ href="etrice-docch6.html#etrice-docse12.html" >up</a>] </p></div>
<h3 class="sectionHead"><span class="titlemark">6.1 </span> <a
id="x20-340006.1"></a>Scope</h3>
<!--l. 5--><p class="noindent" >This tutorial describes how to use the <span
-class="ecti-1000">TimingService</span>, how to combine a generated
-model with manual code and how to model a hierarchical state machine. The idea of
-the tutorial is to switch a LED on and off. The behavior of the LED should be:
-blinking in a one second interval for 5 seconds, stop blinking for 5 seconds,
-blinking, stop,... For this exercise we will use a little GUI class that will be
-used in more sophisticated tutorials too. The GUI simulates a pedestrian
-traffic crossing. For now, just a simple LED simulation will be used from the
+class="ecti-1000">TimingService</span>, how to combine a generated model with manual
+code and how to model a hierarchical state machine. The idea of the tutorial is to switch
+a LED on and off. The behavior of the LED should be: blinking in a one second interval
+for 5 seconds, stop blinking for 5 seconds, blinking, stop,... For this exercise we will use a
+little GUI class that will be used in more sophisticated tutorials too. The GUI simulates
+a pedestrian traffic crossing. For now, just a simple LED simulation will be used from the
GUI.
-</p><!--l. 8--><p class="noindent" >After the exercise is created you must copy the GUI to your src directory (see
-below).
-</p><!--l. 10--><p class="noindent" >The package contains four java classes which implements a small window with a
-3-light traffic light which simulates the signals for the car traffic and a 2-light traffic
-light which simulates the pedestrian signals.
+</p><!--l. 8--><p class="noindent" >After the exercise is created you must copy the GUI to your src directory (see below).
+</p><!--l. 10--><p class="noindent" >The package contains four java classes which implements a small window with a 3-light traffic light which
+simulates the signals for the car traffic and a 2-light traffic light which simulates the pedestrian
+signals.
</p><!--l. 12--><p class="noindent" >The GUI looks like this:
</p><!--l. 14--><p class="noindent" ><img
src="images/020-Blinky08.png" alt="PIC"
@@ -46,9 +44,6 @@ src="images/020-Blinky08.png" alt="PIC"
</p><ol class="enumerate1" >
<li
class="enumerate" id="x20-34002x1">create a new model from scratch
-
-
-
</li>
<li
class="enumerate" id="x20-34004x2">define a protocol
@@ -62,6 +57,8 @@ src="images/020-Blinky08.png" alt="PIC"
<li
class="enumerate" id="x20-34010x5">use the predefined <span
class="ecti-1000">TimingService</span>
+
+
</li>
<li
class="enumerate" id="x20-34012x6">combine manual code with generated code
@@ -71,9 +68,8 @@ class="ecti-1000">TimingService</span>
</li>
<li
class="enumerate" id="x20-34016x8">open the message sequence chart</li></ol>
-
-
-
+
+
<!--l. 32--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docse13.html" >next</a>] [<a
href="etrice-docch6.html" >prev</a>] [<a
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse13.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse13.html
index 2f2a713..22a23f5 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse13.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse13.html
@@ -10,7 +10,7 @@
<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
<!-- xhtml,3,next,html -->
<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
@@ -23,24 +23,21 @@ href="etrice-docch6.html#etrice-docse13.html" >up</a>] </p></div>
<h3 class="sectionHead"><span class="titlemark">6.2 </span> <a
id="x21-350006.2"></a>Create a new model from scratch</h3>
<!--l. 34--><p class="noindent" >Remember the exercise <span
-class="ecti-1000">HelloWorld</span>. Create a new eTrice project and name it
-<span
+class="ecti-1000">HelloWorld</span>. Create a new eTrice project and name it <span
class="ecti-1000">Blinky</span>.
</p><!--l. 37--><p class="noindent" >To use the GUI please copy the package <span
class="ecti-1000">org.eclipse.etrice.tutorials.PedLightGUI </span>from
<span
class="ecti-1000">org.eclipse.etrice.tutorials/src </span>to your *src* directory <span
-class="ecti-1000">Blinky/src</span>. For this tutorial you
-must remove the error markers by editing the file <span
-class="ecti-1000">PedestrianLightWndNoTcp.java</span>.
-Appropriate comments are provided to remove the error markers for this
-turorial.
+class="ecti-1000">Blinky/src</span>. For this tutorial you must remove the
+error markers by editing the file <span
+class="ecti-1000">PedestrianLightWndNoTcp.java</span>. Appropriate comments are provided to
+remove the error markers for this turorial.
</p><!--l. 39--><p class="noindent" >Open the <span
-class="ecti-1000">Blinky.room </span>file and copy the following code into the file or use content
-assist to create the model.
-
-
-
+class="ecti-1000">Blinky.room </span>file and copy the following code into the file or use content assist to create the
+model.
+
+
</p>
<div class="verbatim" id="verbatim-3">
RoomModel&#x00A0;Blinky&#x00A0;{
@@ -58,9 +55,8 @@ RoomModel&#x00A0;Blinky&#x00A0;{
&#x00A0;<br />}
</div>
<!--l. 55--><p class="nopar" >
-
-
-
+
+
</p>
<!--l. 57--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docse14.html" >next</a>] [<a
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse14.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse14.html
index a58d773..d80eaeb 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse14.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse14.html
@@ -10,7 +10,7 @@
<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
<!-- xhtml,3,next,html -->
<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
@@ -22,8 +22,8 @@ href="#tailetrice-docse14.html">tail</a>] [<a
href="etrice-docch6.html#etrice-docse14.html" >up</a>] </p></div>
<h3 class="sectionHead"><span class="titlemark">6.3 </span> <a
id="x22-360006.3"></a>Add two additional actor classes</h3>
-<!--l. 59--><p class="noindent" >Position the cursor outside any class definition and right click the mouse within the
-editor window. From the context menu select <span
+<!--l. 59--><p class="noindent" >Position the cursor outside any class definition and right click the mouse within the editor window. From
+the context menu select <span
class="ecti-1000">Content Assist</span>
</p><!--l. 61--><p class="noindent" ><img
src="images/020-Blinky02.png" alt="PIC"
@@ -38,9 +38,8 @@ src="images/020-Blinky01.png" alt="PIC"
class="ecti-1000">BlinkyController</span>.
</p><!--l. 71--><p class="noindent" >With Ctrl+Shift+F you can beautify the model code.
</p><!--l. 73--><p class="noindent" >Save the model and visit the outline view.
-
-
-
+
+
</p>
<!--l. 75--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docse15.html" >next</a>] [<a
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse15.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse15.html
index f82dffb..783c698 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse15.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse15.html
@@ -10,7 +10,7 @@
<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
<!-- xhtml,3,next,html -->
<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
@@ -24,23 +24,22 @@ href="etrice-docch6.html#etrice-docse15.html" >up</a>] </p></div>
id="x23-370006.4"></a>Create a new protocol</h3>
<!--l. 77--><p class="noindent" >With the help of <span
class="ecti-1000">Content Assist </span>create a <span
-class="ecti-1000">ProtocolClass </span>and name it
+class="ecti-1000">ProtocolClass </span>and name it <span
+class="ecti-1000">BlinkyControlProtocol</span>. Inside the
+brackets use the <span
+class="ecti-1000">Content Assist </span>(CTRL+Space) to create two incoming messages called <span
+class="ecti-1000">start </span>and
<span
-class="ecti-1000">BlinkyControlProtocol</span>. Inside the brackets use the <span
-class="ecti-1000">Content Assist </span>(CTRL+Space) to
-create two incoming messages called <span
-class="ecti-1000">start </span>and <span
class="ecti-1000">stop</span>.
</p><!--l. 80--><p class="noindent" >The resulting code should look like this:
</p><!--l. 82--><p class="noindent" ><img
src="images/020-Blinky03.png" alt="PIC"
/>
</p><!--l. 85--><p class="noindent" >With Ctrl-Shift+F or selecting <span
-class="ecti-1000">Format </span>from the context menu you can format the
-text. Note that all elements are displayed in the outline view.
-
-
-
+class="ecti-1000">Format </span>from the context menu you can format the text. Note that all
+elements are displayed in the outline view.
+
+
</p>
<!--l. 87--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docse16.html" >next</a>] [<a
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse16.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse16.html
index 7b84b68..d4b3e76 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse16.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse16.html
@@ -10,7 +10,7 @@
<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
<!-- xhtml,3,next,html -->
<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
@@ -22,23 +22,21 @@ href="#tailetrice-docse16.html">tail</a>] [<a
href="etrice-docch6.html#etrice-docse16.html" >up</a>] </p></div>
<h3 class="sectionHead"><span class="titlemark">6.5 </span> <a
id="x24-380006.5"></a>Import the Timing Service</h3>
-<!--l. 89--><p class="noindent" >Switching on and off the LED is timing controlled. The timing service is provided
-from the model library and must be imported before it can be used from the
-model.
-</p><!--l. 91--><p class="noindent" >This is the first time you use an element from the modellib. Make sure that your Java
-Build Path has the appropriate entry to the modellib. Otherwise the jave code, which
-will be generated from the modellib, can not be referenced. (right click to <span
-class="ecti-1000">Blinky </span>and
-select properties. Select the <span
-class="ecti-1000">Java Build Path </span>tab)
+<!--l. 89--><p class="noindent" >Switching on and off the LED is timing controlled. The timing service is provided from the model library
+and must be imported before it can be used from the model.
+</p><!--l. 91--><p class="noindent" >This is the first time you use an element from the modellib. Make sure that your Java Build Path has the
+appropriate entry to the modellib. Otherwise the jave code, which will be generated from the modellib,
+can not be referenced. (right click to <span
+class="ecti-1000">Blinky </span>and select properties. Select the <span
+class="ecti-1000">Java Build Path</span>
+tab)
</p><!--l. 94--><p class="noindent" ><img
src="images/020-Blinky16.png" alt="PIC"
/>
-</p><!--l. 97--><p class="noindent" >After the build path is set up return to the model and navigate the cursor at the
-beginning of the model and import the timing service:
-
-
-
+</p><!--l. 97--><p class="noindent" >After the build path is set up return to the model and navigate the cursor at the beginning of the model
+and import the timing service:
+
+
</p>
<div class="verbatim" id="verbatim-4">
RoomModel&#x00A0;Blinky&#x00A0;{
@@ -53,37 +51,35 @@ RoomModel&#x00A0;Blinky&#x00A0;{
&#x00A0;<br />...
</div>
<!--l. 111--><p class="nopar" >
-</p><!--l. 114--><p class="noindent" >Make sure that the path fits to your folder structure. The original tutorial code is
-different due to the folder structure.
+</p><!--l. 114--><p class="noindent" >Make sure that the path fits to your folder structure. The original tutorial code is different due to the
+folder structure.
</p><!--l. 116--><p class="noindent" >Now it can be used within the model. Right click to <span
-class="ecbx-1000">SubSystem_Blinky </span>within the
-outline view. Select <span
+class="ecbx-1000">SubSystem_Blinky </span>within the outline view. Select
+<span
class="ecti-1000">Edit Structure</span>. The <span
-class="ecti-1000">application </span>is already referenced in
-the subsystem. Drag and Drop an <span
-class="ecti-1000">ActorRef </span>to the <span
-class="ecbx-1000">SubSystem_Blinky</span>
-and name it <span
+class="ecti-1000">application </span>is already referenced in the subsystem. Drag and Drop an <span
+class="ecti-1000">ActorRef </span>to
+the <span
+class="ecbx-1000">SubSystem_Blinky </span>and name it <span
class="ecti-1000">timingService</span>. From the actor class drop down list select
<span
class="ecti-1000">room.basic.service.timing.ATimingService</span>. Draw a <span
class="ecti-1000">LayerConnection </span>from <span
-class="ecti-1000">application</span>
-to each service provision point (SPP) of the <span
-class="ecti-1000">timingService</span>. The resulting structure
-should look like this:
+class="ecti-1000">application </span>to each
+service provision point (SPP) of the <span
+class="ecti-1000">timingService</span>. The resulting structure should look like
+this:
</p><!--l. 118--><p class="noindent" ><img
src="images/020-Blinky06.png" alt="PIC"
/>
-</p><!--l. 121--><p class="noindent" >The current version of eTrice does not provide a graphical element for a service
-access point (SAP). Therefore the SAPs to access the timing service must be added
-in the .room file. Open the <span
+</p><!--l. 121--><p class="noindent" >The current version of eTrice does not provide a graphical element for a service access point (SAP).
+Therefore the SAPs to access the timing service must be added in the .room file. Open the
+<span
class="ecti-1000">Blinky.room </span>file and navigate to the <span
-class="ecti-1000">Blinky </span>actor. Add
-the following line to the structure of the actor:
-
-
-
+class="ecti-1000">Blinky </span>actor. Add the following line to the structure of the
+actor:
+
+
</p>
<div class="verbatim" id="verbatim-5">
SAP&#x00A0;timer:&#x00A0;room.basic.service.timing.PTimeout&#x00A0;
@@ -95,9 +91,8 @@ class="ecti-1000">BlinkyController</span>.
</p><!--l. 129--><p class="noindent" ><img
src="images/020-Blinky07.png" alt="PIC"
/>
-
-
-
+
+
</p>
<!--l. 133--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docse17.html" >next</a>] [<a
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse17.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse17.html
index 70a994e..4c4ba81 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse17.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse17.html
@@ -10,7 +10,7 @@
<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
<!-- xhtml,3,next,html -->
<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
@@ -24,19 +24,19 @@ href="etrice-docch6.html#etrice-docse17.html" >up</a>] </p></div>
id="x25-390006.6"></a>Finish the model structure</h3>
<!--l. 135--><p class="noindent" >From the outline view right click to <span
class="ecti-1000">Blinky </span>and select <span
-class="ecti-1000">Edit Structure</span>. Drag and Drop
-an <span
-class="ecti-1000">Interface Port </span>to the boarder of the <span
-class="ecti-1000">Blinky </span>actor. Note that an interface
-port is not possible inside the actor. Name the port <span
-class="ecti-1000">ControlPort </span>and select
+class="ecti-1000">Edit Structure</span>. Drag and Drop an <span
+class="ecti-1000">Interface</span>
<span
-class="ecti-1000">BlinkyControlProtocol </span>from the drop down list. Uncheck <span
+class="ecti-1000">Port </span>to the boarder of the <span
+class="ecti-1000">Blinky </span>actor. Note that an interface port is not possible inside the
+actor. Name the port <span
+class="ecti-1000">ControlPort </span>and select <span
+class="ecti-1000">BlinkyControlProtocol </span>from the drop down list.
+Uncheck <span
class="ecti-1000">Conjugated </span>and <span
-class="ecti-1000">Is Relay</span>
-<span
-class="ecti-1000">Port</span>. Click <span
-class="ecti-1000">ok</span>. The resulting structure should look like this:
+class="ecti-1000">Is Relay Port</span>. Click <span
+class="ecti-1000">ok</span>. The resulting structure should look like
+this:
</p><!--l. 137--><p class="noindent" ><img
src="images/020-Blinky04.png" alt="PIC"
/>
@@ -45,33 +45,30 @@ class="ecti-1000">BlinkyController</span>. Make the port <span
class="ecti-1000">Conjugated</span>
</p><!--l. 142--><p class="noindent" >Keep in mind that the protocol defines <span
class="ecti-1000">start </span>and <span
-class="ecti-1000">stop </span>as incoming messages.
-<span
-class="ecti-1000">Blinky </span>receives this messages and therefore <span
+class="ecti-1000">stop </span>as incoming messages. <span
+class="ecti-1000">Blinky </span>receives this messages
+and therefore <span
class="ecti-1000">Blinky</span>&#8217;s <span
-class="ecti-1000">ControlPort </span>must be
-a regular port and <span
+class="ecti-1000">ControlPort </span>must be a regular port and <span
class="ecti-1000">BlinkyController</span>&#8217;s <span
-class="ecti-1000">ControlPort </span>must be a conjugated
-port.
+class="ecti-1000">ControlPort </span>must be a
+conjugated port.
</p><!--l. 145--><p class="noindent" >From the outline view right click <span
class="ecti-1000">BlinkyTop </span>and select <span
class="ecti-1000">Edit Structure</span>.
</p><!--l. 147--><p class="noindent" >Drag and Drop an <span
-class="ecti-1000">ActorRef </span>inside the <span
+class="ecti-1000">ActorRef </span>inside the <span
class="ecti-1000">BlinkyTop </span>actor. Name it <span
-class="ecti-1000">blinky</span>.
-From the actor class drop down list select <span
+class="ecti-1000">blinky</span>. From the actor class drop down
+list select <span
class="ecti-1000">Blinky</span>. Do the same for <span
-class="ecti-1000">controller</span>.
-Connect the ports via the binding tool. The resulting structure should look like
-this:
+class="ecti-1000">controller</span>. Connect the ports via the binding tool. The resulting
+structure should look like this:
</p><!--l. 149--><p class="noindent" ><img
src="images/020-Blinky05.png" alt="PIC"
/>
-
-
-
+
+
</p>
<!--l. 152--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docse18.html" >next</a>] [<a
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse18.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse18.html
index 273ae37..4d8c872 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse18.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse18.html
@@ -10,7 +10,7 @@
<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
<!-- xhtml,3,next,html -->
<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
@@ -22,132 +22,119 @@ href="#tailetrice-docse18.html">tail</a>] [<a
href="etrice-docch6.html#etrice-docse18.html" >up</a>] </p></div>
<h3 class="sectionHead"><span class="titlemark">6.7 </span> <a
id="x26-400006.7"></a>Implement the Behavior</h3>
-<!--l. 154--><p class="noindent" >The application should switch on and off the LED for 5 seconds in a 1 second
-interval, then stop blinking for 5 seconds and start again. To implement this behavior
-we will implement two FSMs. One for the 1 second interval and one for the 5 second
-interval. The 1 second blinking should be implemented in <span
-class="ecti-1000">Blinky</span>. The 5 second
-interval should be implemented in <span
+<!--l. 154--><p class="noindent" >The application should switch on and off the LED for 5 seconds in a 1 second interval, then stop blinking
+for 5 seconds and start again. To implement this behavior we will implement two FSMs. One for the 1
+second interval and one for the 5 second interval. The 1 second blinking should be implemented in
+<span
+class="ecti-1000">Blinky</span>. The 5 second interval should be implemented in <span
class="ecti-1000">BlinkyController</span>. First implement the
Controller.
</p><!--l. 156--><p class="noindent" >Right click to <span
class="ecti-1000">BlinkyController </span>and select <span
class="ecti-1000">Edit Behavior</span>. Drag and Drop the <span
-class="ecti-1000">Initial</span>
-<span
-class="ecti-1000">Point </span>and two <span
-class="ecti-1000">States </span>into the top state. Name the states <span
+class="ecti-1000">Initial Point </span>and two <span
+class="ecti-1000">States</span>
+into the top state. Name the states <span
class="ecti-1000">on </span>and <span
-class="ecti-1000">off</span>. Use the
-<span
+class="ecti-1000">off</span>. Use the <span
class="ecti-1000">Transition </span>tool to draw transitions from <span
class="ecti-1000">init </span>to <span
-class="ecti-1000">on </span>from <span
+class="ecti-1000">on</span>
+from <span
class="ecti-1000">on </span>to <span
-class="ecti-1000">off </span>and from <span
-class="ecti-1000">off </span>to
-<span
+class="ecti-1000">off </span>and from <span
+class="ecti-1000">off </span>to <span
class="ecti-1000">on</span>.
-</p><!--l. 160--><p class="noindent" >Open the transition dialog by double click the arrow to specify the trigger event and
-the action code of each transition. Note that the initial transition does not have a
-trigger event.
+</p><!--l. 160--><p class="noindent" >Open the transition dialog by double click the arrow to specify the trigger event and the action code of
+each transition. Note that the initial transition does not have a trigger event.
</p><!--l. 162--><p class="noindent" >The transition dialog should look like this:
</p><!--l. 164--><p class="noindent" ><img
src="images/020-Blinky09.png" alt="PIC"
/>
-</p><!--l. 167--><p class="noindent" >The defined ports will be generated as a member attribute of the actor class
-from type of the attached protocol. So, to send e message you must state
-<span
+</p><!--l. 167--><p class="noindent" >The defined ports will be generated as a member attribute of the actor class from type of the attached
+protocol. So, to send e message you must state <span
class="ecti-1000">port.message(param);</span>. In this example <span
-class="ecti-1000">ControlPort.start() </span>sends the <span
-class="ecti-1000">start </span>message
-via the <span
+class="ecti-1000">ControlPort.start()</span>
+sends the <span
+class="ecti-1000">start </span>message via the <span
class="ecti-1000">ControlPort </span>to the outside world. Assuming that <span
-class="ecti-1000">Blinky </span>is connected to this
-port, the message will start the one second blinking FSM. It is the same
-thing with the <span
-class="ecti-1000">timer</span>. The SAP is also a port and follows the same rules.
-So it is clear that <span
+class="ecti-1000">Blinky </span>is connected to
+this port, the message will start the one second blinking FSM. It is the same thing with the <span
+class="ecti-1000">timer</span>. The
+SAP is also a port and follows the same rules. So it is clear that <span
class="ecti-1000">timer.Start(5000); </span>will send the <span
-class="ecti-1000">Start </span>message to the
-timing service. The timing service will send a <span
+class="ecti-1000">Start</span>
+message to the timing service. The timing service will send a <span
class="ecti-1000">timeoutTick </span>message back after
5000ms.
-</p><!--l. 169--><p class="noindent" >Within each transition the timer will be restarted and the appropriate message will
-be sent via the <span
+</p><!--l. 169--><p class="noindent" >Within each transition the timer will be restarted and the appropriate message will be sent via the
+<span
class="ecti-1000">ControlPort</span>.
-</p><!--l. 171--><p class="noindent" >The resulting state machine should look like this: (Note that the arrows peak changes
-if the transition contains action code.)
+</p><!--l. 171--><p class="noindent" >The resulting state machine should look like this: (Note that the arrows peak changes if the transition
+contains action code.)
</p><!--l. 174--><p class="noindent" ><img
src="images/020-Blinky10.png" alt="PIC"
/>
</p><!--l. 177--><p class="noindent" >Save the diagram and inspect the <span
class="ecti-1000">Blinky.room </span>file. The <span
-class="ecti-1000">BlinkyController </span>should look
-like this:
+class="ecti-1000">BlinkyController </span>should look like
+this:
</p><!--l. 179--><p class="noindent" ><img
src="images/020-Blinky11.png" alt="PIC"
/>
</p><!--l. 182--><p class="noindent" >Now we will implement <span
class="ecti-1000">Blinky</span>. Due to the fact that <span
-class="ecti-1000">Blinky </span>interacts with the GUI
-class a view things must to be done in the model file.
-
-
-
+class="ecti-1000">Blinky </span>interacts with the GUI class a view things
+must to be done in the model file.
</p><!--l. 184--><p class="noindent" >Double click <span
class="ecti-1000">Blinky </span>in the outline view to navigate to <span
-class="ecti-1000">Blinky </span>within the model
-file. Add the following code: (type it or simply copy it from the tutorial
-project)
+class="ecti-1000">Blinky </span>within the model file. Add the following
+code: (type it or simply copy it from the tutorial project)
</p><!--l. 188--><p class="noindent" ><img
src="images/020-Blinky12.png" alt="PIC"
/>
</p><!--l. 191--><p class="noindent" ><span
-class="ecti-1000">usercode1 </span>will be generated at the beginning of the file, outside the class definition.
-<span
-class="ecti-1000">usercode2 </span>will be generated within the class definition. The code imports the GUI
-class and instantiates the window class. Attributes for the carLights and pedLights
-will be declared to easily access the lights in the state machine. The Operation
-<span
-class="ecti-1000">destroyUser() </span>is a predefined operation that will be called during shutdown of the
-application. Within this operation, cleanup of manual coded classes can be
+class="ecti-1000">usercode1 </span>will be generated at the beginning of the file, outside the class definition. <span
+class="ecti-1000">usercode2 </span>will be
+generated within the class definition. The code imports the GUI class and instantiates the window class.
+Attributes for the carLights and pedLights will be declared to easily access the lights in the state
+machine. The Operation <span
+class="ecti-1000">destroyUser() </span>is a predefined operation that will be called during
+shutdown of the application. Within this operation, cleanup of manual coded classes can be
done.
</p><!--l. 194--><p class="noindent" >Now design the FSM of <span
class="ecti-1000">Blinky</span>. Remember, as the name suggested <span
-class="ecti-1000">blinking </span>is a state
-in which the LED must be switched on and off. We will realize that by an
-hierarchical FSM in which the <span
-class="ecti-1000">blinking </span>state has two sub states.
+class="ecti-1000">blinking </span>is a state in which the LED
+must be switched on and off. We will realize that by an hierarchical FSM in which the <span
+class="ecti-1000">blinking </span>state has
+
+
+two sub states.
</p><!--l. 196--><p class="noindent" >Open the behavior diagram of <span
class="ecti-1000">Blinky </span>by right clicking the <span
-class="ecti-1000">Blinky </span>actor in the outline
-view. Create two states named <span
+class="ecti-1000">Blinky </span>actor in the outline view. Create two
+states named <span
class="ecti-1000">blinking </span>and <span
class="ecti-1000">off</span>. Right click to <span
-class="ecti-1000">blinking </span>and create a
-subgraph.
+class="ecti-1000">blinking </span>and create a subgraph.
</p><!--l. 198--><p class="noindent" ><img
src="images/020-Blinky13.png" alt="PIC"
/>
</p><!--l. 201--><p class="noindent" >Create the following state machine. The trigger events between <span
class="ecti-1000">on </span>and <span
-class="ecti-1000">off </span>are the
+class="ecti-1000">off </span>are the <span
+class="ecti-1000">timeoutTick </span>from the
<span
-class="ecti-1000">timeoutTick </span>from the <span
class="ecti-1000">timer </span>port.
</p><!--l. 203--><p class="noindent" ><img
src="images/020-Blinky14.png" alt="PIC"
/>
</p><!--l. 206--><p class="noindent" >Create entry code for both states by right clicking the state and select <span
-class="ecti-1000">Edit</span>
-<span
-class="ecti-1000">State...</span>
+class="ecti-1000">Edit State...</span>
</p><!--l. 208--><p class="noindent" >Entry code of <span
class="ecti-1000">on </span>is:
-
-
-
+
+
</p>
<div class="verbatim" id="verbatim-6">
timer.Start(1000);
@@ -156,9 +143,8 @@ timer.Start(1000);
<!--l. 213--><p class="nopar" >
</p><!--l. 216--><p class="noindent" >Entry code of <span
class="ecti-1000">off </span>is:
-
-
-
+
+
</p>
<div class="verbatim" id="verbatim-7">
timer.Start(1000);
@@ -166,31 +152,29 @@ timer.Start(1000);
</div>
<!--l. 221--><p class="nopar" >
</p><!--l. 223--><p class="noindent" >Navigate to the Top level state by double clicking the <span
-class="ecti-1000">/blinking </span>state. Create the
-following state machine:
+class="ecti-1000">/blinking </span>state. Create the following state
+machine:
</p><!--l. 225--><p class="noindent" ><img
src="images/020-Blinky15.png" alt="PIC"
/>
</p><!--l. 228--><p class="noindent" >The trigger event from <span
-class="ecti-1000">off </span>to <span
+class="ecti-1000">off </span>to <span
class="ecti-1000">blinking </span>is the <span
class="ecti-1000">start </span>event from the <span
-class="ecti-1000">ControlPort</span>.The
-trigger event from <span
+class="ecti-1000">ControlPort</span>.The trigger event from
+<span
class="ecti-1000">blinking </span>to <span
class="ecti-1000">off </span>is the <span
class="ecti-1000">stop </span>event from the <span
-class="ecti-1000">ControlPort</span>. Note: The
-transition from <span
+class="ecti-1000">ControlPort</span>. Note: The transition from <span
class="ecti-1000">blinking </span>to <span
-class="ecti-1000">off </span>is a so called group transition. This is a outgoing
-transition from a super state (state with sub states) without specifying the concrete
-leave state (state without sub states). An incoming transition to a super state is
+class="ecti-1000">off </span>is a so
+called group transition. This is a outgoing transition from a super state (state with sub states) without
+specifying the concrete leave state (state without sub states). An incoming transition to a super state is
called history transition.
</p><!--l. 231--><p class="noindent" >Action code of the init transition is:
-
-
-
+
+
</p>
<div class="verbatim" id="verbatim-8">
carLights&#x00A0;=&#x00A0;light.getCarLights();
@@ -202,21 +186,19 @@ carLights&#x00A0;=&#x00A0;light.getCarLights();
</p><!--l. 240--><p class="noindent" >Action code from <span
class="ecti-1000">blinking </span>to <span
class="ecti-1000">off </span>is:
-
-
-
+
+
</p>
<div class="verbatim" id="verbatim-9">
timer.Kill();
&#x00A0;<br />carLights.setState(TrafficLight3.OFF);
</div>
<!--l. 245--><p class="nopar" >
-</p><!--l. 247--><p class="noindent" >The model is complete now. You can run and debug the model as described in
-getting started. Have fun.
+</p><!--l. 247--><p class="noindent" >The model is complete now. You can run and debug the model as described in getting started. Have
+fun.
</p><!--l. 249--><p class="noindent" >The complete model can be found in /org.eclipse.etrice.tutorials/model/Blinky.
-
-
-
+
+
</p>
<!--l. 251--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docse19.html" >next</a>] [<a
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse19.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse19.html
index 5c62c43..0223ad9 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse19.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse19.html
@@ -10,7 +10,7 @@
<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
<!-- xhtml,3,next,html -->
<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
@@ -22,21 +22,17 @@ href="#tailetrice-docse19.html">tail</a>] [<a
href="etrice-docch6.html#etrice-docse19.html" >up</a>] </p></div>
<h3 class="sectionHead"><span class="titlemark">6.8 </span> <a
id="x27-410006.8"></a>Summary</h3>
-<!--l. 253--><p class="noindent" >Run the model and take a look at the generated MSCs. Inspect the generated code
-to understand the runtime model of eTrice. Within this tutorial you have
-learned how to create a hierarchical FSM with group transitions and history
-transitions and you have used entry code. You are now familiar with the
-basic features of eTrice. The further tutorials will take this knowledge as a
+<!--l. 253--><p class="noindent" >Run the model and take a look at the generated MSCs. Inspect the generated code to understand the
+runtime model of eTrice. Within this tutorial you have learned how to create a hierarchical FSM
+with group transitions and history transitions and you have used entry code. You are now
+familiar with the basic features of eTrice. The further tutorials will take this knowledge as a
precondition.
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
</p>
<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docch7.html" >next</a>] [<a
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse2.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse2.html
index 9b12f7a..5849534 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse2.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse2.html
@@ -10,7 +10,7 @@
<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
<!-- xhtml,3,next,html -->
<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
@@ -27,8 +27,7 @@ href="etrice-docch1.html#etrice-docse2.html" >up</a>] </p></div>
<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 class="itemize">by explicit modeling of hierarchical Actor containment, layering and inheritance</li></ul>
</li>
<li class="itemize">behavioral complexity
<ul class="itemize2">
@@ -36,24 +35,19 @@ href="etrice-docch1.html#etrice-docse2.html" >up</a>] </p></div>
</li>
<li class="itemize">teamwork complexity
<ul class="itemize2">
- <li class="itemize">because loosely coupled Actors provide a natural way to structure
- team work
+ <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 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>
@@ -61,15 +55,15 @@ href="etrice-docch1.html#etrice-docse2.html" >up</a>] </p></div>
</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 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 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-docch2.html" >next</a>] [<a
href="etrice-docse1.html" >prev</a>] [<a
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse20.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse20.html
index fb8b388..6cbf935 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse20.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse20.html
@@ -10,7 +10,7 @@
<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
<!-- xhtml,3,next,html -->
<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
@@ -22,10 +22,9 @@ href="#tailetrice-docse20.html">tail</a>] [<a
href="etrice-docch7.html#etrice-docse20.html" >up</a>] </p></div>
<h3 class="sectionHead"><span class="titlemark">7.1 </span> <a
id="x29-430007.1"></a>Scope</h3>
-<!--l. 5--><p class="noindent" >This tutorial shows how data will be sent in a eTrice model. Within the
-example you will create two actors (MrPing and MrPong). MrPong will
-simply loop back every data it received. MrPing will send data and verify the
-result.
+<!--l. 5--><p class="noindent" >This tutorial shows how data will be sent in a eTrice model. Within the example you will create two
+actors (MrPing and MrPong). MrPong will simply loop back every data it received. MrPing will send
+data and verify the result.
</p><!--l. 8--><p class="noindent" >You will perform the following steps:
</p><!--l. 10--><p class="noindent" >
</p><ol class="enumerate1" >
@@ -43,15 +42,11 @@ result.
</li>
<li
class="enumerate" id="x29-43010x5">create two simple state machines
-
-
-
</li>
<li
class="enumerate" id="x29-43012x6">build and run the model</li></ol>
-
-
-
+
+
<!--l. 19--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docse21.html" >next</a>] [<a
href="etrice-docch7.html" >prev</a>] [<a
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse21.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse21.html
index 5eb952a..1fc2327 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse21.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse21.html
@@ -10,7 +10,7 @@
<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
<!-- xhtml,3,next,html -->
<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
@@ -23,14 +23,13 @@ href="etrice-docch7.html#etrice-docse21.html" >up</a>] </p></div>
<h3 class="sectionHead"><span class="titlemark">7.2 </span> <a
id="x30-440007.2"></a>Create a new model from scratch</h3>
<!--l. 21--><p class="noindent" >Remember exercise <span
-class="ecti-1000">HelloWorld</span>. Create a new eTrice project and name it
+class="ecti-1000">HelloWorld</span>. Create a new eTrice project and name it <span
+class="ecti-1000">SendingData</span>. Open the
<span
-class="ecti-1000">SendingData</span>. Open the <span
-class="ecti-1000">SendingData.room </span>file and copy the following code into the
-file or use content assist to create the model.
-
-
-
+class="ecti-1000">SendingData.room </span>file and copy the following code into the file or use content assist to create the
+model.
+
+
</p>
<div class="verbatim" id="verbatim-10">
RoomModel&#x00A0;SendingData&#x00A0;{
@@ -45,9 +44,8 @@ RoomModel&#x00A0;SendingData&#x00A0;{
&#x00A0;<br />}
</div>
<!--l. 37--><p class="nopar" >
-
-
-
+
+
</p>
<!--l. 39--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docse22.html" >next</a>] [<a
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse22.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse22.html
index 044f99a..612147c 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse22.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse22.html
@@ -10,7 +10,7 @@
<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
<!-- xhtml,3,next,html -->
<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
@@ -22,20 +22,18 @@ href="#tailetrice-docse22.html">tail</a>] [<a
href="etrice-docch7.html#etrice-docse22.html" >up</a>] </p></div>
<h3 class="sectionHead"><span class="titlemark">7.3 </span> <a
id="x31-450007.3"></a>Add a data class</h3>
-<!--l. 41--><p class="noindent" >Position the cursor outside any class definition and right click the mouse
-within the editor window. From the context menu select <span
-class="ecti-1000">Content Assist </span>(or
-Ctrl+Space).
+<!--l. 41--><p class="noindent" >Position the cursor outside any class definition and right click the mouse within the editor window. From
+the context menu select <span
+class="ecti-1000">Content Assist </span>(or Ctrl+Space).
</p><!--l. 43--><p class="noindent" ><img
src="images/025-SendingData01.png" alt="PIC"
/>
</p><!--l. 46--><p class="noindent" >Select <span
class="ecti-1000">DataClass - data class skeleton </span>and name it <span
-class="ecti-1000">DemoData</span>. Remove the
-operations and add the following Attributes:
-
-
-
+class="ecti-1000">DemoData</span>. Remove the operations and add the
+following Attributes:
+
+
</p>
<div class="verbatim" id="verbatim-11">
DataClass&#x00A0;DemoData&#x00A0;{
@@ -46,11 +44,10 @@ DataClass&#x00A0;DemoData&#x00A0;{
&#x00A0;<br />}
</div>
<!--l. 56--><p class="nopar" >
-</p><!--l. 58--><p class="noindent" >Save the model and visit the outline view. Note that the outline view contains all
-data elements as defined in the model.
-
-
-
+</p><!--l. 58--><p class="noindent" >Save the model and visit the outline view. Note that the outline view contains all data elements as
+defined in the model.
+
+
</p>
<!--l. 61--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docse23.html" >next</a>] [<a
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse23.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse23.html
index c7bc35f..dac38b6 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse23.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse23.html
@@ -10,7 +10,7 @@
<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
<!-- xhtml,3,next,html -->
<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
@@ -25,11 +25,10 @@ href="etrice-docch7.html#etrice-docse23.html" >up</a>] </p></div>
<!--l. 63--><p class="noindent" >With the help of <span
class="ecti-1000">Content Assist </span>create a <span
class="ecti-1000">ProtocolClass </span>and name it <span
-class="ecti-1000">PingPongProtocol</span>.
-Create the following messages:
-
-
-
+class="ecti-1000">PingPongProtocol</span>. Create the
+following messages:
+
+
</p>
<div class="verbatim" id="verbatim-12">
ProtocolClass&#x00A0;PingPongProtocol&#x00A0;{
@@ -44,9 +43,8 @@ ProtocolClass&#x00A0;PingPongProtocol&#x00A0;{
&#x00A0;<br />}
</div>
<!--l. 76--><p class="nopar" >
-
-
-
+
+
</p>
<!--l. 78--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docse24.html" >next</a>] [<a
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse24.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse24.html
index b897e81..78e003a 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse24.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse24.html
@@ -10,7 +10,7 @@
<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
<!-- xhtml,3,next,html -->
<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
@@ -24,12 +24,11 @@ href="etrice-docch7.html#etrice-docse24.html" >up</a>] </p></div>
id="x33-470007.5"></a>Create MrPing and MrPong Actors</h3>
<!--l. 80--><p class="noindent" >With the help of <span
class="ecti-1000">Content Assist </span>create two new actor classes and name them <span
-class="ecti-1000">MrPing</span>
-and <span
-class="ecti-1000">MrPong</span>. The resulting model should look like this:
-
-
-
+class="ecti-1000">MrPing </span>and <span
+class="ecti-1000">MrPong</span>. The
+resulting model should look like this:
+
+
</p>
<div class="verbatim" id="verbatim-13">
RoomModel&#x00A0;SendingData&#x00A0;{
@@ -77,16 +76,12 @@ RoomModel&#x00A0;SendingData&#x00A0;{
&#x00A0;<br />
</div>
<!--l. 126--><p class="nopar" >
-
-
-
</p><!--l. 128--><p class="noindent" >The outline view should look like this:
</p><!--l. 130--><p class="noindent" ><img
src="images/025-SendingData03.png" alt="PIC"
/>
-
-
-
+
+
</p>
<!--l. 133--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docse25.html" >next</a>] [<a
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse25.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse25.html
index b0e532d..e414cb3 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse25.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse25.html
@@ -10,7 +10,7 @@
<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
<!-- xhtml,3,next,html -->
<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
@@ -22,14 +22,13 @@ href="#tailetrice-docse25.html">tail</a>] [<a
href="etrice-docch7.html#etrice-docse25.html" >up</a>] </p></div>
<h3 class="sectionHead"><span class="titlemark">7.6 </span> <a
id="x34-480007.6"></a>Define Actor Structure and Behavior</h3>
-<!--l. 135--><p class="noindent" >Save the model and visit the outline view. Within the outline view, right click on the
-<span
-class="ecti-1000">MrPong </span>actor and select <span
+<!--l. 135--><p class="noindent" >Save the model and visit the outline view. Within the outline view, right click on the <span
+class="ecti-1000">MrPong </span>actor and
+select <span
class="ecti-1000">Edit Structure</span>. Select an <span
-class="ecti-1000">Interface Port </span>from the
-toolbox and add it to MrPong. Name the Port <span
-class="ecti-1000">PingPongPort </span>and select the
+class="ecti-1000">Interface Port </span>from the toolbox and add it to MrPong. Name the Port
<span
+class="ecti-1000">PingPongPort </span>and select the <span
class="ecti-1000">PingPongProtocol</span>.
</p><!--l. 137--><p class="noindent" ><img
src="images/025-SendingData02.png" alt="PIC"
@@ -41,8 +40,8 @@ class="ecti-1000">conjugated</span>
<h4 class="subsectionHead"><span class="titlemark">7.6.1 </span> <a
id="x34-490007.6.1"></a>Define MrPongs behavior</h4>
<!--l. 144--><p class="noindent" >Within the outline view, right click MrPong and select <span
-class="ecti-1000">Edit Behavior</span>. Create the
-following state machine:
+class="ecti-1000">Edit Behavior</span>. Create the following state
+machine:
</p><!--l. 146--><p class="noindent" ><img
src="images/025-SendingData04.png" alt="PIC"
/>
@@ -60,17 +59,16 @@ src="images/025-SendingData06.png" alt="PIC"
</p>
<h4 class="subsectionHead"><span class="titlemark">7.6.2 </span> <a
id="x34-500007.6.2"></a>Define MrPing behavior</h4>
-<!--l. 163--><p class="noindent" >Within the outline view double click MrPing. Navigate the cursor to the behavior of
-MrPing. With the help of content assist create a new operation.
+<!--l. 163--><p class="noindent" >Within the outline view double click MrPing. Navigate the cursor to the behavior of MrPing. With the
+help of content assist create a new operation.
</p><!--l. 165--><p class="noindent" ><img
src="images/025-SendingData07.png" alt="PIC"
/>
</p><!--l. 168--><p class="noindent" >Name the operation <span
class="ecti-1000">printData </span>and define the DemoData as a parameter.
</p><!--l. 170--><p class="noindent" >Fill in the following code:
-
-
-
+
+
</p>
<div class="verbatim" id="verbatim-14">
Operation&#x00A0;printData(d:&#x00A0;DemoData)&#x00A0;:&#x00A0;void&#x00A0;{
@@ -83,8 +81,8 @@ Operation&#x00A0;printData(d:&#x00A0;DemoData)&#x00A0;:&#x00A0;void&#x00A0;{
&#x00A0;<br />}
</div>
<!--l. 182--><p class="nopar" >
-</p><!--l. 185--><p class="noindent" >For MrPing create the following state machine: (Remember that you can copy and
-paste the action code from the tutorial directory.)
+</p><!--l. 185--><p class="noindent" >For MrPing create the following state machine: (Remember that you can copy and paste the action code
+from the tutorial directory.)
</p><!--l. 188--><p class="noindent" ><img
src="images/025-SendingData08.png" alt="PIC"
/>
@@ -109,9 +107,8 @@ class="ecti-1000">wait2</span>:
</p><!--l. 210--><p class="noindent" ><img
src="images/025-SendingData12.png" alt="PIC"
/>
-
-
-
+
+
</p>
<!--l. 213--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docse26.html" >next</a>] [<a
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse26.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse26.html
index 3fbe637..e879b6c 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse26.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse26.html
@@ -10,7 +10,7 @@
<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
<!-- xhtml,3,next,html -->
<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
@@ -22,8 +22,8 @@ href="#tailetrice-docse26.html">tail</a>] [<a
href="etrice-docch7.html#etrice-docse26.html" >up</a>] </p></div>
<h3 class="sectionHead"><span class="titlemark">7.7 </span> <a
id="x35-510007.7"></a>Define the top level</h3>
-<!--l. 215--><p class="noindent" >Open the Structure from SendingDataTop and add MrPing and MrPong as a
-reference. Connect the ports.
+<!--l. 215--><p class="noindent" >Open the Structure from SendingDataTop and add MrPing and MrPong as a reference. Connect the
+ports.
</p><!--l. 217--><p class="noindent" ><img
src="images/025-SendingData13.png" alt="PIC"
/>
@@ -31,11 +31,9 @@ src="images/025-SendingData13.png" alt="PIC"
<div class="flushleft"
>
<!--l. 220--><p class="noindent" >
-The model is finished now and can be found in
-/org.eclipse.etrice.tutorials/model/SendingData.</p></div>
-
-
-
+The model is finished now and can be found in /org.eclipse.etrice.tutorials/model/SendingData.</p></div>
+
+
<!--l. 222--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docse27.html" >next</a>] [<a
href="etrice-docse25.html" >prev</a>] [<a
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse27.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse27.html
index a28d9a5..ad1a470 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse27.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse27.html
@@ -10,7 +10,7 @@
<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
<!-- xhtml,3,next,html -->
<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
@@ -23,12 +23,11 @@ href="etrice-docch7.html#etrice-docse27.html" >up</a>] </p></div>
<h3 class="sectionHead"><span class="titlemark">7.8 </span> <a
id="x36-520007.8"></a>Generate and run the model</h3>
<!--l. 224--><p class="noindent" >Generate the code by right click to <span
-class="ecbx-1000">gen_SendingData.launch </span>and run it as
-<span
-class="ecbx-1000">gen_SendingData</span>. Run the model. The output should look like this:
-
-
-
+class="ecbx-1000">gen_SendingData.launch </span>and run it as <span
+class="ecbx-1000">gen_SendingData</span>. Run
+the model. The output should look like this:
+
+
</p>
<div class="verbatim" id="verbatim-15">
type&#x00A0;&#8217;quit&#8217;&#x00A0;to&#x00A0;exit
@@ -75,17 +74,13 @@ type&#x00A0;&#8217;quit&#8217;&#x00A0;to&#x00A0;exit
&#x00A0;<br />d.float64Val:&#x00A0;3,141234
&#x00A0;<br />d.int8Array:&#x00A0;100&#x00A0;101&#x00A0;102&#x00A0;103&#x00A0;104&#x00A0;105&#x00A0;106&#x00A0;107&#x00A0;108&#x00A0;109
&#x00A0;<br />d.stringVal:&#x00A0;some&#x00A0;contents
-
-
-
&#x00A0;<br />/SendingData_SubSystem/SendigDataTopRef/ref0&#x00A0;-&#x003E;&#x00A0;waitForPong
&#x00A0;<br />quit
&#x00A0;<br />echo:&#x00A0;quit
</div>
<!--l. 275--><p class="nopar" >
-
-
-
+
+
</p>
<!--l. 277--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docse28.html" >next</a>] [<a
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse28.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse28.html
index a7bf3da..28dcb5c 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse28.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse28.html
@@ -10,7 +10,7 @@
<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
<!-- xhtml,3,next,html -->
<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
@@ -23,50 +23,42 @@ href="etrice-docch7.html#etrice-docse28.html" >up</a>] </p></div>
<h3 class="sectionHead"><span class="titlemark">7.9 </span> <a
id="x37-530007.9"></a>Summary</h3>
<!--l. 279--><p class="noindent" >Within the first loop an integer value will be incremented by <span
-class="ecti-1000">MrPong </span>and
-sent back to <span
-class="ecti-1000">MrPing</span>. As long as the guard is true <span
-class="ecti-1000">MrPing </span>sends back the
-value.
+class="ecti-1000">MrPong </span>and sent back to <span
+class="ecti-1000">MrPing</span>. As long
+as the guard is true <span
+class="ecti-1000">MrPing </span>sends back the value.
</p><!--l. 281--><p class="noindent" >Within the <span
class="ecti-1000">next </span>transition, <span
-class="ecti-1000">MrPing </span>creates a data class and sends the default values.
-Then <span
-class="ecti-1000">MrPing </span>changes the values and sends the class again. At this point you
-should note that during the send operation, a copy of the data class will be
-created and sent. Otherwise it would not be possible to send the same object
-two times, even more it would not be possible to send a stack object at
-all. This type of data passing is called <span
-class="ecti-1000">sending data by value</span>. However, for
-performance reasons some applications requires <span
-class="ecti-1000">sending data by reference</span>. In this
-case the user is responsible for the life cycle of the object. In Java the VM
-takes care of the life cycle of an object. This is not the case for C/C++.
-Consider that a object which is created within a transition of a state machine
-will be destroyed when the transition is finished. The receiving FSM would
-receive an invalid reference. Therefore care must be taken when sending
+class="ecti-1000">MrPing </span>creates a data class and sends the default values. Then <span
+class="ecti-1000">MrPing</span>
+changes the values and sends the class again. At this point you should note that during the
+send operation, a copy of the data class will be created and sent. Otherwise it would not
+be possible to send the same object two times, even more it would not be possible to send
+a stack object at all. This type of data passing is called <span
+class="ecti-1000">sending data by value</span>. However,
+for performance reasons some applications requires <span
+class="ecti-1000">sending data by reference</span>. In this case
+the user is responsible for the life cycle of the object. In Java the VM takes care of the life
+cycle of an object. This is not the case for C/C++. Consider that a object which is created
+within a transition of a state machine will be destroyed when the transition is finished. The
+receiving FSM would receive an invalid reference. Therefore care must be taken when sending
references.
</p><!--l. 284--><p class="noindent" >For sending data by reference you simply have to add the keyword <span
-class="ecti-1000">ref </span>to the protocol
-definition.
-
-
-
+class="ecti-1000">ref </span>to the protocol definition.
+
+
</p>
<div class="verbatim" id="verbatim-16">
Message&#x00A0;ping(data:&#x00A0;DemoData&#x00A0;ref)
</div>
<!--l. 286--><p class="nopar" >
</p><!--l. 288--><p class="noindent" >Make the test and inspect the console output.
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
</p>
<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docch8.html" >next</a>] [<a
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse29.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse29.html
index 26f9990..0d35315 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse29.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse29.html
@@ -10,7 +10,7 @@
<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
<!-- xhtml,3,next,html -->
<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
@@ -22,53 +22,46 @@ href="#tailetrice-docse29.html">tail</a>] [<a
href="etrice-docch8.html#etrice-docse29.html" >up</a>] </p></div>
<h3 class="sectionHead"><span class="titlemark">8.1 </span> <a
id="x39-550008.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
+<!--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. 7--><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. 9--><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="ecti-1000">REQUEST </span>button to
-start a FSM, which controls the traffic lights.
+</p><!--l. 7--><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. 9--><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="ecti-1000">REQUEST </span>button to start a FSM, which controls the traffic
+lights.
</p><!--l. 11--><p class="noindent" ><img
src="images/020-Blinky08.png" alt="PIC"
/>
</p><!--l. 14--><p class="noindent" >The <span
-class="ecti-1000">REQUEST </span>must lead to a model message which starts the activity of the
-lights.
-</p><!--l. 16--><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:
+class="ecti-1000">REQUEST </span>must lead to a model message which starts the activity of the lights.
+</p><!--l. 16--><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="x39-55002x1">specify the messages (within a protocol) which should be sent into the
- model
+ class="enumerate" id="x39-55002x1">specify the messages (within a protocol) which should be sent into the model
</li>
<li
- class="enumerate" id="x39-55004x2">model an actor with a port (which uses the specified protocol) and connect
- the port to the receiver
+ class="enumerate" id="x39-55004x2">model an actor with a port (which uses the specified protocol) and connect the port to the
+ receiver
</li>
<li
class="enumerate" id="x39-55006x3">the external code should know the port (import of the port class)
-
-
-
</li>
<li
- class="enumerate" id="x39-55008x4">the external code should provide a registration method, so that the actor
- is able to allow access to this port
+ class="enumerate" id="x39-55008x4">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="x39-55010x5">the port can be used from the external code</li></ol>
-
-
-
+
+
<!--l. 25--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docse30.html" >next</a>] [<a
href="etrice-docch8.html" >prev</a>] [<a
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse3.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse3.html
index 85dcd63..55deb4b 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse3.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse3.html
@@ -10,7 +10,7 @@
<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
<!-- xhtml,3,next,html -->
<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
@@ -23,16 +23,11 @@ href="etrice-docch2.html#etrice-docse3.html" >up</a>] </p></div>
<h3 class="sectionHead"><span class="titlemark">2.1 </span> <a
id="x7-60002.1"></a>Scope of ROOM</h3>
<!--l. 5--><p class="noindent" >This chapter will give a rough overview of what ROOM (<img
-src="etrice-doc0x.png" alt="R
- " class="b" /> eal time <img
-src="etrice-doc1x.png" alt="O
- " class="b" /> bject <img
-src="etrice-doc2x.png" alt="O
- " class="b" />
-riented <img
-src="etrice-doc3x.png" alt="M
- " class="b" /> odeling) is and what it is good for. It will try to answer the following
-questions: </p>
+src="etrice-doc0x.png" alt="R " class="b" /> eal time <img
+src="etrice-doc1x.png" alt="O " class="b" /> bject <img
+src="etrice-doc2x.png" alt="O " class="b" /> riented <img
+src="etrice-doc3x.png" alt="M " class="b" /> 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>
@@ -43,49 +38,48 @@ questions: </p>
<li class="itemize">What are the benefits of ROOM?
</li>
<li class="itemize">Which consequences must be taken into account?</li></ul>
-
-
-
+
+
<!--l. 14--><p class="noindent" >
</p>
<h4 class="subsectionHead"><span class="titlemark">2.1.1 </span> <a
id="x7-70002.1.1"></a>Where does it come from?</h4>
-<!--l. 16--><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
+<!--l. 16--><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. 18--><p class="noindent" >Bran Selic, Garth Gullekson and Paul T. Ward have published the concepts 1994 in
-the book <span
-class="ecbx-1000">Real-Time Object-Oriented Modeling</span>. The company <span
-class="ecti-1000">object time</span>
-<sup class="textsuperscript"><span
-class="ecrm-0900">TM</span></sup>developed a ROOM tool which was taken over by <span
-class="ecti-1000">Rational SW </span><sup class="textsuperscript"><span
-class="ecrm-0900">TM</span></sup>and later
-on by <span
+</p><!--l. 18--><p class="noindent" >Bran Selic, Garth Gullekson and Paul T. Ward have published the concepts 1994 in the book <span
+class="ecbx-1000">Real-Time</span>
+<span
+class="ecbx-1000">Object-Oriented Modeling</span>. The company <span
+class="ecti-1000">object time </span><sup class="textsuperscript"><span
+class="ecrm-0900">TM</span></sup>developed a ROOM tool which was
+taken over by <span
+class="ecti-1000">Rational SW </span><sup class="textsuperscript"><span
+class="ecrm-0900">TM</span></sup>and later on by <span
class="ecti-1000">IBM </span><sup class="textsuperscript"><span
class="ecrm-0900">TM</span></sup>. The company <span
-class="ecti-1000">Protos Software Gmbh </span><sup class="textsuperscript"><span
-class="ecrm-0900">TM</span></sup>also developed a
-ROOM tool called <span
+class="ecti-1000">Protos Software</span>
+<span
+class="ecti-1000">Gmbh </span><sup class="textsuperscript"><span
+class="ecrm-0900">TM</span></sup>also developed a ROOM tool called <span
class="ecti-1000">Trice </span><sup class="textsuperscript"><span
-class="ecrm-0900">TM</span></sup>for control software for production machines and
-automotive systems. <span
+class="ecrm-0900">TM</span></sup>for control software for production
+machines and automotive systems. <span
class="ecti-1000">Trice </span><sup class="textsuperscript"><span
class="ecrm-0900">TM</span></sup>is the predecessor of eTrice (see Introduction to
eTrice).
-</p><!--l. 21--><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. 21--><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. 24--><p class="noindent" >
</p>
<h4 class="subsectionHead"><span class="titlemark">2.1.2 </span> <a
id="x7-80002.1.2"></a>Which kind of SW-Systems will be addressed?</h4>
-<!--l. 26--><p class="noindent" >As mentioned before ROOM addresses distributed, event driven, real time systems.
-But what is a *real time system*? ROOM defines a set of properties which are
-typical for a real time system. These properties are: </p>
+<!--l. 26--><p class="noindent" >As mentioned before ROOM addresses distributed, event driven, real time systems. But what is a *real
+time system*? 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>
@@ -98,52 +92,47 @@ typical for a real time system. These properties are: </p>
<li class="itemize">Distribution
</li>
<li class="itemize">Reliability</li></ul>
-
-
-
-<!--l. 36--><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. 38--><p class="noindent" >As an example take a look at a washing machine. The system has to react on 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 in 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
+<!--l. 36--><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. 38--><p class="noindent" >As an example take a look at a washing machine. The system has to react on 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 in 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. 42--><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 *run to completion* context for calculating
-an image processing algorithm or a PID controller.
+
+
+</p><!--l. 42--><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 *run to completion* context for
+calculating an image processing algorithm or a PID controller.
</p><!--l. 44--><p class="noindent" >
</p>
<h4 class="subsectionHead"><span class="titlemark">2.1.3 </span> <a
id="x7-90002.1.3"></a>What is the relation between OOP and ROOM?</h4>
-<!--l. 46--><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. As the picture shows, the classic 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
+<!--l. 46--><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. As the
+picture shows, the classic 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. 48--><p class="noindent" ><img
src="images/010-RoomIntroduction01.png" alt="PIC"
/>
-</p><!--l. 51--><p class="noindent" >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. 51--><p class="noindent" >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. 53--><p class="noindent" ><img
src="images/010-RoomIntroduction02.png" alt="PIC"
/>
-</p><!--l. 56--><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 *run to completion* semantic. That makes developing of
-business logic easy and safe (see basic concepts). The logical machine provides
-an encapsulation shell including concurrency issues (see chapter <span
+</p><!--l. 56--><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 *run to completion*
+semantic. That makes developing of business logic easy and safe (see basic concepts). The logical
+machine provides an encapsulation shell including concurrency issues (see chapter <span
class="ecbx-1000">Run to</span>
<span
class="ecbx-1000">completion</span>).
@@ -151,48 +140,45 @@ class="ecbx-1000">completion</span>).
src="images/010-RoomIntroduction03.png" alt="PIC"
/>
</p><!--l. 61--><p class="noindent" >This thinking of an object is much more general than the classic one.
-
-
-
</p><!--l. 63--><p class="noindent" >
</p>
<h4 class="subsectionHead"><span class="titlemark">2.1.4 </span> <a
id="x7-100002.1.4"></a>What are the benefits of ROOM?</h4>
-<!--l. 65--><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.
+<!--l. 65--><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. 67--><p class="noindent" >In detail: </p>
<ul class="itemize1">
- <li class="itemize">ROOM models contain well defined interfaces (protocols), which makes it
- easy to reuse components in different applications or e.g. in a test harness.
+ <li class="itemize">ROOM models contain well defined interfaces (protocols), which makes it easy to reuse
+ 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 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 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>
+ <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. 75--><p class="noindent" >
</p>
<h4 class="subsectionHead"><span class="titlemark">2.1.5 </span> <a
id="x7-110002.1.5"></a>Which consequences must be taken into account?</h4>
-<!--l. 77--><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. 79--><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.
-
-
-
+<!--l. 77--><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. 79--><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. 81--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docse4.html" >next</a>] [<a
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse30.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse30.html
index 0cf7604..680a047 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse30.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse30.html
@@ -10,7 +10,7 @@
<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
<!-- xhtml,3,next,html -->
<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
@@ -24,30 +24,27 @@ href="etrice-docch8.html#etrice-docse30.html" >up</a>] </p></div>
id="x40-560008.2"></a>Setup the model</h3>
<ul class="itemize1">
<li class="itemize">Use the <span
-class="ecti-1000">New Model Wizzard </span>to create a new eTrice project and name it
- <span
+class="ecti-1000">New Model Wizzard </span>to create a new eTrice project and name it <span
class="ecti-1000">PedLightsController</span>.
</li>
- <li class="itemize">Copy the package <span
-class="ecti-1000">org.eclipse.etrice.tutorials.PedLightGUI </span>to your <span
-class="ecti-1000">src</span>
- directory (see blinky tutorial).
+ <li class="itemize">Copy the package <span
+class="ecti-1000">org.eclipse.etrice.tutorials.PedLightGUI </span>to your <span
+class="ecti-1000">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 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. 31--><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>
+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"
@@ -66,30 +63,28 @@ import&#x00A0;room.basic.service.timing.*&#x00A0;from
<!--l. 49--><p class="noindent" ><img
src="images/030-PedLights01.png" alt="PIC"
/> The <span
-class="ecti-1000">GuiAdapter </span>represents the interface to the external code. It registers its
-<span
-class="ecti-1000">ControlPort </span>by the external code.
+class="ecti-1000">GuiAdapter </span>represents the interface to the external code. It registers its <span
+class="ecti-1000">ControlPort </span>by the
+external code.
</p><!--l. 53--><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.
+ /> 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. 57--><p class="noindent" ><img
src="images/030-PedLights03.png" alt="PIC"
/> The <span
class="ecti-1000">Controller </span>receives the <span
-class="ecti-1000">start </span>message and controls the timing of the lights.
-Note that the <span
-class="ecti-1000">start </span>message will be sent from the external code whenever the
-<span
-class="ecti-1000">REQUEST </span>button is pressed.
+class="ecti-1000">start </span>message and controls the timing of the lights. Note that
+the <span
+class="ecti-1000">start </span>message will be sent from the external code whenever the <span
+class="ecti-1000">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="x40-56002x1">PedControlProtocol =&#x003E; notice that the start message is defined as
- usual
+ class="enumerate" id="x40-56002x1">PedControlProtocol =&#x003E; notice that the start message is defined as usual
</li>
<li
class="enumerate" id="x40-56004x2">Initial transition of the <span
@@ -98,31 +93,26 @@ class="ecti-1000">GuiAdapter </span>=&#x003E; see the registration
<li
class="enumerate" id="x40-56006x3">The <span
class="ecti-1000">Controller </span>=&#x003E; notice that the <span
-class="ecti-1000">Controller </span>receives the external
- message (not the <span
+class="ecti-1000">Controller </span>receives the external message (not the
+ <span
class="ecti-1000">GuiAdapter</span>). The <span
-class="ecti-1000">GuiAdapter </span>just provides its port
- and handles the incoming messages.
+class="ecti-1000">GuiAdapter </span>just provides its port and handles the incoming messages.
</li>
<li
- class="enumerate" id="x40-56008x4">Visit the hand written code =&#x003E; see the import statement of the
- protocol class and the usage of the port.</li></ol>
-
-
-
+ class="enumerate" id="x40-56008x4">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
+ <li class="itemize">Take a look at the generated MSC =&#x003E; notice that the start message will shown as if the
+ <span
class="ecti-1000">GuiAdapter </span>had sent it.</li></ul>
<!--l. 73--><p class="noindent" ><img
src="images/030-PedLights04.png" alt="PIC"
/>
-
-
-
+
+
</p>
<!--l. 76--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docse31.html" >next</a>] [<a
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse31.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse31.html
index 1956e96..922e177 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse31.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse31.html
@@ -10,7 +10,7 @@
<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
<!-- xhtml,3,next,html -->
<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
@@ -22,18 +22,17 @@ href="#tailetrice-docse31.html">tail</a>] [<a
href="etrice-docch8.html#etrice-docse31.html" >up</a>] </p></div>
<h3 class="sectionHead"><span class="titlemark">8.3 </span> <a
id="x41-570008.3"></a>Why does it work and why is it safe?</h3>
-<!--l. 78--><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="ecbx-1000">run to completion</span>
-semantic. To answer this question, take a look at the <span
+<!--l. 78--><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="ecbx-1000">run</span>
+<span
+class="ecbx-1000">to completion </span>semantic. To answer this question, take a look at the <span
class="ecti-1000">MessageService.java </span>from the
-runtime environment. There you will find the receive method which puts each
-message into the queue.
-
-
-
+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
@@ -45,31 +44,16 @@ message into the queue.
&#x00A0;<br />&#x00A0;&#x00A0;&#x00A0;&#x00A0;}
</div>
<!--l. 89--><p class="nopar" >
-</p><!--l. 91--><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. 91--><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-docch9.html" >next</a>] [<a
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse32.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse32.html
index 73bbcb8..a59cee9 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse32.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse32.html
@@ -4,59 +4,72 @@
<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
<html xmlns="http://www.w3.org/1999/xhtml"
>
-<head><title>Scope</title>
+<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-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
-<!--l. 3--><div class="crosslinks"><p class="noindent">[<a
+<!--l. 19--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docse33.html" >next</a>] [<a
href="etrice-docch9.html" >prev</a>] [<a
href="etrice-docch9.html#tailetrice-docch9.html" >prev-tail</a>] [<a
href="#tailetrice-docse32.html">tail</a>] [<a
href="etrice-docch9.html#etrice-docse32.html" >up</a>] </p></div>
<h3 class="sectionHead"><span class="titlemark">9.1 </span> <a
- id="x43-590009.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. 7--><p class="noindent" >You will perform the following steps:
-</p><!--l. 9--><p class="noindent" >
- </p><ol class="enumerate1" >
- <li
- class="enumerate" id="x43-59002x1">create a new model from scratch for C
- </li>
- <li
- class="enumerate" id="x43-59004x2">define a protocol
- </li>
- <li
- class="enumerate" id="x43-59006x3">define your own data type
- </li>
- <li
- class="enumerate" id="x43-59008x4">create the structure and the behavior by yourself
- </li>
- <li
- class="enumerate" id="x43-59010x5">generate, build and run the model</li></ol>
-<!--l. 17--><p class="noindent" >Make sure that you have set up the workspace as described in <span
-class="ecti-1000">Setting up the</span>
+ id="x43-590009.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="ecti-1000">C/C++ </span>perspective.
+</p><!--l. 23--><p class="noindent" ><img
+src="images/032-SetupWorkspaceC03.png" alt="PIC"
+ />
+</p><!--l. 26--><p class="noindent" >From the main menu select <span
+class="ecti-1000">File-&#x003E;New-&#x003E;C Project</span>.
+</p><!--l. 28--><p class="noindent" ><img
+src="images/032-SetupWorkspaceC02.png" alt="PIC"
+ />
+</p><!--l. 31--><p class="noindent" >Name the project. Select an <span
+class="ecti-1000">Executable-&#x003E;Hello World ANSI C </span>as project type, <span
+class="ecti-1000">MinGW GCC </span>as tool
+chain and click <span
+class="ecti-1000">Finish</span>.
+</p><!--l. 33--><p class="noindent" ><img
+src="images/032-SetupWorkspaceC04.png" alt="PIC"
+ />
+</p><!--l. 36--><p class="noindent" >Select the new project and click the build button (or right click the project and select <span
+class="ecti-1000">Build</span>
+<span
+class="ecti-1000">Project</span>)
+</p><!--l. 38--><p class="noindent" ><img
+src="images/032-SetupWorkspaceC05.png" alt="PIC"
+ />
+</p><!--l. 41--><p class="noindent" >The binary should be generated. Run the binary as <span
+class="ecti-1000">Local C/C++ Application</span>.
+</p><!--l. 43--><p class="noindent" ><img
+src="images/032-SetupWorkspaceC06.png" alt="PIC"
+ />
+</p><!--l. 46--><p class="noindent" >Verify the output.
+</p><!--l. 48--><p class="noindent" ><img
+src="images/032-SetupWorkspaceC07.png" alt="PIC"
+ />
+</p><!--l. 51--><p class="noindent" >Remember these steps. In the following Tutorials these steps will be referenced as <span
+class="ecti-1000">build and</span>
<span
-class="ecti-1000">Workspace for C Projects</span>.
-
-
-
+class="ecti-1000">run</span>.
+
+
</p>
-<!--l. 19--><div class="crosslinks"><p class="noindent">[<a
+<!--l. 54--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docse33.html" >next</a>] [<a
href="etrice-docch9.html" >prev</a>] [<a
href="etrice-docch9.html#tailetrice-docch9.html" >prev-tail</a>] [<a
href="etrice-docse32.html" >front</a>] [<a
href="etrice-docch9.html#etrice-docse32.html" >up</a>] </p></div>
-<!--l. 19--><p class="noindent" ><a
+<!--l. 54--><p class="noindent" ><a
id="tailetrice-docse32.html"></a> </p>
</body></html>
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse33.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse33.html
index f128125..3db808f 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse33.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse33.html
@@ -4,71 +4,84 @@
<!--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>
+<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-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
-<!--l. 19--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse34.html" >next</a>] [<a
+<!--l. 54--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docch10.html" >next</a>] [<a
href="etrice-docse32.html" >prev</a>] [<a
href="etrice-docse32.html#tailetrice-docse32.html" >prev-tail</a>] [<a
href="#tailetrice-docse33.html">tail</a>] [<a
href="etrice-docch9.html#etrice-docse33.html" >up</a>] </p></div>
<h3 class="sectionHead"><span class="titlemark">9.2 </span> <a
- id="x44-600009.2"></a>Create a new model from scratch</h3>
-<!--l. 21--><p class="noindent" >Remember the following steps from the previous tutorials: </p>
+ id="x44-600009.2"></a>Building the C runtime system</h3>
+<!--l. 56--><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="ecti-1000">etRuntimeConfig.h </span>is located in <span
+class="ecti-1000">src/config</span>.
+</p><!--l. 58--><p class="noindent" >After changing the configuration, the runtime must be built.
+</p><!--l. 60--><p class="noindent" >Open the properties of the <span
+class="ecti-1000">org.eclipse.runtime.c </span>project and select <span
+class="ecti-1000">C/C++ Build-&#x003E;Settings-&#x003E;Tool</span>
+<span
+class="ecti-1000">Settings </span>and select <span
+class="ecti-1000">Includes</span>.
+</p><!--l. 62--><p class="noindent" ><img
+src="images/032-SetupWorkspaceC08.png" alt="PIC"
+ />
+</p><!--l. 65--><p class="noindent" >Verify the include paths
+</p>
<ul class="itemize1">
- <li class="itemize">select the <span
-class="ecti-1000">C/C++ </span>perspective
- </li>
- <li class="itemize">From the main menue select <span
-class="ecti-1000">File-&#x003E;New-&#x003E;C Project</span>
- </li>
- <li class="itemize">Name the project <span
-class="ecti-1000">RemoveComment</span>
+ <li class="itemize"><span
+class="ecti-1000">src/config</span>
</li>
- <li class="itemize">Project type is <span
-class="ecti-1000">Executable / Empty C Project</span>
+ <li class="itemize"><span
+class="ecti-1000">src/common</span>
</li>
- <li class="itemize">Toolchain is <span
-class="ecti-1000">MinGW</span>
- </li>
- <li class="itemize">Add the folder <span
-class="ecti-1000">model</span>
- </li>
- <li class="itemize">Add the model file and name it <span
-class="ecti-1000">RemoveComment.room</span>
- </li>
- <li class="itemize">Add the Xtext nature.</li></ul>
-<!--l. 33--><p class="noindent" >The workspace should look like this:
-</p><!--l. 35--><p class="noindent" ><img
-src="images/036-RemoveCommentC01.png" alt="PIC"
+ <li class="itemize"><span
+class="ecti-1000">src/platforms/generic</span></li></ul>
+<!--l. 73--><p class="noindent" >Within the Setting dialog select the tab <span
+class="ecti-1000">Build Artefact </span>and select <span
+class="ecti-1000">Static Library</span>
+</p><!--l. 75--><p class="noindent" ><img
+src="images/032-SetupWorkspaceC09.png" alt="PIC"
+ />
+</p><!--l. 78--><p class="noindent" >Build the runtime by clicking
+</p><!--l. 80--><p class="noindent" ><img
+src="images/032-SetupWorkspaceC10.png" alt="PIC"
/>
-</p><!--l. 38--><p class="noindent" >Create a launch configuration for the C generator and add the include path and
-library as described in <span
-class="ecti-1000">HelloWorldC</span>.
-</p><!--l. 40--><p class="noindent" >The workspace should look like this:
-</p><!--l. 42--><p class="noindent" ><img
-src="images/036-RemoveCommentC02.png" alt="PIC"
+</p><!--l. 83--><p class="noindent" >The runtime library should be created.
+</p><!--l. 85--><p class="noindent" ><img
+src="images/032-SetupWorkspaceC11.png" alt="PIC"
/>
-</p><!--l. 45--><p class="noindent" >Now the model is created and all settings for the code generator, compiler and linker
-are done.
-
-
-
+</p><!--l. 88--><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. 48--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse34.html" >next</a>] [<a
+<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docch10.html" >next</a>] [<a
href="etrice-docse32.html" >prev</a>] [<a
href="etrice-docse32.html#tailetrice-docse32.html" >prev-tail</a>] [<a
href="etrice-docse33.html" >front</a>] [<a
href="etrice-docch9.html#etrice-docse33.html" >up</a>] </p></div>
-<!--l. 48--><p class="noindent" ><a
+<!--l. 1--><p class="noindent" ><a
id="tailetrice-docse33.html"></a> </p>
</body></html>
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse34.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse34.html
index 80a36d7..d93d232 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse34.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse34.html
@@ -4,75 +4,60 @@
<!--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>
+<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-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
-<!--l. 48--><div class="crosslinks"><p class="noindent">[<a
+<!--l. 3--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docse35.html" >next</a>] [<a
-href="etrice-docse33.html" >prev</a>] [<a
-href="etrice-docse33.html#tailetrice-docse33.html" >prev-tail</a>] [<a
+href="etrice-docch10.html" >prev</a>] [<a
+href="etrice-docch10.html#tailetrice-docch10.html" >prev-tail</a>] [<a
href="#tailetrice-docse34.html">tail</a>] [<a
-href="etrice-docch9.html#etrice-docse34.html" >up</a>] </p></div>
-<h3 class="sectionHead"><span class="titlemark">9.3 </span> <a
- id="x45-610009.3"></a>Create your own data type</h3>
-<!--l. 50--><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="ecti-1000">FILE</span>. To make this type available on the model
-level, you have to declare the type.
-</p><!--l. 52--><p class="noindent" >Open the file <span
-class="ecti-1000">Types.room </span>from <span
-class="ecti-1000">org.eclipse.modellib.c </span>and take a look at the
-declaration of <span
-class="ecti-1000">string </span>(last line) which is not a basic C type.
-</p><!--l. 54--><p class="noindent" ><span
-class="ecti-1000">PrimitiveType string:ptCharacter -&#x003E; charPtr default "0"</span>
-</p><!--l. 56--><p class="noindent" >With this declaration, you make the <span
-class="ecti-1000">string </span>keyword available on model level as a
-primitive type. This type will be translated to <span
-class="ecti-1000">charPtr </span>in your C sources. <span
-class="ecti-1000">charPtr </span>is
-defined in <span
-class="ecti-1000">etDatatypes.h</span>. This header file is platform specific (<span
-class="ecti-1000">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. 58--><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. 68--><p class="nopar" >
-</p><!--l. 71--><p class="noindent" ><span
-class="ecti-1000">FILE </span>is the native type for MinGW. Therefore you don&#8217;t need a mapping within
+href="etrice-docch10.html#etrice-docse34.html" >up</a>] </p></div>
+<h3 class="sectionHead"><span class="titlemark">10.1 </span> <a
+ id="x46-6200010.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. 8--><p class="noindent" >
+ </p><ol class="enumerate1" >
+ <li
+ class="enumerate" id="x46-62002x1">create a new model from scratch for C
+ </li>
+ <li
+ class="enumerate" id="x46-62004x2">create structure and behavior similar to Java
+ </li>
+ <li
+ class="enumerate" id="x46-62006x3">create a launch configuration for the C code generator
+ </li>
+ <li
+ class="enumerate" id="x46-62008x4">setup the C environment
+ </li>
+ <li
+ class="enumerate" id="x46-62010x5">generate the source code
+ </li>
+ <li
+ class="enumerate" id="x46-62012x6">run the model</li></ol>
+<!--l. 17--><p class="noindent" >Make sure that you have set up the workspace as described in <span
+class="ecti-1000">Setting up the Workspace for C</span>
<span
-class="ecti-1000">etDatatypes.h</span>. If your model should be portable across different platforms you should
-not take this shortcut.
-
-
-
+class="ecti-1000">Projects</span>.
+
+
</p>
-<!--l. 73--><div class="crosslinks"><p class="noindent">[<a
+<!--l. 20--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docse35.html" >next</a>] [<a
-href="etrice-docse33.html" >prev</a>] [<a
-href="etrice-docse33.html#tailetrice-docse33.html" >prev-tail</a>] [<a
+href="etrice-docch10.html" >prev</a>] [<a
+href="etrice-docch10.html#tailetrice-docch10.html" >prev-tail</a>] [<a
href="etrice-docse34.html" >front</a>] [<a
-href="etrice-docch9.html#etrice-docse34.html" >up</a>] </p></div>
-<!--l. 73--><p class="noindent" ><a
+href="etrice-docch10.html#etrice-docse34.html" >up</a>] </p></div>
+<!--l. 20--><p class="noindent" ><a
id="tailetrice-docse34.html"></a> </p>
</body></html>
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse35.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse35.html
index fd3fadb..2c2e301 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse35.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse35.html
@@ -4,86 +4,81 @@
<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
<html xmlns="http://www.w3.org/1999/xhtml"
>
-<head><title>Create the model</title>
+<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-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
-<!--l. 73--><div class="crosslinks"><p class="noindent">[<a
+<!--l. 20--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docse36.html" >next</a>] [<a
href="etrice-docse34.html" >prev</a>] [<a
href="etrice-docse34.html#tailetrice-docse34.html" >prev-tail</a>] [<a
href="#tailetrice-docse35.html">tail</a>] [<a
-href="etrice-docch9.html#etrice-docse35.html" >up</a>] </p></div>
-<h3 class="sectionHead"><span class="titlemark">9.4 </span> <a
- id="x46-620009.4"></a>Create the model</h3>
-<!--l. 75--><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. 77--><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. 79--><p class="noindent" >Remember the logical steps: </p>
+href="etrice-docch10.html#etrice-docse35.html" >up</a>] </p></div>
+<h3 class="sectionHead"><span class="titlemark">10.2 </span> <a
+ id="x47-6300010.2"></a>Create a new model from scratch</h3>
+<!--l. 22--><p class="noindent" >Before you can create a new C-model, you have to create a new C project as described in <span
+class="ecti-1000">Setting up the</span>
+<span
+class="ecti-1000">Workspace for C Projects</span>. Remember: </p>
<ul class="itemize1">
- <li class="itemize">create the model by the help of content assist (CTRL Space)
+ <li class="itemize">select the <span
+class="ecti-1000">C/C++ </span>perspective
</li>
- <li class="itemize">name the model, subsystem and top level actor
+ <li class="itemize">From the main menue select <span
+class="ecti-1000">File-&#x003E;New-&#x003E;C Project</span>
</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 class="itemize">Name the project <span
+class="ecti-1000">HelloWorldC</span>
</li>
- <li class="itemize">create the structure (file reader and parser with an appropriate port, create
- the references and connect the ports)
+ <li class="itemize">Project type is <span
+class="ecti-1000">Executable / Empty C Project</span>
</li>
- <li class="itemize">create the state machines</li></ul>
-<!--l. 88--><p class="noindent" >Try to create the model by yourself and take the following solution as an
-example.
-</p><!--l. 90--><p class="noindent" >Structure:
-</p><!--l. 92--><p class="noindent" ><img
-src="images/036-RemoveCommentC04.png" alt="PIC"
+ <li class="itemize">Toolchain is <span
+class="ecti-1000">MinGW </span></li></ul>
+<!--l. 32--><p class="noindent" >The workspace should look like this:
+</p><!--l. 34--><p class="noindent" ><img
+src="images/034-HelloWorldC01.png" alt="PIC"
/>
-</p><!--l. 95--><p class="noindent" >File reader FSM:
-</p><!--l. 97--><p class="noindent" ><img
-src="images/036-RemoveCommentC05.png" alt="PIC"
+</p><!--l. 37--><p class="noindent" >The next step is to add the model folder: Right click on the new project. Select <span
+class="ecti-1000">New-&#x003E;Folder </span>and name it
+<span
+class="ecti-1000">model</span>.
+</p><!--l. 40--><p class="noindent" ><img
+src="images/034-HelloWorldC02.png" alt="PIC"
/>
-</p><!--l. 100--><p class="noindent" >Parser FSM:
-</p><!--l. 102--><p class="noindent" ><img
-src="images/036-RemoveCommentC06.png" alt="PIC"
+</p><!--l. 43--><p class="noindent" >Add the model file to the folder. Right click on the new folder. Select <span
+class="ecti-1000">New-&#x003E;file </span>and name it
+<span
+class="ecti-1000">HelloWorldC.room</span>.
+</p><!--l. 45--><p class="noindent" ><img
+src="images/034-HelloWorldC03.png" alt="PIC"
/>
-</p><!--l. 105--><p class="noindent" >The complete model can be found in <span
-class="ecti-1000">org.eclipse.etrice.tutorials.c</span>
-</p><!--l. 107--><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. 111--><p class="nopar" >
-</p><!--l. 113--><p class="noindent" ><span
-class="ecti-1000">fopen </span>expects a <span
-class="ecti-1000">FILE *</span>. <span
-class="ecti-1000">f:file ref </span>declares a variable <span
-class="ecti-1000">f </span>from type reference to <span
-class="ecti-1000">file</span>,
-which is a pointer to <span
-class="ecti-1000">FILE</span>.
-
-
-
+</p><!--l. 48--><p class="noindent" >Due to the file ending <span
+class="ecti-1000">.room</span>, the tool will ask you to add the Xtext nature. Answer with
+<span
+class="ecti-1000">Yes</span>.
+</p><!--l. 50--><p class="noindent" ><img
+src="images/034-HelloWorldC04.png" alt="PIC"
+ />
+</p><!--l. 53--><p class="noindent" >The workspace should look like this:
+</p><!--l. 55--><p class="noindent" ><img
+src="images/034-HelloWorldC05.png" alt="PIC"
+ />
+
+
</p>
-<!--l. 116--><div class="crosslinks"><p class="noindent">[<a
+<!--l. 60--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docse36.html" >next</a>] [<a
href="etrice-docse34.html" >prev</a>] [<a
href="etrice-docse34.html#tailetrice-docse34.html" >prev-tail</a>] [<a
href="etrice-docse35.html" >front</a>] [<a
-href="etrice-docch9.html#etrice-docse35.html" >up</a>] </p></div>
-<!--l. 116--><p class="noindent" ><a
+href="etrice-docch10.html#etrice-docse35.html" >up</a>] </p></div>
+<!--l. 60--><p class="noindent" ><a
id="tailetrice-docse35.html"></a> </p>
</body></html>
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse36.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse36.html
index d08bc42..c82fe2a 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse36.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse36.html
@@ -4,45 +4,69 @@
<!--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>
+<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-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
-<!--l. 116--><div class="crosslinks"><p class="noindent">[<a
+<!--l. 60--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docse37.html" >next</a>] [<a
href="etrice-docse35.html" >prev</a>] [<a
href="etrice-docse35.html#tailetrice-docse35.html" >prev-tail</a>] [<a
href="#tailetrice-docse36.html">tail</a>] [<a
-href="etrice-docch9.html#etrice-docse36.html" >up</a>] </p></div>
-<h3 class="sectionHead"><span class="titlemark">9.5 </span> <a
- id="x47-630009.5"></a>Generate, build and run the model</h3>
-<!--l. 118--><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="ecti-1000">test.txt</span>.
-</p><!--l. 120--><p class="noindent" ><img
-src="images/036-RemoveCommentC07.png" alt="PIC"
- />
-</p><!--l. 123--><p class="noindent" >Generate, build and run the model.
-</p><!--l. 125--><p class="noindent" >Your output should start like this:
-</p><!--l. 127--><p class="noindent" ><img
-src="images/036-RemoveCommentC08.png" alt="PIC"
- />
-
-
-
+href="etrice-docch10.html#etrice-docse36.html" >up</a>] </p></div>
+<h3 class="sectionHead"><span class="titlemark">10.3 </span> <a
+ id="x48-6400010.3"></a>Create the HelloWorld model</h3>
+<!--l. 62--><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>
-<!--l. 131--><div class="crosslinks"><p class="noindent">[<a
+ <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="ecti-1000">etRuntimeConfig.h</span>).</li></ul>
+
+
+<div class="verbatim" id="verbatim-19">
+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. 92--><p class="nopar" >
+
+
+</p>
+<!--l. 94--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docse37.html" >next</a>] [<a
href="etrice-docse35.html" >prev</a>] [<a
href="etrice-docse35.html#tailetrice-docse35.html" >prev-tail</a>] [<a
href="etrice-docse36.html" >front</a>] [<a
-href="etrice-docch9.html#etrice-docse36.html" >up</a>] </p></div>
-<!--l. 131--><p class="noindent" ><a
+href="etrice-docch10.html#etrice-docse36.html" >up</a>] </p></div>
+<!--l. 94--><p class="noindent" ><a
id="tailetrice-docse36.html"></a> </p>
</body></html>
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse37.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse37.html
index a3c0df1..71fce7c 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse37.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse37.html
@@ -4,45 +4,72 @@
<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
<html xmlns="http://www.w3.org/1999/xhtml"
>
-<head><title>Summary</title>
+<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-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
-<!--l. 131--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docch10.html" >next</a>] [<a
+<!--l. 94--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse38.html" >next</a>] [<a
href="etrice-docse36.html" >prev</a>] [<a
href="etrice-docse36.html#tailetrice-docse36.html" >prev-tail</a>] [<a
href="#tailetrice-docse37.html">tail</a>] [<a
-href="etrice-docch9.html#etrice-docse37.html" >up</a>] </p></div>
-<h3 class="sectionHead"><span class="titlemark">9.6 </span> <a
- id="x48-640009.6"></a>Summary</h3>
-<!--l. 133--><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.
-
-
-
-
-
-
-
-
-
+href="etrice-docch10.html#etrice-docse37.html" >up</a>] </p></div>
+<h3 class="sectionHead"><span class="titlemark">10.4 </span> <a
+ id="x49-6500010.4"></a>Create a launch configuration to start the C code generator</h3>
+<!--l. 96--><p class="noindent" >Other than in Java a launch configuration for the C code generator must be created.
+</p><!--l. 98--><p class="noindent" >From the <span
+class="ecti-1000">Run </span>menu select <span
+class="ecti-1000">Run Configurations</span>
+</p><!--l. 100--><p class="noindent" ><img
+src="images/034-HelloWorldC06.png" alt="PIC"
+ />
+</p><!--l. 103--><p class="noindent" >Within the dialog select <span
+class="ecti-1000">eTrice C Generator </span>and click the <span
+class="ecti-1000">New </span>button to create a new launch
+configuration.
+</p><!--l. 105--><p class="noindent" ><img
+src="images/034-HelloWorldC07.png" alt="PIC"
+ />
+</p><!--l. 108--><p class="noindent" >A new configuration should be created. Name it <span
+class="ecti-1000">gen_HelloWorldC </span>and add the model via one of the <span
+class="ecti-1000">add</span>
+buttons.
+</p><!--l. 110--><p class="noindent" ><img
+src="images/034-HelloWorldC08.png" alt="PIC"
+ />
+</p><!--l. 113--><p class="noindent" >In the <span
+class="ecti-1000">Refresh </span>tab select <span
+class="ecti-1000">The entire workspace</span>
+</p><!--l. 115--><p class="noindent" ><img
+src="images/034-HelloWorldC09.png" alt="PIC"
+ />
+</p><!--l. 118--><p class="noindent" >In the <span
+class="ecti-1000">Common </span>tab select <span
+class="ecti-1000">Shared file </span>and add the <span
+class="ecti-1000">HelloWorldC </span>project via the <span
+class="ecti-1000">Browse </span>button.
+</p><!--l. 120--><p class="noindent" ><img
+src="images/034-HelloWorldC10.png" alt="PIC"
+ />
+</p><!--l. 123--><p class="noindent" >Apply your changes. The new configuration should now exist in your workspace.
+</p><!--l. 125--><p class="noindent" ><img
+src="images/034-HelloWorldC11.png" alt="PIC"
+ />
+
+
</p>
-<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docch10.html" >next</a>] [<a
+<!--l. 129--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse38.html" >next</a>] [<a
href="etrice-docse36.html" >prev</a>] [<a
href="etrice-docse36.html#tailetrice-docse36.html" >prev-tail</a>] [<a
href="etrice-docse37.html" >front</a>] [<a
-href="etrice-docch9.html#etrice-docse37.html" >up</a>] </p></div>
-<!--l. 1--><p class="noindent" ><a
+href="etrice-docch10.html#etrice-docse37.html" >up</a>] </p></div>
+<!--l. 129--><p class="noindent" ><a
id="tailetrice-docse37.html"></a> </p>
</body></html>
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse38.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse38.html
index 3ecb1a8..ba2b3a7 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse38.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse38.html
@@ -4,241 +4,43 @@
<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
<html xmlns="http://www.w3.org/1999/xhtml"
>
-<head><title>Actors</title>
+<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-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
-<!--l. 6--><div class="crosslinks"><p class="noindent">[<a
+<!--l. 129--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docse39.html" >next</a>] [<a
-href="etrice-docch10.html" >prev</a>] [<a
-href="etrice-docch10.html#tailetrice-docch10.html" >prev-tail</a>] [<a
+href="etrice-docse37.html" >prev</a>] [<a
+href="etrice-docse37.html#tailetrice-docse37.html" >prev-tail</a>] [<a
href="#tailetrice-docse38.html">tail</a>] [<a
href="etrice-docch10.html#etrice-docse38.html" >up</a>] </p></div>
-<h3 class="sectionHead"><span class="titlemark">10.1 </span> <a
- id="x50-6600010.1"></a>Actors</h3>
-
-
-
-<!--l. 8--><p class="noindent" >
-</p>
-<h4 class="subsectionHead"><span class="titlemark">10.1.1 </span> <a
- id="x50-6700010.1.1"></a>Description</h4>
-<!--l. 10--><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. 12--><p class="noindent" >
-</p>
-<h4 class="subsectionHead"><span class="titlemark">10.1.2 </span> <a
- id="x50-6800010.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 reusable blocks</li></ul>
-<!--l. 21--><p class="noindent" >
-</p>
-<h4 class="subsectionHead"><span class="titlemark">10.1.3 </span> <a
- id="x50-6900010.1.3"></a>Notation</h4>
-<div class="table">
-
-
-
-<!--l. 25--><p class="noindent" ><a
- id="x50-690011"></a></p><hr class="float" /><div class="float"
->
-
-
-
- <div class="caption"
-><span class="id">Table&#x00A0;10.1: </span><span
-class="content">Actor Class Notation</span></div><!--tex4ht:label?: x50-690011 -->
-<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="ecbx-1000">Element </span></td><td style="white-space:nowrap; text-align:left;" id="TBL-3-1-2"
-class="td11"> <span
-class="ecbx-1000">Graphical Notation </span></td><td style="white-space:nowrap; text-align:left;" id="TBL-3-1-3"
-class="td11"> <span
-class="ecbx-1000">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"> <img
-src="images/040-ActorClassTextualNotation.png" alt="PIC"
- /> </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"> <img
-src="images/040-ActorReferenceTextualNotation.png" alt="PIC"
- /> </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">10.1.4 </span> <a
- id="x50-7000010.1.4"></a>Details</h4>
-<!--l. 55--><p class="noindent" >
-</p>
-<h5 class="subsubsectionHead"><a
- id="x50-7100010.1.4"></a>Actor Classes, Actor References, Ports and Bindings</h5>
-<!--l. 57--><p class="noindent" >An <span
-class="ecbx-1000">ActorClass </span>defines the type (or blueprint) of an actor. Hierarchies are
-built by ActorClasses that contain <span
-class="ecbx-1000">ActorReferences </span>which have another
-ActorClass as type. The interface of an ActorClass is always defined by Ports.
-The ActorClass can also contain Attributes, Operations and a finite state
-machine.
-</p><!--l. 59--><p class="noindent" ><span
-class="ecbx-1000">External Ports </span>define the external interface of an actor and are defined in the
-*Interface* section of the ActorClass.
-</p><!--l. 61--><p class="noindent" ><span
-class="ecbx-1000">Internal Ports </span>define the internal interface of an actor and are defined in the
-*Structure* section of the ActorClass.
-</p><!--l. 63--><p class="noindent" ><span
-class="ecbx-1000">Bindings </span>connect Ports inside an ActorClass.
-</p><!--l. 65--><p class="noindent" >Example:
-</p>
-<div class="table">
-
-
-
-<!--l. 68--><p class="noindent" ><a
- id="x50-710012"></a></p><hr class="float" /><div class="float"
->
-
-
-
- <div class="caption"
-><span class="id">Table&#x00A0;10.2: </span><span
-class="content">Actor Class Example</span></div><!--tex4ht:label?: x50-710012 -->
-<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="ecbx-1000">Graphical Notation </span></td><td style="white-space:nowrap; text-align:left;" id="TBL-4-1-2"
-class="td11"> <span
-class="ecbx-1000">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"> <img
-src="images/040-ActorClassExampleTextualNotation.png" alt="PIC"
- /> </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="ecbx-1000">ActorClass1 </span>contains two ActorReferences (of ActorClass2 and
- ActorClass3)
- </li>
- <li class="itemize"><span
-class="ecti-1000">port1 </span>is a <span
-class="ecbx-1000">External End Port</span>. Since it connects external Actors with
- the behavior of the ActorClass, it is defined in the <span
-class="ecbx-1000">Interface </span>section and
- the <span
-class="ecbx-1000">Structure </span>section of the ActorClass.
- </li>
- <li class="itemize"><span
-class="ecti-1000">port2 </span>and <span
-class="ecti-1000">port3 </span>are <span
-class="ecbx-1000">Internal End Ports </span>and can only be connected to
- the ports of contained ActorReferences. Internal End Ports connect the
- Behavior of an ActorClass with its contained ActorReferences.
- </li>
- <li class="itemize"><span
-class="ecti-1000">port4 </span>is a relay port and connects external Actors to contained
- ActorReferences. This port can not be accessed by the behavior of the
- ActorClass.
- </li>
- <li class="itemize"><span
-class="ecti-1000">port5 </span>through <span
-class="ecti-1000">port9 </span>are Ports of contained ActorReferences. <span
-class="ecti-1000">port8</span>
- and <span
-class="ecti-1000">port9 </span>can communicate without interference with the containing
- ActorClass.
- </li>
- <li class="itemize"><span
-class="ecbx-1000">Bindings </span>can connect ports of the ActorClass and its contained
- ActorReferences.</li></ul>
-<h5 class="subsubsectionHead"><a
- id="x50-7200010.1.4"></a>Attributes</h5>
-<!--l. 98--><p class="noindent" >Attributes are part of the Structure of an ActorClass. They can be of a
-PrimitiveType or a DataClass.
-</p><!--l. 100--><p class="noindent" >Example:
-</p><!--l. 102--><p class="noindent" ><img
-src="images/040-ActorClassAttributes.png" alt="PIC"
+<h3 class="sectionHead"><span class="titlemark">10.5 </span> <a
+ id="x50-6600010.5"></a>Generate the code</h3>
+<!--l. 131--><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="ecti-1000">gen_HelloWorldC</span>.
+</p><!--l. 133--><p class="noindent" ><img
+src="images/034-HelloWorldC12.png" alt="PIC"
/>
-</p><!--l. 105--><p class="noindent" >
-</p>
-<h5 class="subsubsectionHead"><a
- id="x50-7300010.1.4"></a>Operations</h5>
-<!--l. 107--><p class="noindent" >Operations are part of the Behavior of an ActorClass. Arguments and return values
-can be of a PrimitiveType or a DataClass. DataClasses can be passed by value
-(implicit) or by reference (keyword <span
-class="ecbx-1000">ref</span>).
-</p><!--l. 109--><p class="noindent" >Example:
-</p><!--l. 111--><p class="noindent" ><img
-src="images/040-ActorClassOperations.png" alt="PIC"
+</p><!--l. 136--><p class="noindent" >The code should be generated.
+</p><!--l. 138--><p class="noindent" ><img
+src="images/034-HelloWorldC13.png" alt="PIC"
/>
-
-
-
+
+
</p>
-<!--l. 114--><div class="crosslinks"><p class="noindent">[<a
+<!--l. 141--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docse39.html" >next</a>] [<a
-href="etrice-docch10.html" >prev</a>] [<a
-href="etrice-docch10.html#tailetrice-docch10.html" >prev-tail</a>] [<a
+href="etrice-docse37.html" >prev</a>] [<a
+href="etrice-docse37.html#tailetrice-docse37.html" >prev-tail</a>] [<a
href="etrice-docse38.html" >front</a>] [<a
href="etrice-docch10.html#etrice-docse38.html" >up</a>] </p></div>
-<!--l. 114--><p class="noindent" ><a
- id="tailetrice-docse38.html"></a> </p>
+<!--l. 141--><p class="noindent" ><a
+ id="tailetrice-docse38.html"></a> </p>
</body></html>
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse39.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse39.html
index 8550866..884c962 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse39.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse39.html
@@ -4,59 +4,48 @@
<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
<html xmlns="http://www.w3.org/1999/xhtml"
>
-<head><title>Protocols</title>
+<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-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
-<!--l. 114--><div class="crosslinks"><p class="noindent">[<a
+<!--l. 141--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docse40.html" >next</a>] [<a
href="etrice-docse38.html" >prev</a>] [<a
href="etrice-docse38.html#tailetrice-docse38.html" >prev-tail</a>] [<a
href="#tailetrice-docse39.html">tail</a>] [<a
href="etrice-docch10.html#etrice-docse39.html" >up</a>] </p></div>
-<h3 class="sectionHead"><span class="titlemark">10.2 </span> <a
- id="x51-7400010.2"></a>Protocols</h3>
-<!--l. 116--><p class="noindent" >
-</p>
-<h4 class="subsectionHead"><span class="titlemark">10.2.1 </span> <a
- id="x51-7500010.2.1"></a>Description</h4>
-<!--l. 118--><p class="noindent" >A ProtocolClass defines a set of incoming and outgoing messages that can be
-exchanged between two ports. The exact semantics of a message is defined by the
-execution model.
-</p><!--l. 121--><p class="noindent" >
-</p>
-<h4 class="subsectionHead"><span class="titlemark">10.2.2 </span> <a
- id="x51-7600010.2.2"></a>Motivation</h4>
- <ul class="itemize1">
- <li class="itemize">ProtocolClasses provide a reusable interface specification for ports
- </li>
- <li class="itemize">ProtocolClasses can optionally specify valid message exchange sequences</li></ul>
-<!--l. 128--><p class="noindent" >
-</p>
-<h4 class="subsectionHead"><span class="titlemark">10.2.3 </span> <a
- id="x51-7700010.2.3"></a>Notation</h4>
-<!--l. 130--><p class="noindent" >ProtocolClasses have only textual notation. The example defines a ProtocolClass
-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 DataClass.
-</p><!--l. 133--><p class="noindent" ><img
-src="images/040-ProtocolClassTextualNotation.png" alt="PIC"
+<h3 class="sectionHead"><span class="titlemark">10.6 </span> <a
+ id="x51-6700010.6"></a>Setup the include path</h3>
+<!--l. 143--><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="ecti-1000">Properties</span>. Add the include path as described in <span
+class="ecti-1000">setting up the</span>
+<span
+class="ecti-1000">workspace</span>.
+</p><!--l. 145--><p class="noindent" ><img
+src="images/034-HelloWorldC14.png" alt="PIC"
+ />
+</p><!--l. 148--><p class="noindent" >Add the runtime library.
+</p><!--l. 150--><p class="noindent" ><img
+src="images/034-HelloWorldC15.png" alt="PIC"
/>
-
-
-
+</p><!--l. 153--><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. 136--><div class="crosslinks"><p class="noindent">[<a
+<!--l. 155--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docse40.html" >next</a>] [<a
href="etrice-docse38.html" >prev</a>] [<a
href="etrice-docse38.html#tailetrice-docse38.html" >prev-tail</a>] [<a
href="etrice-docse39.html" >front</a>] [<a
href="etrice-docch10.html#etrice-docse39.html" >up</a>] </p></div>
-<!--l. 136--><p class="noindent" ><a
+<!--l. 155--><p class="noindent" ><a
id="tailetrice-docse39.html"></a> </p>
</body></html>
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse4.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse4.html
index dff78eb..11a8656 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse4.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse4.html
@@ -10,7 +10,7 @@
<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
<!-- xhtml,3,next,html -->
<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
@@ -26,25 +26,21 @@ href="etrice-docch2.html#etrice-docse4.html" >up</a>] </p></div>
</p>
<h4 class="subsectionHead"><span class="titlemark">2.2.1 </span> <a
id="x8-130002.2.1"></a>Actor, Port, Protocol</h4>
-<!--l. 85--><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
-actors behavior (state machine) or will be delegated to the actors internal
-structure.
+<!--l. 85--><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 actors behavior (state machine) or will be delegated to the
+actors internal structure.
</p>
<div class="table">
-
-
-
+
+
<!--l. 88--><p class="noindent" ><a
id="x8-130011"></a></p><hr class="float" /><div class="float"
>
-
-
-
+
+
<div class="caption"
><span class="id">Table&#x00A0;2.1: </span><span
class="content">Actor and Protocol Example</span></div><!--tex4ht:label?: x8-130011 -->
@@ -73,38 +69,33 @@ 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. 107--><p class="noindent" >The actor provides access protection for its own attributes (including complex types
-(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 reusability on
-actor level and provides an effective and safe programming model to the
+<!--l. 107--><p class="noindent" >The actor provides access protection for its own attributes (including complex types (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 reusability on actor level and provides an effective and safe programming model to the
developer.
-</p><!--l. 109--><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. 113--><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><!--l. 109--><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. 113--><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>
<h4 class="subsectionHead"><span class="titlemark">2.2.2 </span> <a
id="x8-140002.2.2"></a>Hierarchy in Structure and Behavior</h4>
-<!--l. 118--><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. 120--><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.
+<!--l. 118--><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. 120--><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. 122--><p class="noindent" >Top level:
</p><!--l. 124--><p class="noindent" ><img
src="images/020-Blinky15.png" alt="PIC"
@@ -115,73 +106,66 @@ class="ecti-1000">blinking </span>Sub machine:
src="images/020-Blinky151.png" alt="PIC"
/>
</p><!--l. 132--><p class="noindent" >From an abstract point of view there is a state <span
-class="ecti-1000">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.
+class="ecti-1000">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. 134--><p class="noindent" >This simple example might give an idea how powerful this mechanisms is.
-</p><!--l. 136--><p class="noindent" >The hierarchical FSM provides a rich tool box to describe real world problems (see
+</p><!--l. 136--><p class="noindent" >The hierarchical FSM provides a rich tool box to describe real world problems (see <span
+class="ecbx-1000">room</span>
<span
-class="ecbx-1000">room concepts</span>).
-
-
-
+class="ecbx-1000">concepts</span>).
</p><!--l. 138--><p class="noindent" >
</p>
<h4 class="subsectionHead"><span class="titlemark">2.2.3 </span> <a
id="x8-150002.2.3"></a>Layering</h4>
-<!--l. 140--><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 language feature. Layering can be expressed in ROOM by Actors with
-specialized Ports, called Service Access Points (*SAP*) and Service Provision Points
-(*SPP*).
-</p><!--l. 143--><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 Actors point of view, SAPs and SPPs behave almost like regular
+<!--l. 140--><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 language feature. Layering can
+be expressed in ROOM by Actors with specialized Ports, called Service Access Points (*SAP*) and
+Service Provision Points (*SPP*).
+</p><!--l. 143--><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 Actors point of view, SAPs and SPPs behave almost like regular
+
+
ports.
</p><!--l. 145--><p class="noindent" ><img
src="images/010-LayerExample.png" alt="PIC"
/>
-</p><!--l. 148--><p class="noindent" >The Example shows a layered model. The Layer Connections define e.g. that
-the <span
-class="ecti-1000">ApplicationLayer </span>can only use the services of the <span
-class="ecti-1000">ServiceLayer </span>and the
+</p><!--l. 148--><p class="noindent" >The Example shows a layered model. The Layer Connections define e.g. that the <span
+class="ecti-1000">ApplicationLayer </span>can
+only use the services of the <span
+class="ecti-1000">ServiceLayer </span>and the <span
+class="ecti-1000">CommunicationLayer</span>. Actors inside the
<span
-class="ecti-1000">CommunicationLayer</span>. Actors inside the <span
-class="ecti-1000">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.
+class="ecti-1000">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. 151--><p class="noindent" >
</p>
<h4 class="subsectionHead"><span class="titlemark">2.2.4 </span> <a
id="x8-160002.2.4"></a>Run to Completion</h4>
<!--l. 153--><p class="noindent" ><span
-class="ecbx-1000">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="ecbx-1000">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 from the underlying run time
+class="ecbx-1000">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="ecbx-1000">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 from the underlying run time
system.
-</p><!--l. 157--><p class="noindent" >Note: It is very important not to confuse run to completion and preemption. 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 not 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. 159--><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 to several actors without
-the risk to produce access violations or dead locks.
-
-
-
+</p><!--l. 157--><p class="noindent" >Note: It is very important not to confuse run to completion and preemption. 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 not 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. 159--><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 to several actors without the risk to produce access violations or dead
+locks.
+
+
</p>
<!--l. 161--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docse5.html" >next</a>] [<a
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse40.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse40.html
index 49dfcd7..6ec47dd 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse40.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse40.html
@@ -4,417 +4,39 @@
<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
<html xmlns="http://www.w3.org/1999/xhtml"
>
-<head><title>Ports</title>
+<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-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
-<!--l. 136--><div class="crosslinks"><p class="noindent">[<a
+<!--l. 155--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docse41.html" >next</a>] [<a
href="etrice-docse39.html" >prev</a>] [<a
href="etrice-docse39.html#tailetrice-docse39.html" >prev-tail</a>] [<a
href="#tailetrice-docse40.html">tail</a>] [<a
href="etrice-docch10.html#etrice-docse40.html" >up</a>] </p></div>
-<h3 class="sectionHead"><span class="titlemark">10.3 </span> <a
- id="x52-7800010.3"></a>Ports</h3>
-<!--l. 138--><p class="noindent" >
+<h3 class="sectionHead"><span class="titlemark">10.7 </span> <a
+ id="x52-6800010.7"></a>Build and run the model</h3>
+<!--l. 157--><p class="noindent" >Now you can build the application. Click the build button to build the application. Run the application
+as <span
+class="ecti-1000">Local C/C++ Application</span>. Verify the output.
+</p><!--l. 161--><p class="noindent" ><img
+src="images/034-HelloWorldC16.png" alt="PIC"
+ />
+
+
</p>
-<h4 class="subsectionHead"><span class="titlemark">10.3.1 </span> <a
- id="x52-7900010.3.1"></a>Description</h4>
-<!--l. 140--><p class="noindent" >Ports 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. 143--><p class="noindent" >
-</p>
-<h4 class="subsectionHead"><span class="titlemark">10.3.2 </span> <a
- id="x52-8000010.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. 150--><p class="noindent" >
-</p>
-<h4 class="subsectionHead"><span class="titlemark">10.3.3 </span> <a
- id="x52-8100010.3.3"></a>Notation</h4>
-<!--l. 152--><p class="noindent" >
-</p>
-<h5 class="subsubsectionHead"><a
- id="x52-8200010.3.3"></a>Class Ports</h5>
-<!--l. 154--><p class="noindent" >These symbols can only appear on the border of an actor class symbol.
-
-
-
-</p><!--l. 156--><p class="noindent" >Ports that define an external interface of the ActorClass, are defined in the <span
-class="ecti-1000">Interface</span>.
-Ports that define an internal interface are defined in the <span
-class="ecti-1000">Structure </span>(e.g. internal
-ports). </p>
- <ul class="itemize1">
- <li class="itemize"><span
-class="ecbx-1000">External End Ports </span>are defined in the Interface and the Structure
- </li>
- <li class="itemize"><span
-class="ecbx-1000">Internal End Ports </span>are only defined in the Structure
- </li>
- <li class="itemize"><span
-class="ecbx-1000">Relay Ports </span>are only defined in the Interface
- </li>
- <li class="itemize"><span
-class="ecbx-1000">End Ports </span>are always connected to the internal behavior of the
- ActorClass
- </li>
- <li class="itemize"><span
-class="ecbx-1000">Replicated Ports </span>can be defined with a fixed replication factor ( e.g.
- <span
-class="ecti-1000">Port port18 [ 5 ]: ProtocolClass1 </span>) or a variable replication factor (e.g.
- <span
-class="ecti-1000">Port port18[ * ]: ProtocolClass1 </span>)</li></ul>
-<div class="table">
-<!--l. 165--><p class="noindent" ><a
- id="x52-820013"></a></p><hr class="float" /><div class="float"
->
-
-
-
- <div class="caption"
-><span class="id">Table&#x00A0;10.3: </span><span
-class="content">Class Port Notation</span></div><!--tex4ht:label?: x52-820013 -->
-<a
- id="x52-82002r4"></a><!--l. 168--><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
-class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
- style="vertical-align:baseline;" id="TBL-5-1-"><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" id="TBL-5-1-1"
-class="td11"> <!--l. 168--><p class="noindent" ><span
-class="ecbx-1000">Element</span> </p></td><td style="white-space:nowrap; text-align:center;" id="TBL-5-1-2"
-class="td11"> <span
-class="ecbx-1000">Graphical Notation </span></td><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" id="TBL-5-1-3"
-class="td11"> <!--l. 168--><p class="noindent" ><span
-class="ecbx-1000">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-5-2-"><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" id="TBL-5-2-1"
-class="td11"> <!--l. 169--><p class="noindent" >Class
- End
- Port </p></td><td style="white-space:nowrap; text-align:center;" id="TBL-5-2-2"
-class="td11"> <img
-src="images/040-ClassEndPort.png" alt="PIC"
- /> </td><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" id="TBL-5-2-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:center;" id="TBL-6-1-1"
-class="td11"><span
-class="ecbx-1000">External Class End Port:</span></td></tr><tr
- style="vertical-align:baseline;" id="TBL-6-2-"><td style="white-space:nowrap; text-align:center;" id="TBL-6-2-1"
-class="td11"> <img
-src="images/040-ClassEndPortTextual.png" alt="PIC"
- /></td>
-</tr><tr
- style="vertical-align:baseline;" id="TBL-6-3-"><td style="white-space:nowrap; text-align:center;" id="TBL-6-3-1"
-class="td11"> <span
-class="ecbx-1000">Internal Class End Port: </span></td></tr><tr
- style="vertical-align:baseline;" id="TBL-6-4-"><td style="white-space:nowrap; text-align:center;" id="TBL-6-4-1"
-class="td11"> <img
-src="images/040-ClassEndPortInternalTextual.png" alt="PIC"
- /></td>
-</tr><tr
- style="vertical-align:baseline;" id="TBL-6-5-"><td style="white-space:nowrap; text-align:center;" 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-3-"><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" id="TBL-5-3-1"
-class="td11"> <!--l. 170--><p class="noindent" >Conjugated
- Class
- End
- Port </p></td><td style="white-space:nowrap; text-align:center;" id="TBL-5-3-2"
-class="td11"> <img
-src="images/040-ConjugatedClassEndPort.png" alt="PIC"
- /> </td><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" id="TBL-5-3-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; vertical-align:baseline;" id="TBL-7-1-1"
-class="td11"><!--l. 170--><p class="noindent" ><span
-class="ecbx-1000">External Conjugated Class End</span>
-<span
-class="ecbx-1000">Port:</span> </p></td>
-</tr><tr
- style="vertical-align:baseline;" id="TBL-7-2-"><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" id="TBL-7-2-1"
-class="td11"><!--l. 170--><p class="noindent" ><img
-src="images/040-ConjugatedClassEndPortTextual.png" alt="PIC"
- /> </p></td>
-</tr><tr
- style="vertical-align:baseline;" id="TBL-7-3-"><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" id="TBL-7-3-1"
-class="td11"><!--l. 170--><p class="noindent" ><span
-class="ecbx-1000">Internal Conjugated Class End</span>
-<span
-class="ecbx-1000">Port:</span> </p></td>
-</tr><tr
- style="vertical-align:baseline;" id="TBL-7-4-"><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" id="TBL-7-4-1"
-class="td11"><!--l. 170--><p class="noindent" ><img
-src="images/040-ConjugatedClassEndPortInternalTextual.png" alt="PIC"
- /> </p></td>
-</tr><tr
- style="vertical-align:baseline;" id="TBL-7-5-"><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" 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-4-"><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" id="TBL-5-4-1"
-class="td11"> <!--l. 171--><p class="noindent" >Class
- Relay
- Port </p></td><td style="white-space:nowrap; text-align:center;" id="TBL-5-4-2"
-class="td11"> <img
-src="images/040-ClassRelayPort.png" alt="PIC"
- /> </td><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" id="TBL-5-4-3"
-class="td11"> <!--l. 171--><p class="noindent" ><img
-src="images/040-ClassRelayPortTextual.png" alt="PIC"
- /> </p></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:baseline;" id="TBL-5-5-1"
-class="td11"> <!--l. 172--><p class="noindent" >Conjugated
- Class
- Relay
- Port </p></td><td style="white-space:nowrap; text-align:center;" id="TBL-5-5-2"
-class="td11"> <img
-src="images/040-ConjugatedClassRelayPort.png" alt="PIC"
- /> </td><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" id="TBL-5-5-3"
-class="td11"> <!--l. 172--><p class="noindent" ><img
-src="images/040-ConjugatedClassRelayPortTextual.png" alt="PIC"
- /> </p></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:baseline;" id="TBL-5-6-1"
-class="td11"> <!--l. 173--><p class="noindent" >Replicated
- Class
- End
- Port </p></td><td style="white-space:nowrap; text-align:center;" id="TBL-5-6-2"
-class="td11"> <img
-src="images/040-ReplicatedClassEndPort.png" alt="PIC"
- /> </td><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" id="TBL-5-6-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. 173--><p class="noindent" ><span
-class="ecbx-1000">External Replicated Class End</span>
-<span
-class="ecbx-1000">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. 173--><p class="noindent" ><img
-src="images/040-ReplicatedClassEndPortTextual.png" alt="PIC"
- /> </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. 173--><p class="noindent" ><span
-class="ecbx-1000">Internal Replicated Class End</span>
-<span
-class="ecbx-1000">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. 173--><p class="noindent" ><img
-src="images/040-ReplicatedClassEndPortInternalTextual.png" alt="PIC"
- /> </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-7-"><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" id="TBL-5-7-1"
-class="td11"> <!--l. 174--><p class="noindent" >Conjugated
- Replicated
- Class
- End
- Port </p></td><td style="white-space:nowrap; text-align:center;" id="TBL-5-7-2"
-class="td11"> <img
-src="images/040-ConjugatedReplicatedClassEndPort.png" alt="PIC"
- /> </td><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" id="TBL-5-7-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. 174--><p class="noindent" ><span
-class="ecbx-1000">External Conjugated</span>
-<span
-class="ecbx-1000">Replicated Class 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. 174--><p class="noindent" ><img
-src="images/040-ConjugatedReplicatedClassEndPortTextual.png" alt="PIC"
- /> </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. 174--><p class="noindent" ><span
-class="ecbx-1000">Internal Conjugated Replicated</span>
-<span
-class="ecbx-1000">Class 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. 174--><p class="noindent" ><img
-src="images/040-ConjugatedReplicatedClassEndPortInternalTextual.png" alt="PIC"
- /> </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-8-"><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" id="TBL-5-8-1"
-class="td11"> <!--l. 175--><p class="noindent" >Replicated
- Class
- Relay
- Port </p></td><td style="white-space:nowrap; text-align:center;" id="TBL-5-8-2"
-class="td11"> <img
-src="images/040-ReplicatedClassRelayPort.png" alt="PIC"
- /> </td><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" id="TBL-5-8-3"
-class="td11"> <!--l. 175--><p class="noindent" ><img
-src="images/040-ReplicatedClassRelayPortTextual.png" alt="PIC"
- /> </p></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:baseline;" id="TBL-5-9-1"
-class="td11"> <!--l. 176--><p class="noindent" >Conjugated
- Replicated
- Class
- Relay
- Port </p></td><td style="white-space:nowrap; text-align:center;" id="TBL-5-9-2"
-class="td11"> <img
-src="images/040-ConjugatedReplicatedClassRelayPort.png" alt="PIC"
- /> </td><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" id="TBL-5-9-3"
-class="td11"> <!--l. 176--><p class="noindent" ><img
-src="images/040-ConjugatedReplicatedClassRelayPortTextual.png" alt="PIC"
- /> </p></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:baseline;" id="TBL-5-10-1"
-class="td11"> </td>
-</tr><tr
- style="vertical-align:baseline;" id="TBL-5-11-"><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" id="TBL-5-11-1"
-class="td11"> </td>
-</tr><tr
- style="vertical-align:baseline;" id="TBL-5-12-"><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" id="TBL-5-12-1"
-class="td11"> <!--l. 177--><p class="noindent" > </p></td>
-
-
-
-</tr><tr
- style="vertical-align:baseline;" id="TBL-5-13-"><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" id="TBL-5-13-1"
-class="td11"> <!--l. 177--><p class="noindent" > </p></td>
-</tr><tr
- style="vertical-align:baseline;" id="TBL-5-14-"><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" id="TBL-5-14-1"
-class="td11"> </td><td style="white-space:nowrap; text-align:center;" id="TBL-5-14-2"
-class="td11"> </td><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" id="TBL-5-14-3"
-class="td11"></td></tr>
-</table></div>
-
-
-
-</div><hr class="endfloat" />
-</div>
-<h5 class="subsubsectionHead"><a
- id="x52-8300010.3.3"></a>Reference Ports</h5>
-<!--l. 258--><p class="noindent" >These symbols can only appear on the border of an ActorReference symbol. Since the
-type of port is defined in the ActorClass, no textual notation for the Reference Ports
-exists.
-</p>
-<div class="table">
-
-
-
-<!--l. 261--><p class="noindent" ><a
- id="x52-830015"></a></p><hr class="float" /><div class="float"
->
-
-
-
- <div class="caption"
-><span class="id">Table&#x00A0;10.5: </span><span
-class="content">Title</span></div><!--tex4ht:label?: x52-830015 -->
-<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="ecbx-1000">Element </span></td><td style="white-space:nowrap; text-align:center;" id="TBL-10-1-2"
-class="td11"> <span
-class="ecbx-1000">Graphical Notation </span></td><td style="white-space:nowrap; text-align:center;" id="TBL-10-1-3"
-class="td11"> <span
-class="ecbx-1000">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="ecti-1000">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="ecti-1000">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="ecti-1000">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="ecti-1000">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. 301--><div class="crosslinks"><p class="noindent">[<a
+<!--l. 164--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docse41.html" >next</a>] [<a
href="etrice-docse39.html" >prev</a>] [<a
href="etrice-docse39.html#tailetrice-docse39.html" >prev-tail</a>] [<a
href="etrice-docse40.html" >front</a>] [<a
href="etrice-docch10.html#etrice-docse40.html" >up</a>] </p></div>
-<!--l. 301--><p class="noindent" ><a
- id="tailetrice-docse40.html"></a> </p>
+<!--l. 164--><p class="noindent" ><a
+ id="tailetrice-docse40.html"></a> </p>
</body></html>
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse41.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse41.html
index 9b0eaf7..57c7292 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse41.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse41.html
@@ -4,54 +4,41 @@
<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
<html xmlns="http://www.w3.org/1999/xhtml"
>
-<head><title>DataClass</title>
+<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-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
-<!--l. 301--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse42.html" >next</a>] [<a
+<!--l. 164--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docch11.html" >next</a>] [<a
href="etrice-docse40.html" >prev</a>] [<a
href="etrice-docse40.html#tailetrice-docse40.html" >prev-tail</a>] [<a
href="#tailetrice-docse41.html">tail</a>] [<a
href="etrice-docch10.html#etrice-docse41.html" >up</a>] </p></div>
-<h3 class="sectionHead"><span class="titlemark">10.4 </span> <a
- id="x53-8400010.4"></a>DataClass</h3>
-<!--l. 303--><p class="noindent" >
+<h3 class="sectionHead"><span class="titlemark">10.8 </span> <a
+ id="x53-6900010.8"></a>Summary</h3>
+<!--l. 166--><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. 168--><p class="noindent" >The next tutorial provides an exercise to get more familiar with these working steps.
+
+
+
+
+
+
</p>
-<h4 class="subsectionHead"><span class="titlemark">10.4.1 </span> <a
- id="x53-8500010.4.1"></a>Description</h4>
-<!--l. 305--><p class="noindent" >The DataClass enables the modeling of hierarchical complex datatypes and
-operations on them. The DataClass is the equivalent to a Class in languages like Java
-or C++, but has less features. The content of a DataClass can always be sent via
-message between actors (defined as message data in ProtocolClass).
-</p><!--l. 307--><p class="noindent" >
-</p>
-<h4 class="subsectionHead"><span class="titlemark">10.4.2 </span> <a
- id="x53-8600010.4.2"></a>Notation</h4>
-<!--l. 309--><p class="noindent" >Example: DataClass using PrimitiveTypes
-</p><!--l. 311--><p class="noindent" ><img
-src="images/040-DataClass1.png" alt="PIC"
- />
-</p><!--l. 314--><p class="noindent" >Example: DataClass using other DataClasses:
-</p><!--l. 316--><p class="noindent" ><img
-src="images/040-DataClass2.png" alt="PIC"
- />
-
-
-
-</p>
-<!--l. 319--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse42.html" >next</a>] [<a
+<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docch11.html" >next</a>] [<a
href="etrice-docse40.html" >prev</a>] [<a
href="etrice-docse40.html#tailetrice-docse40.html" >prev-tail</a>] [<a
href="etrice-docse41.html" >front</a>] [<a
href="etrice-docch10.html#etrice-docse41.html" >up</a>] </p></div>
-<!--l. 319--><p class="noindent" ><a
+<!--l. 1--><p class="noindent" ><a
id="tailetrice-docse41.html"></a> </p>
</body></html>
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse42.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse42.html
index 75834bf..66579c9 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse42.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse42.html
@@ -4,169 +4,58 @@
<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
<html xmlns="http://www.w3.org/1999/xhtml"
>
-<head><title>Layering</title>
+<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-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
-<!--l. 319--><div class="crosslinks"><p class="noindent">[<a
+<!--l. 3--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docse43.html" >next</a>] [<a
-href="etrice-docse41.html" >prev</a>] [<a
-href="etrice-docse41.html#tailetrice-docse41.html" >prev-tail</a>] [<a
+href="etrice-docch11.html" >prev</a>] [<a
+href="etrice-docch11.html#tailetrice-docch11.html" >prev-tail</a>] [<a
href="#tailetrice-docse42.html">tail</a>] [<a
-href="etrice-docch10.html#etrice-docse42.html" >up</a>] </p></div>
-<h3 class="sectionHead"><span class="titlemark">10.5 </span> <a
- id="x54-8700010.5"></a>Layering</h3>
-<!--l. 321--><p class="noindent" >
-</p>
-<h4 class="subsectionHead"><span class="titlemark">10.5.1 </span> <a
- id="x54-8800010.5.1"></a>Description</h4>
-<!--l. 323--><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.
+href="etrice-docch11.html#etrice-docse42.html" >up</a>] </p></div>
+<h3 class="sectionHead"><span class="titlemark">11.1 </span> <a
+ id="x55-7100011.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. 7--><p class="noindent" >You will perform the following steps:
+</p><!--l. 9--><p class="noindent" >
</p><ol class="enumerate1" >
<li
- class="enumerate" id="x54-88002x1">an ActorClass can define a Service Provision Point (SPP) to publish a
- specific service, defined by a ProtocolClass
+ class="enumerate" id="x55-71002x1">create a new model from scratch for C
+ </li>
+ <li
+ class="enumerate" id="x55-71004x2">define a protocol
+ </li>
+ <li
+ class="enumerate" id="x55-71006x3">define your own data type
</li>
<li
- class="enumerate" id="x54-88004x2">an ActorClass can define a Service Access Point (SAP) if it needs a service,
- defined by a ProtocolClass
+ class="enumerate" id="x55-71008x4">create the structure and the behavior by yourself
</li>
<li
- class="enumerate" id="x54-88006x3">for a given Actor hierarchy, a LayerConnection defines which SAP will be
- satisfied by (connected to) which SPP</li></ol>
-<!--l. 330--><p class="noindent" >
+ class="enumerate" id="x55-71010x5">generate, build and run the model</li></ol>
+<!--l. 17--><p class="noindent" >Make sure that you have set up the workspace as described in <span
+class="ecti-1000">Setting up the Workspace for C</span>
+<span
+class="ecti-1000">Projects</span>.
+
+
</p>
-<h4 class="subsectionHead"><span class="titlemark">10.5.2 </span> <a
- id="x54-8900010.5.2"></a>Notation</h4>
-<div class="table">
-
-
-
-<!--l. 333--><p class="noindent" ></p><hr class="float" /><div class="float"
->
-
-
-
-<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. 335--><p class="noindent" ><span
-class="ecbx-1000">Description</span> </p></td><td style="white-space:nowrap; text-align:center;" id="TBL-11-1-2"
-class="td11"> <span
-class="ecbx-1000">Graphical Notation </span></td><td style="white-space:nowrap; text-align:center;" id="TBL-11-1-3"
-class="td11"> <span
-class="ecbx-1000">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-11-2-"><td style="white-space:nowrap; text-align:left; vertical-align:middle;" id="TBL-11-2-1"
-class="td11">
- <div class="flushleft"
->
- <!--l. 336--><p class="noindent" >
- The Layer
- Connections in this
- model define which
- services are
- provided by the
- <span
-class="ecti-1000">ServiceLayer</span>
- (<span
-class="ecti-1000">digitalIO </span>and
- <span
-class="ecti-1000">timer</span>)</p></div>
- <!--l. 336--><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:center;" id="TBL-11-2-3"
-class="td11"> <img
-src="images/040-LayeringModelTextual.png" alt="PIC"
- /> </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. 337--><p class="noindent" >
- The
- implementation of
- the services (SPPs)
- can be delegated to
- sub actors. In this
- case the actor
- <span
-class="ecti-1000">ServiceLayer </span>relays
- (delegates) the
- implementation
- services <span
-class="ecti-1000">digitalIO</span>
- and <span
-class="ecti-1000">timer </span>to sub
- actors</p></div>
- <!--l. 337--><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:center;" id="TBL-11-3-3"
-class="td11"> <img
-src="images/040-LayeringServiceLayerTextual.png" alt="PIC"
- /> </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. 338--><p class="noindent" >
- Every Actor inside
- the
- <span
-class="ecti-1000">ApplicationLayer</span>
- that contains an
- SAP with the same
- Protocol as <span
-class="ecti-1000">timer</span>
- or <span
-class="ecti-1000">digitalIO </span>will be
- connected to the
- specified SPP</p></div>
- <!--l. 338--><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:center;" id="TBL-11-4-3"
-class="td11"> <img
-src="images/040-LayeringApplicationLayerTextual.png" alt="PIC"
- /> </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. 365--><div class="crosslinks"><p class="noindent">[<a
+<!--l. 19--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docse43.html" >next</a>] [<a
-href="etrice-docse41.html" >prev</a>] [<a
-href="etrice-docse41.html#tailetrice-docse41.html" >prev-tail</a>] [<a
+href="etrice-docch11.html" >prev</a>] [<a
+href="etrice-docch11.html#tailetrice-docch11.html" >prev-tail</a>] [<a
href="etrice-docse42.html" >front</a>] [<a
-href="etrice-docch10.html#etrice-docse42.html" >up</a>] </p></div>
-<!--l. 365--><p class="noindent" ><a
+href="etrice-docch11.html#etrice-docse42.html" >up</a>] </p></div>
+<!--l. 19--><p class="noindent" ><a
id="tailetrice-docse42.html"></a> </p>
</body></html>
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse43.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse43.html
index 8011843..5b4766d 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse43.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse43.html
@@ -4,301 +4,70 @@
<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
<html xmlns="http://www.w3.org/1999/xhtml"
>
-<head><title>Finite State Machines</title>
+<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-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
-<!--l. 365--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docch11.html" >next</a>] [<a
+<!--l. 19--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse44.html" >next</a>] [<a
href="etrice-docse42.html" >prev</a>] [<a
href="etrice-docse42.html#tailetrice-docse42.html" >prev-tail</a>] [<a
href="#tailetrice-docse43.html">tail</a>] [<a
-href="etrice-docch10.html#etrice-docse43.html" >up</a>] </p></div>
-<h3 class="sectionHead"><span class="titlemark">10.6 </span> <a
- id="x55-9000010.6"></a>Finite State Machines</h3>
-<!--l. 367--><p class="noindent" >
-</p>
-<h4 class="subsectionHead"><span class="titlemark">10.6.1 </span> <a
- id="x55-9100010.6.1"></a>Description</h4>
-<!--l. 369--><p class="noindent" >Definition from <a
-href="http://en.wikipedia.org/wiki/Finite-state_machine" >Wikipedia</a>:
-</p><!--l. 371--><p class="noindent" >
- </p><div class="quote">
- <!--l. 372--><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. 374--><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. 377--><p class="noindent" >
-</p>
-<h4 class="subsectionHead"><span class="titlemark">10.6.2 </span> <a
- id="x55-9200010.6.2"></a>Motivation</h4>
-<!--l. 379--><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. 381--><p class="noindent" >We distinguish flat and hierarchical state machines.
-
-
-
-</p><!--l. 383--><p class="noindent" >
-</p>
-<h4 class="subsectionHead"><span class="titlemark">10.6.3 </span> <a
- id="x55-9300010.6.3"></a>Notation</h4>
-<!--l. 385--><p class="noindent" >
-</p>
-<h5 class="subsubsectionHead"><a
- id="x55-9400010.6.3"></a>Flat Finite State Machine</h5>
-<!--l. 387--><p class="noindent" >The simpler flat finite state machines are composed of the following elements:
-</p>
-<div class="table">
-
-
-
-<!--l. 390--><p class="noindent" ><a
- id="x55-940016"></a></p><hr class="float" /><div class="float"
->
-
-
-
- <div class="caption"
-><span class="id">Table&#x00A0;10.6: </span><span
-class="content">Title</span></div><!--tex4ht:label?: x55-940016 -->
-<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:center;" id="TBL-12-1-1"
-class="td11"> <span
-class="ecbx-1000">Description </span></td><td style="white-space:nowrap; text-align:center;" id="TBL-12-1-2"
-class="td11"> <span
-class="ecbx-1000">Graphical Notation </span></td><td style="white-space:nowrap; text-align:center;" id="TBL-12-1-3"
-class="td11"> <span
-class="ecbx-1000">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-12-2-"><td style="white-space:nowrap; text-align:center;" id="TBL-12-2-1"
-class="td11"> State </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:center;" id="TBL-12-2-3"
-class="td11"> <img
-src="images/040-StateTextual.jpg" alt="PIC"
- /> </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:center;" id="TBL-12-3-1"
-class="td11"> InitialPoint </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:center;" id="TBL-12-3-3"
-class="td11"> <span
-class="ecti-1000">implicit</span></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:center;" id="TBL-12-4-1"
-class="td11"> TransitionPoint </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:center;" id="TBL-12-4-3"
-class="td11"> <img
-src="images/040-TransitionPointTextual.jpg" alt="PIC"
- /> </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:center;" id="TBL-12-5-1"
-class="td11"> ChoicePoint </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:center;" id="TBL-12-5-3"
-class="td11"> <img
-src="images/040-ChoicePointTextual.jpg" alt="PIC"
- /> </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:center;" id="TBL-12-6-1"
-class="td11"> Initial Transition </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:center;" id="TBL-12-6-3"
-class="td11"> <img
-src="images/040-InitialTransitionTextual.jpg" alt="PIC"
- /> </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:center;" id="TBL-12-7-1"
-class="td11"> Triggered Transition </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:center;" id="TBL-12-7-3"
-class="td11"> <img
-src="images/040-TriggeredTransitionTextual.jpg" alt="PIC"
- /> </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:center;" id="TBL-12-8-1"
-class="td11"> </td></tr></table></div>
-
-
-
-</div><hr class="endfloat" />
-</div>
-<h5 class="subsubsectionHead"><a
- id="x55-9500010.6.3"></a>Hierarchical Finite State Machine</h5>
-<!--l. 443--><p class="noindent" >The hierarchical finite state machine adds the notion of a sub state machine nested in
-a state. A few modeling elements are added to the set listed above:
-</p>
-<div class="table">
-
-
-
-<!--l. 447--><p class="noindent" ><a
- id="x55-950017"></a></p><hr class="float" /><div class="float"
->
-
-
-
- <div class="caption"
-><span class="id">Table&#x00A0;10.7: </span><span
-class="content">Title</span></div><!--tex4ht:label?: x55-950017 -->
-<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:baseline;" id="TBL-13-1-1"
-class="td11"> <!--l. 450--><p class="noindent" ><span
-class="ecbx-1000">Description</span> </p></td><td style="white-space:nowrap; text-align:center;" id="TBL-13-1-2"
-class="td11"> <span
-class="ecbx-1000">Graphical Notation </span></td><td style="white-space:nowrap; text-align:center;" id="TBL-13-1-3"
-class="td11"> <span
-class="ecbx-1000">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-13-2-"><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" id="TBL-13-2-1"
-class="td11"> <!--l. 451--><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:center;" id="TBL-13-2-3"
-class="td11"> <!--tex4ht:inline--><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:center;" id="TBL-15-1-1"
-class="td00">Sub state machine</td></tr><tr
- style="vertical-align:baseline;" id="TBL-15-2-"><td style="white-space:nowrap; text-align:center;" id="TBL-15-2-1"
-class="td00"> <img
-src="images/040-StateWithSubFSMTextual.jpg" alt="PIC"
- /></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-13-3-"><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" id="TBL-13-3-1"
-class="td11"> <!--l. 452--><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:center;" id="TBL-13-3-3"
-class="td11"> <!--tex4ht:inline--><div class="tabular"> <table id="TBL-17" class="tabular"
-cellspacing="0" cellpadding="0"
-><colgroup id="TBL-17-1g"><col
-id="TBL-17-1" /></colgroup><tr
- style="vertical-align:baseline;" id="TBL-17-1-"><td style="white-space:nowrap; text-align:center;" id="TBL-17-1-1"
-class="td00"> </td></tr><tr
- style="vertical-align:baseline;" id="TBL-17-2-"><td style="white-space:nowrap; text-align:center;" id="TBL-17-2-1"
-class="td00"><img
-src="images/040-EntryPointTextual.jpg" alt="PIC"
- /></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-13-4-"><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" id="TBL-13-4-1"
-class="td11"> <!--l. 453--><p class="noindent" >Exit Point </p></td><td style="white-space:nowrap; text-align:center;" id="TBL-13-4-2"
-class="td11"> </td><td style="white-space:nowrap; text-align:center;" id="TBL-13-4-3"
-class="td11"> <img
-src="images/040-ExitPointTextual.jpg" alt="PIC"
- /> </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:baseline;" id="TBL-13-5-1"
-class="td11"> </td></tr></table>
-</div>
-
-
-
-</div><hr class="endfloat" />
-</div>
-<h4 class="subsectionHead"><span class="titlemark">10.6.4 </span> <a
- id="x55-9600010.6.4"></a>Examples</h4>
-<!--l. 492--><p class="noindent" >
-</p>
-<h5 class="subsubsectionHead"><a
- id="x55-9700010.6.4"></a>Example of a flat finite state machine:</h5>
-<!--l. 495--><p class="noindent" ><img
-src="images/040-FlatFSM.jpg" alt="PIC"
- />
-</p><!--l. 497--><p class="noindent" >
-</p>
-<h5 class="subsubsectionHead"><a
- id="x55-9800010.6.4"></a>Example of a hierarchical finite state machine:</h5>
-<!--l. 499--><p class="noindent" >Top level
-</p><!--l. 502--><p class="noindent" ><img
-src="images/040-HierarchicalFSMTop.jpg" alt="PIC"
- />
-</p><!--l. 504--><p class="noindent" >Sub state machine of Initializing
-</p><!--l. 507--><p class="noindent" ><img
-src="images/040-HierarchicalFSMInitializing.jpg" alt="PIC"
+href="etrice-docch11.html#etrice-docse43.html" >up</a>] </p></div>
+<h3 class="sectionHead"><span class="titlemark">11.2 </span> <a
+ id="x56-7200011.2"></a>Create a new model from scratch</h3>
+<!--l. 21--><p class="noindent" >Remember the following steps from the previous tutorials: </p>
+ <ul class="itemize1">
+ <li class="itemize">select the <span
+class="ecti-1000">C/C++ </span>perspective
+ </li>
+ <li class="itemize">From the main menue select <span
+class="ecti-1000">File-&#x003E;New-&#x003E;C Project</span>
+ </li>
+ <li class="itemize">Name the project <span
+class="ecti-1000">RemoveComment</span>
+ </li>
+ <li class="itemize">Project type is <span
+class="ecti-1000">Executable / Empty C Project</span>
+ </li>
+ <li class="itemize">Toolchain is <span
+class="ecti-1000">MinGW</span>
+ </li>
+ <li class="itemize">Add the folder <span
+class="ecti-1000">model</span>
+ </li>
+ <li class="itemize">Add the model file and name it <span
+class="ecti-1000">RemoveComment.room</span>
+ </li>
+ <li class="itemize">Add the Xtext nature.</li></ul>
+<!--l. 33--><p class="noindent" >The workspace should look like this:
+</p><!--l. 35--><p class="noindent" ><img
+src="images/036-RemoveCommentC01.png" alt="PIC"
/>
-</p><!--l. 509--><p class="noindent" >Sub state machine of Running
-</p><!--l. 512--><p class="noindent" ><img
-src="images/040-HierarchicalFSMRunning.jpg" alt="PIC"
+</p><!--l. 38--><p class="noindent" >Create a launch configuration for the C generator and add the include path and library as described in
+<span
+class="ecti-1000">HelloWorldC</span>.
+</p><!--l. 40--><p class="noindent" >The workspace should look like this:
+</p><!--l. 42--><p class="noindent" ><img
+src="images/036-RemoveCommentC02.png" alt="PIC"
/>
-
-
-
-
-
-
-
-
-
+</p><!--l. 45--><p class="noindent" >Now the model is created and all settings for the code generator, compiler and linker are
+done.
+
+
</p>
-<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docch11.html" >next</a>] [<a
+<!--l. 48--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse44.html" >next</a>] [<a
href="etrice-docse42.html" >prev</a>] [<a
href="etrice-docse42.html#tailetrice-docse42.html" >prev-tail</a>] [<a
href="etrice-docse43.html" >front</a>] [<a
-href="etrice-docch10.html#etrice-docse43.html" >up</a>] </p></div>
-<!--l. 1--><p class="noindent" ><a
- id="tailetrice-docse43.html"></a> </p>
+href="etrice-docch11.html#etrice-docse43.html" >up</a>] </p></div>
+<!--l. 48--><p class="noindent" ><a
+ id="tailetrice-docse43.html"></a> </p>
</body></html>
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse44.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse44.html
index 78f216b..0baabfd 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse44.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse44.html
@@ -4,55 +4,71 @@
<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
<html xmlns="http://www.w3.org/1999/xhtml"
>
-<head><title>Overview</title>
+<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-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
-<!--l. 3--><div class="crosslinks"><p class="noindent">[<a
+<!--l. 48--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docse45.html" >next</a>] [<a
-href="etrice-docch11.html" >prev</a>] [<a
-href="etrice-docch11.html#tailetrice-docch11.html" >prev-tail</a>] [<a
+href="etrice-docse43.html" >prev</a>] [<a
+href="etrice-docse43.html#tailetrice-docse43.html" >prev-tail</a>] [<a
href="#tailetrice-docse44.html">tail</a>] [<a
href="etrice-docch11.html#etrice-docse44.html" >up</a>] </p></div>
-<h3 class="sectionHead"><span class="titlemark">11.1 </span> <a
- id="x57-10000011.1"></a>Overview</h3>
-<!--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. 7--><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. 9--><p class="noindent" >This chapter will answer the following questions </p>
- <ul class="itemize1">
- <li class="itemize"><a
-href="etrice-docse45.html#x58-10100011.2">&#8221;How to perform automatic layout in the graphical editors of eTrice?&#8221;</a>
- </li>
- <li class="itemize"><a
-href="etrice-docse46.html#x59-10200011.3">&#8221;What are layout options?&#8221;</a>
- </li>
- <li class="itemize"><a
-href="etrice-docse47.html#x60-10300011.4">&#8221;How to configure the layout options to alter the diagram layout as
- desired?&#8221;</a></li></ul>
-<!--l. 16--><p class="noindent" >Moreover, some <a
-href="etrice-docse48.html#x61-10800011.5">&#8221;special layout options&#8221;</a> will also be discussed.
-
-
-
+<h3 class="sectionHead"><span class="titlemark">11.3 </span> <a
+ id="x57-7300011.3"></a>Create your own data type</h3>
+<!--l. 50--><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="ecti-1000">FILE</span>. To make this type available on the model level, you have to declare the
+type.
+</p><!--l. 52--><p class="noindent" >Open the file <span
+class="ecti-1000">Types.room </span>from <span
+class="ecti-1000">org.eclipse.modellib.c </span>and take a look at the declaration of <span
+class="ecti-1000">string </span>(last
+line) which is not a basic C type.
+</p><!--l. 54--><p class="noindent" ><span
+class="ecti-1000">PrimitiveType string:ptCharacter -&#x003E; charPtr default "0"</span>
+</p><!--l. 56--><p class="noindent" >With this declaration, you make the <span
+class="ecti-1000">string </span>keyword available on model level as a primitive type. This
+type will be translated to <span
+class="ecti-1000">charPtr </span>in your C sources. <span
+class="ecti-1000">charPtr </span>is defined in <span
+class="ecti-1000">etDatatypes.h</span>. This header file
+is platform specific (<span
+class="ecti-1000">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. 58--><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>
-<!--l. 18--><div class="crosslinks"><p class="noindent">[<a
+<div class="verbatim" id="verbatim-20">
+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. 68--><p class="nopar" >
+</p><!--l. 71--><p class="noindent" ><span
+class="ecti-1000">FILE </span>is the native type for MinGW. Therefore you don&#8217;t need a mapping within <span
+class="ecti-1000">etDatatypes.h</span>. If your
+model should be portable across different platforms you should not take this shortcut.
+
+
+</p>
+<!--l. 73--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docse45.html" >next</a>] [<a
-href="etrice-docch11.html" >prev</a>] [<a
-href="etrice-docch11.html#tailetrice-docch11.html" >prev-tail</a>] [<a
+href="etrice-docse43.html" >prev</a>] [<a
+href="etrice-docse43.html#tailetrice-docse43.html" >prev-tail</a>] [<a
href="etrice-docse44.html" >front</a>] [<a
href="etrice-docch11.html#etrice-docse44.html" >up</a>] </p></div>
-<!--l. 18--><p class="noindent" ><a
+<!--l. 73--><p class="noindent" ><a
id="tailetrice-docse44.html"></a> </p>
</body></html>
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse45.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse45.html
index 1c565b7..ca8d288 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse45.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse45.html
@@ -4,44 +4,82 @@
<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
<html xmlns="http://www.w3.org/1999/xhtml"
>
-<head><title>Performing Automatic Layout</title>
+<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-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
-<!--l. 18--><div class="crosslinks"><p class="noindent">[<a
+<!--l. 73--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docse46.html" >next</a>] [<a
href="etrice-docse44.html" >prev</a>] [<a
href="etrice-docse44.html#tailetrice-docse44.html" >prev-tail</a>] [<a
href="#tailetrice-docse45.html">tail</a>] [<a
href="etrice-docch11.html#etrice-docse45.html" >up</a>] </p></div>
-<h3 class="sectionHead"><span class="titlemark">11.2 </span> <a
- id="x58-10100011.2"></a>Performing Automatic Layout</h3>
-<!--l. 21--><p class="noindent" >Automatic layout could be performed in eTrice graphical editors using the command
-to layout the current diagram.
-</p><!--l. 23--><p class="noindent" >This command is available in </p>
+<h3 class="sectionHead"><span class="titlemark">11.4 </span> <a
+ id="x58-7400011.4"></a>Create the model</h3>
+<!--l. 75--><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. 77--><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. 79--><p class="noindent" >Remember the logical steps: </p>
<ul class="itemize1">
- <li class="itemize">The context menu of the diagrams
+ <li class="itemize">create the model by the help of content assist (CTRL Space)
</li>
- <li class="itemize">Using the <span
-class="ecti-1000">Ctrl+R L </span>shortcut.</li></ul>
-<!--l. 29--><p class="noindent" >Additionally, an entry in the context menu allows to layout only a selected part of
-the diagram.
-
-
-
+ <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. 88--><p class="noindent" >Try to create the model by yourself and take the following solution as an example.
+</p><!--l. 90--><p class="noindent" >Structure:
+</p><!--l. 92--><p class="noindent" ><img
+src="images/036-RemoveCommentC04.png" alt="PIC"
+ />
+</p><!--l. 95--><p class="noindent" >File reader FSM:
+</p><!--l. 97--><p class="noindent" ><img
+src="images/036-RemoveCommentC05.png" alt="PIC"
+ />
+</p><!--l. 100--><p class="noindent" >Parser FSM:
+</p><!--l. 102--><p class="noindent" ><img
+src="images/036-RemoveCommentC06.png" alt="PIC"
+ />
+</p><!--l. 105--><p class="noindent" >The complete model can be found in <span
+class="ecti-1000">org.eclipse.etrice.tutorials.c</span>
+</p><!--l. 107--><p class="noindent" >Take a look at the file attribute of the file reader.
+
+
+</p>
+<div class="verbatim" id="verbatim-21">
+Attribute&#x00A0;f:file&#x00A0;ref
+</div>
+<!--l. 111--><p class="nopar" >
+</p><!--l. 113--><p class="noindent" ><span
+class="ecti-1000">fopen </span>expects a <span
+class="ecti-1000">FILE *</span>. <span
+class="ecti-1000">f:file ref </span>declares a variable <span
+class="ecti-1000">f </span>from type reference to <span
+class="ecti-1000">file</span>, which is a pointer to
+<span
+class="ecti-1000">FILE</span>.
+
+
</p>
-<!--l. 31--><div class="crosslinks"><p class="noindent">[<a
+<!--l. 116--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docse46.html" >next</a>] [<a
href="etrice-docse44.html" >prev</a>] [<a
href="etrice-docse44.html#tailetrice-docse44.html" >prev-tail</a>] [<a
href="etrice-docse45.html" >front</a>] [<a
href="etrice-docch11.html#etrice-docse45.html" >up</a>] </p></div>
-<!--l. 31--><p class="noindent" ><a
+<!--l. 116--><p class="noindent" ><a
id="tailetrice-docse45.html"></a> </p>
</body></html>
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse46.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse46.html
index f970bcd..4cb36b5 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse46.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse46.html
@@ -4,48 +4,44 @@
<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
<html xmlns="http://www.w3.org/1999/xhtml"
>
-<head><title>Layout Options</title>
+<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-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
-<!--l. 31--><div class="crosslinks"><p class="noindent">[<a
+<!--l. 116--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docse47.html" >next</a>] [<a
href="etrice-docse45.html" >prev</a>] [<a
href="etrice-docse45.html#tailetrice-docse45.html" >prev-tail</a>] [<a
href="#tailetrice-docse46.html">tail</a>] [<a
href="etrice-docch11.html#etrice-docse46.html" >up</a>] </p></div>
-<h3 class="sectionHead"><span class="titlemark">11.3 </span> <a
- id="x59-10200011.3"></a>Layout Options</h3>
-<!--l. 34--><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. 36--><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="ecti-1000">Show Layout View</span>
-entry.
-</p><!--l. 38--><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
-below:
-</p><!--l. 40--><p class="noindent" ><img
-src="images/043-LayoutOptionDescription.png" alt="PIC"
+<h3 class="sectionHead"><span class="titlemark">11.5 </span> <a
+ id="x59-7500011.5"></a>Generate, build and run the model</h3>
+<!--l. 118--><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="ecti-1000">test.txt</span>.
+</p><!--l. 120--><p class="noindent" ><img
+src="images/036-RemoveCommentC07.png" alt="PIC"
/>
-
-
-
+</p><!--l. 123--><p class="noindent" >Generate, build and run the model.
+</p><!--l. 125--><p class="noindent" >Your output should start like this:
+</p><!--l. 127--><p class="noindent" ><img
+src="images/036-RemoveCommentC08.png" alt="PIC"
+ />
+
+
</p>
-<!--l. 43--><div class="crosslinks"><p class="noindent">[<a
+<!--l. 131--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docse47.html" >next</a>] [<a
href="etrice-docse45.html" >prev</a>] [<a
href="etrice-docse45.html#tailetrice-docse45.html" >prev-tail</a>] [<a
href="etrice-docse46.html" >front</a>] [<a
href="etrice-docch11.html#etrice-docse46.html" >up</a>] </p></div>
-<!--l. 43--><p class="noindent" ><a
+<!--l. 131--><p class="noindent" ><a
id="tailetrice-docse46.html"></a> </p>
</body></html>
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse47.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse47.html
index 682ad55..2510c1b 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse47.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse47.html
@@ -4,198 +4,41 @@
<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
<html xmlns="http://www.w3.org/1999/xhtml"
>
-<head><title>Configuring Layout Options</title>
+<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-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
-<!--l. 43--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse48.html" >next</a>] [<a
+<!--l. 131--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docch12.html" >next</a>] [<a
href="etrice-docse46.html" >prev</a>] [<a
href="etrice-docse46.html#tailetrice-docse46.html" >prev-tail</a>] [<a
href="#tailetrice-docse47.html">tail</a>] [<a
href="etrice-docch11.html#etrice-docse47.html" >up</a>] </p></div>
-<h3 class="sectionHead"><span class="titlemark">11.4 </span> <a
- id="x60-10300011.4"></a>Configuring Layout Options</h3>
-<!--l. 46--><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 *default* 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. 48--><p class="noindent" >
+<h3 class="sectionHead"><span class="titlemark">11.6 </span> <a
+ id="x60-7600011.6"></a>Summary</h3>
+<!--l. 133--><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>
-<h4 class="subsectionHead"><span class="titlemark">11.4.1 </span> <a
- id="x60-10400011.4.1"></a>The Layout View</h4>
-<!--l. 51--><p class="noindent" ><img
-src="images/043-LayoutView.png" alt="PIC"
- />
-</p><!--l. 54--><p class="noindent" >The Layout view 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
-(*.structure file / *.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. 56--><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="ecti-1000">Show Advanced Properties </span>button in the view
-toolbar is activated. The group types can be hidden using the Show Categories
-button.
-</p><!--l. 58--><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. 60--><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. 62--><p class="noindent" >Selecting Restore Default Value in the context menu or the view toolbar 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><!--l. 64--><p class="noindent" ><img
-src="images/043-ContextMenu.png" alt="PIC"
- />
-</p><!--l. 67--><p class="noindent" >The context menu for a specific layout option has different alternatives to set the
-currently active value as <span
-class="ecbx-1000">default </span>value: </p>
- <ul class="itemize1">
- <li class="itemize"><span
-class="ecti-1000">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="ecti-1000">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="ecti-1000">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. 76--><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. 78--><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>
-<!--l. 84--><p class="noindent" >
-</p>
-<h4 class="subsectionHead"><span class="titlemark">11.4.2 </span> <a
- id="x60-10500011.4.2"></a>Preference Page</h4>
-<!--l. 87--><p class="noindent" >The user-defined *default* 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="ecti-1000">Layout</span>: for general preferences regarding layout
-
-
-
- </li>
- <li class="itemize"><span
-class="ecti-1000">Behavior</span>: for setting default values of layout options for eTrice behavior
- diagrams
- </li>
- <li class="itemize"><span
-class="ecti-1000">Structure</span>: for setting default values of layout options for eTrice structure
- diagrams</li></ul>
-<!--l. 94--><p class="noindent" >These preference pages can be accessed via <span
-class="ecti-1000">Windows &#x003E; Preferences &#x003E; eTrice &#x003E;</span>
-<span
-class="ecti-1000">Layout</span>.
-</p><!--l. 96--><p class="noindent" >Note that the contents of these preference pages are in sync with the <span
-class="ecti-1000">KIELER &#x003E;</span>
-<span
-class="ecti-1000">Layout </span>preference page provided by the KIELER. Relevant entries in the <span
-class="ecti-1000">KIELER &#x003E;</span>
-<span
-class="ecti-1000">Layout </span>page are shown in the above preference pages.
-</p><!--l. 98--><p class="noindent" >
-</p>
-<h5 class="subsubsectionHead"><a
- id="x60-10600011.4.2"></a><span
-class="ecti-1000">Layout </span>Preference Page</h5>
-<!--l. 101--><p class="noindent" >The <span
-class="ecti-1000">Layout </span>preference page is meant to configure general options regarding the
-layout.
-</p><!--l. 103--><p class="noindent" >If <span
-class="ecti-1000">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. 105--><p class="noindent" >
-</p>
-<h5 class="subsubsectionHead"><a
- id="x60-10700011.4.2"></a><span
-class="ecti-1000">Behavior </span>and <span
-class="ecti-1000">Structure </span>Preference Page</h5>
-<!--l. 108--><p class="noindent" >The <span
-class="ecti-1000">Behavior </span>and <span
-class="ecti-1000">Structure </span>sub-preference pages help in setting up the default
-values of layout options in behavior and structure diagrams respectively.
-</p><!--l. 110--><p class="noindent" >The <span
-class="ecti-1000">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. 112--><p class="noindent" >Creating a new entry requires the selection of the type of related element 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><!--l. 114--><p class="noindent" ><img
-src="images/043-PreferencePage.png" alt="PIC"
- />
-</p><!--l. 117--><p class="noindent" >Note that the <span
-class="ecti-1000">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="ecti-1000">Structure </span>preference
-page.
-
-
-
-</p>
-<!--l. 119--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse48.html" >next</a>] [<a
+<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docch12.html" >next</a>] [<a
href="etrice-docse46.html" >prev</a>] [<a
href="etrice-docse46.html#tailetrice-docse46.html" >prev-tail</a>] [<a
href="etrice-docse47.html" >front</a>] [<a
href="etrice-docch11.html#etrice-docse47.html" >up</a>] </p></div>
-<!--l. 119--><p class="noindent" ><a
- id="tailetrice-docse47.html"></a> </p>
+<!--l. 1--><p class="noindent" ><a
+ id="tailetrice-docse47.html"></a> </p>
</body></html>
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse48.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse48.html
index b04bca2..d29c0b7 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse48.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse48.html
@@ -4,83 +4,226 @@
<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
<html xmlns="http://www.w3.org/1999/xhtml"
>
-<head><title>Special Layout Options</title>
+<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-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
-<!--l. 119--><div class="crosslinks"><p class="noindent">[<a
+<!--l. 6--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docse49.html" >next</a>] [<a
-href="etrice-docse47.html" >prev</a>] [<a
-href="etrice-docse47.html#tailetrice-docse47.html" >prev-tail</a>] [<a
+href="etrice-docch12.html" >prev</a>] [<a
+href="etrice-docch12.html#tailetrice-docch12.html" >prev-tail</a>] [<a
href="#tailetrice-docse48.html">tail</a>] [<a
-href="etrice-docch11.html#etrice-docse48.html" >up</a>] </p></div>
-<h3 class="sectionHead"><span class="titlemark">11.5 </span> <a
- id="x61-10800011.5"></a>Special Layout Options</h3>
-<!--l. 122--><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. 124--><p class="noindent" >
+href="etrice-docch12.html#etrice-docse48.html" >up</a>] </p></div>
+<h3 class="sectionHead"><span class="titlemark">12.1 </span> <a
+ id="x62-7800012.1"></a>Actors</h3>
+<!--l. 8--><p class="noindent" >
</p>
-<h4 class="subsectionHead"><span class="titlemark">11.5.1 </span> <a
- id="x61-10900011.5.1"></a>Layout Algorithm</h4>
-<!--l. 127--><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. 129--><p class="noindent" >For the purpose of automatic diagram layout in eTrice, we use the <span
-class="ecti-1000">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="ecti-1000">Graphviz Dot </span>algorithm whereas for the structure diagrams we have used
-the <span
-class="ecti-1000">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. 131--><p class="noindent" >
+<h4 class="subsectionHead"><span class="titlemark">12.1.1 </span> <a
+ id="x62-7900012.1.1"></a>Description</h4>
+
+
+<!--l. 10--><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. 12--><p class="noindent" >
</p>
-<h4 class="subsectionHead"><span class="titlemark">11.5.2 </span> <a
- id="x61-11000011.5.2"></a>Diagram Type</h4>
-<!--l. 134--><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 de.cau.cs.kieler.diagramType. Thus, these help
-in
-</p><!--l. 136--><p class="noindent" >The following diagram types have been defined and used in eTrice: </p>
+<h4 class="subsectionHead"><span class="titlemark">12.1.2 </span> <a
+ id="x62-8000012.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 reusable blocks</li></ul>
+<!--l. 21--><p class="noindent" >
+</p>
+<h4 class="subsectionHead"><span class="titlemark">12.1.3 </span> <a
+ id="x62-8100012.1.3"></a>Notation</h4>
+<div class="table">
+
+
+<!--l. 25--><p class="noindent" ><a
+ id="x62-810011"></a></p><hr class="float" /><div class="float"
+>
+
+
+ <div class="caption"
+><span class="id">Table&#x00A0;12.1: </span><span
+class="content">Actor Class Notation</span></div><!--tex4ht:label?: x62-810011 -->
+<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="ecbx-1000">Element </span></td><td style="white-space:nowrap; text-align:left;" id="TBL-3-1-2"
+class="td11"> <span
+class="ecbx-1000">Graphical Notation </span></td><td style="white-space:nowrap; text-align:left;" id="TBL-3-1-3"
+class="td11"> <span
+class="ecbx-1000">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"> <img
+src="images/040-ActorClassTextualNotation.png" alt="PIC"
+ /> </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"> <img
+src="images/040-ActorReferenceTextualNotation.png" alt="PIC"
+ /> </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">12.1.4 </span> <a
+ id="x62-8200012.1.4"></a>Details</h4>
+<!--l. 55--><p class="noindent" >
+</p>
+<h5 class="subsubsectionHead"><a
+ id="x62-8300012.1.4"></a>Actor Classes, Actor References, Ports and Bindings</h5>
+<!--l. 57--><p class="noindent" >An <span
+class="ecbx-1000">ActorClass </span>defines the type (or blueprint) of an actor. Hierarchies are built by ActorClasses that
+contain <span
+class="ecbx-1000">ActorReferences </span>which have another ActorClass as type. The interface of an ActorClass is
+always defined by Ports. The ActorClass can also contain Attributes, Operations and a finite state
+machine.
+</p><!--l. 59--><p class="noindent" ><span
+class="ecbx-1000">External Ports </span>define the external interface of an actor and are defined in the *Interface* section of the
+ActorClass.
+</p><!--l. 61--><p class="noindent" ><span
+class="ecbx-1000">Internal Ports </span>define the internal interface of an actor and are defined in the *Structure* section of the
+ActorClass.
+</p><!--l. 63--><p class="noindent" ><span
+class="ecbx-1000">Bindings </span>connect Ports inside an ActorClass.
+</p><!--l. 65--><p class="noindent" >Example:
+</p>
+<div class="table">
+
+
+<!--l. 68--><p class="noindent" ><a
+ id="x62-830012"></a></p><hr class="float" /><div class="float"
+>
+
+
+ <div class="caption"
+><span class="id">Table&#x00A0;12.2: </span><span
+class="content">Actor Class Example</span></div><!--tex4ht:label?: x62-830012 -->
+<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="ecbx-1000">Graphical Notation </span></td><td style="white-space:nowrap; text-align:left;" id="TBL-4-1-2"
+class="td11"> <span
+class="ecbx-1000">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"> <img
+src="images/040-ActorClassExampleTextualNotation.png" alt="PIC"
+ /> </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="ecbx-1000">ActorClass1 </span>contains two ActorReferences (of ActorClass2 and ActorClass3)
+ </li>
+ <li class="itemize"><span
+class="ecti-1000">port1 </span>is a <span
+class="ecbx-1000">External End Port</span>. Since it connects external Actors with the behavior of
+ the ActorClass, it is defined in the <span
+class="ecbx-1000">Interface </span>section and the <span
+class="ecbx-1000">Structure </span>section of the
+ ActorClass.
+ </li>
+ <li class="itemize"><span
+class="ecti-1000">port2 </span>and <span
+class="ecti-1000">port3 </span>are <span
+class="ecbx-1000">Internal End Ports </span>and can only be connected to the ports of contained
+ ActorReferences. Internal End Ports connect the Behavior of an ActorClass with its contained
+ ActorReferences.
+ </li>
<li class="itemize"><span
-class="ecti-1000">General </span>- This type is automatically assigned to all diagrams for which
- no specific type is declared. (Predefined in KIELER)
-
-
-
+class="ecti-1000">port4 </span>is a relay port and connects external Actors to contained ActorReferences. This port
+ can not be accessed by the behavior of the ActorClass.
</li>
<li class="itemize"><span
-class="ecti-1000">eTrice Behavior Diagrams </span>- This type has been assigned to the diagram
- objects in eTrice Behavior Diagrams.
+class="ecti-1000">port5 </span>through <span
+class="ecti-1000">port9 </span>are Ports of contained ActorReferences. <span
+class="ecti-1000">port8 </span>and <span
+class="ecti-1000">port9 </span>can
+ communicate without interference with the containing ActorClass.
</li>
<li class="itemize"><span
-class="ecti-1000">eTrice Structure Diagrams </span>- This type has been assigned to the diagram
- objects in eTrice Structurer Diagrams.</li></ul>
-<!--l. 142--><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.
-
-
-
+class="ecbx-1000">Bindings </span>can connect ports of the ActorClass and its contained ActorReferences.</li></ul>
+<h5 class="subsubsectionHead"><a
+ id="x62-8400012.1.4"></a>Attributes</h5>
+<!--l. 98--><p class="noindent" >Attributes are part of the Structure of an ActorClass. They can be of a PrimitiveType or a
+DataClass.
+</p><!--l. 100--><p class="noindent" >Example:
+</p><!--l. 102--><p class="noindent" ><img
+src="images/040-ActorClassAttributes.png" alt="PIC"
+ />
+</p><!--l. 105--><p class="noindent" >
+</p>
+<h5 class="subsubsectionHead"><a
+ id="x62-8500012.1.4"></a>Operations</h5>
+<!--l. 107--><p class="noindent" >Operations are part of the Behavior of an ActorClass. Arguments and return values can be of a
+PrimitiveType or a DataClass. DataClasses can be passed by value (implicit) or by reference (keyword
+<span
+class="ecbx-1000">ref</span>).
+</p><!--l. 109--><p class="noindent" >Example:
+</p><!--l. 111--><p class="noindent" ><img
+src="images/040-ActorClassOperations.png" alt="PIC"
+ />
+
+
</p>
-<!--l. 144--><div class="crosslinks"><p class="noindent">[<a
+<!--l. 114--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docse49.html" >next</a>] [<a
-href="etrice-docse47.html" >prev</a>] [<a
-href="etrice-docse47.html#tailetrice-docse47.html" >prev-tail</a>] [<a
+href="etrice-docch12.html" >prev</a>] [<a
+href="etrice-docch12.html#tailetrice-docch12.html" >prev-tail</a>] [<a
href="etrice-docse48.html" >front</a>] [<a
-href="etrice-docch11.html#etrice-docse48.html" >up</a>] </p></div>
-<!--l. 144--><p class="noindent" ><a
- id="tailetrice-docse48.html"></a> </p>
+href="etrice-docch12.html#etrice-docse48.html" >up</a>] </p></div>
+<!--l. 114--><p class="noindent" ><a
+ id="tailetrice-docse48.html"></a> </p>
</body></html>
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse49.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse49.html
index b13e1dd..392537f 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse49.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse49.html
@@ -4,47 +4,57 @@
<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
<html xmlns="http://www.w3.org/1999/xhtml"
>
-<head><title>Further References</title>
+<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-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
-<!--l. 144--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docch12.html" >next</a>] [<a
+<!--l. 114--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse50.html" >next</a>] [<a
href="etrice-docse48.html" >prev</a>] [<a
href="etrice-docse48.html#tailetrice-docse48.html" >prev-tail</a>] [<a
href="#tailetrice-docse49.html">tail</a>] [<a
-href="etrice-docch11.html#etrice-docse49.html" >up</a>] </p></div>
-<h3 class="sectionHead"><span class="titlemark">11.6 </span> <a
- id="x62-11100011.6"></a>Further References</h3>
-<!--l. 147--><p class="noindent" >Most parts of the above documentation have been taken from the "KIML
-wiki":http://rtsys.informatik.uni-kiel.de/confluence/pages/viewpage.action?pageId=328078
-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 at the "KIML
-wiki":http://rtsys.informatik.uni-kiel.de/confluence/pages/viewpage.action?pageId=328078
-.
-
-
-
-
-
-
-
-
-
+href="etrice-docch12.html#etrice-docse49.html" >up</a>] </p></div>
+<h3 class="sectionHead"><span class="titlemark">12.2 </span> <a
+ id="x63-8600012.2"></a>Protocols</h3>
+<!--l. 116--><p class="noindent" >
</p>
-<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docch12.html" >next</a>] [<a
+<h4 class="subsectionHead"><span class="titlemark">12.2.1 </span> <a
+ id="x63-8700012.2.1"></a>Description</h4>
+<!--l. 118--><p class="noindent" >A ProtocolClass defines a set of incoming and outgoing messages that can be exchanged between two
+ports. The exact semantics of a message is defined by the execution model.
+</p><!--l. 121--><p class="noindent" >
+</p>
+<h4 class="subsectionHead"><span class="titlemark">12.2.2 </span> <a
+ id="x63-8800012.2.2"></a>Motivation</h4>
+ <ul class="itemize1">
+ <li class="itemize">ProtocolClasses provide a reusable interface specification for ports
+ </li>
+ <li class="itemize">ProtocolClasses can optionally specify valid message exchange sequences</li></ul>
+<!--l. 128--><p class="noindent" >
+</p>
+<h4 class="subsectionHead"><span class="titlemark">12.2.3 </span> <a
+ id="x63-8900012.2.3"></a>Notation</h4>
+<!--l. 130--><p class="noindent" >ProtocolClasses have only textual notation. The example defines a ProtocolClass 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 DataClass.
+</p><!--l. 133--><p class="noindent" ><img
+src="images/040-ProtocolClassTextualNotation.png" alt="PIC"
+ />
+
+
+</p>
+<!--l. 136--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse50.html" >next</a>] [<a
href="etrice-docse48.html" >prev</a>] [<a
href="etrice-docse48.html#tailetrice-docse48.html" >prev-tail</a>] [<a
href="etrice-docse49.html" >front</a>] [<a
-href="etrice-docch11.html#etrice-docse49.html" >up</a>] </p></div>
-<!--l. 1--><p class="noindent" ><a
+href="etrice-docch12.html#etrice-docse49.html" >up</a>] </p></div>
+<!--l. 136--><p class="noindent" ><a
id="tailetrice-docse49.html"></a> </p>
</body></html>
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse5.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse5.html
index 7d3f35e..3bf3e47 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse5.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse5.html
@@ -10,7 +10,7 @@
<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
<!-- xhtml,3,next,html -->
<meta name="src" content="etrice-doc.tex" />
-<meta name="date" content="2013-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
@@ -22,103 +22,91 @@ href="#tailetrice-docse5.html">tail</a>] [<a
href="etrice-docch2.html#etrice-docse5.html" >up</a>] </p></div>
<h3 class="sectionHead"><span class="titlemark">2.3 </span> <a
id="x9-170002.3"></a>Execution Models</h3>
-<!--l. 163--><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 Execution Model. Currently the eTrice
-tooling only supports the <span
-class="ecbx-1000">message driven </span>and parts of the <span
-class="ecbx-1000">data driven </span>execution
-model. In future releases more execution models will be supported, depending on the
-requirements of the community.
+<!--l. 163--><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 Execution Model. Currently the eTrice tooling only supports the <span
+class="ecbx-1000">message driven </span>and parts of
+the <span
+class="ecbx-1000">data driven </span>execution model. In future releases more execution models will be supported, depending
+on the requirements of the community.
</p><!--l. 166--><p class="noindent" >
</p>
<h4 class="subsectionHead"><span class="titlemark">2.3.1 </span> <a
id="x9-180002.3.1"></a>Communication Methods</h4>
<ul class="itemize1">
<li class="itemize"><span
-class="ecbx-1000">message driven </span>(asynchronous, non blocking, no return value): 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.
+class="ecbx-1000">message driven </span>(asynchronous, non blocking, no return value): 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="ecbx-1000">data driven </span>(asynchronous, non blocking, no return value): 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.
+class="ecbx-1000">data driven </span>(asynchronous, non blocking, no return value): 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="ecbx-1000">function call </span>(synchronous, blocking, return value): Regular function call
- as known in most programming languages.</li></ul>
+class="ecbx-1000">function call </span>(synchronous, blocking, return value): Regular function call as known in most
+ programming languages.</li></ul>
<!--l. 174--><p class="noindent" >
</p>
<h4 class="subsectionHead"><span class="titlemark">2.3.2 </span> <a
id="x9-190002.3.2"></a>Execution Methods</h4>
-
-
-
<ul class="itemize1">
<li class="itemize"><span
-class="ecbx-1000">execution by receive event</span>: The message queue or the event dispatcher
- calls a <span
-class="ecbx-1000">receive event </span>function of the message receiver an thereby executes
- the processing of the event.
+class="ecbx-1000">execution by receive event</span>: The message queue or the event dispatcher calls a <span
+class="ecbx-1000">receive</span>
+ <span
+class="ecbx-1000">event </span>function of the message receiver an thereby executes the processing of the event.
</li>
<li class="itemize"><span
class="ecbx-1000">polled execution</span>: The objects are processed by a cyclic <span
class="ecbx-1000">execute </span>call
</li>
<li class="itemize"><span
-class="ecbx-1000">execution by function call</span>: The caller executes the called object via
- function call</li></ul>
+class="ecbx-1000">execution by function call</span>: The caller executes the called object via function call</li></ul>
+
+
<!--l. 182--><p class="noindent" >
</p>
<h4 class="subsectionHead"><span class="titlemark">2.3.3 </span> <a
id="x9-200002.3.3"></a>Execution Models</h4>
-<!--l. 184--><p class="noindent" >In todays embedded systems in most cases one or several of the following execution
-models are used:
+<!--l. 184--><p class="noindent" >In todays embedded systems in most cases one or several of the following execution models are
+used:
</p><!--l. 186--><p class="noindent" >
</p>
<h5 class="subsubsectionHead"><a
id="x9-210002.3.3"></a>message driven</h5>
-<!--l. 188--><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.
+<!--l. 188--><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. 193--><p class="noindent" >
</p>
<h5 class="subsubsectionHead"><a
id="x9-220002.3.3"></a>data driven</h5>
-<!--l. 195--><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.
-
-
-
+<!--l. 195--><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. 201--><p class="noindent" >
</p>
<h5 class="subsubsectionHead"><a
id="x9-230002.3.3"></a>synchronous</h5>
<!--l. 203--><p class="noindent" >The synchronous execution model could also be called <span
-class="ecbx-1000">simple function calls</span>. This
-model is in general not very well suited to support the <span
-class="ecbx-1000">run to completion </span>semantic
-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.
-
-
-
-
-
-
-
-
-
+class="ecbx-1000">simple function calls</span>. This model is in
+general not very well suited to support the <span
+class="ecbx-1000">run to completion </span>semantic 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. 1--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docch3.html" >next</a>] [<a
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse50.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse50.html
index 7df9711..fdcdd45 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse50.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse50.html
@@ -4,51 +4,404 @@
<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
<html xmlns="http://www.w3.org/1999/xhtml"
>
-<head><title>Codegenerators</title>
+<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-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
-<!--l. 3--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docch13.html" >next</a>] [<a
-href="etrice-docch12.html" >prev</a>] [<a
-href="etrice-docch12.html#tailetrice-docch12.html" >prev-tail</a>] [<a
+<!--l. 136--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse51.html" >next</a>] [<a
+href="etrice-docse49.html" >prev</a>] [<a
+href="etrice-docse49.html#tailetrice-docse49.html" >prev-tail</a>] [<a
href="#tailetrice-docse50.html">tail</a>] [<a
href="etrice-docch12.html#etrice-docse50.html" >up</a>] </p></div>
-<h3 class="sectionHead"><span class="titlemark">12.1 </span> <a
- id="x64-11300012.1"></a>Codegenerators</h3>
-<!--l. 5--><p class="noindent" >
+<h3 class="sectionHead"><span class="titlemark">12.3 </span> <a
+ id="x64-9000012.3"></a>Ports</h3>
+<!--l. 138--><p class="noindent" >
</p>
-<h4 class="subsectionHead"><span class="titlemark">12.1.1 </span> <a
- id="x64-11400012.1.1"></a>Java Generator</h4>
-<!--l. 7--><p class="noindent" >
+<h4 class="subsectionHead"><span class="titlemark">12.3.1 </span> <a
+ id="x64-9100012.3.1"></a>Description</h4>
+<!--l. 140--><p class="noindent" >Ports 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. 143--><p class="noindent" >
</p>
-<h4 class="subsectionHead"><span class="titlemark">12.1.2 </span> <a
- id="x64-11500012.1.2"></a>C++ Generator</h4>
-<!--l. 9--><p class="noindent" >
+<h4 class="subsectionHead"><span class="titlemark">12.3.2 </span> <a
+ id="x64-9200012.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. 150--><p class="noindent" >
</p>
-<h4 class="subsectionHead"><span class="titlemark">12.1.3 </span> <a
- id="x64-11600012.1.3"></a>C Generator</h4>
-
-
-
-
-
-
-
-
-
-<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docch13.html" >next</a>] [<a
-href="etrice-docch12.html" >prev</a>] [<a
-href="etrice-docch12.html#tailetrice-docch12.html" >prev-tail</a>] [<a
+<h4 class="subsectionHead"><span class="titlemark">12.3.3 </span> <a
+ id="x64-9300012.3.3"></a>Notation</h4>
+<!--l. 152--><p class="noindent" >
+</p>
+<h5 class="subsubsectionHead"><a
+ id="x64-9400012.3.3"></a>Class Ports</h5>
+<!--l. 154--><p class="noindent" >These symbols can only appear on the border of an actor class symbol.
+</p><!--l. 156--><p class="noindent" >Ports that define an external interface of the ActorClass, are defined in the <span
+class="ecti-1000">Interface</span>. Ports that define an
+internal interface are defined in the <span
+class="ecti-1000">Structure </span>(e.g. internal ports). </p>
+ <ul class="itemize1">
+ <li class="itemize"><span
+class="ecbx-1000">External End Ports </span>are defined in the Interface and the Structure
+ </li>
+ <li class="itemize"><span
+class="ecbx-1000">Internal End Ports </span>are only defined in the Structure
+
+
+ </li>
+ <li class="itemize"><span
+class="ecbx-1000">Relay Ports </span>are only defined in the Interface
+ </li>
+ <li class="itemize"><span
+class="ecbx-1000">End Ports </span>are always connected to the internal behavior of the ActorClass
+ </li>
+ <li class="itemize"><span
+class="ecbx-1000">Replicated Ports </span>can be defined with a fixed replication factor ( e.g. <span
+class="ecti-1000">Port port18 [ 5 ]:</span>
+ <span
+class="ecti-1000">ProtocolClass1 </span>) or a variable replication factor (e.g. <span
+class="ecti-1000">Port port18[ * ]: ProtocolClass1 </span>)</li></ul>
+<div class="table">
+<!--l. 165--><p class="noindent" ><a
+ id="x64-940013"></a></p><hr class="float" /><div class="float"
+>
+
+
+ <div class="caption"
+><span class="id">Table&#x00A0;12.3: </span><span
+class="content">Class Port Notation</span></div><!--tex4ht:label?: x64-940013 -->
+<a
+ id="x64-94002r4"></a><!--l. 168--><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
+class="hline"><td><hr /></td><td><hr /></td><td><hr /></td></tr><tr
+ style="vertical-align:baseline;" id="TBL-5-1-"><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" id="TBL-5-1-1"
+class="td11"> <!--l. 168--><p class="noindent" ><span
+class="ecbx-1000">Element</span> </p></td><td style="white-space:nowrap; text-align:center;" id="TBL-5-1-2"
+class="td11"> <span
+class="ecbx-1000">Graphical Notation </span></td><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" id="TBL-5-1-3"
+class="td11"> <!--l. 168--><p class="noindent" ><span
+class="ecbx-1000">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-5-2-"><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" id="TBL-5-2-1"
+class="td11"> <!--l. 169--><p class="noindent" >Class
+ End
+ Port </p></td><td style="white-space:nowrap; text-align:center;" id="TBL-5-2-2"
+class="td11"> <img
+src="images/040-ClassEndPort.png" alt="PIC"
+ /> </td><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" id="TBL-5-2-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:center;" id="TBL-6-1-1"
+class="td11"><span
+class="ecbx-1000">External Class End Port:</span></td></tr><tr
+ style="vertical-align:baseline;" id="TBL-6-2-"><td style="white-space:nowrap; text-align:center;" id="TBL-6-2-1"
+class="td11"> <img
+src="images/040-ClassEndPortTextual.png" alt="PIC"
+ /></td>
+</tr><tr
+ style="vertical-align:baseline;" id="TBL-6-3-"><td style="white-space:nowrap; text-align:center;" id="TBL-6-3-1"
+class="td11"> <span
+class="ecbx-1000">Internal Class End Port: </span></td></tr><tr
+ style="vertical-align:baseline;" id="TBL-6-4-"><td style="white-space:nowrap; text-align:center;" id="TBL-6-4-1"
+class="td11"> <img
+src="images/040-ClassEndPortInternalTextual.png" alt="PIC"
+ /></td>
+</tr><tr
+ style="vertical-align:baseline;" id="TBL-6-5-"><td style="white-space:nowrap; text-align:center;" 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-3-"><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" id="TBL-5-3-1"
+class="td11"> <!--l. 170--><p class="noindent" >Conjugated
+ Class
+ End
+ Port </p></td><td style="white-space:nowrap; text-align:center;" id="TBL-5-3-2"
+class="td11"> <img
+src="images/040-ConjugatedClassEndPort.png" alt="PIC"
+ /> </td><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" id="TBL-5-3-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; vertical-align:baseline;" id="TBL-7-1-1"
+class="td11"><!--l. 170--><p class="noindent" ><span
+class="ecbx-1000">External Conjugated Class End</span>
+<span
+class="ecbx-1000">Port:</span> </p></td>
+</tr><tr
+ style="vertical-align:baseline;" id="TBL-7-2-"><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" id="TBL-7-2-1"
+class="td11"><!--l. 170--><p class="noindent" ><img
+src="images/040-ConjugatedClassEndPortTextual.png" alt="PIC"
+ /> </p></td>
+</tr><tr
+ style="vertical-align:baseline;" id="TBL-7-3-"><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" id="TBL-7-3-1"
+class="td11"><!--l. 170--><p class="noindent" ><span
+class="ecbx-1000">Internal Conjugated Class End</span>
+<span
+class="ecbx-1000">Port:</span> </p></td>
+</tr><tr
+ style="vertical-align:baseline;" id="TBL-7-4-"><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" id="TBL-7-4-1"
+class="td11"><!--l. 170--><p class="noindent" ><img
+src="images/040-ConjugatedClassEndPortInternalTextual.png" alt="PIC"
+ /> </p></td>
+</tr><tr
+ style="vertical-align:baseline;" id="TBL-7-5-"><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" 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-4-"><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" id="TBL-5-4-1"
+class="td11"> <!--l. 171--><p class="noindent" >Class
+ Relay
+ Port </p></td><td style="white-space:nowrap; text-align:center;" id="TBL-5-4-2"
+class="td11"> <img
+src="images/040-ClassRelayPort.png" alt="PIC"
+ /> </td><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" id="TBL-5-4-3"
+class="td11"> <!--l. 171--><p class="noindent" ><img
+src="images/040-ClassRelayPortTextual.png" alt="PIC"
+ /> </p></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:baseline;" id="TBL-5-5-1"
+class="td11"> <!--l. 172--><p class="noindent" >Conjugated
+ Class
+ Relay
+ Port </p></td><td style="white-space:nowrap; text-align:center;" id="TBL-5-5-2"
+class="td11"> <img
+src="images/040-ConjugatedClassRelayPort.png" alt="PIC"
+ /> </td><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" id="TBL-5-5-3"
+class="td11"> <!--l. 172--><p class="noindent" ><img
+src="images/040-ConjugatedClassRelayPortTextual.png" alt="PIC"
+ /> </p></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:baseline;" id="TBL-5-6-1"
+class="td11"> <!--l. 173--><p class="noindent" >Replicated
+ Class
+ End
+ Port </p></td><td style="white-space:nowrap; text-align:center;" id="TBL-5-6-2"
+class="td11"> <img
+src="images/040-ReplicatedClassEndPort.png" alt="PIC"
+ /> </td><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" id="TBL-5-6-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. 173--><p class="noindent" ><span
+class="ecbx-1000">External Replicated Class End</span>
+<span
+class="ecbx-1000">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. 173--><p class="noindent" ><img
+src="images/040-ReplicatedClassEndPortTextual.png" alt="PIC"
+ /> </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. 173--><p class="noindent" ><span
+class="ecbx-1000">Internal Replicated Class End</span>
+<span
+class="ecbx-1000">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. 173--><p class="noindent" ><img
+src="images/040-ReplicatedClassEndPortInternalTextual.png" alt="PIC"
+ /> </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-7-"><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" id="TBL-5-7-1"
+class="td11"> <!--l. 174--><p class="noindent" >Conjugated
+ Replicated
+ Class
+ End
+ Port </p></td><td style="white-space:nowrap; text-align:center;" id="TBL-5-7-2"
+class="td11"> <img
+src="images/040-ConjugatedReplicatedClassEndPort.png" alt="PIC"
+ /> </td><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" id="TBL-5-7-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. 174--><p class="noindent" ><span
+class="ecbx-1000">External Conjugated</span>
+<span
+class="ecbx-1000">Replicated Class 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. 174--><p class="noindent" ><img
+src="images/040-ConjugatedReplicatedClassEndPortTextual.png" alt="PIC"
+ /> </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. 174--><p class="noindent" ><span
+class="ecbx-1000">Internal Conjugated Replicated</span>
+<span
+class="ecbx-1000">Class 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. 174--><p class="noindent" ><img
+src="images/040-ConjugatedReplicatedClassEndPortInternalTextual.png" alt="PIC"
+ /> </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-8-"><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" id="TBL-5-8-1"
+class="td11"> <!--l. 175--><p class="noindent" >Replicated
+ Class
+ Relay
+ Port </p></td><td style="white-space:nowrap; text-align:center;" id="TBL-5-8-2"
+class="td11"> <img
+src="images/040-ReplicatedClassRelayPort.png" alt="PIC"
+ /> </td><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" id="TBL-5-8-3"
+class="td11"> <!--l. 175--><p class="noindent" ><img
+src="images/040-ReplicatedClassRelayPortTextual.png" alt="PIC"
+ /> </p></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:baseline;" id="TBL-5-9-1"
+class="td11"> <!--l. 176--><p class="noindent" >Conjugated
+ Replicated
+ Class
+ Relay
+ Port </p></td><td style="white-space:nowrap; text-align:center;" id="TBL-5-9-2"
+class="td11"> <img
+src="images/040-ConjugatedReplicatedClassRelayPort.png" alt="PIC"
+ /> </td><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" id="TBL-5-9-3"
+class="td11"> <!--l. 176--><p class="noindent" ><img
+src="images/040-ConjugatedReplicatedClassRelayPortTextual.png" alt="PIC"
+ /> </p></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:baseline;" id="TBL-5-10-1"
+class="td11"> </td>
+</tr><tr
+ style="vertical-align:baseline;" id="TBL-5-11-"><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" id="TBL-5-11-1"
+class="td11"> </td>
+</tr><tr
+ style="vertical-align:baseline;" id="TBL-5-12-"><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" id="TBL-5-12-1"
+class="td11"> <!--l. 177--><p class="noindent" > </p></td>
+</tr><tr
+ style="vertical-align:baseline;" id="TBL-5-13-"><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" id="TBL-5-13-1"
+class="td11"> <!--l. 177--><p class="noindent" > </p></td>
+</tr><tr
+ style="vertical-align:baseline;" id="TBL-5-14-"><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" id="TBL-5-14-1"
+class="td11"> </td><td style="white-space:nowrap; text-align:center;" id="TBL-5-14-2"
+class="td11"> </td><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" id="TBL-5-14-3"
+class="td11"></td></tr>
+</table></div>
+
+
+</div><hr class="endfloat" />
+</div>
+<h5 class="subsubsectionHead"><a
+ id="x64-9500012.3.3"></a>Reference Ports</h5>
+<!--l. 258--><p class="noindent" >These symbols can only appear on the border of an ActorReference symbol. Since the type of port is
+defined in the ActorClass, no textual notation for the Reference Ports exists.
+</p>
+<div class="table">
+
+
+<!--l. 261--><p class="noindent" ><a
+ id="x64-950015"></a></p><hr class="float" /><div class="float"
+>
+
+
+ <div class="caption"
+><span class="id">Table&#x00A0;12.5: </span><span
+class="content">Title</span></div><!--tex4ht:label?: x64-950015 -->
+<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="ecbx-1000">Element </span></td><td style="white-space:nowrap; text-align:center;" id="TBL-10-1-2"
+class="td11"> <span
+class="ecbx-1000">Graphical Notation </span></td><td style="white-space:nowrap; text-align:center;" id="TBL-10-1-3"
+class="td11"> <span
+class="ecbx-1000">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="ecti-1000">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="ecti-1000">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="ecti-1000">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="ecti-1000">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. 301--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse51.html" >next</a>] [<a
+href="etrice-docse49.html" >prev</a>] [<a
+href="etrice-docse49.html#tailetrice-docse49.html" >prev-tail</a>] [<a
href="etrice-docse50.html" >front</a>] [<a
href="etrice-docch12.html#etrice-docse50.html" >up</a>] </p></div>
-<!--l. 1--><p class="noindent" ><a
- id="tailetrice-docse50.html"></a> </p>
+<!--l. 301--><p class="noindent" ><a
+ id="tailetrice-docse50.html"></a> </p>
</body></html>
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse51.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse51.html
index 13e14f5..7d5aa8e 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse51.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse51.html
@@ -4,63 +4,53 @@
<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
<html xmlns="http://www.w3.org/1999/xhtml"
>
-<head><title>The ROOM Model</title>
+<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-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
-<!--l. 19--><div class="crosslinks"><p class="noindent">[<a
+<!--l. 301--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docse52.html" >next</a>] [<a
-href="etrice-docch15.html" >prev</a>] [<a
-href="etrice-docch15.html#tailetrice-docch15.html" >prev-tail</a>] [<a
+href="etrice-docse50.html" >prev</a>] [<a
+href="etrice-docse50.html#tailetrice-docse50.html" >prev-tail</a>] [<a
href="#tailetrice-docse51.html">tail</a>] [<a
-href="etrice-docch15.html#etrice-docse51.html" >up</a>] </p></div>
-<h3 class="sectionHead"><span class="titlemark">15.1 </span> <a
- id="x68-12000015.1"></a>The ROOM Model</h3>
-<!--l. 21--><p class="noindent" >The ROOM model defines classes for Data, Protocols, Actors, SubSystems and
-LogicalSystems. Thereby the three latter form a hierarchy. The @LogicalSystem@ is
-the top level element of the structure. It contains references to <span
-class="ectt-1000">SubSystemClass</span>
-elements. The <span
-class="ectt-1000">SubSystemClass </span>in turn contain references to <span
-class="ectt-1000">ActorClass </span>elements
-which again contain (recursively) references to <span
-class="ectt-1000">ActorClass </span>elements. The
-complete structural hierarchy implies a tree which has the <span
-class="ectt-1000">LogicalSystem </span>as
-root and where each reference stands for a new node with possibly further
-branches.
-
-
-
-</p><!--l. 24--><p class="noindent" >Let&#8217;s consider a simple example. It doesn&#8217;t implement any meaningful and completely
-omits behavioral and other aspects.
-</p><!--l. 26--><p class="noindent" ><img
-src="images/080-room.jpg" alt="PIC"
+href="etrice-docch12.html#etrice-docse51.html" >up</a>] </p></div>
+<h3 class="sectionHead"><span class="titlemark">12.4 </span> <a
+ id="x65-9600012.4"></a>DataClass</h3>
+<!--l. 303--><p class="noindent" >
+</p>
+<h4 class="subsectionHead"><span class="titlemark">12.4.1 </span> <a
+ id="x65-9700012.4.1"></a>Description</h4>
+<!--l. 305--><p class="noindent" >The DataClass enables the modeling of hierarchical complex datatypes and operations on them. The
+DataClass is the equivalent to a Class in languages like Java or C++, but has less features. The content
+of a DataClass can always be sent via message between actors (defined as message data in
+ProtocolClass).
+</p><!--l. 307--><p class="noindent" >
+</p>
+<h4 class="subsectionHead"><span class="titlemark">12.4.2 </span> <a
+ id="x65-9800012.4.2"></a>Notation</h4>
+<!--l. 309--><p class="noindent" >Example: DataClass using PrimitiveTypes
+</p><!--l. 311--><p class="noindent" ><img
+src="images/040-DataClass1.png" alt="PIC"
/>
-</p><!--l. 29--><p class="noindent" >When a <span
-class="ectt-1000">LogicalSstem </span>is instantiated then recursively all of the contained referenced
-elements are instantiated as instances of the corresponding class. Thus the instance
-tree of above example looks like this (the third line in the white boxes shows some
-mapping information, s.b.):
-</p><!--l. 31--><p class="noindent" ><img
-src="images/080-instances.jpg" alt="PIC"
+</p><!--l. 314--><p class="noindent" >Example: DataClass using other DataClasses:
+</p><!--l. 316--><p class="noindent" ><img
+src="images/040-DataClass2.png" alt="PIC"
/>
-
-
-
+
+
</p>
-<!--l. 35--><div class="crosslinks"><p class="noindent">[<a
+<!--l. 319--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docse52.html" >next</a>] [<a
-href="etrice-docch15.html" >prev</a>] [<a
-href="etrice-docch15.html#tailetrice-docch15.html" >prev-tail</a>] [<a
+href="etrice-docse50.html" >prev</a>] [<a
+href="etrice-docse50.html#tailetrice-docse50.html" >prev-tail</a>] [<a
href="etrice-docse51.html" >front</a>] [<a
-href="etrice-docch15.html#etrice-docse51.html" >up</a>] </p></div>
-<!--l. 35--><p class="noindent" ><a
+href="etrice-docch12.html#etrice-docse51.html" >up</a>] </p></div>
+<!--l. 319--><p class="noindent" ><a
id="tailetrice-docse51.html"></a> </p>
</body></html>
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse52.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse52.html
index c62f756..d4a9492 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse52.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse52.html
@@ -4,41 +4,164 @@
<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
<html xmlns="http://www.w3.org/1999/xhtml"
>
-<head><title>The Config Model</title>
+<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-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
-<!--l. 35--><div class="crosslinks"><p class="noindent">[<a
+<!--l. 319--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docse53.html" >next</a>] [<a
href="etrice-docse51.html" >prev</a>] [<a
href="etrice-docse51.html#tailetrice-docse51.html" >prev-tail</a>] [<a
href="#tailetrice-docse52.html">tail</a>] [<a
-href="etrice-docch15.html#etrice-docse52.html" >up</a>] </p></div>
-<h3 class="sectionHead"><span class="titlemark">15.2 </span> <a
- id="x69-12100015.2"></a>The Config Model</h3>
-<!--l. 37--><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. 39--><p class="noindent" ><img
-src="images/080-config.jpg" alt="PIC"
- />
-
-
-
+href="etrice-docch12.html#etrice-docse52.html" >up</a>] </p></div>
+<h3 class="sectionHead"><span class="titlemark">12.5 </span> <a
+ id="x66-9900012.5"></a>Layering</h3>
+<!--l. 321--><p class="noindent" >
</p>
-<!--l. 42--><div class="crosslinks"><p class="noindent">[<a
+<h4 class="subsectionHead"><span class="titlemark">12.5.1 </span> <a
+ id="x66-10000012.5.1"></a>Description</h4>
+<!--l. 323--><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><ol class="enumerate1" >
+ <li
+ class="enumerate" id="x66-100002x1">an ActorClass can define a Service Provision Point (SPP) to publish a specific service, defined
+ by a ProtocolClass
+ </li>
+ <li
+ class="enumerate" id="x66-100004x2">an ActorClass can define a Service Access Point (SAP) if it needs a service, defined by a
+ ProtocolClass
+ </li>
+ <li
+ class="enumerate" id="x66-100006x3">for a given Actor hierarchy, a LayerConnection defines which SAP will be satisfied by
+ (connected to) which SPP</li></ol>
+<!--l. 330--><p class="noindent" >
+</p>
+<h4 class="subsectionHead"><span class="titlemark">12.5.2 </span> <a
+ id="x66-10100012.5.2"></a>Notation</h4>
+<div class="table">
+
+
+<!--l. 333--><p class="noindent" ></p><hr class="float" /><div class="float"
+>
+
+
+<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. 335--><p class="noindent" ><span
+class="ecbx-1000">Description</span> </p></td><td style="white-space:nowrap; text-align:center;" id="TBL-11-1-2"
+class="td11"> <span
+class="ecbx-1000">Graphical Notation </span></td><td style="white-space:nowrap; text-align:center;" id="TBL-11-1-3"
+class="td11"> <span
+class="ecbx-1000">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-11-2-"><td style="white-space:nowrap; text-align:left; vertical-align:middle;" id="TBL-11-2-1"
+class="td11">
+ <div class="flushleft"
+>
+ <!--l. 336--><p class="noindent" >
+ The Layer
+ Connections in this
+ model define which
+ services are
+ provided by the
+ <span
+class="ecti-1000">ServiceLayer</span>
+ (<span
+class="ecti-1000">digitalIO </span>and
+ <span
+class="ecti-1000">timer</span>)</p></div>
+ <!--l. 336--><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:center;" id="TBL-11-2-3"
+class="td11"> <img
+src="images/040-LayeringModelTextual.png" alt="PIC"
+ /> </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. 337--><p class="noindent" >
+ The
+ implementation of
+ the services (SPPs)
+ can be delegated to
+ sub actors. In this
+ case the actor
+ <span
+class="ecti-1000">ServiceLayer </span>relays
+ (delegates) the
+ implementation
+ services <span
+class="ecti-1000">digitalIO</span>
+ and <span
+class="ecti-1000">timer </span>to sub
+ actors</p></div>
+ <!--l. 337--><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:center;" id="TBL-11-3-3"
+class="td11"> <img
+src="images/040-LayeringServiceLayerTextual.png" alt="PIC"
+ /> </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. 338--><p class="noindent" >
+ Every Actor inside
+ the
+ <span
+class="ecti-1000">ApplicationLayer</span>
+ that contains an
+ SAP with the same
+ Protocol as <span
+class="ecti-1000">timer</span>
+ or <span
+class="ecti-1000">digitalIO </span>will be
+ connected to the
+ specified SPP</p></div>
+ <!--l. 338--><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:center;" id="TBL-11-4-3"
+class="td11"> <img
+src="images/040-LayeringApplicationLayerTextual.png" alt="PIC"
+ /> </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. 365--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docse53.html" >next</a>] [<a
href="etrice-docse51.html" >prev</a>] [<a
href="etrice-docse51.html#tailetrice-docse51.html" >prev-tail</a>] [<a
href="etrice-docse52.html" >front</a>] [<a
-href="etrice-docch15.html#etrice-docse52.html" >up</a>] </p></div>
-<!--l. 42--><p class="noindent" ><a
+href="etrice-docch12.html#etrice-docse52.html" >up</a>] </p></div>
+<!--l. 365--><p class="noindent" ><a
id="tailetrice-docse52.html"></a> </p>
</body></html>
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse53.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse53.html
index bef640c..7a31b6b 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse53.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse53.html
@@ -4,45 +4,287 @@
<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
<html xmlns="http://www.w3.org/1999/xhtml"
>
-<head><title>The Physical Model</title>
+<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-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
-<!--l. 42--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse54.html" >next</a>] [<a
+<!--l. 365--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docch13.html" >next</a>] [<a
href="etrice-docse52.html" >prev</a>] [<a
href="etrice-docse52.html#tailetrice-docse52.html" >prev-tail</a>] [<a
href="#tailetrice-docse53.html">tail</a>] [<a
-href="etrice-docch15.html#etrice-docse53.html" >up</a>] </p></div>
-<h3 class="sectionHead"><span class="titlemark">15.3 </span> <a
- id="x70-12200015.3"></a>The Physical Model</h3>
-<!--l. 44--><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 defines the
-overall execution model of the platform.
-</p><!--l. 46--><p class="noindent" ><img
-src="images/080-runtimes.jpg" alt="PIC"
+href="etrice-docch12.html#etrice-docse53.html" >up</a>] </p></div>
+<h3 class="sectionHead"><span class="titlemark">12.6 </span> <a
+ id="x67-10200012.6"></a>Finite State Machines</h3>
+<!--l. 367--><p class="noindent" >
+</p>
+<h4 class="subsectionHead"><span class="titlemark">12.6.1 </span> <a
+ id="x67-10300012.6.1"></a>Description</h4>
+<!--l. 369--><p class="noindent" >Definition from <a
+href="http://en.wikipedia.org/wiki/Finite-state_machine" >Wikipedia</a>:
+</p><!--l. 371--><p class="noindent" >
+ </p><div class="quote">
+ <!--l. 372--><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. 374--><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. 377--><p class="noindent" >
+</p>
+<h4 class="subsectionHead"><span class="titlemark">12.6.2 </span> <a
+ id="x67-10400012.6.2"></a>Motivation</h4>
+<!--l. 379--><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. 381--><p class="noindent" >We distinguish flat and hierarchical state machines.
+</p><!--l. 383--><p class="noindent" >
+</p>
+<h4 class="subsectionHead"><span class="titlemark">12.6.3 </span> <a
+ id="x67-10500012.6.3"></a>Notation</h4>
+
+
+<!--l. 385--><p class="noindent" >
+</p>
+<h5 class="subsubsectionHead"><a
+ id="x67-10600012.6.3"></a>Flat Finite State Machine</h5>
+<!--l. 387--><p class="noindent" >The simpler flat finite state machines are composed of the following elements:
+</p>
+<div class="table">
+
+
+<!--l. 390--><p class="noindent" ><a
+ id="x67-1060016"></a></p><hr class="float" /><div class="float"
+>
+
+
+ <div class="caption"
+><span class="id">Table&#x00A0;12.6: </span><span
+class="content">Title</span></div><!--tex4ht:label?: x67-1060016 -->
+<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:center;" id="TBL-12-1-1"
+class="td11"> <span
+class="ecbx-1000">Description </span></td><td style="white-space:nowrap; text-align:center;" id="TBL-12-1-2"
+class="td11"> <span
+class="ecbx-1000">Graphical Notation </span></td><td style="white-space:nowrap; text-align:center;" id="TBL-12-1-3"
+class="td11"> <span
+class="ecbx-1000">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-12-2-"><td style="white-space:nowrap; text-align:center;" id="TBL-12-2-1"
+class="td11"> State </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:center;" id="TBL-12-2-3"
+class="td11"> <img
+src="images/040-StateTextual.jpg" alt="PIC"
+ /> </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:center;" id="TBL-12-3-1"
+class="td11"> InitialPoint </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:center;" id="TBL-12-3-3"
+class="td11"> <span
+class="ecti-1000">implicit</span></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:center;" id="TBL-12-4-1"
+class="td11"> TransitionPoint </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:center;" id="TBL-12-4-3"
+class="td11"> <img
+src="images/040-TransitionPointTextual.jpg" alt="PIC"
+ /> </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:center;" id="TBL-12-5-1"
+class="td11"> ChoicePoint </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:center;" id="TBL-12-5-3"
+class="td11"> <img
+src="images/040-ChoicePointTextual.jpg" alt="PIC"
+ /> </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:center;" id="TBL-12-6-1"
+class="td11"> Initial Transition </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:center;" id="TBL-12-6-3"
+class="td11"> <img
+src="images/040-InitialTransitionTextual.jpg" alt="PIC"
+ /> </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:center;" id="TBL-12-7-1"
+class="td11"> Triggered Transition </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:center;" id="TBL-12-7-3"
+class="td11"> <img
+src="images/040-TriggeredTransitionTextual.jpg" alt="PIC"
+ /> </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:center;" id="TBL-12-8-1"
+class="td11"> </td></tr></table></div>
+
+
+</div><hr class="endfloat" />
+</div>
+<h5 class="subsubsectionHead"><a
+ id="x67-10700012.6.3"></a>Hierarchical Finite State Machine</h5>
+<!--l. 443--><p class="noindent" >The hierarchical finite state machine adds the notion of a sub state machine nested in a state. A few
+modeling elements are added to the set listed above:
+</p>
+<div class="table">
+
+
+<!--l. 447--><p class="noindent" ><a
+ id="x67-1070017"></a></p><hr class="float" /><div class="float"
+>
+
+
+ <div class="caption"
+><span class="id">Table&#x00A0;12.7: </span><span
+class="content">Title</span></div><!--tex4ht:label?: x67-1070017 -->
+<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:baseline;" id="TBL-13-1-1"
+class="td11"> <!--l. 450--><p class="noindent" ><span
+class="ecbx-1000">Description</span> </p></td><td style="white-space:nowrap; text-align:center;" id="TBL-13-1-2"
+class="td11"> <span
+class="ecbx-1000">Graphical Notation </span></td><td style="white-space:nowrap; text-align:center;" id="TBL-13-1-3"
+class="td11"> <span
+class="ecbx-1000">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-13-2-"><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" id="TBL-13-2-1"
+class="td11"> <!--l. 451--><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:center;" id="TBL-13-2-3"
+class="td11"> <!--tex4ht:inline--><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:center;" id="TBL-15-1-1"
+class="td00">Sub state machine</td></tr><tr
+ style="vertical-align:baseline;" id="TBL-15-2-"><td style="white-space:nowrap; text-align:center;" id="TBL-15-2-1"
+class="td00"> <img
+src="images/040-StateWithSubFSMTextual.jpg" alt="PIC"
+ /></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-13-3-"><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" id="TBL-13-3-1"
+class="td11"> <!--l. 452--><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:center;" id="TBL-13-3-3"
+class="td11"> <!--tex4ht:inline--><div class="tabular"> <table id="TBL-17" class="tabular"
+cellspacing="0" cellpadding="0"
+><colgroup id="TBL-17-1g"><col
+id="TBL-17-1" /></colgroup><tr
+ style="vertical-align:baseline;" id="TBL-17-1-"><td style="white-space:nowrap; text-align:center;" id="TBL-17-1-1"
+class="td00"> </td></tr><tr
+ style="vertical-align:baseline;" id="TBL-17-2-"><td style="white-space:nowrap; text-align:center;" id="TBL-17-2-1"
+class="td00"><img
+src="images/040-EntryPointTextual.jpg" alt="PIC"
+ /></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-13-4-"><td style="white-space:nowrap; text-align:left; vertical-align:baseline;" id="TBL-13-4-1"
+class="td11"> <!--l. 453--><p class="noindent" >Exit Point </p></td><td style="white-space:nowrap; text-align:center;" id="TBL-13-4-2"
+class="td11"> </td><td style="white-space:nowrap; text-align:center;" id="TBL-13-4-3"
+class="td11"> <img
+src="images/040-ExitPointTextual.jpg" alt="PIC"
+ /> </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:baseline;" id="TBL-13-5-1"
+class="td11"> </td></tr></table>
+</div>
+
+
+</div><hr class="endfloat" />
+</div>
+<h4 class="subsectionHead"><span class="titlemark">12.6.4 </span> <a
+ id="x67-10800012.6.4"></a>Examples</h4>
+<!--l. 492--><p class="noindent" >
+</p>
+<h5 class="subsubsectionHead"><a
+ id="x67-10900012.6.4"></a>Example of a flat finite state machine:</h5>
+<!--l. 495--><p class="noindent" ><img
+src="images/040-FlatFSM.jpg" alt="PIC"
+ />
+</p><!--l. 497--><p class="noindent" >
+</p>
+<h5 class="subsubsectionHead"><a
+ id="x67-11000012.6.4"></a>Example of a hierarchical finite state machine:</h5>
+<!--l. 499--><p class="noindent" >Top level
+</p><!--l. 502--><p class="noindent" ><img
+src="images/040-HierarchicalFSMTop.jpg" alt="PIC"
+ />
+</p><!--l. 504--><p class="noindent" >Sub state machine of Initializing
+</p><!--l. 507--><p class="noindent" ><img
+src="images/040-HierarchicalFSMInitializing.jpg" alt="PIC"
/>
-</p><!--l. 49--><p class="noindent" >The physical system is composed of @Node@ references where each @Node@ is
-defined as a class referencing a @RuntimeClass@ and defining @Threads@.
-</p><!--l. 51--><p class="noindent" ><img
-src="images/080-phys.jpg" alt="PIC"
+</p><!--l. 509--><p class="noindent" >Sub state machine of Running
+</p><!--l. 512--><p class="noindent" ><img
+src="images/040-HierarchicalFSMRunning.jpg" alt="PIC"
/>
-
-
-
+
+
+
+
+
+
</p>
-<!--l. 54--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docse54.html" >next</a>] [<a
+<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docch13.html" >next</a>] [<a
href="etrice-docse52.html" >prev</a>] [<a
href="etrice-docse52.html#tailetrice-docse52.html" >prev-tail</a>] [<a
href="etrice-docse53.html" >front</a>] [<a
-href="etrice-docch15.html#etrice-docse53.html" >up</a>] </p></div>
-<!--l. 54--><p class="noindent" ><a
- id="tailetrice-docse53.html"></a> </p>
+href="etrice-docch12.html#etrice-docse53.html" >up</a>] </p></div>
+<!--l. 1--><p class="noindent" ><a
+ id="tailetrice-docse53.html"></a> </p>
</body></html>
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse54.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse54.html
index 8e12c70..383c464 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse54.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse54.html
@@ -4,50 +4,52 @@
<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
<html xmlns="http://www.w3.org/1999/xhtml"
>
-<head><title>The Mapping Model</title>
+<head><title>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-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
-<!--l. 54--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docch16.html" >next</a>] [<a
-href="etrice-docse53.html" >prev</a>] [<a
-href="etrice-docse53.html#tailetrice-docse53.html" >prev-tail</a>] [<a
+<!--l. 3--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse55.html" >next</a>] [<a
+href="etrice-docch13.html" >prev</a>] [<a
+href="etrice-docch13.html#tailetrice-docch13.html" >prev-tail</a>] [<a
href="#tailetrice-docse54.html">tail</a>] [<a
-href="etrice-docch15.html#etrice-docse54.html" >up</a>] </p></div>
-<h3 class="sectionHead"><span class="titlemark">15.4 </span> <a
- id="x71-12300015.4"></a>The Mapping Model</h3>
-<!--l. 56--><p class="noindent" >The last model finally combines all this information by mapping logical to physical
-entities.
-</p><!--l. 58--><p class="noindent" ><img
-src="images/080-map.jpg" alt="PIC"
- />
-</p><!--l. 61--><p class="noindent" >The result of the mapping is also depicted in above tree diagram 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="ecti-1000">node </span>: <span
-class="ecti-1000">thread</span>).
-
-
-
-
-
-
-
-
-
+href="etrice-docch13.html#etrice-docse54.html" >up</a>] </p></div>
+<h3 class="sectionHead"><span class="titlemark">13.1 </span> <a
+ id="x69-11200013.1"></a>Overview</h3>
+<!--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. 7--><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. 9--><p class="noindent" >This chapter will answer the following questions </p>
+ <ul class="itemize1">
+ <li class="itemize"><a
+href="etrice-docse55.html#x70-11300013.2">&#8221;How to perform automatic layout in the graphical editors of eTrice?&#8221;</a>
+ </li>
+ <li class="itemize"><a
+href="etrice-docse56.html#x71-11400013.3">&#8221;What are layout options?&#8221;</a>
+ </li>
+ <li class="itemize"><a
+href="etrice-docse57.html#x72-11500013.4">&#8221;How to configure the layout options to alter the diagram layout as desired?&#8221;</a></li></ul>
+<!--l. 16--><p class="noindent" >Moreover, some <a
+href="etrice-docse58.html#x73-12000013.5">&#8221;special layout options&#8221;</a> will also be discussed.
+
+
</p>
-<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
-href="etrice-docch16.html" >next</a>] [<a
-href="etrice-docse53.html" >prev</a>] [<a
-href="etrice-docse53.html#tailetrice-docse53.html" >prev-tail</a>] [<a
+<!--l. 18--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse55.html" >next</a>] [<a
+href="etrice-docch13.html" >prev</a>] [<a
+href="etrice-docch13.html#tailetrice-docch13.html" >prev-tail</a>] [<a
href="etrice-docse54.html" >front</a>] [<a
-href="etrice-docch15.html#etrice-docse54.html" >up</a>] </p></div>
-<!--l. 1--><p class="noindent" ><a
+href="etrice-docch13.html#etrice-docse54.html" >up</a>] </p></div>
+<!--l. 18--><p class="noindent" ><a
id="tailetrice-docse54.html"></a> </p>
</body></html>
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse55.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse55.html
index 64c450e..1a54f39 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse55.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse55.html
@@ -4,135 +4,42 @@
<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
<html xmlns="http://www.w3.org/1999/xhtml"
>
-<head><title>Architecture</title>
+<head><title>Performing Automatic Layout</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-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
-<!--l. 3--><div class="crosslinks"><p class="noindent">[<a
+<!--l. 18--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docse56.html" >next</a>] [<a
-href="etrice-docch16.html" >prev</a>] [<a
-href="etrice-docch16.html#tailetrice-docch16.html" >prev-tail</a>] [<a
+href="etrice-docse54.html" >prev</a>] [<a
+href="etrice-docse54.html#tailetrice-docse54.html" >prev-tail</a>] [<a
href="#tailetrice-docse55.html">tail</a>] [<a
-href="etrice-docch16.html#etrice-docse55.html" >up</a>] </p></div>
-<h3 class="sectionHead"><span class="titlemark">16.1 </span> <a
- id="x73-12500016.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. 10--><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">16.1.1 </span> <a
- id="x73-12600016.1.1"></a>Editor and Generator Components</h4>
+href="etrice-docch13.html#etrice-docse55.html" >up</a>] </p></div>
+<h3 class="sectionHead"><span class="titlemark">13.2 </span> <a
+ id="x70-11300013.2"></a>Performing Automatic Layout</h3>
+<!--l. 21--><p class="noindent" >Automatic layout could be performed in eTrice graphical editors using the command to layout the current
+diagram.
+</p><!--l. 23--><p class="noindent" >This command is available in </p>
<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-in <span
-class="ecti-1000">org.eclipse.etrice.core.room</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-in <span
-class="ecti-1000">org.eclipse.etrice.core.config</span>. Config is a language designed
- for the data configuration of model elements. E.g. class and instance
- attributes can be specified.
- </li>
- <li class="itemize">core.genmodel is an EMF based aggregation layer for Room models.
- It consists of the plugin <span
-class="ecti-1000">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="ecti-1000">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="ecti-1000">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></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="ecti-1000">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="ecti-1000">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="ecti-1000">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="ecti-1000">org.eclipse.etrice.ui.behavior</span>.</li></ul>
- </li></ul>
+ <li class="itemize">The context menu of the diagrams
</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="ecti-1000">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="ecti-1000">org.eclipse.etrice.generator.c</span>.
- </li>
- <li class="itemize">generator.java is the generator for the Java target language. It
- consists of the plug-in <span
-class="ecti-1000">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="ecti-1000">org.eclipse.etrice.generator.doc</span>.</li></ul>
- </li></ul>
-<!--l. 50--><p class="noindent" >
-</p>
-<h4 class="subsectionHead"><span class="titlemark">16.1.2 </span> <a
- id="x73-12700016.1.2"></a>Runtimes</h4>
-<!--l. 52--><p class="noindent" >Currently eTrice ships with a C and a Java runtime. The runtimes are libraries
-written in the target language against which the generated code is compiled.
-</p><!--l. 54--><p class="noindent" >
-</p>
-<h4 class="subsectionHead"><span class="titlemark">16.1.3 </span> <a
- id="x73-12800016.1.3"></a>Unit Tests</h4>
-<!--l. 56--><p class="noindent" >Most plug-ins and other parts of the code have related unit tests.
-
-
-
+ <li class="itemize">Using the <span
+class="ecti-1000">Ctrl+R L </span>shortcut.</li></ul>
+<!--l. 29--><p class="noindent" >Additionally, an entry in the context menu allows to layout only a selected part of the diagram.
+
+
</p>
-<!--l. 58--><div class="crosslinks"><p class="noindent">[<a
+<!--l. 31--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docse56.html" >next</a>] [<a
-href="etrice-docch16.html" >prev</a>] [<a
-href="etrice-docch16.html#tailetrice-docch16.html" >prev-tail</a>] [<a
+href="etrice-docse54.html" >prev</a>] [<a
+href="etrice-docse54.html#tailetrice-docse54.html" >prev-tail</a>] [<a
href="etrice-docse55.html" >front</a>] [<a
-href="etrice-docch16.html#etrice-docse55.html" >up</a>] </p></div>
-<!--l. 58--><p class="noindent" ><a
+href="etrice-docch13.html#etrice-docse55.html" >up</a>] </p></div>
+<!--l. 31--><p class="noindent" ><a
id="tailetrice-docse55.html"></a> </p>
</body></html>
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse56.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse56.html
index 4668491..8c3d0dc 100644
--- a/plugins/org.eclipse.etrice.doc/html/etrice-docse56.html
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse56.html
@@ -4,440 +4,45 @@
<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
<html xmlns="http://www.w3.org/1999/xhtml"
>
-<head><title>Component Overview</title>
+<head><title>Layout Options</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-03-25 22:23:00" />
+<meta name="date" content="2013-03-26 21:41:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
-<!--l. 58--><div class="crosslinks"><p class="noindent">[<a
+<!--l. 31--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse57.html" >next</a>] [<a
href="etrice-docse55.html" >prev</a>] [<a
href="etrice-docse55.html#tailetrice-docse55.html" >prev-tail</a>] [<a
href="#tailetrice-docse56.html">tail</a>] [<a
-href="etrice-docch16.html#etrice-docse56.html" >up</a>] </p></div>
-<h3 class="sectionHead"><span class="titlemark">16.2 </span> <a
- id="x74-12900016.2"></a>Component Overview</h3>
-<!--l. 60--><p class="noindent" >
-</p>
-<h4 class="subsectionHead"><span class="titlemark">16.2.1 </span> <a
- id="x74-13000016.2.1"></a>Room Language Overview</h4>
-<!--l. 62--><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. 64--><p class="noindent" >
-</p>
-<h5 class="subsubsectionHead"><a
- id="x74-13100016.2.1"></a>Model Tweaks</h5>
-<!--l. 66--><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="ecti-1000">/org.eclipse.etrice.core.room/src/org/eclipse/etrice/core/RoomPostprocessor.ext</span>
-which is written in the legacy Xtend language.
-</p><!--l. 69--><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-21">
- multiplicity
-</div>
- <!--l. 71--><p class="nopar" > of the <span
-class="ectt-1000">Port </span>is set to 1
- </p></li>
- <li class="itemize">the operation <span
-class="ectt-1000">isReplicated </span>is added to the <span
-class="ectt-1000">Port</span>
- </li>
- <li class="itemize">the default <span
-class="ectt-1000">size </span>of the <span
-class="ectt-1000">ActorRef </span>is set to 1
- </li>
- <li class="itemize">an operation <span
-class="ectt-1000">getName </span>is add to the <span
-class="ectt-1000">State </span>class
- </li>
- <li class="itemize">an operation <span
-class="ectt-1000">getName </span>is add to the <span
-class="ectt-1000">StateGraphItem </span>class
- </li>
- <li class="itemize">an operation <span
-class="ectt-1000">getGeneralProtocol </span>is added to the <span
-class="ectt-1000">InterfaceItem</span></li></ul>
-<!--l. 79--><p class="noindent" >
-</p>
-<h5 class="subsubsectionHead"><a
- id="x74-13200016.2.1"></a>Imports by URI Using Namespaces</h5>
-<!--l. 81--><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="ectt-1000">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="ectt-1000">ImportedNamespaceAwareLocalScopeProvider </span>&#8211; this is a standard scope
- provider which is aware of namespaces
- </li>
- <li class="itemize"><span
-class="ectt-1000">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="ectt-1000">ImportAwareHyperlinkHelper </span>&#8211; turns the URI part of an import into a
- navigatable hyper link</li></ul>
-
-
-
-<!--l. 89--><p class="noindent" >
-</p>
-<h5 class="subsubsectionHead"><a
- id="x74-13300016.2.1"></a>Naming</h5>
-<!--l. 91--><p class="noindent" >Two classes provide object names used for link resolution and for labels. The
-<span
-class="ectt-1000">RoomNameProvider </span>provides frequently used name strings, some of them are
-hierarchical like State paths. The <span
-class="ectt-1000">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. 95--><p class="noindent" >
-</p>
-<h5 class="subsubsectionHead"><a
- id="x74-13400016.2.1"></a>Helpers</h5>
-<!--l. 97--><p class="noindent" >The <span
-class="ectt-1000">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="ectt-1000">getAllEndPorts(ActorClass) </span>- returns a list of all end ports of an actor
- class including inherited ones
- </li>
- <li class="itemize"><span
-class="ectt-1000">getInheritedActionCode(Transition, ActorClass) </span>- get the inherited
- part of a transition&#8217;s action code
- </li>
- <li class="itemize"><span
-class="ectt-1000">getSignature(Operation) </span>- returns a string representing the operation
- signature suited for a label</li></ul>
-<!--l. 105--><p class="noindent" >
-</p>
-<h5 class="subsubsectionHead"><a
- id="x74-13500016.2.1"></a>Validation</h5>
-<!--l. 107--><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. 109--><p class="noindent" >
-</p>
-<h4 class="subsectionHead"><span class="titlemark">16.2.2 </span> <a
- id="x74-13600016.2.2"></a>Config Language Overview</h4>
-
-
-
-<!--l. 111--><p class="noindent" >
-</p>
-<h5 class="subsubsectionHead"><a
- id="x74-13700016.2.2"></a>Model Tweaks</h5>
-<!--l. 113--><p class="noindent" >A couple of operations are added to the ConfigModel </p>
- <ul class="itemize1">
- <li class="itemize"><span
-class="ectt-1000">getActorClassConfigs</span>
- </li>
- <li class="itemize"><span
-class="ectt-1000">getActorInstanceConfigs</span>
- </li>
- <li class="itemize"><span
-class="ectt-1000">getProtocolClassConfigs</span>
- </li>
- <li class="itemize"><span
-class="ectt-1000">getSubSystemConfigs</span></li></ul>
-<!--l. 121--><p class="noindent" >
-</p>
-<h5 class="subsubsectionHead"><a
- id="x74-13800016.2.2"></a>Imports by URI Using Namespaces</h5>
-<!--l. 123--><p class="noindent" >Imports are treated like in Room language, section <span
-class="ecti-1000">Imports by URI Using</span>
-<span
-class="ecti-1000">Namespaces</span>.
-</p><!--l. 125--><p class="noindent" >
-</p>
-<h5 class="subsubsectionHead"><a
- id="x74-13900016.2.2"></a>Util</h5>
-<!--l. 127--><p class="noindent" >A set of static utility methods can be found in the <span
-class="ectt-1000">ConfigUtil </span>class.
-</p><!--l. 129--><p class="noindent" >
-</p>
-<h4 class="subsectionHead"><span class="titlemark">16.2.3 </span> <a
- id="x74-14000016.2.3"></a>Aggregation Layer Overview</h4>
-<!--l. 131--><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. 134--><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-22">
-createGeneratorModel(List&#x003C;RoomModel&#x003E;,&#x00A0;boolean)
-</div>
-<!--l. 136--><p class="nopar" >
-</p><!--l. 138--><p class="noindent" >method of the <span
-class="ectt-1000">GeneratorModelBuilder </span>class.
-</p><!--l. 140--><p class="noindent" >The <span
-class="ectt-1000">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="ectt-1000">SubSystem </span>with representations of each
- <span
-class="ectt-1000">ActorInstance </span>and <span
-class="ectt-1000">PortInstance</span>
- </li>
- <li class="itemize">for each <span
-class="ectt-1000">ActorClass </span>a corresponding <span
-class="ectt-1000">ExpandedActorClass </span>with an
- explicit state machine containing all inherited state graph items</li></ul>
-<!--l. 146--><p class="noindent" >
-</p>
-<h5 class="subsubsectionHead"><a
- id="x74-14100016.2.3"></a>The Instance Model</h5>
-<!--l. 148--><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. 150--><p class="noindent" >
-</p>
-<h5 class="subsubsectionHead"><a
- id="x74-14200016.2.3"></a>The Expanded Actor Class</h5>
-<!--l. 152--><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="ectt-1000">ExpandedActorClass </span>gives access to
-</p>
- <ul class="itemize1">
- <li class="itemize"><span
-class="ectt-1000">getIncomingTransitions(StateGraphNode) </span>&#8211; the
- set of incoming transition of a <span
-class="ectt-1000">StateGraphNode </span>(<span
-class="ectt-1000">State</span>, <span
-class="ectt-1000">ChoicePoint </span>or
- <span
-class="ectt-1000">TransitionPoint</span>)
- </li>
- <li class="itemize"><span
-class="ectt-1000">getOutgoingTransitions(StateGraphNode) </span>&#8211; the set of outgoing
- transition of a <span
-class="ectt-1000">StateGraphNode</span>
-
-
-
- </li>
- <li class="itemize"><span
-class="ectt-1000">getActiveTriggers(State) </span>&#8211; the triggers that are active in this <span
-class="ectt-1000">State</span>
- in the order they are evaluated</li></ul>
-<!--l. 160--><p class="noindent" >
-</p>
-<h5 class="subsubsectionHead"><a
- id="x74-14300016.2.3"></a>Transition Chains</h5>
-<!--l. 162--><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="ectt-1000">TransitionChain </span>of a transition is
-retrieved by a call of <span
-class="ectt-1000">getChain(Transition) </span>of the <span
-class="ectt-1000">ExpandedActorClass</span>. The
-<span
-class="ectt-1000">TransitionChain </span>accepts an <span
-class="ectt-1000">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. 166--><p class="noindent" >
-</p>
-<h4 class="subsectionHead"><span class="titlemark">16.2.4 </span> <a
- id="x74-14400016.2.4"></a>Generator Overview</h4>
-<!--l. 168--><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. 170--><p class="noindent" >
-</p>
-<h5 class="subsubsectionHead"><a
- id="x74-14500016.2.4"></a>Base Classes and Interfaces</h5>
-<!--l. 172--><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. 175--><p class="noindent" >
-<span
-class="ectt-1000">ITranslationProvider </span>&#8212; this interface is used by the
-<span
-class="ectt-1000">DetailCodeTranslator </span>for the language dependent translation of e.g.
-port.message() notation in detail code</p></div>
- </li>
- <li class="itemize"><span
-class="ectt-1000">AbstractGenerator </span>&#8212; concrete language generators should derive from this
- base class
-
-
-
- </li>
- <li class="itemize">
- <div class="flushleft"
->
-<!--l. 177--><p class="noindent" >
-<span
-class="ectt-1000">DefaultTranslationProvider </span>&#8212; a stub implementation of
-<span
-class="ectt-1000">ITranslationProvider </span>from which clients may derive</p></div>
- </li>
- <li class="itemize"><span
-class="ectt-1000">Indexed </span>&#8212; provides an indexed iterable of a given iterable
- </li>
- <li class="itemize"><span
-class="ectt-1000">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. 182--><p class="noindent" >
-</p>
-<h5 class="subsubsectionHead"><a
- id="x74-14600016.2.4"></a>Generic Generator Parts</h5>
-<!--l. 184--><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="ectt-1000">ILanguageExtension</span>. This extension and other parts of the generator be configured
-using Google Guice dependency injection.
-</p>
-<!--l. 186--><p class="noindent" ><span class="paragraphHead"><a
- id="x74-14700016.2.4"></a><span
-class="ecbx-1000">GenericActorClassGenerator</span></span>
-The <span
-class="ectt-1000">GenericActorClassGenerator </span>generates constants for the interface items of a
-actor. Those constants are used by the generated state machine.
-</p>
-<!--l. 190--><p class="noindent" ><span class="paragraphHead"><a
- id="x74-14800016.2.4"></a><span
-class="ecbx-1000">GenericProtocolClassGenerator</span></span>
-The <span
-class="ectt-1000">GenericProtocolClassGenerator </span>generates message ID constants for a
-protocol.
-</p>
-<!--l. 194--><p class="noindent" ><span class="paragraphHead"><a
- id="x74-14900016.2.4"></a><span
-class="ecbx-1000">GenericStateMachineGenerator</span></span>
-</p>
-
-
-
-<div class="flushleft"
->
-<!--l. 196--><p class="noindent" >
-The <span
-class="ectt-1000">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="ectt-1000">exitTo </span>method
- </li>
- <li class="itemize">the <span
-class="ectt-1000">executeTransitionChain </span>method
- </li>
- <li class="itemize">the <span
-class="ectt-1000">enterHistory </span>method
- </li>
- <li class="itemize">the <span
-class="ectt-1000">executeInitTransition </span>method
- </li>
- <li class="itemize">the <span
-class="ectt-1000">receiveEvent </span>method</li></ul>
-<!--l. 210--><p class="noindent" >The state machine works as follows. The main entry method is the <br
-class="newline" /><span
-class="ectt-1000">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="ectt-1000">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="ectt-1000">executeTransitionChain </span>method. Finally the history of the
-state where the chain ends is entered and all entry codes are executed by
-<span
-class="ectt-1000">enterHistory</span>.
-</p><!--l. 212--><p class="noindent" >
-</p>
-<h5 class="subsubsectionHead"><a
- id="x74-15000016.2.4"></a>The Java Generator</h5>
-<!--l. 214--><p class="noindent" >The Java generator employs the generic parts of the generator. The
-<span
-class="ectt-1000">JavaTranslationProvider </span>is very simple and only handles the case of sending a
-message from a distinct replicated port: <span
-class="ectt-1000">replPort[2].message()</span>. Other cases are
-handled by the base class by returning the original text.
-
-
-
-</p><!--l. 216--><p class="noindent" >The <span
-class="ectt-1000">DataClassGen </span>uses Java inheritance for the generated data classes. Otherwise it
-is pretty much straight forward.
-</p><!--l. 218--><p class="noindent" >The <span
-class="ectt-1000">ProtocolClassGen </span>generates a class for the protocol with nested static classes
-for regular and conjugated ports and similar for replicated ports.
-</p><!--l. 220--><p class="noindent" >The <span
-class="ectt-1000">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. 222--><p class="noindent" >
-</p>
-<h5 class="subsubsectionHead"><a
- id="x74-15100016.2.4"></a>The ANSI-C Generator</h5>
-<!--l. 224--><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="ectt-1000">self </span>in analogy to the implicit C++ <span
-class="ectt-1000">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. 228--><p class="noindent" >
-</p>
-<h5 class="subsubsectionHead"><a
- id="x74-15200016.2.4"></a>The Documentation Generator</h5>
-<!--l. 230--><p class="noindent" >The documentation generator creates documentation in LaTex format which can be
-converted into PDF and many other formats.
-
-
-
-</p>
-<!--l. 42--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docch13.html#etrice-docse56.html" >up</a>] </p></div>
+<h3 class="sectionHead"><span class="titlemark">13.3 </span> <a
+ id="x71-11400013.3"></a>Layout Options</h3>
+<!--l. 34--><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. 36--><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="ecti-1000">Show Layout View </span>entry.
+</p><!--l. 38--><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 below:
+</p><!--l. 40--><p class="noindent" ><img
+src="images/043-LayoutOptionDescription.png" alt="PIC"
+ />
+
+
+</p>
+<!--l. 43--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse57.html" >next</a>] [<a
href="etrice-docse55.html" >prev</a>] [<a
href="etrice-docse55.html#tailetrice-docse55.html" >prev-tail</a>] [<a
href="etrice-docse56.html" >front</a>] [<a
-href="etrice-docch16.html#etrice-docse56.html" >up</a>] </p></div>
-<!--l. 42--><p class="noindent" ><a
- id="tailetrice-docse56.html"></a> </p>
+href="etrice-docch13.html#etrice-docse56.html" >up</a>] </p></div>
+<!--l. 43--><p class="noindent" ><a
+ id="tailetrice-docse56.html"></a> </p>
</body></html>
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse57.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse57.html
new file mode 100644
index 0000000..7fa133d
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse57.html
@@ -0,0 +1,173 @@
+<?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>Configuring Layout Options</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-03-26 21:41:00" />
+<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
+</head><body
+>
+<!--l. 43--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse58.html" >next</a>] [<a
+href="etrice-docse56.html" >prev</a>] [<a
+href="etrice-docse56.html#tailetrice-docse56.html" >prev-tail</a>] [<a
+href="#tailetrice-docse57.html">tail</a>] [<a
+href="etrice-docch13.html#etrice-docse57.html" >up</a>] </p></div>
+<h3 class="sectionHead"><span class="titlemark">13.4 </span> <a
+ id="x72-11500013.4"></a>Configuring Layout Options</h3>
+<!--l. 46--><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 *default* 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. 48--><p class="noindent" >
+</p>
+<h4 class="subsectionHead"><span class="titlemark">13.4.1 </span> <a
+ id="x72-11600013.4.1"></a>The Layout View</h4>
+<!--l. 51--><p class="noindent" ><img
+src="images/043-LayoutView.png" alt="PIC"
+ />
+</p><!--l. 54--><p class="noindent" >The Layout view 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 (*.structure file / *.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. 56--><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="ecti-1000">Show Advanced Properties </span>button
+in the view toolbar is activated. The group types can be hidden using the Show Categories
+button.
+</p><!--l. 58--><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. 60--><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. 62--><p class="noindent" >Selecting Restore Default Value in the context menu or the view toolbar 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><!--l. 64--><p class="noindent" ><img
+src="images/043-ContextMenu.png" alt="PIC"
+ />
+</p><!--l. 67--><p class="noindent" >The context menu for a specific layout option has different alternatives to set the currently active value as
+<span
+class="ecbx-1000">default </span>value: </p>
+ <ul class="itemize1">
+ <li class="itemize"><span
+class="ecti-1000">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="ecti-1000">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="ecti-1000">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. 76--><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. 78--><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>
+<!--l. 84--><p class="noindent" >
+</p>
+<h4 class="subsectionHead"><span class="titlemark">13.4.2 </span> <a
+ id="x72-11700013.4.2"></a>Preference Page</h4>
+<!--l. 87--><p class="noindent" >The user-defined *default* 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="ecti-1000">Layout</span>: for general preferences regarding layout
+ </li>
+ <li class="itemize"><span
+class="ecti-1000">Behavior</span>: for setting default values of layout options for eTrice behavior diagrams
+ </li>
+ <li class="itemize"><span
+class="ecti-1000">Structure</span>: for setting default values of layout options for eTrice structure diagrams</li></ul>
+<!--l. 94--><p class="noindent" >These preference pages can be accessed via <span
+class="ecti-1000">Windows &#x003E; Preferences &#x003E; eTrice &#x003E; Layout</span>.
+</p><!--l. 96--><p class="noindent" >Note that the contents of these preference pages are in sync with the <span
+class="ecti-1000">KIELER &#x003E; Layout </span>preference page
+provided by the KIELER. Relevant entries in the <span
+class="ecti-1000">KIELER &#x003E; Layout </span>page are shown in the above
+preference pages.
+</p><!--l. 98--><p class="noindent" >
+</p>
+<h5 class="subsubsectionHead"><a
+ id="x72-11800013.4.2"></a><span
+class="ecti-1000">Layout </span>Preference Page</h5>
+<!--l. 101--><p class="noindent" >The <span
+class="ecti-1000">Layout </span>preference page is meant to configure general options regarding the layout.
+</p><!--l. 103--><p class="noindent" >If <span
+class="ecti-1000">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. 105--><p class="noindent" >
+</p>
+<h5 class="subsubsectionHead"><a
+ id="x72-11900013.4.2"></a><span
+class="ecti-1000">Behavior </span>and <span
+class="ecti-1000">Structure </span>Preference Page</h5>
+<!--l. 108--><p class="noindent" >The <span
+class="ecti-1000">Behavior </span>and <span
+class="ecti-1000">Structure </span>sub-preference pages help in setting up the default values of layout options
+in behavior and structure diagrams respectively.
+</p><!--l. 110--><p class="noindent" >The <span
+class="ecti-1000">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. 112--><p class="noindent" >Creating a new entry requires the selection of the type of related element 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><!--l. 114--><p class="noindent" ><img
+src="images/043-PreferencePage.png" alt="PIC"
+ />
+</p><!--l. 117--><p class="noindent" >Note that the <span
+class="ecti-1000">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="ecti-1000">Structure </span>preference page.
+
+
+</p>
+<!--l. 119--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse58.html" >next</a>] [<a
+href="etrice-docse56.html" >prev</a>] [<a
+href="etrice-docse56.html#tailetrice-docse56.html" >prev-tail</a>] [<a
+href="etrice-docse57.html" >front</a>] [<a
+href="etrice-docch13.html#etrice-docse57.html" >up</a>] </p></div>
+<!--l. 119--><p class="noindent" ><a
+ id="tailetrice-docse57.html"></a> </p>
+</body></html>
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse58.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse58.html
new file mode 100644
index 0000000..8ff8818
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse58.html
@@ -0,0 +1,80 @@
+<?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>Special Layout Options</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-03-26 21:41:00" />
+<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
+</head><body
+>
+<!--l. 119--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse59.html" >next</a>] [<a
+href="etrice-docse57.html" >prev</a>] [<a
+href="etrice-docse57.html#tailetrice-docse57.html" >prev-tail</a>] [<a
+href="#tailetrice-docse58.html">tail</a>] [<a
+href="etrice-docch13.html#etrice-docse58.html" >up</a>] </p></div>
+<h3 class="sectionHead"><span class="titlemark">13.5 </span> <a
+ id="x73-12000013.5"></a>Special Layout Options</h3>
+<!--l. 122--><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. 124--><p class="noindent" >
+</p>
+<h4 class="subsectionHead"><span class="titlemark">13.5.1 </span> <a
+ id="x73-12100013.5.1"></a>Layout Algorithm</h4>
+<!--l. 127--><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. 129--><p class="noindent" >For the purpose of automatic diagram layout in eTrice, we use the <span
+class="ecti-1000">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="ecti-1000">Graphviz Dot </span>algorithm whereas for the structure
+diagrams we have used the <span
+class="ecti-1000">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. 131--><p class="noindent" >
+</p>
+<h4 class="subsectionHead"><span class="titlemark">13.5.2 </span> <a
+ id="x73-12200013.5.2"></a>Diagram Type</h4>
+<!--l. 134--><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
+de.cau.cs.kieler.diagramType. Thus, these help in
+</p><!--l. 136--><p class="noindent" >The following diagram types have been defined and used in eTrice: </p>
+ <ul class="itemize1">
+ <li class="itemize"><span
+class="ecti-1000">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="ecti-1000">eTrice Behavior Diagrams </span>- This type has been assigned to the diagram objects in eTrice
+ Behavior Diagrams.
+ </li>
+ <li class="itemize"><span
+class="ecti-1000">eTrice Structure Diagrams </span>- This type has been assigned to the diagram objects in eTrice
+ Structurer Diagrams.</li></ul>
+<!--l. 142--><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. 144--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docse59.html" >next</a>] [<a
+href="etrice-docse57.html" >prev</a>] [<a
+href="etrice-docse57.html#tailetrice-docse57.html" >prev-tail</a>] [<a
+href="etrice-docse58.html" >front</a>] [<a
+href="etrice-docch13.html#etrice-docse58.html" >up</a>] </p></div>
+<!--l. 144--><p class="noindent" ><a
+ id="tailetrice-docse58.html"></a> </p>
+</body></html>
diff --git a/plugins/org.eclipse.etrice.doc/html/etrice-docse59.html b/plugins/org.eclipse.etrice.doc/html/etrice-docse59.html
new file mode 100644
index 0000000..5f6ee7c
--- /dev/null
+++ b/plugins/org.eclipse.etrice.doc/html/etrice-docse59.html
@@ -0,0 +1,46 @@
+<?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>Further References</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-03-26 21:41:00" />
+<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
+</head><body
+>
+<!--l. 144--><div class="crosslinks"><p class="noindent">[<a
+href="etrice-docch14.html" >next</a>] [<a
+href="etrice-docse58.html" >prev</a>] [<a
+href="etrice-docse58.html#tailetrice-docse58.html" >prev-tail</a>] [<a
+href="#tailetrice-docse59.html">tail</a>] [<a
+href="etrice-docch13.html#etrice-docse59.html" >up</a>] </p></div>
+<h3 class="sec