blob: 1992999eeec9d76c0498f179d3b2114b96424503 [file] [log] [blame]
<div id="midcolumn">
<div id="title">
<img alt="Papyrus-RT-Logo" src="/papyrus-rt/content/images/Papyrus-RT-logo-full.png">
</div>
<div id="screenshot">
<img alt="Papyrus-RT 0.8 screenshot"
src="/papyrus-rt/content/images/Papyrus-RT-0.8-screenshot.png" width="800" height="620">
</div>
<h3>Papyrus-RT - UML-RT modelling and code generation environment</h3>
<div id="introText">
<p>Papyrus-RT provides an implementation of the UML-RT modeling
language together with editors, code generator for C++ and a
supporting runtime system.</p>
<p>
For more details, see the <a href="/papyrus-rt/content/overview.php">
Overview section</a>.
</p>
</div>
<h3>Some highlights</h3>
<div id="highlights">
<table>
<tr>
<th width="40%">
<h4>Graphical structure editor</h4>
</th>
<th width="20%"></th>
<th width="40%">
<h4>Graphical behavior editor</h4>
</th>
</tr>
<tr>
<td width="40%">
<p align="justify">The structure editor allows the user to edit
capsule structure in a convenient way. It is possible to create
and arrange capsule references and ports and to create bindings
and layer connections.</p>
</td>
<td width="20%"></td>
<td width="40%">
<p align="justify">The behavior editor allows the user to
describe capsule behavior by means of a hierarchical finite state
machine. It is possible to create and arrange states, choice
points, junction points and transitions using the state machine
editor.</p>
</td>
</tr>
</table>
</div>
<br>
<div id="highlights">
<table>
<tr>
<th width="40%"><h4>Code generator</h4></th>
<th width="20%"></th>
<th width="40%"><h4>C++ runtime services support</h4></th>
</tr>
<tr>
<td width="40%">
<p align="justify">A code generator will translate the UML-RT
model into C++ code. This code generator will translate all
structural (e.g., capsules, protocols, and classes) and behavioral
(i.e., state machines) elements into C++ code, based on their
properties, stereotypes, stereotype properties (including those
from a profile with properties specific to C++), and runtime
services elements. For the generation of the behavioral C++ code
from the state machines, the code generator will first translate
the behavior provided by each capsule's (or passive class') state
machine into an intermediate model that will then be translated to
optimized code. Based on user-provided thread allocation
information, the code generator will also allocate capsules, or
groups of capsules, to threads.</p>
</td>
<td width="20%"></td>
<td width="40%">
<p align="justify">The C++ Runtime Services Library provides
support for the execution of the C++ code generated from a UML-RT
model. Capsule lifecycle functions (incarnate, destroy, import,
deport), message delivery and timing services are provided by the
services library and are used by both the generated code as well
as the used specifed action code which is part of the capsule
behavior. The runtime system code is distributed in source form as
an installable Eclipse feature. The code generator produces both
standard makefiles as well as CMakeList files to build the
generated code.</p>
</td>
</tr>
</table>
</div>
</div>
<div id="rightcolumn">
<div class="sideitem">
<h6>Incubation</h6>
<a href="/projects/what-is-incubation.php"> <img align="middle"
src="/images/egg-incubation.png" border="0" alt="Incubation" />
</a>
<p>
This project is in the <a
href="/projects/dev_process/incubation-phase.php">Incubation
Phase</a>.
</p>
</div>
<div>
<h3>Current Status</h3>
<!-- ReleaseCheck -->
<p>
<b>Papyrus-RT 0.8.0</b> planned release October 24th, 2016.
</p>
<p>
<b>Papyrus-RT 0.7.2</b> released December 15th, 2015. See the <a
href="/papyrus-rt/content/download.php">download section</a> for
details.
</p>
<p>
<b>Papyrus-RT 0.7.1</b> released October 12th, 2015.
</p>
<p>
See also our <a
href="https://projects.eclipse.org/projects/modeling.papyrus-rt/releases/0.7.2/plan">project
plan</a> for details of the 0.7.2 release.
</p>
</div>
<div>
<h3>More...</h3>
<ul>
<li>Read the <a
href="https://projects.eclipse.org/projects/modeling.papyrus-rt">
project proposal</a></li>
<li>Join the discussions at the <a
href="http://www.eclipse.org/forums/eclipse.Papyrus-RT">forum</a></li>
</ul>
</div>
</div>