SinelaboreRT Header Logo

SinelaboreRT

Productivity for embedded software development

User Tools

Site Tools


wiki:landing_pages:papyrus

Generate production quality code from state diagrams created with Eclipse Papyrus™

SinelaboreRT generates readable and maintainable code from hierarchical UML state machines created with Eclipse Papyrus™. With its unique features SinelaboreRT covers well the requirements of embedded real-time and low power application developers. With its other language backends it is also a perfect tool for developers of server or desktop applications.

Key Features:

  • Automated robustness checks before code generation
  • No run-time environment needed
  • Can be used with any CPU and with or without OS/RTOS
  • Code generation especially for embedded real-time and high availability systems.
  • Fits well in different system designs (foreground/background, RTOS-based …)
  • No gap between design and code
  • Support for automatic test-case generation
  • Simulation in interactive or batch mode.
  • Optionally generating trace code
  • Generated code creates no trouble when using static code checkers

Supported State Machine Elements

The code-generator supports a subset of the design elements provided by Eclipse Papyrus. The supported elements are:

  • Hierarchical states
  • (Signal-)Events with event name, guard and action – Initial and final pseudo-states
  • History states (deep, flat)
  • Choices
  • Junctions
  • Constraints
  • Regions

In addition methods defined in the class are added to the generated state machine header. And attributes are added to the state machine instance data.

How to get started ?

Watch this Youtube video to get a QuickStart in generating C-code from Eclipse Papyrus™ state machine diagrams.

Download the code generator and use the Papyrus microwave example in the examples folder. It shows a fully functional example of a microwave simulation in C. Make changes in the model, re-create the state machine code and then compile/run the example again. This is the fastest way to learn how to use the code generator.


How to

:?: Opaque Behaviour is not shown in the state diagram inside the states

:!: Check in “Preferences → Papyrus → Diagrams → PapyrusUMLStateMachineDiagram Diagram → Transition and behaviour options” that Show number of lines for opaque expressions/behaviour has a value > 0.

:?: How do I create an inner transition in a state

:!: Create a self transition and set the kind property in the transition property dialog to internal.

This website uses cookies. By using the website, you agree with storing cookies on your computer. Also you acknowledge that you have read and understand our Privacy Policy. If you do not agree leave the website.More information about cookies
wiki/landing_pages/papyrus.txt · Last modified: 2024/05/03 20:40 by webmin

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki