Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "ETrice/Development/GettingStartedWithEtrice"

Line 25: Line 25:
 
* org.eclipse.etrice.doc.tutorials -> genAllTutorials.mwe2.launch -> (contextmenu)Run As -> genAllModels.mwe2
 
* org.eclipse.etrice.doc.tutorials -> genAllTutorials.mwe2.launch -> (contextmenu)Run As -> genAllModels.mwe2
 
* you will find the generated code in org.eclipse.etrice.doc.tutorials/src-gen
 
* you will find the generated code in org.eclipse.etrice.doc.tutorials/src-gen
* you can see the instance tree of your actor  org.eclipse.etrice.doc.tutorials/src-gen
+
* you can see the generated instance tree of your actor  org.eclipse.etrice.doc.tutorials/src-gen/PingPong/SubSystem_PingPong.jpg
*
+
** Precondition: install the current version of graphviz and add the path to dot.exe to you system or user PATH variable
SubSystem_PingPong.jpg
+
  
 
== Run ==
 
== Run ==
Line 34: Line 33:
 
* enter "quit" and <enter> in the Console to stop the running application (you should see ***  T H E  E N D  *** )
 
* enter "quit" and <enter> in the Console to stop the running application (you should see ***  T H E  E N D  *** )
  
 
+
== Debug ==
== Debug
+
* in org.eclipse.etrice.doc.tutorials/tmp/log you will find the generated Message Sequence Chart of your application: SubSystem_PingPong_Async.seq (MSC)
 +
** You can view the MSC with the Open Source tool Trace2UML:
 +
*** Project home: http://trace2uml.tigris.org/
 +
*** Download for Windows: http://trace2uml.tigris.org/files/documents/2995/47472/Trace2UML-setup-1.1.0.exe
 +
*** Download for Linux: http://apt.astade.de
 +
* you can debug the generated code like any other Java Project. The main function is located in SubSystem_PingPongRunner.java
 +
* be aware that all actors communication via message queue, so the regular sourcecode debugging is sometimes not sufficient

Revision as of 08:59, 13 May 2011

Preconditions

Getting Started

Setting up Runtime Workspace

  • start the runtime workspace: org.eclipse.etrice.core.room.ui -> eTrice-rt.launch (contextmenu -> Run As)
  • check out the runtime projects from your local GIT clone
    • org.eclipse.etrice.doc.tutorials
    • org.eclipse.etrice.modellib
    • org.eclipse.etrice.runtime.java

Editing the Model

  • the first model you find in org.eclipse.etrice.doc.tutorials/model/scratch/PingPong.room (doubleclick for editor)
  • if the room editor has the focus, you can see all your model elements in the outline view
  • with a right click on an actor (e.g. MrPingActor) you can
    • Edit Structure
    • Edit Behavior
  • Important: You have to save every "dirty" editor before opening another editor

Code Generator

  • org.eclipse.etrice.doc.tutorials -> genAllTutorials.mwe2.launch -> (contextmenu)Run As -> genAllModels.mwe2
  • you will find the generated code in org.eclipse.etrice.doc.tutorials/src-gen
  • you can see the generated instance tree of your actor org.eclipse.etrice.doc.tutorials/src-gen/PingPong/SubSystem_PingPong.jpg
    • Precondition: install the current version of graphviz and add the path to dot.exe to you system or user PATH variable

Run

  • start generated application: org.eclipse.etrice.doc.tutorials/src-gen/PingPong/SubSystem_PingPongRunner.java -> Run As -> Java Application
  • in the View Console you can see the debugging output of the running model
  • enter "quit" and <enter> in the Console to stop the running application (you should see *** T H E E N D *** )

Debug

  • in org.eclipse.etrice.doc.tutorials/tmp/log you will find the generated Message Sequence Chart of your application: SubSystem_PingPong_Async.seq (MSC)
  • you can debug the generated code like any other Java Project. The main function is located in SubSystem_PingPongRunner.java
  • be aware that all actors communication via message queue, so the regular sourcecode debugging is sometimes not sufficient

Back to the top