- Align code with current designer (notably NoCodeGen which is now in generic codegen profile)
- Make code warning-free (related to NLS, unused variable, non-needed "public" tags in xtend)
- Minor updates of test-code
Signed-off-by: Ansgar Radermacher <ansgar.radermacher@cea.fr>
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen.ui/.classpath b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen.ui/.classpath
index ad32c83..eca7bdb 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen.ui/.classpath
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen.ui/.classpath
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
- <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
<classpathentry kind="src" path="src"/>
<classpathentry kind="output" path="bin"/>
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen.ui/.settings/org.eclipse.jdt.core.prefs b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen.ui/.settings/org.eclipse.jdt.core.prefs
index c537b63..9f6ece8 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen.ui/.settings/org.eclipse.jdt.core.prefs
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen.ui/.settings/org.eclipse.jdt.core.prefs
@@ -1,7 +1,8 @@
eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
-org.eclipse.jdt.core.compiler.compliance=1.6
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
+org.eclipse.jdt.core.compiler.compliance=1.8
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.source=1.6
+org.eclipse.jdt.core.compiler.release=disabled
+org.eclipse.jdt.core.compiler.source=1.8
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen.ui/META-INF/MANIFEST.MF b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen.ui/META-INF/MANIFEST.MF
index 0ce74aa..dead0b8 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen.ui/META-INF/MANIFEST.MF
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen.ui/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@
Bundle-ManifestVersion: 2
Bundle-Name: %pluginName
Bundle-SymbolicName: org.eclipse.papyrus.designer.languages.c.codegen.ui;singleton:=true
-Bundle-Version: 1.1.1.qualifier
+Bundle-Version: 0.8.1.qualifier
Bundle-Activator: org.eclipse.papyrus.designer.languages.c.codegen.ui.Activator
Bundle-Localization: plugin
Require-Bundle: org.eclipse.ui,
@@ -10,6 +10,7 @@
org.eclipse.papyrus.uml.diagram.common;bundle-version="2.0.0",
org.eclipse.papyrus.designer.languages.common.base;bundle-version="0.7.0",
org.eclipse.papyrus.designer.languages.common.extensionpoints
-Bundle-RequiredExecutionEnvironment: JavaSE-1.7
+Bundle-RequiredExecutionEnvironment: JavaSE-1.8
Bundle-ActivationPolicy: lazy
Bundle-Vendor: %providerName
+Export-Package: org.eclipse.papyrus.designer.languages.c.codegen.ui.preferences
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen.ui/plugin.xml b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen.ui/plugin.xml
index 83d4353..75d5363 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen.ui/plugin.xml
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen.ui/plugin.xml
@@ -1,39 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.4"?>
<plugin>
- <extension
- point="org.eclipse.ui.menus">
- <menuContribution
- allPopups="false"
- locationURI="popup:org.eclipse.papyrus.designer.popup?after=codegen">
- <command
- commandId="org.eclipse.papyrus.designer.languages.c.codegen.command"
- icon="icons/codegen.gif"
- label="Generate C code"
- style="push"
- tooltip="Generate C code">
- <visibleWhen
- checkEnabled="true">
- </visibleWhen>
- </command>
- </menuContribution>
- </extension>
- <extension
- point="org.eclipse.ui.commands">
- <command
- description="Generate C code"
- categoryId="org.eclipse.papyrus.editor.category"
- id="org.eclipse.papyrus.designer.languages.c.codegen.command"
- defaultHandler="org.eclipse.papyrus.designer.languages.c.codegen.ui.handlers.GenerateCodeHandler"
- name="Generate C code">
- </command>
- </extension>
- <extension
- point="org.eclipse.ui.preferencePages">
- <page
- category="org.eclipse.papyrus.infra.core.sasheditor.preferences.generalcategory"
- class="org.eclipse.papyrus.designer.languages.c.codegen.ui.preferences.CodegenPreferencePage"
- id="org.eclipse.papyrus.designer.languages.c.codegen.ui.preferences.CodeGenPreferencePage"
- name="C code generation"/>
- </extension>
+ <extension point="org.eclipse.ui.preferencePages">
+ <page
+ category="org.eclipse.papyrus.infra.core.sasheditor.preferences.generalcategory"
+ class="org.eclipse.papyrus.designer.languages.c.codegen.ui.preferences.CodegenPreferencePage"
+ id="org.eclipse.papyrus.designer.languages.c.codegen.ui.preferences.CodeGenPreferencePage"
+ name="C code generation">
+ </page>
+ </extension>
</plugin>
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen.ui/src/org/eclipse/papyrus/designer/languages/c/codegen/ui/handlers/GenerateCodeHandler.java b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen.ui/src/org/eclipse/papyrus/designer/languages/c/codegen/ui/handlers/GenerateCodeHandler.java
deleted file mode 100644
index 20d52a4..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen.ui/src/org/eclipse/papyrus/designer/languages/c/codegen/ui/handlers/GenerateCodeHandler.java
+++ /dev/null
@@ -1,127 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2013 CEA LIST
- *
- * All rights reserved. This program and the accompanying materials are
- * made available under the terms of the Eclipse Public License v1.0 which
- * accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Ansgar Radermacher - Initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.papyrus.designer.languages.c.codegen.ui.handlers;
-
-import org.eclipse.core.commands.ExecutionEvent;
-import org.eclipse.core.commands.ExecutionException;
-import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IWorkspaceRoot;
-import org.eclipse.core.resources.ResourcesPlugin;
-import org.eclipse.emf.common.util.BasicEList;
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.emf.common.util.URI;
-import org.eclipse.jface.dialogs.MessageDialog;
-import org.eclipse.papyrus.designer.languages.c.codegen.transformation.CModelElementsCreator;
-import org.eclipse.papyrus.designer.languages.c.codegen.utils.LocateCProject;
-import org.eclipse.papyrus.designer.languages.common.base.ClassUtils;
-import org.eclipse.papyrus.uml.diagram.common.handlers.CmdHandler;
-import org.eclipse.swt.widgets.Display;
-import org.eclipse.uml2.uml.Classifier;
-import org.eclipse.uml2.uml.Package;
-import org.eclipse.uml2.uml.PackageableElement;
-
-/**
- * Handler for C code generation
- */
-public class GenerateCodeHandler extends CmdHandler {
-
- private static final boolean Headless = Boolean.getBoolean("papyrus.run-headless");
-
- // ------------------------------------------------------------------------
- // Execution
- // ------------------------------------------------------------------------
-
- @Override
- public boolean isEnabled() {
- updateSelectedEObject();
-
- if (selectedEObject instanceof Package || selectedEObject instanceof Classifier) {
- URI uri = selectedEObject.eResource().getURI();
-
- // URIConverter uriConverter = resource.getResourceSet().getURIConverter();
- IWorkspaceRoot root = ResourcesPlugin.getWorkspace().getRoot();
- if (uri.segmentCount() < 2) {
- return false;
- }
- IProject modelProject = root.getProject(uri.segment(1));
- return modelProject.exists();
- }
-
- return false;
- }
-
- /**
- * Generate code for a passed packageable element and the elements required by it (in the sense of #included statements)
- *
- * @param mec
- * model elements creator
- * @param pe
- * the element that should be generated
- * @param alreadyHandled
- * list of packageable elements for which code has already been generated.
- * @param recurse
- * if the passed packageableElement is a package, generate code for its contents (recursively).
- */
- public void generate(CModelElementsCreator mec, PackageableElement pe, EList<PackageableElement> alreadyHandled, boolean recurse) {
- alreadyHandled.add(pe);
- mec.createPackageableElement(pe, null, recurse);
- // Eventual refresh is done in createPackageableElement
-
-
- if (pe instanceof Classifier) {
- EList<Classifier> requiredClassifiers = ClassUtils.requiredClassifiers((Classifier) pe);
- for (Classifier requiredClassifier : requiredClassifiers) {
- if (!alreadyHandled.contains(requiredClassifier)) {
- generate(mec, requiredClassifier, alreadyHandled, false);
- }
- }
- }
-
- // owning package is required by generated code.
- Package owningPackage = pe.getNearestPackage();
- if ((owningPackage != null) && (owningPackage != pe)) {
- if (!alreadyHandled.contains(owningPackage)) {
- generate(mec, owningPackage, alreadyHandled, false);
- }
- }
- }
-
- @Override
- public Object execute(ExecutionEvent event) throws ExecutionException {
-
- if (selectedEObject instanceof PackageableElement) {
- PackageableElement pe = (PackageableElement) selectedEObject;
-
- IProject modelProject = LocateCProject.getTargetProject(pe, true);
- if (modelProject == null) {
- return null;
- }
-
- // get the container for the current element
- CModelElementsCreator mec = new CModelElementsCreator(modelProject);
- generate(mec, pe, new BasicEList<PackageableElement>(), true);
-
- // TODO: need a way to get error messages
- if (false && !Headless) {
- Display.getDefault().syncExec(new Runnable() {
- @Override
- public void run() {
- MessageDialog.openInformation(Display.getCurrent().getActiveShell(), "Errors during code generation", //$NON-NLS-1$
- "Errors occured during code generation. Please check the error log"); //$NON-NLS-1$
- }
- });
- }
- }
- return null;
- }
-}
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen.ui/src/org/eclipse/papyrus/designer/languages/c/codegen/ui/preferences/CodegenPreferencePage.java b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen.ui/src/org/eclipse/papyrus/designer/languages/c/codegen/ui/preferences/CodegenPreferencePage.java
index d62ff74..e86065d 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen.ui/src/org/eclipse/papyrus/designer/languages/c/codegen/ui/preferences/CodegenPreferencePage.java
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen.ui/src/org/eclipse/papyrus/designer/languages/c/codegen/ui/preferences/CodegenPreferencePage.java
@@ -43,7 +43,7 @@
public CodegenPreferencePage() {
super(GRID);
setPreferenceStore(Activator.getDefault().getPreferenceStore());
- setDescription("This preferences page allows to customize Papyrus C code generation");
+ setDescription("This preferences page allows to customize Papyrus C code generation"); //$NON-NLS-1$
}
public void addTextField(String name, String label, Document currentDoc) {
@@ -78,6 +78,7 @@
* editor knows how to save and restore itself.
*/
+ @SuppressWarnings("nls")
@Override
public void createFieldEditors() {
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen.ui/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/ui/Activator.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen.ui/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/ui/Activator.class
deleted file mode 100644
index e34ddaa..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen.ui/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/ui/Activator.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen.ui/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/ui/handlers/GenerateCodeHandler.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen.ui/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/ui/handlers/GenerateCodeHandler.class
deleted file mode 100644
index 115f197..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen.ui/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/ui/handlers/GenerateCodeHandler.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen.ui/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/ui/preferences/CodegenPreferencePage.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen.ui/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/ui/preferences/CodegenPreferencePage.class
deleted file mode 100644
index 0a0614e..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen.ui/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/ui/preferences/CodegenPreferencePage.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/META-INF/MANIFEST.MF b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/META-INF/MANIFEST.MF
index defc6bd..f6273f4 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/META-INF/MANIFEST.MF
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@
Bundle-ManifestVersion: 2
Bundle-Name: %pluginName
Bundle-SymbolicName: org.eclipse.papyrus.designer.languages.c.codegen;singleton:=true
-Bundle-Version: 1.1.1.qualifier
+Bundle-Version: 0.8.1.qualifier
Bundle-Activator: org.eclipse.papyrus.designer.languages.c.codegen.Activator
Bundle-Vendor: %providerName
Bundle-Localization: plugin
@@ -24,8 +24,9 @@
org.eclipse.xtend.lib,
org.eclipse.xtend.lib.macro,
org.eclipse.papyrus.designer.languages.common.base;bundle-version="0.7.0",
- org.eclipse.uml2.uml.profile.standard;bundle-version="1.0.100"
-Bundle-RequiredExecutionEnvironment: JavaSE-1.6
+ org.eclipse.uml2.uml.profile.standard;bundle-version="1.0.100",
+ org.eclipse.papyrus.designer.languages.common.profile;bundle-version="1.1.0"
+Bundle-RequiredExecutionEnvironment: JavaSE-1.8
Bundle-ActivationPolicy: lazy
Eclipse-LazyStart: true
Export-Package: org.eclipse.papyrus.designer.languages.c.codegen,
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/pom.xml b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/pom.xml
index e43da96..29917e5 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/pom.xml
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/pom.xml
@@ -1,54 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
-<project>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.eclipse.papyrus.designer</groupId>
- <artifactId>org.eclipse.papyrus.designer.languages.c</artifactId>
+ <artifactId>org.eclipse.papyrus.designer.languages</artifactId>
<version>1.1.1-SNAPSHOT</version>
</parent>
- <artifactId>org.eclipse.papyrus.designer.languages.c.codegen</artifactId>
- <packaging>eclipse-plugin</packaging>
- <description>This module contains a C code generator based on xtend</description>
+ <artifactId>org.eclipse.papyrus.designer.languages.c</artifactId>
+ <packaging>pom</packaging>
+ <name>Designer Languages C</name>
+ <description>This module contains the plugins for C code generation</description>
-<build>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-compiler-plugin</artifactId>
- </plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-clean-plugin</artifactId>
- <configuration>
- <filesets>
- <fileset>
- <directory>xtend-gen</directory>
- <includes>
- <include>**/*</include>
- </includes>
- <excludes>
- <exclude>.gitignore</exclude>
- </excludes>
- </fileset>
- </filesets>
- </configuration>
- </plugin>
- <plugin>
- <groupId>org.eclipse.xtend</groupId>
- <artifactId>xtend-maven-plugin</artifactId>
- <executions>
- <execution>
- <phase>generate-sources</phase>
- <goals>
- <goal>compile</goal>
- </goals>
- </execution>
- </executions>
- <configuration>
- <outputDirectory>xtend-gen</outputDirectory>
- <testOutputDirectory>${project.build.directory}/xtend-gen/test</testOutputDirectory>
- </configuration>
- </plugin>
- </plugins>
-</build>
+ <modules>
+ <module>org.eclipse.papyrus.designer.languages.c.codegen</module>
+ <module>org.eclipse.papyrus.designer.languages.c.codegen.ui</module>
+ </modules>
</project>
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/resources/BathtubSM.di b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/resources/BathtubSM.di
index 0812886..8c549ee 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/resources/BathtubSM.di
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/resources/BathtubSM.di
@@ -1,2 +1,2 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<architecture:ArchitectureDescription xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:architecture="http://www.eclipse.org/papyrus/infra/core/architecture" contextId="org.eclipse.papyrus.infra.services.edit.TypeContext"/>
+<?xml version="1.0" encoding="UTF-8"?>
+<architecture:ArchitectureDescription xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:architecture="http://www.eclipse.org/papyrus/infra/core/architecture" contextId="org.eclipse.papyrus.infra.services.edit.TypeContext"/>
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/resources/BathtubSM.notation b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/resources/BathtubSM.notation
index d024cde..8cf0324 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/resources/BathtubSM.notation
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/resources/BathtubSM.notation
@@ -1,396 +1,396 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.2/notation" xmlns:style="http://www.eclipse.org/papyrus/infra/gmfdiag/style" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML">
- <notation:Diagram xmi:id="_lX0y8G4cEeiQkc1FO4uxgA" type="PapyrusUMLClassDiagram" name="NewClassDiagram" measurementUnit="Pixel">
- <children xmi:type="notation:Shape" xmi:id="_8752wH0OEeiDS63tULewcA" type="Package_Shape">
- <children xmi:type="notation:DecorationNode" xmi:id="_8752wn0OEeiDS63tULewcA" type="Package_NameLabel"/>
- <children xmi:type="notation:BasicCompartment" xmi:id="_8752w30OEeiDS63tULewcA" type="Package_PackagedElementCompartment">
- <children xmi:type="notation:Shape" xmi:id="_mdmIMG4cEeiQkc1FO4uxgA" type="Class_Shape">
- <children xmi:type="notation:DecorationNode" xmi:id="_md5DIG4cEeiQkc1FO4uxgA" type="Class_NameLabel"/>
- <children xmi:type="notation:DecorationNode" xmi:id="_md5DIW4cEeiQkc1FO4uxgA" type="Class_FloatingNameLabel">
- <layoutConstraint xmi:type="notation:Location" xmi:id="_md5DIm4cEeiQkc1FO4uxgA" y="15"/>
- </children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_meC0IG4cEeiQkc1FO4uxgA" type="Class_AttributeCompartment">
- <children xmi:type="notation:Shape" xmi:id="_o3xEkG4cEeiQkc1FO4uxgA" type="Property_ClassAttributeLabel">
- <element xmi:type="uml:Property" href="BathtubSM.uml#_o3n6oG4cEeiQkc1FO4uxgA"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_o3xEkW4cEeiQkc1FO4uxgA"/>
- </children>
- <children xmi:type="notation:Shape" xmi:id="_pYFjYG4cEeiQkc1FO4uxgA" type="Property_ClassAttributeLabel">
- <element xmi:type="uml:Property" href="BathtubSM.uml#_pXpegG4cEeiQkc1FO4uxgA"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_pYFjYW4cEeiQkc1FO4uxgA"/>
- </children>
- <styles xmi:type="notation:TitleStyle" xmi:id="_meC0IW4cEeiQkc1FO4uxgA"/>
- <styles xmi:type="notation:SortingStyle" xmi:id="_meC0Im4cEeiQkc1FO4uxgA"/>
- <styles xmi:type="notation:FilteringStyle" xmi:id="_meC0I24cEeiQkc1FO4uxgA"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_meC0JG4cEeiQkc1FO4uxgA"/>
- </children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_meC0JW4cEeiQkc1FO4uxgA" type="Class_OperationCompartment">
- <children xmi:type="notation:Shape" xmi:id="_ua5V8G4cEeiQkc1FO4uxgA" type="Operation_ClassOperationLabel">
- <element xmi:type="uml:Operation" href="BathtubSM.uml#_uaa00G4cEeiQkc1FO4uxgA"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_ua5V8W4cEeiQkc1FO4uxgA"/>
- </children>
- <children xmi:type="notation:Shape" xmi:id="_vhDswG4cEeiQkc1FO4uxgA" type="Operation_ClassOperationLabel">
- <element xmi:type="uml:Operation" href="BathtubSM.uml#_vg57wG4cEeiQkc1FO4uxgA"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_vhDswW4cEeiQkc1FO4uxgA"/>
- </children>
- <children xmi:type="notation:Shape" xmi:id="_CteGwH1REeiOvJbQeRuWmA" type="Operation_ClassOperationLabel">
- <element xmi:type="uml:Operation" href="BathtubSM.uml#_CtKkwH1REeiOvJbQeRuWmA"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_CteGwX1REeiOvJbQeRuWmA"/>
- </children>
- <styles xmi:type="notation:TitleStyle" xmi:id="_meC0Jm4cEeiQkc1FO4uxgA"/>
- <styles xmi:type="notation:SortingStyle" xmi:id="_meC0J24cEeiQkc1FO4uxgA"/>
- <styles xmi:type="notation:FilteringStyle" xmi:id="_meC0KG4cEeiQkc1FO4uxgA"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_meC0KW4cEeiQkc1FO4uxgA"/>
- </children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_meC0Km4cEeiQkc1FO4uxgA" type="Class_NestedClassifierCompartment">
- <styles xmi:type="notation:TitleStyle" xmi:id="_meC0K24cEeiQkc1FO4uxgA"/>
- <styles xmi:type="notation:SortingStyle" xmi:id="_meC0LG4cEeiQkc1FO4uxgA"/>
- <styles xmi:type="notation:FilteringStyle" xmi:id="_meC0LW4cEeiQkc1FO4uxgA"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_meC0Lm4cEeiQkc1FO4uxgA"/>
- </children>
- <element xmi:type="uml:Class" href="BathtubSM.uml#_mdTNQG4cEeiQkc1FO4uxgA"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_mdmIMW4cEeiQkc1FO4uxgA" x="134" y="16" width="201"/>
- </children>
- <children xmi:type="notation:Shape" xmi:id="_iY3zcH1PEeiOvJbQeRuWmA" type="Class_Shape_CN">
- <children xmi:type="notation:DecorationNode" xmi:id="_iY3zcn1PEeiOvJbQeRuWmA" type="Class_NameLabel_CN"/>
- <children xmi:type="notation:DecorationNode" xmi:id="_iY3zc31PEeiOvJbQeRuWmA" type="Class_FloatingNameLabel_CN">
- <layoutConstraint xmi:type="notation:Location" xmi:id="_iY3zdH1PEeiOvJbQeRuWmA" y="15"/>
- </children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_iY3zdX1PEeiOvJbQeRuWmA" type="Class_AttributeCompartment_CN">
- <styles xmi:type="notation:TitleStyle" xmi:id="_iY3zdn1PEeiOvJbQeRuWmA"/>
- <styles xmi:type="notation:SortingStyle" xmi:id="_iY3zd31PEeiOvJbQeRuWmA"/>
- <styles xmi:type="notation:FilteringStyle" xmi:id="_iY3zeH1PEeiOvJbQeRuWmA"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_iY3zeX1PEeiOvJbQeRuWmA"/>
- </children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_iY3zen1PEeiOvJbQeRuWmA" type="Class_OperationCompartment_CN">
- <styles xmi:type="notation:TitleStyle" xmi:id="_iY3ze31PEeiOvJbQeRuWmA"/>
- <styles xmi:type="notation:SortingStyle" xmi:id="_iY3zfH1PEeiOvJbQeRuWmA"/>
- <styles xmi:type="notation:FilteringStyle" xmi:id="_iY3zfX1PEeiOvJbQeRuWmA"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_iY3zfn1PEeiOvJbQeRuWmA"/>
- </children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_iY3zf31PEeiOvJbQeRuWmA" type="Class_NestedClassifierCompartment_CN">
- <styles xmi:type="notation:TitleStyle" xmi:id="_iY3zgH1PEeiOvJbQeRuWmA"/>
- <styles xmi:type="notation:SortingStyle" xmi:id="_iY3zgX1PEeiOvJbQeRuWmA"/>
- <styles xmi:type="notation:FilteringStyle" xmi:id="_iY3zgn1PEeiOvJbQeRuWmA"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_iY3zg31PEeiOvJbQeRuWmA"/>
- </children>
- <element xmi:type="uml:Class" href="BathtubSM.uml#_iYk4gH1PEeiOvJbQeRuWmA"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_iY3zcX1PEeiOvJbQeRuWmA" x="134" y="256" width="201" height="100"/>
- </children>
- <children xmi:type="notation:Shape" xmi:id="_udgC_X1PEeiOvJbQeRuWmA" type="StereotypeComment">
- <styles xmi:type="notation:TitleStyle" xmi:id="_udgC_n1PEeiOvJbQeRuWmA"/>
- <styles xmi:type="notation:EObjectValueStyle" xmi:id="_udpM4H1PEeiOvJbQeRuWmA" name="BASE_ELEMENT">
- <eObjectValue xmi:type="uml:Class" href="BathtubSM.uml#_iYk4gH1PEeiOvJbQeRuWmA"/>
- </styles>
- <element xsi:nil="true"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_udgC_31PEeiOvJbQeRuWmA" x="334" y="256"/>
- </children>
- <styles xmi:type="notation:TitleStyle" xmi:id="_8752xH0OEeiDS63tULewcA"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8752xX0OEeiDS63tULewcA"/>
- </children>
- <element xmi:type="uml:Package" href="BathtubSM.uml#_87wFwH0OEeiDS63tULewcA"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8752wX0OEeiDS63tULewcA" x="40" y="40" width="681" height="421"/>
- </children>
- <styles xmi:type="notation:StringValueStyle" xmi:id="_lX0y8W4cEeiQkc1FO4uxgA" name="diagram_compatibility_version" stringValue="1.4.0"/>
- <styles xmi:type="notation:DiagramStyle" xmi:id="_lX0y8m4cEeiQkc1FO4uxgA"/>
- <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_lX0y824cEeiQkc1FO4uxgA" diagramKindId="org.eclipse.papyrus.uml.diagram.class">
- <owner xmi:type="uml:Model" href="BathtubSM.uml#_dRQ7gG4cEeiQkc1FO4uxgA"/>
- </styles>
- <element xmi:type="uml:Model" href="BathtubSM.uml#_dRQ7gG4cEeiQkc1FO4uxgA"/>
- <edges xmi:type="notation:Connector" xmi:id="_udpM4X1PEeiOvJbQeRuWmA" type="StereotypeCommentLink" source="_iY3zcH1PEeiOvJbQeRuWmA" target="_udgC_X1PEeiOvJbQeRuWmA">
- <styles xmi:type="notation:FontStyle" xmi:id="_udpM4n1PEeiOvJbQeRuWmA"/>
- <styles xmi:type="notation:EObjectValueStyle" xmi:id="_udpM5n1PEeiOvJbQeRuWmA" name="BASE_ELEMENT">
- <eObjectValue xmi:type="uml:Class" href="BathtubSM.uml#_iYk4gH1PEeiOvJbQeRuWmA"/>
- </styles>
- <element xsi:nil="true"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_udpM431PEeiOvJbQeRuWmA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
- <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_udpM5H1PEeiOvJbQeRuWmA"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_udpM5X1PEeiOvJbQeRuWmA"/>
- </edges>
- <edges xmi:type="notation:Connector" xmi:id="_yYbncH1PEeiOvJbQeRuWmA" type="Dependency_Edge" source="_iY3zcH1PEeiOvJbQeRuWmA" target="_mdmIMG4cEeiQkc1FO4uxgA">
- <children xmi:type="notation:DecorationNode" xmi:id="_yYbnc31PEeiOvJbQeRuWmA" type="Dependency_NameLabel">
- <layoutConstraint xmi:type="notation:Location" xmi:id="_yYbndH1PEeiOvJbQeRuWmA" y="40"/>
- </children>
- <children xmi:type="notation:DecorationNode" xmi:id="_yYbndX1PEeiOvJbQeRuWmA" type="Dependency_StereotypeLabel">
- <layoutConstraint xmi:type="notation:Location" xmi:id="_yYbndn1PEeiOvJbQeRuWmA" y="60"/>
- </children>
- <styles xmi:type="notation:FontStyle" xmi:id="_yYbncX1PEeiOvJbQeRuWmA"/>
- <element xmi:type="uml:Dependency" href="BathtubSM.uml#_yYOMEH1PEeiOvJbQeRuWmA"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_yYbncn1PEeiOvJbQeRuWmA" points="[280, 324, -643984, -643984]$[280, 219, -643984, -643984]"/>
- <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_yZBdUH1PEeiOvJbQeRuWmA" id="(0.4975124378109453,0.0)"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_yZBdUX1PEeiOvJbQeRuWmA" id="(0.4975124378109453,1.0)"/>
- </edges>
- </notation:Diagram>
- <notation:Diagram xmi:id="_OEdDAG4wEeiQkc1FO4uxgA" type="PapyrusUMLStateMachineDiagram" name="NewStateMachineDiagram" measurementUnit="Pixel">
- <children xmi:type="notation:Shape" xmi:id="_OEdDAW4wEeiQkc1FO4uxgA" type="StateMachine_Shape">
- <children xmi:type="notation:DecorationNode" xmi:id="_OEdDAm4wEeiQkc1FO4uxgA" type="StateMachine_NameLabel">
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OEdDA24wEeiQkc1FO4uxgA" width="881" height="20"/>
- </children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_OEdDBG4wEeiQkc1FO4uxgA" type="StateMachine_RegionCompartment">
- <children xmi:type="notation:Shape" xmi:id="_OEdDBW4wEeiQkc1FO4uxgA" type="Region_Shape">
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_OEdDBm4wEeiQkc1FO4uxgA" source="RegionAnnotationKey">
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_OEdDB24wEeiQkc1FO4uxgA" key="RegionZoneKey" value=""/>
- </eAnnotations>
- <children xmi:type="notation:BasicCompartment" xmi:id="_OEdDCG4wEeiQkc1FO4uxgA" type="Region_SubvertexCompartment">
- <children xmi:type="notation:Shape" xmi:id="_TWZdwG4wEeiQkc1FO4uxgA" type="Pseudostate_InitialShape">
- <children xmi:type="notation:DecorationNode" xmi:id="_TWZdwm4wEeiQkc1FO4uxgA" type="Pseudostate_InitialFloatingNameLabel">
- <layoutConstraint xmi:type="notation:Location" xmi:id="_TWaE0G4wEeiQkc1FO4uxgA" x="25" y="3"/>
- </children>
- <children xmi:type="notation:DecorationNode" xmi:id="_TWaE0W4wEeiQkc1FO4uxgA" type="Pseudostate_InitialStereotypeLabel">
- <layoutConstraint xmi:type="notation:Location" xmi:id="_TWaE0m4wEeiQkc1FO4uxgA" x="25" y="-10"/>
- </children>
- <element xmi:type="uml:Pseudostate" href="BathtubSM.uml#_TWN3kG4wEeiQkc1FO4uxgA"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_TWZdwW4wEeiQkc1FO4uxgA" x="19" y="30"/>
- </children>
- <children xmi:type="notation:Shape" xmi:id="_T2UT8G4wEeiQkc1FO4uxgA" type="State_Shape">
- <children xmi:type="notation:DecorationNode" xmi:id="_T2UT8m4wEeiQkc1FO4uxgA" type="State_NameLabel">
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_km8I8H0MEeiDS63tULewcA" width="221"/>
- </children>
- <children xmi:type="notation:DecorationNode" xmi:id="_T2UT824wEeiQkc1FO4uxgA" type="State_FloatingNameLabel">
- <layoutConstraint xmi:type="notation:Location" xmi:id="_T2U7AG4wEeiQkc1FO4uxgA" x="40"/>
- </children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_T2ViEG4wEeiQkc1FO4uxgA" type="State_RegionCompartment">
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_T2ViEW4wEeiQkc1FO4uxgA" y="-1" width="221"/>
- </children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_jhkUE6xmEeiPApgkayeLVg" type="compartment_shape_display">
- <styles xmi:type="notation:TitleStyle" xmi:id="_jhkUFKxmEeiPApgkayeLVg"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_jhkUFaxmEeiPApgkayeLVg"/>
- </children>
- <children xmi:type="notation:Shape" xmi:id="_rAFeoKxnEeiPApgkayeLVg" type="Behavior_EntryBehaviorLabel">
- <element xmi:type="uml:OpaqueBehavior" href="BathtubSM.uml#_q_fBsKxnEeiPApgkayeLVg"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_rAFeoaxnEeiPApgkayeLVg" x="-10" y="-10"/>
- </children>
- <children xmi:type="notation:Shape" xmi:id="_N5zPgKxoEeiPApgkayeLVg" type="Behavior_ExitBehaviorLabel">
- <element xmi:type="uml:OpaqueBehavior" href="BathtubSM.uml#_N5gUkKxoEeiPApgkayeLVg"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_N5zPgaxoEeiPApgkayeLVg" x="-10" y="-10"/>
- </children>
- <children xmi:type="notation:Shape" xmi:id="_bVQvEKxoEeiPApgkayeLVg" type="Behavior_DoActivityBehaviorLabel">
- <element xmi:type="uml:OpaqueBehavior" href="BathtubSM.uml#_bVG-EKxoEeiPApgkayeLVg"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_bVQvEaxoEeiPApgkayeLVg" x="-10" y="-10"/>
- </children>
- <element xmi:type="uml:State" href="BathtubSM.uml#_T2FqcG4wEeiQkc1FO4uxgA"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_T2UT8W4wEeiQkc1FO4uxgA" x="59" y="110" width="221" height="81"/>
- </children>
- <children xmi:type="notation:Shape" xmi:id="_UPQ_cG4wEeiQkc1FO4uxgA" type="State_Shape">
- <children xmi:type="notation:DecorationNode" xmi:id="_UPQ_cm4wEeiQkc1FO4uxgA" type="State_NameLabel">
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_lDY0YH0MEeiDS63tULewcA" width="221"/>
- </children>
- <children xmi:type="notation:DecorationNode" xmi:id="_UPQ_c24wEeiQkc1FO4uxgA" type="State_FloatingNameLabel">
- <layoutConstraint xmi:type="notation:Location" xmi:id="_UPQ_dG4wEeiQkc1FO4uxgA" x="40"/>
- </children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_UPQ_dW4wEeiQkc1FO4uxgA" type="State_RegionCompartment">
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_UPQ_dm4wEeiQkc1FO4uxgA" y="-1" width="221"/>
- </children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_jhuFEKxmEeiPApgkayeLVg" type="compartment_shape_display">
- <styles xmi:type="notation:TitleStyle" xmi:id="_jhuFEaxmEeiPApgkayeLVg"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_jhuFEqxmEeiPApgkayeLVg"/>
- </children>
- <children xmi:type="notation:Shape" xmi:id="_WED7MKxoEeiPApgkayeLVg" type="Behavior_DoActivityBehaviorLabel">
- <element xmi:type="uml:OpaqueBehavior" href="BathtubSM.uml#_WD6KMKxoEeiPApgkayeLVg"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_WED7MaxoEeiPApgkayeLVg" x="-10" y="-10"/>
- </children>
- <children xmi:type="notation:Shape" xmi:id="_jD7q8axoEeiPApgkayeLVg" type="Behavior_EntryBehaviorLabel">
- <element xmi:type="uml:OpaqueBehavior" href="BathtubSM.uml#_jD7q8KxoEeiPApgkayeLVg"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_jD7q8qxoEeiPApgkayeLVg" x="-10" y="-10"/>
- </children>
- <children xmi:type="notation:Shape" xmi:id="_oWUKkKxoEeiPApgkayeLVg" type="Behavior_ExitBehaviorLabel">
- <element xmi:type="uml:OpaqueBehavior" href="BathtubSM.uml#_oWLAoKxoEeiPApgkayeLVg"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_oWUKkaxoEeiPApgkayeLVg" x="-10" y="-10"/>
- </children>
- <element xmi:type="uml:State" href="BathtubSM.uml#_UPBu4G4wEeiQkc1FO4uxgA"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_UPQ_cW4wEeiQkc1FO4uxgA" x="519" y="110" width="221" height="81"/>
- </children>
- <children xmi:type="notation:Shape" xmi:id="_ZPNrQG4wEeiQkc1FO4uxgA" type="FinalState_Shape">
- <children xmi:type="notation:DecorationNode" xmi:id="_ZPNrQm4wEeiQkc1FO4uxgA" type="FinalState_FloatingNameLabel">
- <layoutConstraint xmi:type="notation:Location" xmi:id="_ZPNrQ24wEeiQkc1FO4uxgA" x="25" y="3"/>
- </children>
- <children xmi:type="notation:DecorationNode" xmi:id="_ZPOSUG4wEeiQkc1FO4uxgA" type="FinalState_StereotypeLabel">
- <layoutConstraint xmi:type="notation:Location" xmi:id="_ZPOSUW4wEeiQkc1FO4uxgA" x="25" y="-10"/>
- </children>
- <element xmi:type="uml:FinalState" href="BathtubSM.uml#_ZO0CoG4wEeiQkc1FO4uxgA"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ZPNrQW4wEeiQkc1FO4uxgA" x="779" y="190"/>
- </children>
- <children xmi:type="notation:Shape" xmi:id="_v4a8AKxmEeiPApgkayeLVg" type="State_Shape">
- <children xmi:type="notation:DecorationNode" xmi:id="_v4ktAKxmEeiPApgkayeLVg" type="State_NameLabel">
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_wSoLwKxmEeiPApgkayeLVg" width="221"/>
- </children>
- <children xmi:type="notation:DecorationNode" xmi:id="_v4ktAaxmEeiPApgkayeLVg" type="State_FloatingNameLabel">
- <layoutConstraint xmi:type="notation:Location" xmi:id="_v4ktAqxmEeiPApgkayeLVg" x="40"/>
- </children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_v4ktA6xmEeiPApgkayeLVg" type="State_RegionCompartment">
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_v4ktBKxmEeiPApgkayeLVg" y="-1" width="221"/>
- </children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_v4t28KxmEeiPApgkayeLVg" type="compartment_shape_display">
- <styles xmi:type="notation:TitleStyle" xmi:id="_v4t28axmEeiPApgkayeLVg"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_v4t28qxmEeiPApgkayeLVg"/>
- </children>
- <children xmi:type="notation:Shape" xmi:id="__HLTQaxoEeiPApgkayeLVg" type="Behavior_DoActivityBehaviorLabel">
- <element xmi:type="uml:OpaqueBehavior" href="BathtubSM.uml#__HLTQKxoEeiPApgkayeLVg"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="__HLTQqxoEeiPApgkayeLVg" x="-10" y="-10"/>
- </children>
- <children xmi:type="notation:Shape" xmi:id="_Er6uMKxpEeiPApgkayeLVg" type="Behavior_EntryBehaviorLabel">
- <element xmi:type="uml:OpaqueBehavior" href="BathtubSM.uml#_Erw9MKxpEeiPApgkayeLVg"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_Er6uMaxpEeiPApgkayeLVg" x="-10" y="-10"/>
- </children>
- <children xmi:type="notation:Shape" xmi:id="_FaUFQKxpEeiPApgkayeLVg" type="Behavior_ExitBehaviorLabel">
- <element xmi:type="uml:OpaqueBehavior" href="BathtubSM.uml#_FaK7UKxpEeiPApgkayeLVg"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_FaUFQaxpEeiPApgkayeLVg" x="-10" y="-10"/>
- </children>
- <element xmi:type="uml:State" href="BathtubSM.uml#_v31GIKxmEeiPApgkayeLVg"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_v4a8AaxmEeiPApgkayeLVg" x="319" y="270" width="221" height="81"/>
- </children>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OEdDCW4wEeiQkc1FO4uxgA"/>
- </children>
- <element xmi:type="uml:Region" href="BathtubSM.uml#_OEbN0G4wEeiQkc1FO4uxgA"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OEdDCm4wEeiQkc1FO4uxgA" width="881" height="391"/>
- </children>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OEdDC24wEeiQkc1FO4uxgA" y="20" width="881" height="391"/>
- </children>
- <element xmi:type="uml:StateMachine" href="BathtubSM.uml#_MYi60G4wEeiQkc1FO4uxgA"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OEdDDG4wEeiQkc1FO4uxgA" x="20" y="30" width="881" height="411"/>
- </children>
- <styles xmi:type="notation:StringValueStyle" xmi:id="_OEdDDW4wEeiQkc1FO4uxgA" name="diagram_compatibility_version" stringValue="1.4.0"/>
- <styles xmi:type="notation:DiagramStyle" xmi:id="_OEdDDm4wEeiQkc1FO4uxgA"/>
- <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_OEdDD24wEeiQkc1FO4uxgA" diagramKindId="org.eclipse.papyrus.uml.diagram.stateMachine">
- <owner xmi:type="uml:StateMachine" href="BathtubSM.uml#_MYi60G4wEeiQkc1FO4uxgA"/>
- </styles>
- <element xmi:type="uml:StateMachine" href="BathtubSM.uml#_MYi60G4wEeiQkc1FO4uxgA"/>
- <edges xmi:type="notation:Connector" xmi:id="_aeuyYG4wEeiQkc1FO4uxgA" type="Transition_Edge" source="_TWZdwG4wEeiQkc1FO4uxgA" target="_T2UT8G4wEeiQkc1FO4uxgA">
- <children xmi:type="notation:DecorationNode" xmi:id="_aevZcG4wEeiQkc1FO4uxgA" type="Transition_NameLabel">
- <styles xmi:type="notation:BooleanValueStyle" xmi:id="_R4g9UH1AEeiUl9OrBp2G3w" name="IS_UPDATED_POSITION" booleanValue="true"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_aevZcW4wEeiQkc1FO4uxgA"/>
- </children>
- <children xmi:type="notation:DecorationNode" xmi:id="_aevZcm4wEeiQkc1FO4uxgA" type="Transition_GuardLabel">
- <styles xmi:type="notation:BooleanValueStyle" xmi:id="_R5RyUH1AEeiUl9OrBp2G3w" name="IS_UPDATED_POSITION" booleanValue="true"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_aevZc24wEeiQkc1FO4uxgA"/>
- </children>
- <children xmi:type="notation:DecorationNode" xmi:id="_aevZdG4wEeiQkc1FO4uxgA" type="Transition_StereotypeLabel">
- <styles xmi:type="notation:BooleanValueStyle" xmi:id="_R5ueQH1AEeiUl9OrBp2G3w" name="IS_UPDATED_POSITION" booleanValue="true"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_aevZdW4wEeiQkc1FO4uxgA" x="1" y="58"/>
- </children>
- <styles xmi:type="notation:FontStyle" xmi:id="_aeuyYW4wEeiQkc1FO4uxgA"/>
- <element xmi:type="uml:Transition" href="BathtubSM.uml#_aa7QcG4wEeiQkc1FO4uxgA"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_aeuyYm4wEeiQkc1FO4uxgA" points="[109, 80, -643984, -643984]$[240, 160, -643984, -643984]"/>
- <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_aga0cG4wEeiQkc1FO4uxgA" id="(0.45,0.0)"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_agbbgG4wEeiQkc1FO4uxgA" id="(0.0,0.45454545454545453)"/>
- </edges>
- <edges xmi:type="notation:Connector" xmi:id="_a5IPYG4wEeiQkc1FO4uxgA" type="Transition_Edge" source="_T2UT8G4wEeiQkc1FO4uxgA" target="_UPQ_cG4wEeiQkc1FO4uxgA">
- <children xmi:type="notation:DecorationNode" xmi:id="_a5IPY24wEeiQkc1FO4uxgA" type="Transition_NameLabel">
- <styles xmi:type="notation:BooleanValueStyle" xmi:id="_tBv0YKxnEeiPApgkayeLVg" name="IS_UPDATED_POSITION" booleanValue="true"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_a5IPZG4wEeiQkc1FO4uxgA" x="9" y="12"/>
- </children>
- <children xmi:type="notation:DecorationNode" xmi:id="_a5IPZW4wEeiQkc1FO4uxgA" type="Transition_GuardLabel">
- <styles xmi:type="notation:BooleanValueStyle" xmi:id="_tCMgUKxnEeiPApgkayeLVg" name="IS_UPDATED_POSITION" booleanValue="true"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_a5I2cG4wEeiQkc1FO4uxgA" x="-7" y="27"/>
- </children>
- <children xmi:type="notation:DecorationNode" xmi:id="_a5I2cW4wEeiQkc1FO4uxgA" type="Transition_StereotypeLabel">
- <styles xmi:type="notation:BooleanValueStyle" xmi:id="_tCpMQKxnEeiPApgkayeLVg" name="IS_UPDATED_POSITION" booleanValue="true"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_a5I2cm4wEeiQkc1FO4uxgA" y="59"/>
- </children>
- <styles xmi:type="notation:FontStyle" xmi:id="_a5IPYW4wEeiQkc1FO4uxgA"/>
- <element xmi:type="uml:Transition" href="BathtubSM.uml#_a4vN0G4wEeiQkc1FO4uxgA"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_a5IPYm4wEeiQkc1FO4uxgA" points="[280, 174, -643984, -643984]$[400, 174, -643984, -643984]"/>
- <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_a50y8G4wEeiQkc1FO4uxgA" id="(1.0,0.759493670886076)"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_a50y8W4wEeiQkc1FO4uxgA" id="(0.0,0.7407407407407407)"/>
- </edges>
- <edges xmi:type="notation:Connector" xmi:id="_bezIQG4wEeiQkc1FO4uxgA" type="Transition_Edge" source="_UPQ_cG4wEeiQkc1FO4uxgA" target="_ZPNrQG4wEeiQkc1FO4uxgA">
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_V8RGoH1AEeiUl9OrBp2G3w" source="PapyrusCSSForceValue">
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_V8RGoX1AEeiUl9OrBp2G3w" key="routing" value="true"/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_vF6roH1AEeiUl9OrBp2G3w" key="closestDistance" value="true"/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_vP2qwH1AEeiUl9OrBp2G3w" key="avoidObstructions" value="true"/>
- </eAnnotations>
- <children xmi:type="notation:DecorationNode" xmi:id="_bezIQ24wEeiQkc1FO4uxgA" type="Transition_NameLabel">
- <styles xmi:type="notation:BooleanValueStyle" xmi:id="_lbr_oH0MEeiDS63tULewcA" name="IS_UPDATED_POSITION" booleanValue="true"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_bezIRG4wEeiQkc1FO4uxgA"/>
- </children>
- <children xmi:type="notation:DecorationNode" xmi:id="_bezvUG4wEeiQkc1FO4uxgA" type="Transition_GuardLabel">
- <styles xmi:type="notation:BooleanValueStyle" xmi:id="_lb-6kH0MEeiDS63tULewcA" name="IS_UPDATED_POSITION" booleanValue="true"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_bezvUW4wEeiQkc1FO4uxgA"/>
- </children>
- <children xmi:type="notation:DecorationNode" xmi:id="_bezvUm4wEeiQkc1FO4uxgA" type="Transition_StereotypeLabel">
- <styles xmi:type="notation:BooleanValueStyle" xmi:id="_lcSckH0MEeiDS63tULewcA" name="IS_UPDATED_POSITION" booleanValue="true"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_bezvU24wEeiQkc1FO4uxgA" y="59"/>
- </children>
- <styles xmi:type="notation:FontStyle" xmi:id="_bezIQW4wEeiQkc1FO4uxgA"/>
- <element xmi:type="uml:Transition" href="BathtubSM.uml#_bebU0G4wEeiQkc1FO4uxgA"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_bezIQm4wEeiQkc1FO4uxgA" points="[761, 200, -643984, -643984]$[802, 200, -643984, -643984]$[802, 246, -643984, -643984]"/>
- <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_bf4GUG4wEeiQkc1FO4uxgA" id="(1.0,0.49382716049382713)"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_bf4GUW4wEeiQkc1FO4uxgA" id="(0.1,0.3)"/>
- </edges>
- <edges xmi:type="notation:Connector" xmi:id="_mrQKEH0MEeiDS63tULewcA" type="Transition_Edge" source="_UPQ_cG4wEeiQkc1FO4uxgA" target="_T2UT8G4wEeiQkc1FO4uxgA">
- <children xmi:type="notation:DecorationNode" xmi:id="_mrQKE30MEeiDS63tULewcA" type="Transition_NameLabel">
- <styles xmi:type="notation:BooleanValueStyle" xmi:id="_nXOfQH0MEeiDS63tULewcA" name="IS_UPDATED_POSITION" booleanValue="true"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_mrQKFH0MEeiDS63tULewcA" x="-9" y="13"/>
- </children>
- <children xmi:type="notation:DecorationNode" xmi:id="_mrQKFX0MEeiDS63tULewcA" type="Transition_GuardLabel">
- <styles xmi:type="notation:BooleanValueStyle" xmi:id="_nXqkIH0MEeiDS63tULewcA" name="IS_UPDATED_POSITION" booleanValue="true"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_mrQKFn0MEeiDS63tULewcA" x="93" y="33"/>
- </children>
- <children xmi:type="notation:DecorationNode" xmi:id="_mrQKF30MEeiDS63tULewcA" type="Transition_StereotypeLabel">
- <styles xmi:type="notation:BooleanValueStyle" xmi:id="_nYRBEH0MEeiDS63tULewcA" name="IS_UPDATED_POSITION" booleanValue="true"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_mrQKGH0MEeiDS63tULewcA" y="60"/>
- </children>
- <styles xmi:type="notation:FontStyle" xmi:id="_mrQKEX0MEeiDS63tULewcA"/>
- <element xmi:type="uml:Transition" href="BathtubSM.uml#_mnr4sH0MEeiDS63tULewcA"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_mrQKEn0MEeiDS63tULewcA" points="[410, 140, -643984, -643984]$[260, 140, -643984, -643984]"/>
- <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_mscc4H0MEeiDS63tULewcA" id="(0.0,0.24691358024691357)"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_mscc4X0MEeiDS63tULewcA" id="(1.0,0.25316455696202533)"/>
- </edges>
- <edges xmi:type="notation:Connector" xmi:id="_Ez0gIH0NEeiDS63tULewcA" type="Transition_Edge" source="_UPQ_cG4wEeiQkc1FO4uxgA" target="_UPQ_cG4wEeiQkc1FO4uxgA" routing="Tree">
- <children xmi:type="notation:DecorationNode" xmi:id="_Ez0gI30NEeiDS63tULewcA" type="Transition_NameLabel">
- <styles xmi:type="notation:BooleanValueStyle" xmi:id="_GbkhEH0NEeiDS63tULewcA" name="IS_UPDATED_POSITION" booleanValue="true"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_Ez0gJH0NEeiDS63tULewcA" x="-49" y="13"/>
- </children>
- <children xmi:type="notation:DecorationNode" xmi:id="_Ez0gJX0NEeiDS63tULewcA" type="Transition_GuardLabel">
- <styles xmi:type="notation:BooleanValueStyle" xmi:id="_GbuSEH0NEeiDS63tULewcA" name="IS_UPDATED_POSITION" booleanValue="true"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_Ez0gJn0NEeiDS63tULewcA" x="152" y="-7"/>
- </children>
- <children xmi:type="notation:DecorationNode" xmi:id="_Ez0gJ30NEeiDS63tULewcA" type="Transition_StereotypeLabel">
- <styles xmi:type="notation:BooleanValueStyle" xmi:id="_GcBNAH0NEeiDS63tULewcA" name="IS_UPDATED_POSITION" booleanValue="true"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_Ez0gKH0NEeiDS63tULewcA" y="60"/>
- </children>
- <styles xmi:type="notation:FontStyle" xmi:id="_Ez0gIX0NEeiDS63tULewcA"/>
- <element xmi:type="uml:Transition" href="BathtubSM.uml#_EzhlMH0NEeiDS63tULewcA"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Ez0gIn0NEeiDS63tULewcA" points="[620, 241, -643984, -643984]$[620, 280, -643984, -643984]$[560, 280, -643984, -643984]$[560, 241, -643984, -643984]"/>
- <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_E0kHAH0NEeiDS63tULewcA" id="(0.418848167539267,1.0)"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_E0kHAX0NEeiDS63tULewcA" id="(0.10471204188481675,1.0)"/>
- </edges>
- <edges xmi:type="notation:Connector" xmi:id="_rrJxkH0XEeiDS63tULewcA" type="Transition_Edge" source="_UPQ_cG4wEeiQkc1FO4uxgA" target="_UPQ_cG4wEeiQkc1FO4uxgA" routing="Rectilinear">
- <children xmi:type="notation:DecorationNode" xmi:id="_rrJxk30XEeiDS63tULewcA" type="Transition_NameLabel">
- <styles xmi:type="notation:BooleanValueStyle" xmi:id="_sUC9kH0XEeiDS63tULewcA" name="IS_UPDATED_POSITION" booleanValue="true"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_rrJxlH0XEeiDS63tULewcA" x="-7" y="-33"/>
- </children>
- <children xmi:type="notation:DecorationNode" xmi:id="_rrJxlX0XEeiDS63tULewcA" type="Transition_GuardLabel">
- <styles xmi:type="notation:BooleanValueStyle" xmi:id="_sUMukH0XEeiDS63tULewcA" name="IS_UPDATED_POSITION" booleanValue="true"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_rrJxln0XEeiDS63tULewcA" x="4" y="-13"/>
- </children>
- <children xmi:type="notation:DecorationNode" xmi:id="_rrJxl30XEeiDS63tULewcA" type="Transition_StereotypeLabel">
- <styles xmi:type="notation:BooleanValueStyle" xmi:id="_sUfpgH0XEeiDS63tULewcA" name="IS_UPDATED_POSITION" booleanValue="true"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_rrJxmH0XEeiDS63tULewcA" x="-1" y="57"/>
- </children>
- <styles xmi:type="notation:FontStyle" xmi:id="_rrJxkX0XEeiDS63tULewcA"/>
- <element xmi:type="uml:Transition" href="BathtubSM.uml#_rq22oH0XEeiDS63tULewcA"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_rrJxkn0XEeiDS63tULewcA" points="[570, 160, -643984, -643984]$[570, 120, -643984, -643984]$[610, 120, -643984, -643984]$[610, 160, -643984, -643984]"/>
- <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_rrwOgH0XEeiDS63tULewcA" id="(0.19801980198019803,0.0)"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_rrwOgX0XEeiDS63tULewcA" id="(0.594059405940594,0.0)"/>
- </edges>
- <edges xmi:type="notation:Connector" xmi:id="_zxp3YKxmEeiPApgkayeLVg" type="Transition_Edge" source="_UPQ_cG4wEeiQkc1FO4uxgA" target="_v4a8AKxmEeiPApgkayeLVg">
- <children xmi:type="notation:DecorationNode" xmi:id="_zxp3Y6xmEeiPApgkayeLVg" type="Transition_NameLabel">
- <styles xmi:type="notation:BooleanValueStyle" xmi:id="_2KN0wKxnEeiPApgkayeLVg" name="IS_UPDATED_POSITION" booleanValue="true"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_zxp3ZKxmEeiPApgkayeLVg"/>
- </children>
- <children xmi:type="notation:DecorationNode" xmi:id="_zxp3ZaxmEeiPApgkayeLVg" type="Transition_GuardLabel">
- <styles xmi:type="notation:BooleanValueStyle" xmi:id="_2KqgsKxnEeiPApgkayeLVg" name="IS_UPDATED_POSITION" booleanValue="true"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_zxp3ZqxmEeiPApgkayeLVg" x="-13" y="-53"/>
- </children>
- <children xmi:type="notation:DecorationNode" xmi:id="_zxp3Z6xmEeiPApgkayeLVg" type="Transition_StereotypeLabel">
- <styles xmi:type="notation:BooleanValueStyle" xmi:id="_2K9boKxnEeiPApgkayeLVg" name="IS_UPDATED_POSITION" booleanValue="true"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_zxp3aKxmEeiPApgkayeLVg" x="-1" y="58"/>
- </children>
- <styles xmi:type="notation:FontStyle" xmi:id="_zxp3YaxmEeiPApgkayeLVg"/>
- <element xmi:type="uml:Transition" href="BathtubSM.uml#_zxEBgKxmEeiPApgkayeLVg"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_zxp3YqxmEeiPApgkayeLVg" points="[660, 241, -643984, -643984]$[660, 380, -643984, -643984]$[561, 380, -643984, -643984]"/>
- <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_zzBwYKxmEeiPApgkayeLVg" id="(0.5429864253393665,1.0)"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_zzBwYaxmEeiPApgkayeLVg" id="(1.0,0.7407407407407407)"/>
- </edges>
- </notation:Diagram>
-</xmi:XMI>
+<?xml version="1.0" encoding="UTF-8"?>
+<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.2/notation" xmlns:style="http://www.eclipse.org/papyrus/infra/gmfdiag/style" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML">
+ <notation:Diagram xmi:id="_lX0y8G4cEeiQkc1FO4uxgA" type="PapyrusUMLClassDiagram" name="NewClassDiagram" measurementUnit="Pixel">
+ <children xmi:type="notation:Shape" xmi:id="_8752wH0OEeiDS63tULewcA" type="Package_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8752wn0OEeiDS63tULewcA" type="Package_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_8752w30OEeiDS63tULewcA" type="Package_PackagedElementCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_mdmIMG4cEeiQkc1FO4uxgA" type="Class_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_md5DIG4cEeiQkc1FO4uxgA" type="Class_NameLabel"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_md5DIW4cEeiQkc1FO4uxgA" type="Class_FloatingNameLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_md5DIm4cEeiQkc1FO4uxgA" y="15"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_meC0IG4cEeiQkc1FO4uxgA" type="Class_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_o3xEkG4cEeiQkc1FO4uxgA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="BathtubSM.uml#_o3n6oG4cEeiQkc1FO4uxgA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_o3xEkW4cEeiQkc1FO4uxgA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_pYFjYG4cEeiQkc1FO4uxgA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="BathtubSM.uml#_pXpegG4cEeiQkc1FO4uxgA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_pYFjYW4cEeiQkc1FO4uxgA"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_meC0IW4cEeiQkc1FO4uxgA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_meC0Im4cEeiQkc1FO4uxgA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_meC0I24cEeiQkc1FO4uxgA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_meC0JG4cEeiQkc1FO4uxgA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_meC0JW4cEeiQkc1FO4uxgA" type="Class_OperationCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_ua5V8G4cEeiQkc1FO4uxgA" type="Operation_ClassOperationLabel">
+ <element xmi:type="uml:Operation" href="BathtubSM.uml#_uaa00G4cEeiQkc1FO4uxgA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_ua5V8W4cEeiQkc1FO4uxgA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_vhDswG4cEeiQkc1FO4uxgA" type="Operation_ClassOperationLabel">
+ <element xmi:type="uml:Operation" href="BathtubSM.uml#_vg57wG4cEeiQkc1FO4uxgA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_vhDswW4cEeiQkc1FO4uxgA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_CteGwH1REeiOvJbQeRuWmA" type="Operation_ClassOperationLabel">
+ <element xmi:type="uml:Operation" href="BathtubSM.uml#_CtKkwH1REeiOvJbQeRuWmA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_CteGwX1REeiOvJbQeRuWmA"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_meC0Jm4cEeiQkc1FO4uxgA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_meC0J24cEeiQkc1FO4uxgA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_meC0KG4cEeiQkc1FO4uxgA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_meC0KW4cEeiQkc1FO4uxgA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_meC0Km4cEeiQkc1FO4uxgA" type="Class_NestedClassifierCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_meC0K24cEeiQkc1FO4uxgA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_meC0LG4cEeiQkc1FO4uxgA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_meC0LW4cEeiQkc1FO4uxgA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_meC0Lm4cEeiQkc1FO4uxgA"/>
+ </children>
+ <element xmi:type="uml:Class" href="BathtubSM.uml#_mdTNQG4cEeiQkc1FO4uxgA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_mdmIMW4cEeiQkc1FO4uxgA" x="134" y="16" width="201"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_iY3zcH1PEeiOvJbQeRuWmA" type="Class_Shape_CN">
+ <children xmi:type="notation:DecorationNode" xmi:id="_iY3zcn1PEeiOvJbQeRuWmA" type="Class_NameLabel_CN"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_iY3zc31PEeiOvJbQeRuWmA" type="Class_FloatingNameLabel_CN">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_iY3zdH1PEeiOvJbQeRuWmA" y="15"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_iY3zdX1PEeiOvJbQeRuWmA" type="Class_AttributeCompartment_CN">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_iY3zdn1PEeiOvJbQeRuWmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_iY3zd31PEeiOvJbQeRuWmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_iY3zeH1PEeiOvJbQeRuWmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_iY3zeX1PEeiOvJbQeRuWmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_iY3zen1PEeiOvJbQeRuWmA" type="Class_OperationCompartment_CN">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_iY3ze31PEeiOvJbQeRuWmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_iY3zfH1PEeiOvJbQeRuWmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_iY3zfX1PEeiOvJbQeRuWmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_iY3zfn1PEeiOvJbQeRuWmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_iY3zf31PEeiOvJbQeRuWmA" type="Class_NestedClassifierCompartment_CN">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_iY3zgH1PEeiOvJbQeRuWmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_iY3zgX1PEeiOvJbQeRuWmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_iY3zgn1PEeiOvJbQeRuWmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_iY3zg31PEeiOvJbQeRuWmA"/>
+ </children>
+ <element xmi:type="uml:Class" href="BathtubSM.uml#_iYk4gH1PEeiOvJbQeRuWmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_iY3zcX1PEeiOvJbQeRuWmA" x="134" y="256" width="201" height="100"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_udgC_X1PEeiOvJbQeRuWmA" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_udgC_n1PEeiOvJbQeRuWmA"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_udpM4H1PEeiOvJbQeRuWmA" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="BathtubSM.uml#_iYk4gH1PEeiOvJbQeRuWmA"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_udgC_31PEeiOvJbQeRuWmA" x="334" y="256"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_8752xH0OEeiDS63tULewcA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8752xX0OEeiDS63tULewcA"/>
+ </children>
+ <element xmi:type="uml:Package" href="BathtubSM.uml#_87wFwH0OEeiDS63tULewcA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8752wX0OEeiDS63tULewcA" x="40" y="40" width="681" height="421"/>
+ </children>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_lX0y8W4cEeiQkc1FO4uxgA" name="diagram_compatibility_version" stringValue="1.4.0"/>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_lX0y8m4cEeiQkc1FO4uxgA"/>
+ <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_lX0y824cEeiQkc1FO4uxgA" diagramKindId="org.eclipse.papyrus.uml.diagram.class">
+ <owner xmi:type="uml:Model" href="BathtubSM.uml#_dRQ7gG4cEeiQkc1FO4uxgA"/>
+ </styles>
+ <element xmi:type="uml:Model" href="BathtubSM.uml#_dRQ7gG4cEeiQkc1FO4uxgA"/>
+ <edges xmi:type="notation:Connector" xmi:id="_udpM4X1PEeiOvJbQeRuWmA" type="StereotypeCommentLink" source="_iY3zcH1PEeiOvJbQeRuWmA" target="_udgC_X1PEeiOvJbQeRuWmA">
+ <styles xmi:type="notation:FontStyle" xmi:id="_udpM4n1PEeiOvJbQeRuWmA"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_udpM5n1PEeiOvJbQeRuWmA" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="BathtubSM.uml#_iYk4gH1PEeiOvJbQeRuWmA"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_udpM431PEeiOvJbQeRuWmA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_udpM5H1PEeiOvJbQeRuWmA"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_udpM5X1PEeiOvJbQeRuWmA"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_yYbncH1PEeiOvJbQeRuWmA" type="Dependency_Edge" source="_iY3zcH1PEeiOvJbQeRuWmA" target="_mdmIMG4cEeiQkc1FO4uxgA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_yYbnc31PEeiOvJbQeRuWmA" type="Dependency_NameLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_yYbndH1PEeiOvJbQeRuWmA" y="40"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_yYbndX1PEeiOvJbQeRuWmA" type="Dependency_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_yYbndn1PEeiOvJbQeRuWmA" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_yYbncX1PEeiOvJbQeRuWmA"/>
+ <element xmi:type="uml:Dependency" href="BathtubSM.uml#_yYOMEH1PEeiOvJbQeRuWmA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_yYbncn1PEeiOvJbQeRuWmA" points="[280, 324, -643984, -643984]$[280, 219, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_yZBdUH1PEeiOvJbQeRuWmA" id="(0.4975124378109453,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_yZBdUX1PEeiOvJbQeRuWmA" id="(0.4975124378109453,1.0)"/>
+ </edges>
+ </notation:Diagram>
+ <notation:Diagram xmi:id="_OEdDAG4wEeiQkc1FO4uxgA" type="PapyrusUMLStateMachineDiagram" name="NewStateMachineDiagram" measurementUnit="Pixel">
+ <children xmi:type="notation:Shape" xmi:id="_OEdDAW4wEeiQkc1FO4uxgA" type="StateMachine_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_OEdDAm4wEeiQkc1FO4uxgA" type="StateMachine_NameLabel">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OEdDA24wEeiQkc1FO4uxgA" width="881" height="20"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_OEdDBG4wEeiQkc1FO4uxgA" type="StateMachine_RegionCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_OEdDBW4wEeiQkc1FO4uxgA" type="Region_Shape">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_OEdDBm4wEeiQkc1FO4uxgA" source="RegionAnnotationKey">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_OEdDB24wEeiQkc1FO4uxgA" key="RegionZoneKey" value=""/>
+ </eAnnotations>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_OEdDCG4wEeiQkc1FO4uxgA" type="Region_SubvertexCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_TWZdwG4wEeiQkc1FO4uxgA" type="Pseudostate_InitialShape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_TWZdwm4wEeiQkc1FO4uxgA" type="Pseudostate_InitialFloatingNameLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_TWaE0G4wEeiQkc1FO4uxgA" x="25" y="3"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_TWaE0W4wEeiQkc1FO4uxgA" type="Pseudostate_InitialStereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_TWaE0m4wEeiQkc1FO4uxgA" x="25" y="-10"/>
+ </children>
+ <element xmi:type="uml:Pseudostate" href="BathtubSM.uml#_TWN3kG4wEeiQkc1FO4uxgA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_TWZdwW4wEeiQkc1FO4uxgA" x="19" y="30"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_T2UT8G4wEeiQkc1FO4uxgA" type="State_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_T2UT8m4wEeiQkc1FO4uxgA" type="State_NameLabel">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_km8I8H0MEeiDS63tULewcA" width="221"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_T2UT824wEeiQkc1FO4uxgA" type="State_FloatingNameLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_T2U7AG4wEeiQkc1FO4uxgA" x="40"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_T2ViEG4wEeiQkc1FO4uxgA" type="State_RegionCompartment">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_T2ViEW4wEeiQkc1FO4uxgA" y="-1" width="221"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_jhkUE6xmEeiPApgkayeLVg" type="compartment_shape_display">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_jhkUFKxmEeiPApgkayeLVg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_jhkUFaxmEeiPApgkayeLVg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_rAFeoKxnEeiPApgkayeLVg" type="Behavior_EntryBehaviorLabel">
+ <element xmi:type="uml:OpaqueBehavior" href="BathtubSM.uml#_q_fBsKxnEeiPApgkayeLVg"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_rAFeoaxnEeiPApgkayeLVg" x="-10" y="-10"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_N5zPgKxoEeiPApgkayeLVg" type="Behavior_ExitBehaviorLabel">
+ <element xmi:type="uml:OpaqueBehavior" href="BathtubSM.uml#_N5gUkKxoEeiPApgkayeLVg"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_N5zPgaxoEeiPApgkayeLVg" x="-10" y="-10"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_bVQvEKxoEeiPApgkayeLVg" type="Behavior_DoActivityBehaviorLabel">
+ <element xmi:type="uml:OpaqueBehavior" href="BathtubSM.uml#_bVG-EKxoEeiPApgkayeLVg"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_bVQvEaxoEeiPApgkayeLVg" x="-10" y="-10"/>
+ </children>
+ <element xmi:type="uml:State" href="BathtubSM.uml#_T2FqcG4wEeiQkc1FO4uxgA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_T2UT8W4wEeiQkc1FO4uxgA" x="59" y="110" width="221" height="81"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_UPQ_cG4wEeiQkc1FO4uxgA" type="State_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_UPQ_cm4wEeiQkc1FO4uxgA" type="State_NameLabel">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_lDY0YH0MEeiDS63tULewcA" width="221"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_UPQ_c24wEeiQkc1FO4uxgA" type="State_FloatingNameLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_UPQ_dG4wEeiQkc1FO4uxgA" x="40"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_UPQ_dW4wEeiQkc1FO4uxgA" type="State_RegionCompartment">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_UPQ_dm4wEeiQkc1FO4uxgA" y="-1" width="221"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_jhuFEKxmEeiPApgkayeLVg" type="compartment_shape_display">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_jhuFEaxmEeiPApgkayeLVg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_jhuFEqxmEeiPApgkayeLVg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_WED7MKxoEeiPApgkayeLVg" type="Behavior_DoActivityBehaviorLabel">
+ <element xmi:type="uml:OpaqueBehavior" href="BathtubSM.uml#_WD6KMKxoEeiPApgkayeLVg"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_WED7MaxoEeiPApgkayeLVg" x="-10" y="-10"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_jD7q8axoEeiPApgkayeLVg" type="Behavior_EntryBehaviorLabel">
+ <element xmi:type="uml:OpaqueBehavior" href="BathtubSM.uml#_jD7q8KxoEeiPApgkayeLVg"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_jD7q8qxoEeiPApgkayeLVg" x="-10" y="-10"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_oWUKkKxoEeiPApgkayeLVg" type="Behavior_ExitBehaviorLabel">
+ <element xmi:type="uml:OpaqueBehavior" href="BathtubSM.uml#_oWLAoKxoEeiPApgkayeLVg"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_oWUKkaxoEeiPApgkayeLVg" x="-10" y="-10"/>
+ </children>
+ <element xmi:type="uml:State" href="BathtubSM.uml#_UPBu4G4wEeiQkc1FO4uxgA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_UPQ_cW4wEeiQkc1FO4uxgA" x="519" y="110" width="221" height="81"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_ZPNrQG4wEeiQkc1FO4uxgA" type="FinalState_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_ZPNrQm4wEeiQkc1FO4uxgA" type="FinalState_FloatingNameLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_ZPNrQ24wEeiQkc1FO4uxgA" x="25" y="3"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_ZPOSUG4wEeiQkc1FO4uxgA" type="FinalState_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_ZPOSUW4wEeiQkc1FO4uxgA" x="25" y="-10"/>
+ </children>
+ <element xmi:type="uml:FinalState" href="BathtubSM.uml#_ZO0CoG4wEeiQkc1FO4uxgA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ZPNrQW4wEeiQkc1FO4uxgA" x="779" y="190"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_v4a8AKxmEeiPApgkayeLVg" type="State_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_v4ktAKxmEeiPApgkayeLVg" type="State_NameLabel">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_wSoLwKxmEeiPApgkayeLVg" width="221"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_v4ktAaxmEeiPApgkayeLVg" type="State_FloatingNameLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_v4ktAqxmEeiPApgkayeLVg" x="40"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_v4ktA6xmEeiPApgkayeLVg" type="State_RegionCompartment">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_v4ktBKxmEeiPApgkayeLVg" y="-1" width="221"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_v4t28KxmEeiPApgkayeLVg" type="compartment_shape_display">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_v4t28axmEeiPApgkayeLVg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_v4t28qxmEeiPApgkayeLVg"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="__HLTQaxoEeiPApgkayeLVg" type="Behavior_DoActivityBehaviorLabel">
+ <element xmi:type="uml:OpaqueBehavior" href="BathtubSM.uml#__HLTQKxoEeiPApgkayeLVg"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="__HLTQqxoEeiPApgkayeLVg" x="-10" y="-10"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_Er6uMKxpEeiPApgkayeLVg" type="Behavior_EntryBehaviorLabel">
+ <element xmi:type="uml:OpaqueBehavior" href="BathtubSM.uml#_Erw9MKxpEeiPApgkayeLVg"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Er6uMaxpEeiPApgkayeLVg" x="-10" y="-10"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_FaUFQKxpEeiPApgkayeLVg" type="Behavior_ExitBehaviorLabel">
+ <element xmi:type="uml:OpaqueBehavior" href="BathtubSM.uml#_FaK7UKxpEeiPApgkayeLVg"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_FaUFQaxpEeiPApgkayeLVg" x="-10" y="-10"/>
+ </children>
+ <element xmi:type="uml:State" href="BathtubSM.uml#_v31GIKxmEeiPApgkayeLVg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_v4a8AaxmEeiPApgkayeLVg" x="319" y="270" width="221" height="81"/>
+ </children>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OEdDCW4wEeiQkc1FO4uxgA"/>
+ </children>
+ <element xmi:type="uml:Region" href="BathtubSM.uml#_OEbN0G4wEeiQkc1FO4uxgA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OEdDCm4wEeiQkc1FO4uxgA" width="881" height="391"/>
+ </children>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OEdDC24wEeiQkc1FO4uxgA" y="20" width="881" height="391"/>
+ </children>
+ <element xmi:type="uml:StateMachine" href="BathtubSM.uml#_MYi60G4wEeiQkc1FO4uxgA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OEdDDG4wEeiQkc1FO4uxgA" x="20" y="30" width="881" height="411"/>
+ </children>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_OEdDDW4wEeiQkc1FO4uxgA" name="diagram_compatibility_version" stringValue="1.4.0"/>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_OEdDDm4wEeiQkc1FO4uxgA"/>
+ <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_OEdDD24wEeiQkc1FO4uxgA" diagramKindId="org.eclipse.papyrus.uml.diagram.stateMachine">
+ <owner xmi:type="uml:StateMachine" href="BathtubSM.uml#_MYi60G4wEeiQkc1FO4uxgA"/>
+ </styles>
+ <element xmi:type="uml:StateMachine" href="BathtubSM.uml#_MYi60G4wEeiQkc1FO4uxgA"/>
+ <edges xmi:type="notation:Connector" xmi:id="_aeuyYG4wEeiQkc1FO4uxgA" type="Transition_Edge" source="_TWZdwG4wEeiQkc1FO4uxgA" target="_T2UT8G4wEeiQkc1FO4uxgA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_aevZcG4wEeiQkc1FO4uxgA" type="Transition_NameLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_R4g9UH1AEeiUl9OrBp2G3w" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_aevZcW4wEeiQkc1FO4uxgA"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_aevZcm4wEeiQkc1FO4uxgA" type="Transition_GuardLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_R5RyUH1AEeiUl9OrBp2G3w" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_aevZc24wEeiQkc1FO4uxgA"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_aevZdG4wEeiQkc1FO4uxgA" type="Transition_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_R5ueQH1AEeiUl9OrBp2G3w" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_aevZdW4wEeiQkc1FO4uxgA" x="1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_aeuyYW4wEeiQkc1FO4uxgA"/>
+ <element xmi:type="uml:Transition" href="BathtubSM.uml#_aa7QcG4wEeiQkc1FO4uxgA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_aeuyYm4wEeiQkc1FO4uxgA" points="[109, 80, -643984, -643984]$[240, 160, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_aga0cG4wEeiQkc1FO4uxgA" id="(0.45,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_agbbgG4wEeiQkc1FO4uxgA" id="(0.0,0.45454545454545453)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_a5IPYG4wEeiQkc1FO4uxgA" type="Transition_Edge" source="_T2UT8G4wEeiQkc1FO4uxgA" target="_UPQ_cG4wEeiQkc1FO4uxgA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_a5IPY24wEeiQkc1FO4uxgA" type="Transition_NameLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_tBv0YKxnEeiPApgkayeLVg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_a5IPZG4wEeiQkc1FO4uxgA" x="9" y="12"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_a5IPZW4wEeiQkc1FO4uxgA" type="Transition_GuardLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_tCMgUKxnEeiPApgkayeLVg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_a5I2cG4wEeiQkc1FO4uxgA" x="-7" y="27"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_a5I2cW4wEeiQkc1FO4uxgA" type="Transition_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_tCpMQKxnEeiPApgkayeLVg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_a5I2cm4wEeiQkc1FO4uxgA" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_a5IPYW4wEeiQkc1FO4uxgA"/>
+ <element xmi:type="uml:Transition" href="BathtubSM.uml#_a4vN0G4wEeiQkc1FO4uxgA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_a5IPYm4wEeiQkc1FO4uxgA" points="[280, 174, -643984, -643984]$[400, 174, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_a50y8G4wEeiQkc1FO4uxgA" id="(1.0,0.759493670886076)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_a50y8W4wEeiQkc1FO4uxgA" id="(0.0,0.7407407407407407)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_bezIQG4wEeiQkc1FO4uxgA" type="Transition_Edge" source="_UPQ_cG4wEeiQkc1FO4uxgA" target="_ZPNrQG4wEeiQkc1FO4uxgA">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_V8RGoH1AEeiUl9OrBp2G3w" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_V8RGoX1AEeiUl9OrBp2G3w" key="routing" value="true"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_vF6roH1AEeiUl9OrBp2G3w" key="closestDistance" value="true"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_vP2qwH1AEeiUl9OrBp2G3w" key="avoidObstructions" value="true"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_bezIQ24wEeiQkc1FO4uxgA" type="Transition_NameLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_lbr_oH0MEeiDS63tULewcA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_bezIRG4wEeiQkc1FO4uxgA"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_bezvUG4wEeiQkc1FO4uxgA" type="Transition_GuardLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_lb-6kH0MEeiDS63tULewcA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_bezvUW4wEeiQkc1FO4uxgA"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_bezvUm4wEeiQkc1FO4uxgA" type="Transition_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_lcSckH0MEeiDS63tULewcA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_bezvU24wEeiQkc1FO4uxgA" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_bezIQW4wEeiQkc1FO4uxgA"/>
+ <element xmi:type="uml:Transition" href="BathtubSM.uml#_bebU0G4wEeiQkc1FO4uxgA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_bezIQm4wEeiQkc1FO4uxgA" points="[761, 200, -643984, -643984]$[802, 200, -643984, -643984]$[802, 246, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_bf4GUG4wEeiQkc1FO4uxgA" id="(1.0,0.49382716049382713)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_bf4GUW4wEeiQkc1FO4uxgA" id="(0.1,0.3)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_mrQKEH0MEeiDS63tULewcA" type="Transition_Edge" source="_UPQ_cG4wEeiQkc1FO4uxgA" target="_T2UT8G4wEeiQkc1FO4uxgA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_mrQKE30MEeiDS63tULewcA" type="Transition_NameLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_nXOfQH0MEeiDS63tULewcA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_mrQKFH0MEeiDS63tULewcA" x="-9" y="13"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_mrQKFX0MEeiDS63tULewcA" type="Transition_GuardLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_nXqkIH0MEeiDS63tULewcA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_mrQKFn0MEeiDS63tULewcA" x="93" y="33"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_mrQKF30MEeiDS63tULewcA" type="Transition_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_nYRBEH0MEeiDS63tULewcA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_mrQKGH0MEeiDS63tULewcA" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_mrQKEX0MEeiDS63tULewcA"/>
+ <element xmi:type="uml:Transition" href="BathtubSM.uml#_mnr4sH0MEeiDS63tULewcA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_mrQKEn0MEeiDS63tULewcA" points="[410, 140, -643984, -643984]$[260, 140, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_mscc4H0MEeiDS63tULewcA" id="(0.0,0.24691358024691357)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_mscc4X0MEeiDS63tULewcA" id="(1.0,0.25316455696202533)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_Ez0gIH0NEeiDS63tULewcA" type="Transition_Edge" source="_UPQ_cG4wEeiQkc1FO4uxgA" target="_UPQ_cG4wEeiQkc1FO4uxgA" routing="Tree">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Ez0gI30NEeiDS63tULewcA" type="Transition_NameLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_GbkhEH0NEeiDS63tULewcA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Ez0gJH0NEeiDS63tULewcA" x="-49" y="13"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_Ez0gJX0NEeiDS63tULewcA" type="Transition_GuardLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_GbuSEH0NEeiDS63tULewcA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Ez0gJn0NEeiDS63tULewcA" x="152" y="-7"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_Ez0gJ30NEeiDS63tULewcA" type="Transition_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_GcBNAH0NEeiDS63tULewcA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Ez0gKH0NEeiDS63tULewcA" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_Ez0gIX0NEeiDS63tULewcA"/>
+ <element xmi:type="uml:Transition" href="BathtubSM.uml#_EzhlMH0NEeiDS63tULewcA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Ez0gIn0NEeiDS63tULewcA" points="[620, 241, -643984, -643984]$[620, 280, -643984, -643984]$[560, 280, -643984, -643984]$[560, 241, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_E0kHAH0NEeiDS63tULewcA" id="(0.418848167539267,1.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_E0kHAX0NEeiDS63tULewcA" id="(0.10471204188481675,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_rrJxkH0XEeiDS63tULewcA" type="Transition_Edge" source="_UPQ_cG4wEeiQkc1FO4uxgA" target="_UPQ_cG4wEeiQkc1FO4uxgA" routing="Rectilinear">
+ <children xmi:type="notation:DecorationNode" xmi:id="_rrJxk30XEeiDS63tULewcA" type="Transition_NameLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_sUC9kH0XEeiDS63tULewcA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_rrJxlH0XEeiDS63tULewcA" x="-7" y="-33"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_rrJxlX0XEeiDS63tULewcA" type="Transition_GuardLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_sUMukH0XEeiDS63tULewcA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_rrJxln0XEeiDS63tULewcA" x="4" y="-13"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_rrJxl30XEeiDS63tULewcA" type="Transition_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_sUfpgH0XEeiDS63tULewcA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_rrJxmH0XEeiDS63tULewcA" x="-1" y="57"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_rrJxkX0XEeiDS63tULewcA"/>
+ <element xmi:type="uml:Transition" href="BathtubSM.uml#_rq22oH0XEeiDS63tULewcA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_rrJxkn0XEeiDS63tULewcA" points="[570, 160, -643984, -643984]$[570, 120, -643984, -643984]$[610, 120, -643984, -643984]$[610, 160, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_rrwOgH0XEeiDS63tULewcA" id="(0.19801980198019803,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_rrwOgX0XEeiDS63tULewcA" id="(0.594059405940594,0.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_zxp3YKxmEeiPApgkayeLVg" type="Transition_Edge" source="_UPQ_cG4wEeiQkc1FO4uxgA" target="_v4a8AKxmEeiPApgkayeLVg">
+ <children xmi:type="notation:DecorationNode" xmi:id="_zxp3Y6xmEeiPApgkayeLVg" type="Transition_NameLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_2KN0wKxnEeiPApgkayeLVg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_zxp3ZKxmEeiPApgkayeLVg"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_zxp3ZaxmEeiPApgkayeLVg" type="Transition_GuardLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_2KqgsKxnEeiPApgkayeLVg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_zxp3ZqxmEeiPApgkayeLVg" x="-13" y="-53"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_zxp3Z6xmEeiPApgkayeLVg" type="Transition_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_2K9boKxnEeiPApgkayeLVg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_zxp3aKxmEeiPApgkayeLVg" x="-1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_zxp3YaxmEeiPApgkayeLVg"/>
+ <element xmi:type="uml:Transition" href="BathtubSM.uml#_zxEBgKxmEeiPApgkayeLVg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_zxp3YqxmEeiPApgkayeLVg" points="[660, 241, -643984, -643984]$[660, 380, -643984, -643984]$[561, 380, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_zzBwYKxmEeiPApgkayeLVg" id="(0.5429864253393665,1.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_zzBwYaxmEeiPApgkayeLVg" id="(1.0,0.7407407407407407)"/>
+ </edges>
+ </notation:Diagram>
+</xmi:XMI>
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/resources/BathtubSM.uml b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/resources/BathtubSM.uml
index d699603..9269c39 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/resources/BathtubSM.uml
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/resources/BathtubSM.uml
@@ -1,177 +1,177 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<xmi:XMI xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:C_Cpp="http://www.eclipse.org/papyrus/C_Cpp/1" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML">
- <uml:Model xmi:id="_dRQ7gG4cEeiQkc1FO4uxgA" name="TestCGenerator">
- <packageImport xmi:type="uml:PackageImport" xmi:id="_d46xYG4cEeiQkc1FO4uxgA">
- <importedPackage xmi:type="uml:Model" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#_0"/>
- </packageImport>
- <packagedElement xmi:type="uml:Package" xmi:id="_87wFwH0OEeiDS63tULewcA" name="Bathtub">
- <packagedElement xmi:type="uml:Class" xmi:id="_mdTNQG4cEeiQkc1FO4uxgA" name="Bathtub" classifierBehavior="_MYi60G4wEeiQkc1FO4uxgA" isActive="true">
- <ownedAttribute xmi:type="uml:Property" xmi:id="_o3n6oG4cEeiQkc1FO4uxgA" name="Lm">
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
- <defaultValue xmi:type="uml:LiteralInteger" xmi:id="_L7-3sK94EeiGJMxhXTW8dw" value="100"/>
- </ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_pXpegG4cEeiQkc1FO4uxgA" name="l">
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
- <defaultValue xmi:type="uml:LiteralInteger" xmi:id="_pmexsK94EeiGJMxhXTW8dw"/>
- </ownedAttribute>
- <ownedBehavior xmi:type="uml:StateMachine" xmi:id="_MYi60G4wEeiQkc1FO4uxgA" name="ButhtubStateMachine">
- <region xmi:type="uml:Region" xmi:id="_OEbN0G4wEeiQkc1FO4uxgA" name="Region1">
- <transition xmi:type="uml:Transition" xmi:id="_aa7QcG4wEeiQkc1FO4uxgA" source="_TWN3kG4wEeiQkc1FO4uxgA" target="_T2FqcG4wEeiQkc1FO4uxgA"/>
- <transition xmi:type="uml:Transition" xmi:id="_a4vN0G4wEeiQkc1FO4uxgA" name="E2F" guard="_fwH04H0VEeiDS63tULewcA" source="_T2FqcG4wEeiQkc1FO4uxgA" target="_UPBu4G4wEeiQkc1FO4uxgA">
- <ownedRule xmi:type="uml:Constraint" xmi:id="_fwH04H0VEeiDS63tULewcA">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_d0KpEH0WEeiDS63tULewcA">
- <language>C/C++</language>
- <body>x <= self->Lm - self->l</body>
- </specification>
- </ownedRule>
- <effect xmi:type="uml:OpaqueBehavior" xmi:id="_wyJmAH7XEei0bqkaoBEVJQ" name="msg">
- <language>C/C++</language>
- <body>self->l = self->l + x;</body>
- </effect>
- <trigger xmi:type="uml:Trigger" xmi:id="_nYLSwH0SEeiDS63tULewcA" event="_GQC7oH0PEeiDS63tULewcA"/>
- </transition>
- <transition xmi:type="uml:Transition" xmi:id="_bebU0G4wEeiQkc1FO4uxgA" source="_UPBu4G4wEeiQkc1FO4uxgA" target="_ZO0CoG4wEeiQkc1FO4uxgA"/>
- <transition xmi:type="uml:Transition" xmi:id="_mnr4sH0MEeiDS63tULewcA" name="F2E" guard="__7tWIH0WEeiDS63tULewcA" source="_UPBu4G4wEeiQkc1FO4uxgA" target="_T2FqcG4wEeiQkc1FO4uxgA">
- <ownedRule xmi:type="uml:Constraint" xmi:id="__7tWIH0WEeiDS63tULewcA">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_F8fz4H0XEeiDS63tULewcA">
- <language>C/C++</language>
- <body>self->l-x==0</body>
- </specification>
- </ownedRule>
- <effect xmi:type="uml:OpaqueBehavior" xmi:id="_8he68H7XEei0bqkaoBEVJQ" name="msg">
- <language>C/C++</language>
- <body>self->l = self->l - x;</body>
- </effect>
- <trigger xmi:type="uml:Trigger" xmi:id="_3jBJsH0SEeiDS63tULewcA" event="_HFFtQH0PEeiDS63tULewcA"/>
- </transition>
- <transition xmi:type="uml:Transition" xmi:id="_EzhlMH0NEeiDS63tULewcA" name="F2FF" guard="_lriN8H0WEeiDS63tULewcA" source="_UPBu4G4wEeiQkc1FO4uxgA" target="_UPBu4G4wEeiQkc1FO4uxgA">
- <ownedRule xmi:type="uml:Constraint" xmi:id="_lriN8H0WEeiDS63tULewcA">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_vXKlwH0WEeiDS63tULewcA">
- <language>C/C++</language>
- <body>self->l+x<=self->Lm</body>
- </specification>
- </ownedRule>
- <effect xmi:type="uml:OpaqueBehavior" xmi:id="_Nx2PgH7YEei0bqkaoBEVJQ" name="msg">
- <language>C/C++</language>
- <body>self->l = self->l + x;</body>
- </effect>
- <trigger xmi:type="uml:Trigger" xmi:id="_9IHJ8H0SEeiDS63tULewcA" event="_GQC7oH0PEeiDS63tULewcA"/>
- </transition>
- <transition xmi:type="uml:Transition" xmi:id="_rq22oH0XEeiDS63tULewcA" name="F2FR" guard="__6IzYH0XEeiDS63tULewcA" source="_UPBu4G4wEeiQkc1FO4uxgA" target="_UPBu4G4wEeiQkc1FO4uxgA">
- <ownedRule xmi:type="uml:Constraint" xmi:id="__6IzYH0XEeiDS63tULewcA">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_EayUEH0YEeiDS63tULewcA">
- <language>C/C++</language>
- <body>self->l-x > 0</body>
- </specification>
- </ownedRule>
- <effect xmi:type="uml:OpaqueBehavior" xmi:id="_IH0r8H7YEei0bqkaoBEVJQ" name="msg">
- <language>C/C++</language>
- <body>self->l = self->l - x;</body>
- </effect>
- <trigger xmi:type="uml:Trigger" xmi:id="_7qne8H0XEeiDS63tULewcA" event="_HFFtQH0PEeiDS63tULewcA"/>
- </transition>
- <transition xmi:type="uml:Transition" xmi:id="_zxEBgKxmEeiPApgkayeLVg" guard="_4Fww4KxmEeiPApgkayeLVg" source="_UPBu4G4wEeiQkc1FO4uxgA" target="_v31GIKxmEeiPApgkayeLVg">
- <ownedRule xmi:type="uml:Constraint" xmi:id="_4Fww4KxmEeiPApgkayeLVg">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_CGHbgKxnEeiPApgkayeLVg">
- <language>C/C++</language>
- <body>self->l==self->Lm</body>
- </specification>
- </ownedRule>
- </transition>
- <subvertex xmi:type="uml:Pseudostate" xmi:id="_TWN3kG4wEeiQkc1FO4uxgA" name="Initial1"/>
- <subvertex xmi:type="uml:State" xmi:id="_T2FqcG4wEeiQkc1FO4uxgA" name="Empty">
- <doActivity xmi:type="uml:OpaqueBehavior" xmi:id="_bVG-EKxoEeiPApgkayeLVg" name="doActivity_Empty">
- <language>C/C++</language>
- <body>printf("do Activity of Empty State\n");</body>
- </doActivity>
- <entry xmi:type="uml:OpaqueBehavior" xmi:id="_q_fBsKxnEeiPApgkayeLVg" name="entry_empty">
- <language>C/C++</language>
- <body>printf("Enter to Empty State \n");</body>
- </entry>
- <exit xmi:type="uml:OpaqueBehavior" xmi:id="_N5gUkKxoEeiPApgkayeLVg" name="exit_empty">
- <language>C/C++</language>
- <body>printf("exit the Empty State \n");</body>
- </exit>
- </subvertex>
- <subvertex xmi:type="uml:State" xmi:id="_UPBu4G4wEeiQkc1FO4uxgA" name="Filled">
- <doActivity xmi:type="uml:OpaqueBehavior" xmi:id="_WD6KMKxoEeiPApgkayeLVg" name="doActivity_Filled">
- <language>C/C++</language>
- <body>printf("do Activity of Filled State\n");</body>
- </doActivity>
- <entry xmi:type="uml:OpaqueBehavior" xmi:id="_jD7q8KxoEeiPApgkayeLVg" name="entry_filled">
- <language>C/C++</language>
- <body>printf("Enter to Filled State \n");</body>
- </entry>
- <exit xmi:type="uml:OpaqueBehavior" xmi:id="_oWLAoKxoEeiPApgkayeLVg" name="exit_Filled">
- <language>C/C++</language>
- <body>printf("exit the Filled State \n");</body>
- </exit>
- </subvertex>
- <subvertex xmi:type="uml:FinalState" xmi:id="_ZO0CoG4wEeiQkc1FO4uxgA" name="FinalState1"/>
- <subvertex xmi:type="uml:State" xmi:id="_v31GIKxmEeiPApgkayeLVg" name="Full">
- <doActivity xmi:type="uml:OpaqueBehavior" xmi:id="__HLTQKxoEeiPApgkayeLVg" name="doActivity_Full">
- <language>C/C++</language>
- <body>printf("do Activity of Full State\n");</body>
- </doActivity>
- <entry xmi:type="uml:OpaqueBehavior" xmi:id="_Erw9MKxpEeiPApgkayeLVg" name="entry_Full">
- <language>C/C++</language>
- <body>printf("Enter to Full State\n");</body>
- </entry>
- <exit xmi:type="uml:OpaqueBehavior" xmi:id="_FaK7UKxpEeiPApgkayeLVg" name="exit_Full">
- <language>C/C++</language>
- <body>printf("Exit from Full State\n");</body>
- </exit>
- </subvertex>
- </region>
- </ownedBehavior>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_uaa00G4cEeiQkc1FO4uxgA" name="fill" visibility="public" method="_kFJtsH0QEeiDS63tULewcA">
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_ufxEsH0LEeiDS63tULewcA" name="x">
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
- </ownedParameter>
- </ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_vg57wG4cEeiQkc1FO4uxgA" name="withdraw" visibility="public" method="_Xw-7cH0SEeiDS63tULewcA">
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_yjtlcG4cEeiQkc1FO4uxgA" name="x">
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
- </ownedParameter>
- </ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_CtKkwH1REeiOvJbQeRuWmA" name="run" method="_hbnPEH1REeiOvJbQeRuWmA"/>
- <nestedClassifier xmi:type="uml:OpaqueBehavior" xmi:id="_kFJtsH0QEeiDS63tULewcA" name="fill" specification="_uaa00G4cEeiQkc1FO4uxgA">
- <language>C/C++</language>
- <body>printf("fill the bathtub with liquid quantity = %d \n", x);
-</body>
- </nestedClassifier>
- <nestedClassifier xmi:type="uml:OpaqueBehavior" xmi:id="_Xw-7cH0SEeiDS63tULewcA" name="withdraw" specification="_vg57wG4cEeiQkc1FO4uxgA">
- <language>C/C++</language>
- <body>printf("remove the liquid quantity %d from the bathtub \n", x);</body>
- </nestedClassifier>
- <nestedClassifier xmi:type="uml:OpaqueBehavior" xmi:id="_hbnPEH1REeiOvJbQeRuWmA" name="run" specification="_CtKkwH1REeiOvJbQeRuWmA">
- <language>C/C++</language>
- <body>
- Bathtub_fill(self, 50);
- Bathtub_withdraw(self, 10);
- Bathtub_fill(self, 30);
- Bathtub_fill(self, 30);</body>
- </nestedClassifier>
- </packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_iYk4gH1PEeiOvJbQeRuWmA" name="Main"/>
- <packagedElement xmi:type="uml:Dependency" xmi:id="_yYOMEH1PEeiOvJbQeRuWmA" client="_iYk4gH1PEeiOvJbQeRuWmA" supplier="_mdTNQG4cEeiQkc1FO4uxgA"/>
- <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_N2I-wH0ZEeiDS63tULewcA">
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_N2KM4H0ZEeiDS63tULewcA" source="http://www.eclipse.org/uml2/2.0.0/UML">
- <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/C_Cpp/1#/"/>
- </eAnnotations>
- <appliedProfile xmi:type="uml:Profile" href="pathmap://PapyrusC_Cpp_PROFILES/C_Cpp.profile.uml#_j9REUByGEduN1bTiWJ0lyw"/>
- </profileApplication>
- </packagedElement>
- <packagedElement xmi:type="uml:Package" xmi:id="_EklfYH0PEeiDS63tULewcA" name="events">
- <packagedElement xmi:type="uml:CallEvent" xmi:id="_GQC7oH0PEeiDS63tULewcA" name="fill" operation="_uaa00G4cEeiQkc1FO4uxgA"/>
- <packagedElement xmi:type="uml:CallEvent" xmi:id="_HFFtQH0PEeiDS63tULewcA" name="remove" operation="_vg57wG4cEeiQkc1FO4uxgA"/>
- </packagedElement>
- <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_ZlGrcG4fEeiQkc1FO4uxgA">
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_ZlP1YG4fEeiQkc1FO4uxgA" source="http://www.eclipse.org/uml2/2.0.0/UML">
- <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/C_Cpp/1#/"/>
- </eAnnotations>
- <appliedProfile xmi:type="uml:Profile" href="pathmap://PapyrusC_Cpp_PROFILES/C_Cpp.profile.uml#_j9REUByGEduN1bTiWJ0lyw"/>
- </profileApplication>
- </uml:Model>
- <C_Cpp:Include xmi:id="_udMg8H1PEeiOvJbQeRuWmA" body="#include "Bathtub.h"

// Include from Include declaration (body)
int main(void) {
	Bathtub * myBathtub =Bathtub_create();
	Bathtub_init(myBathtub);
	Bathtub_run (myBathtub);
	return 1;
}" base_class="_iYk4gH1PEeiOvJbQeRuWmA" base_Classifier="_iYk4gH1PEeiOvJbQeRuWmA"/>
-</xmi:XMI>
+<?xml version="1.0" encoding="UTF-8"?>
+<xmi:XMI xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:C_Cpp="http://www.eclipse.org/papyrus/C_Cpp/1" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML">
+ <uml:Model xmi:id="_dRQ7gG4cEeiQkc1FO4uxgA" name="TestCGenerator">
+ <packageImport xmi:type="uml:PackageImport" xmi:id="_d46xYG4cEeiQkc1FO4uxgA">
+ <importedPackage xmi:type="uml:Model" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#_0"/>
+ </packageImport>
+ <packagedElement xmi:type="uml:Package" xmi:id="_87wFwH0OEeiDS63tULewcA" name="Bathtub">
+ <packagedElement xmi:type="uml:Class" xmi:id="_mdTNQG4cEeiQkc1FO4uxgA" name="Bathtub" classifierBehavior="_MYi60G4wEeiQkc1FO4uxgA" isActive="true">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_o3n6oG4cEeiQkc1FO4uxgA" name="Lm">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
+ <defaultValue xmi:type="uml:LiteralInteger" xmi:id="_L7-3sK94EeiGJMxhXTW8dw" value="100"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_pXpegG4cEeiQkc1FO4uxgA" name="l">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
+ <defaultValue xmi:type="uml:LiteralInteger" xmi:id="_pmexsK94EeiGJMxhXTW8dw"/>
+ </ownedAttribute>
+ <ownedBehavior xmi:type="uml:StateMachine" xmi:id="_MYi60G4wEeiQkc1FO4uxgA" name="ButhtubStateMachine">
+ <region xmi:type="uml:Region" xmi:id="_OEbN0G4wEeiQkc1FO4uxgA" name="Region1">
+ <transition xmi:type="uml:Transition" xmi:id="_aa7QcG4wEeiQkc1FO4uxgA" source="_TWN3kG4wEeiQkc1FO4uxgA" target="_T2FqcG4wEeiQkc1FO4uxgA"/>
+ <transition xmi:type="uml:Transition" xmi:id="_a4vN0G4wEeiQkc1FO4uxgA" name="E2F" guard="_fwH04H0VEeiDS63tULewcA" source="_T2FqcG4wEeiQkc1FO4uxgA" target="_UPBu4G4wEeiQkc1FO4uxgA">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_fwH04H0VEeiDS63tULewcA">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_d0KpEH0WEeiDS63tULewcA">
+ <language>C/C++</language>
+ <body>x <= self->Lm - self->l</body>
+ </specification>
+ </ownedRule>
+ <effect xmi:type="uml:OpaqueBehavior" xmi:id="_wyJmAH7XEei0bqkaoBEVJQ" name="msg">
+ <language>C/C++</language>
+ <body>self->l = self->l + x;</body>
+ </effect>
+ <trigger xmi:type="uml:Trigger" xmi:id="_nYLSwH0SEeiDS63tULewcA" event="_GQC7oH0PEeiDS63tULewcA"/>
+ </transition>
+ <transition xmi:type="uml:Transition" xmi:id="_bebU0G4wEeiQkc1FO4uxgA" source="_UPBu4G4wEeiQkc1FO4uxgA" target="_ZO0CoG4wEeiQkc1FO4uxgA"/>
+ <transition xmi:type="uml:Transition" xmi:id="_mnr4sH0MEeiDS63tULewcA" name="F2E" guard="__7tWIH0WEeiDS63tULewcA" source="_UPBu4G4wEeiQkc1FO4uxgA" target="_T2FqcG4wEeiQkc1FO4uxgA">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="__7tWIH0WEeiDS63tULewcA">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_F8fz4H0XEeiDS63tULewcA">
+ <language>C/C++</language>
+ <body>self->l-x==0</body>
+ </specification>
+ </ownedRule>
+ <effect xmi:type="uml:OpaqueBehavior" xmi:id="_8he68H7XEei0bqkaoBEVJQ" name="msg">
+ <language>C/C++</language>
+ <body>self->l = self->l - x;</body>
+ </effect>
+ <trigger xmi:type="uml:Trigger" xmi:id="_3jBJsH0SEeiDS63tULewcA" event="_HFFtQH0PEeiDS63tULewcA"/>
+ </transition>
+ <transition xmi:type="uml:Transition" xmi:id="_EzhlMH0NEeiDS63tULewcA" name="F2FF" guard="_lriN8H0WEeiDS63tULewcA" source="_UPBu4G4wEeiQkc1FO4uxgA" target="_UPBu4G4wEeiQkc1FO4uxgA">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_lriN8H0WEeiDS63tULewcA">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_vXKlwH0WEeiDS63tULewcA">
+ <language>C/C++</language>
+ <body>self->l+x<=self->Lm</body>
+ </specification>
+ </ownedRule>
+ <effect xmi:type="uml:OpaqueBehavior" xmi:id="_Nx2PgH7YEei0bqkaoBEVJQ" name="msg">
+ <language>C/C++</language>
+ <body>self->l = self->l + x;</body>
+ </effect>
+ <trigger xmi:type="uml:Trigger" xmi:id="_9IHJ8H0SEeiDS63tULewcA" event="_GQC7oH0PEeiDS63tULewcA"/>
+ </transition>
+ <transition xmi:type="uml:Transition" xmi:id="_rq22oH0XEeiDS63tULewcA" name="F2FR" guard="__6IzYH0XEeiDS63tULewcA" source="_UPBu4G4wEeiQkc1FO4uxgA" target="_UPBu4G4wEeiQkc1FO4uxgA">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="__6IzYH0XEeiDS63tULewcA">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_EayUEH0YEeiDS63tULewcA">
+ <language>C/C++</language>
+ <body>self->l-x > 0</body>
+ </specification>
+ </ownedRule>
+ <effect xmi:type="uml:OpaqueBehavior" xmi:id="_IH0r8H7YEei0bqkaoBEVJQ" name="msg">
+ <language>C/C++</language>
+ <body>self->l = self->l - x;</body>
+ </effect>
+ <trigger xmi:type="uml:Trigger" xmi:id="_7qne8H0XEeiDS63tULewcA" event="_HFFtQH0PEeiDS63tULewcA"/>
+ </transition>
+ <transition xmi:type="uml:Transition" xmi:id="_zxEBgKxmEeiPApgkayeLVg" guard="_4Fww4KxmEeiPApgkayeLVg" source="_UPBu4G4wEeiQkc1FO4uxgA" target="_v31GIKxmEeiPApgkayeLVg">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_4Fww4KxmEeiPApgkayeLVg">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_CGHbgKxnEeiPApgkayeLVg">
+ <language>C/C++</language>
+ <body>self->l==self->Lm</body>
+ </specification>
+ </ownedRule>
+ </transition>
+ <subvertex xmi:type="uml:Pseudostate" xmi:id="_TWN3kG4wEeiQkc1FO4uxgA" name="Initial1"/>
+ <subvertex xmi:type="uml:State" xmi:id="_T2FqcG4wEeiQkc1FO4uxgA" name="Empty">
+ <doActivity xmi:type="uml:OpaqueBehavior" xmi:id="_bVG-EKxoEeiPApgkayeLVg" name="doActivity_Empty">
+ <language>C/C++</language>
+ <body>printf("do Activity of Empty State\n");</body>
+ </doActivity>
+ <entry xmi:type="uml:OpaqueBehavior" xmi:id="_q_fBsKxnEeiPApgkayeLVg" name="entry_empty">
+ <language>C/C++</language>
+ <body>printf("Enter to Empty State \n");</body>
+ </entry>
+ <exit xmi:type="uml:OpaqueBehavior" xmi:id="_N5gUkKxoEeiPApgkayeLVg" name="exit_empty">
+ <language>C/C++</language>
+ <body>printf("exit the Empty State \n");</body>
+ </exit>
+ </subvertex>
+ <subvertex xmi:type="uml:State" xmi:id="_UPBu4G4wEeiQkc1FO4uxgA" name="Filled">
+ <doActivity xmi:type="uml:OpaqueBehavior" xmi:id="_WD6KMKxoEeiPApgkayeLVg" name="doActivity_Filled">
+ <language>C/C++</language>
+ <body>printf("do Activity of Filled State\n");</body>
+ </doActivity>
+ <entry xmi:type="uml:OpaqueBehavior" xmi:id="_jD7q8KxoEeiPApgkayeLVg" name="entry_filled">
+ <language>C/C++</language>
+ <body>printf("Enter to Filled State \n");</body>
+ </entry>
+ <exit xmi:type="uml:OpaqueBehavior" xmi:id="_oWLAoKxoEeiPApgkayeLVg" name="exit_Filled">
+ <language>C/C++</language>
+ <body>printf("exit the Filled State \n");</body>
+ </exit>
+ </subvertex>
+ <subvertex xmi:type="uml:FinalState" xmi:id="_ZO0CoG4wEeiQkc1FO4uxgA" name="FinalState1"/>
+ <subvertex xmi:type="uml:State" xmi:id="_v31GIKxmEeiPApgkayeLVg" name="Full">
+ <doActivity xmi:type="uml:OpaqueBehavior" xmi:id="__HLTQKxoEeiPApgkayeLVg" name="doActivity_Full">
+ <language>C/C++</language>
+ <body>printf("do Activity of Full State\n");</body>
+ </doActivity>
+ <entry xmi:type="uml:OpaqueBehavior" xmi:id="_Erw9MKxpEeiPApgkayeLVg" name="entry_Full">
+ <language>C/C++</language>
+ <body>printf("Enter to Full State\n");</body>
+ </entry>
+ <exit xmi:type="uml:OpaqueBehavior" xmi:id="_FaK7UKxpEeiPApgkayeLVg" name="exit_Full">
+ <language>C/C++</language>
+ <body>printf("Exit from Full State\n");</body>
+ </exit>
+ </subvertex>
+ </region>
+ </ownedBehavior>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_uaa00G4cEeiQkc1FO4uxgA" name="fill" visibility="public" method="_kFJtsH0QEeiDS63tULewcA">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_ufxEsH0LEeiDS63tULewcA" name="x">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
+ </ownedParameter>
+ </ownedOperation>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_vg57wG4cEeiQkc1FO4uxgA" name="withdraw" visibility="public" method="_Xw-7cH0SEeiDS63tULewcA">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_yjtlcG4cEeiQkc1FO4uxgA" name="x">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
+ </ownedParameter>
+ </ownedOperation>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_CtKkwH1REeiOvJbQeRuWmA" name="run" method="_hbnPEH1REeiOvJbQeRuWmA"/>
+ <nestedClassifier xmi:type="uml:OpaqueBehavior" xmi:id="_kFJtsH0QEeiDS63tULewcA" name="fill" specification="_uaa00G4cEeiQkc1FO4uxgA">
+ <language>C/C++</language>
+ <body>printf("fill the bathtub with liquid quantity = %d \n", x);
+</body>
+ </nestedClassifier>
+ <nestedClassifier xmi:type="uml:OpaqueBehavior" xmi:id="_Xw-7cH0SEeiDS63tULewcA" name="withdraw" specification="_vg57wG4cEeiQkc1FO4uxgA">
+ <language>C/C++</language>
+ <body>printf("remove the liquid quantity %d from the bathtub \n", x);</body>
+ </nestedClassifier>
+ <nestedClassifier xmi:type="uml:OpaqueBehavior" xmi:id="_hbnPEH1REeiOvJbQeRuWmA" name="run" specification="_CtKkwH1REeiOvJbQeRuWmA">
+ <language>C/C++</language>
+ <body>
+ Bathtub_fill(self, 50);
+ Bathtub_withdraw(self, 10);
+ Bathtub_fill(self, 30);
+ Bathtub_fill(self, 30);</body>
+ </nestedClassifier>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_iYk4gH1PEeiOvJbQeRuWmA" name="Main"/>
+ <packagedElement xmi:type="uml:Dependency" xmi:id="_yYOMEH1PEeiOvJbQeRuWmA" client="_iYk4gH1PEeiOvJbQeRuWmA" supplier="_mdTNQG4cEeiQkc1FO4uxgA"/>
+ <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_N2I-wH0ZEeiDS63tULewcA">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_N2KM4H0ZEeiDS63tULewcA" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/C_Cpp/1#/"/>
+ </eAnnotations>
+ <appliedProfile xmi:type="uml:Profile" href="pathmap://PapyrusC_Cpp_PROFILES/C_Cpp.profile.uml#_j9REUByGEduN1bTiWJ0lyw"/>
+ </profileApplication>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Package" xmi:id="_EklfYH0PEeiDS63tULewcA" name="events">
+ <packagedElement xmi:type="uml:CallEvent" xmi:id="_GQC7oH0PEeiDS63tULewcA" name="fill" operation="_uaa00G4cEeiQkc1FO4uxgA"/>
+ <packagedElement xmi:type="uml:CallEvent" xmi:id="_HFFtQH0PEeiDS63tULewcA" name="remove" operation="_vg57wG4cEeiQkc1FO4uxgA"/>
+ </packagedElement>
+ <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_ZlGrcG4fEeiQkc1FO4uxgA">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_ZlP1YG4fEeiQkc1FO4uxgA" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/C_Cpp/1#/"/>
+ </eAnnotations>
+ <appliedProfile xmi:type="uml:Profile" href="pathmap://PapyrusC_Cpp_PROFILES/C_Cpp.profile.uml#_j9REUByGEduN1bTiWJ0lyw"/>
+ </profileApplication>
+ </uml:Model>
+ <C_Cpp:Include xmi:id="_udMg8H1PEeiOvJbQeRuWmA" body="#include "Bathtub.h"

// Include from Include declaration (body)
int main(void) {
	Bathtub * myBathtub =Bathtub_create();
	Bathtub_init(myBathtub);
	Bathtub_run (myBathtub);
	return 1;
}" base_class="_iYk4gH1PEeiOvJbQeRuWmA" base_Classifier="_iYk4gH1PEeiOvJbQeRuWmA"/>
+</xmi:XMI>
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/resources/TestCGenerator.di b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/resources/TestCGenerator.di
index 0812886..8c549ee 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/resources/TestCGenerator.di
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/resources/TestCGenerator.di
@@ -1,2 +1,2 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<architecture:ArchitectureDescription xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:architecture="http://www.eclipse.org/papyrus/infra/core/architecture" contextId="org.eclipse.papyrus.infra.services.edit.TypeContext"/>
+<?xml version="1.0" encoding="UTF-8"?>
+<architecture:ArchitectureDescription xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:architecture="http://www.eclipse.org/papyrus/infra/core/architecture" contextId="org.eclipse.papyrus.infra.services.edit.TypeContext"/>
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/resources/TestCGenerator.notation b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/resources/TestCGenerator.notation
index 9bdfbdb..e8a6b8a 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/resources/TestCGenerator.notation
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/resources/TestCGenerator.notation
@@ -1,321 +1,321 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.2/notation" xmlns:style="http://www.eclipse.org/papyrus/infra/gmfdiag/style" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML">
- <notation:Diagram xmi:id="_lX0y8G4cEeiQkc1FO4uxgA" type="PapyrusUMLClassDiagram" name="NewClassDiagram" measurementUnit="Pixel">
- <children xmi:type="notation:Shape" xmi:id="_8752wH0OEeiDS63tULewcA" type="Package_Shape">
- <children xmi:type="notation:DecorationNode" xmi:id="_8752wn0OEeiDS63tULewcA" type="Package_NameLabel"/>
- <children xmi:type="notation:BasicCompartment" xmi:id="_8752w30OEeiDS63tULewcA" type="Package_PackagedElementCompartment">
- <children xmi:type="notation:Shape" xmi:id="_mdmIMG4cEeiQkc1FO4uxgA" type="Class_Shape">
- <children xmi:type="notation:DecorationNode" xmi:id="_md5DIG4cEeiQkc1FO4uxgA" type="Class_NameLabel"/>
- <children xmi:type="notation:DecorationNode" xmi:id="_md5DIW4cEeiQkc1FO4uxgA" type="Class_FloatingNameLabel">
- <layoutConstraint xmi:type="notation:Location" xmi:id="_md5DIm4cEeiQkc1FO4uxgA" y="15"/>
- </children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_meC0IG4cEeiQkc1FO4uxgA" type="Class_AttributeCompartment">
- <children xmi:type="notation:Shape" xmi:id="_o3xEkG4cEeiQkc1FO4uxgA" type="Property_ClassAttributeLabel">
- <element xmi:type="uml:Property" href="TestCGenerator.uml#_o3n6oG4cEeiQkc1FO4uxgA"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_o3xEkW4cEeiQkc1FO4uxgA"/>
- </children>
- <children xmi:type="notation:Shape" xmi:id="_pYFjYG4cEeiQkc1FO4uxgA" type="Property_ClassAttributeLabel">
- <element xmi:type="uml:Property" href="TestCGenerator.uml#_pXpegG4cEeiQkc1FO4uxgA"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_pYFjYW4cEeiQkc1FO4uxgA"/>
- </children>
- <styles xmi:type="notation:TitleStyle" xmi:id="_meC0IW4cEeiQkc1FO4uxgA"/>
- <styles xmi:type="notation:SortingStyle" xmi:id="_meC0Im4cEeiQkc1FO4uxgA"/>
- <styles xmi:type="notation:FilteringStyle" xmi:id="_meC0I24cEeiQkc1FO4uxgA"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_meC0JG4cEeiQkc1FO4uxgA"/>
- </children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_meC0JW4cEeiQkc1FO4uxgA" type="Class_OperationCompartment">
- <children xmi:type="notation:Shape" xmi:id="_ua5V8G4cEeiQkc1FO4uxgA" type="Operation_ClassOperationLabel">
- <element xmi:type="uml:Operation" href="TestCGenerator.uml#_uaa00G4cEeiQkc1FO4uxgA"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_ua5V8W4cEeiQkc1FO4uxgA"/>
- </children>
- <children xmi:type="notation:Shape" xmi:id="_vhDswG4cEeiQkc1FO4uxgA" type="Operation_ClassOperationLabel">
- <element xmi:type="uml:Operation" href="TestCGenerator.uml#_vg57wG4cEeiQkc1FO4uxgA"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_vhDswW4cEeiQkc1FO4uxgA"/>
- </children>
- <children xmi:type="notation:Shape" xmi:id="_CteGwH1REeiOvJbQeRuWmA" type="Operation_ClassOperationLabel">
- <element xmi:type="uml:Operation" href="TestCGenerator.uml#_CtKkwH1REeiOvJbQeRuWmA"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_CteGwX1REeiOvJbQeRuWmA"/>
- </children>
- <styles xmi:type="notation:TitleStyle" xmi:id="_meC0Jm4cEeiQkc1FO4uxgA"/>
- <styles xmi:type="notation:SortingStyle" xmi:id="_meC0J24cEeiQkc1FO4uxgA"/>
- <styles xmi:type="notation:FilteringStyle" xmi:id="_meC0KG4cEeiQkc1FO4uxgA"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_meC0KW4cEeiQkc1FO4uxgA"/>
- </children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_meC0Km4cEeiQkc1FO4uxgA" type="Class_NestedClassifierCompartment">
- <styles xmi:type="notation:TitleStyle" xmi:id="_meC0K24cEeiQkc1FO4uxgA"/>
- <styles xmi:type="notation:SortingStyle" xmi:id="_meC0LG4cEeiQkc1FO4uxgA"/>
- <styles xmi:type="notation:FilteringStyle" xmi:id="_meC0LW4cEeiQkc1FO4uxgA"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_meC0Lm4cEeiQkc1FO4uxgA"/>
- </children>
- <element xmi:type="uml:Class" href="TestCGenerator.uml#_mdTNQG4cEeiQkc1FO4uxgA"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_mdmIMW4cEeiQkc1FO4uxgA" x="134" y="16" width="201"/>
- </children>
- <children xmi:type="notation:Shape" xmi:id="_iY3zcH1PEeiOvJbQeRuWmA" type="Class_Shape_CN">
- <children xmi:type="notation:DecorationNode" xmi:id="_iY3zcn1PEeiOvJbQeRuWmA" type="Class_NameLabel_CN"/>
- <children xmi:type="notation:DecorationNode" xmi:id="_iY3zc31PEeiOvJbQeRuWmA" type="Class_FloatingNameLabel_CN">
- <layoutConstraint xmi:type="notation:Location" xmi:id="_iY3zdH1PEeiOvJbQeRuWmA" y="15"/>
- </children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_iY3zdX1PEeiOvJbQeRuWmA" type="Class_AttributeCompartment_CN">
- <styles xmi:type="notation:TitleStyle" xmi:id="_iY3zdn1PEeiOvJbQeRuWmA"/>
- <styles xmi:type="notation:SortingStyle" xmi:id="_iY3zd31PEeiOvJbQeRuWmA"/>
- <styles xmi:type="notation:FilteringStyle" xmi:id="_iY3zeH1PEeiOvJbQeRuWmA"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_iY3zeX1PEeiOvJbQeRuWmA"/>
- </children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_iY3zen1PEeiOvJbQeRuWmA" type="Class_OperationCompartment_CN">
- <styles xmi:type="notation:TitleStyle" xmi:id="_iY3ze31PEeiOvJbQeRuWmA"/>
- <styles xmi:type="notation:SortingStyle" xmi:id="_iY3zfH1PEeiOvJbQeRuWmA"/>
- <styles xmi:type="notation:FilteringStyle" xmi:id="_iY3zfX1PEeiOvJbQeRuWmA"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_iY3zfn1PEeiOvJbQeRuWmA"/>
- </children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_iY3zf31PEeiOvJbQeRuWmA" type="Class_NestedClassifierCompartment_CN">
- <styles xmi:type="notation:TitleStyle" xmi:id="_iY3zgH1PEeiOvJbQeRuWmA"/>
- <styles xmi:type="notation:SortingStyle" xmi:id="_iY3zgX1PEeiOvJbQeRuWmA"/>
- <styles xmi:type="notation:FilteringStyle" xmi:id="_iY3zgn1PEeiOvJbQeRuWmA"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_iY3zg31PEeiOvJbQeRuWmA"/>
- </children>
- <element xmi:type="uml:Class" href="TestCGenerator.uml#_iYk4gH1PEeiOvJbQeRuWmA"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_iY3zcX1PEeiOvJbQeRuWmA" x="134" y="256" width="201" height="100"/>
- </children>
- <children xmi:type="notation:Shape" xmi:id="_udgC_X1PEeiOvJbQeRuWmA" type="StereotypeComment">
- <styles xmi:type="notation:TitleStyle" xmi:id="_udgC_n1PEeiOvJbQeRuWmA"/>
- <styles xmi:type="notation:EObjectValueStyle" xmi:id="_udpM4H1PEeiOvJbQeRuWmA" name="BASE_ELEMENT">
- <eObjectValue xmi:type="uml:Class" href="TestCGenerator.uml#_iYk4gH1PEeiOvJbQeRuWmA"/>
- </styles>
- <element xsi:nil="true"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_udgC_31PEeiOvJbQeRuWmA" x="334" y="256"/>
- </children>
- <styles xmi:type="notation:TitleStyle" xmi:id="_8752xH0OEeiDS63tULewcA"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8752xX0OEeiDS63tULewcA"/>
- </children>
- <element xmi:type="uml:Package" href="TestCGenerator.uml#_87wFwH0OEeiDS63tULewcA"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8752wX0OEeiDS63tULewcA" x="40" y="40" width="681" height="421"/>
- </children>
- <styles xmi:type="notation:StringValueStyle" xmi:id="_lX0y8W4cEeiQkc1FO4uxgA" name="diagram_compatibility_version" stringValue="1.4.0"/>
- <styles xmi:type="notation:DiagramStyle" xmi:id="_lX0y8m4cEeiQkc1FO4uxgA"/>
- <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_lX0y824cEeiQkc1FO4uxgA" diagramKindId="org.eclipse.papyrus.uml.diagram.class">
- <owner xmi:type="uml:Model" href="TestCGenerator.uml#_dRQ7gG4cEeiQkc1FO4uxgA"/>
- </styles>
- <element xmi:type="uml:Model" href="TestCGenerator.uml#_dRQ7gG4cEeiQkc1FO4uxgA"/>
- <edges xmi:type="notation:Connector" xmi:id="_udpM4X1PEeiOvJbQeRuWmA" type="StereotypeCommentLink" source="_iY3zcH1PEeiOvJbQeRuWmA" target="_udgC_X1PEeiOvJbQeRuWmA">
- <styles xmi:type="notation:FontStyle" xmi:id="_udpM4n1PEeiOvJbQeRuWmA"/>
- <styles xmi:type="notation:EObjectValueStyle" xmi:id="_udpM5n1PEeiOvJbQeRuWmA" name="BASE_ELEMENT">
- <eObjectValue xmi:type="uml:Class" href="TestCGenerator.uml#_iYk4gH1PEeiOvJbQeRuWmA"/>
- </styles>
- <element xsi:nil="true"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_udpM431PEeiOvJbQeRuWmA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
- <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_udpM5H1PEeiOvJbQeRuWmA"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_udpM5X1PEeiOvJbQeRuWmA"/>
- </edges>
- <edges xmi:type="notation:Connector" xmi:id="_yYbncH1PEeiOvJbQeRuWmA" type="Dependency_Edge" source="_iY3zcH1PEeiOvJbQeRuWmA" target="_mdmIMG4cEeiQkc1FO4uxgA">
- <children xmi:type="notation:DecorationNode" xmi:id="_yYbnc31PEeiOvJbQeRuWmA" type="Dependency_NameLabel">
- <layoutConstraint xmi:type="notation:Location" xmi:id="_yYbndH1PEeiOvJbQeRuWmA" y="40"/>
- </children>
- <children xmi:type="notation:DecorationNode" xmi:id="_yYbndX1PEeiOvJbQeRuWmA" type="Dependency_StereotypeLabel">
- <layoutConstraint xmi:type="notation:Location" xmi:id="_yYbndn1PEeiOvJbQeRuWmA" y="60"/>
- </children>
- <styles xmi:type="notation:FontStyle" xmi:id="_yYbncX1PEeiOvJbQeRuWmA"/>
- <element xmi:type="uml:Dependency" href="TestCGenerator.uml#_yYOMEH1PEeiOvJbQeRuWmA"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_yYbncn1PEeiOvJbQeRuWmA" points="[280, 324, -643984, -643984]$[280, 219, -643984, -643984]"/>
- <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_yZBdUH1PEeiOvJbQeRuWmA" id="(0.4975124378109453,0.0)"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_yZBdUX1PEeiOvJbQeRuWmA" id="(0.4975124378109453,1.0)"/>
- </edges>
- </notation:Diagram>
- <notation:Diagram xmi:id="_OEdDAG4wEeiQkc1FO4uxgA" type="PapyrusUMLStateMachineDiagram" name="NewStateMachineDiagram" measurementUnit="Pixel">
- <children xmi:type="notation:Shape" xmi:id="_OEdDAW4wEeiQkc1FO4uxgA" type="StateMachine_Shape">
- <children xmi:type="notation:DecorationNode" xmi:id="_OEdDAm4wEeiQkc1FO4uxgA" type="StateMachine_NameLabel">
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OEdDA24wEeiQkc1FO4uxgA" width="700" height="20"/>
- </children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_OEdDBG4wEeiQkc1FO4uxgA" type="StateMachine_RegionCompartment">
- <children xmi:type="notation:Shape" xmi:id="_OEdDBW4wEeiQkc1FO4uxgA" type="Region_Shape">
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_OEdDBm4wEeiQkc1FO4uxgA" source="RegionAnnotationKey">
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_OEdDB24wEeiQkc1FO4uxgA" key="RegionZoneKey" value=""/>
- </eAnnotations>
- <children xmi:type="notation:BasicCompartment" xmi:id="_OEdDCG4wEeiQkc1FO4uxgA" type="Region_SubvertexCompartment">
- <children xmi:type="notation:Shape" xmi:id="_TWZdwG4wEeiQkc1FO4uxgA" type="Pseudostate_InitialShape">
- <children xmi:type="notation:DecorationNode" xmi:id="_TWZdwm4wEeiQkc1FO4uxgA" type="Pseudostate_InitialFloatingNameLabel">
- <layoutConstraint xmi:type="notation:Location" xmi:id="_TWaE0G4wEeiQkc1FO4uxgA" x="25" y="3"/>
- </children>
- <children xmi:type="notation:DecorationNode" xmi:id="_TWaE0W4wEeiQkc1FO4uxgA" type="Pseudostate_InitialStereotypeLabel">
- <layoutConstraint xmi:type="notation:Location" xmi:id="_TWaE0m4wEeiQkc1FO4uxgA" x="25" y="-10"/>
- </children>
- <element xmi:type="uml:Pseudostate" href="TestCGenerator.uml#_TWN3kG4wEeiQkc1FO4uxgA"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_TWZdwW4wEeiQkc1FO4uxgA" x="29" y="110"/>
- </children>
- <children xmi:type="notation:Shape" xmi:id="_T2UT8G4wEeiQkc1FO4uxgA" type="State_Shape">
- <children xmi:type="notation:DecorationNode" xmi:id="_T2UT8m4wEeiQkc1FO4uxgA" type="State_NameLabel">
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_km8I8H0MEeiDS63tULewcA" width="100"/>
- </children>
- <children xmi:type="notation:DecorationNode" xmi:id="_T2UT824wEeiQkc1FO4uxgA" type="State_FloatingNameLabel">
- <layoutConstraint xmi:type="notation:Location" xmi:id="_T2U7AG4wEeiQkc1FO4uxgA" x="40"/>
- </children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_T2ViEG4wEeiQkc1FO4uxgA" type="State_RegionCompartment">
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_T2ViEW4wEeiQkc1FO4uxgA" y="-1" width="100"/>
- </children>
- <element xmi:type="uml:State" href="TestCGenerator.uml#_T2FqcG4wEeiQkc1FO4uxgA"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_T2UT8W4wEeiQkc1FO4uxgA" x="149" y="90" width="100"/>
- </children>
- <children xmi:type="notation:Shape" xmi:id="_UPQ_cG4wEeiQkc1FO4uxgA" type="State_Shape">
- <children xmi:type="notation:DecorationNode" xmi:id="_UPQ_cm4wEeiQkc1FO4uxgA" type="State_NameLabel">
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_lDY0YH0MEeiDS63tULewcA" width="121"/>
- </children>
- <children xmi:type="notation:DecorationNode" xmi:id="_UPQ_c24wEeiQkc1FO4uxgA" type="State_FloatingNameLabel">
- <layoutConstraint xmi:type="notation:Location" xmi:id="_UPQ_dG4wEeiQkc1FO4uxgA" x="40"/>
- </children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_UPQ_dW4wEeiQkc1FO4uxgA" type="State_RegionCompartment">
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_UPQ_dm4wEeiQkc1FO4uxgA" y="-1" width="121"/>
- </children>
- <element xmi:type="uml:State" href="TestCGenerator.uml#_UPBu4G4wEeiQkc1FO4uxgA"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_UPQ_cW4wEeiQkc1FO4uxgA" x="369" y="90" width="121"/>
- </children>
- <children xmi:type="notation:Shape" xmi:id="_ZPNrQG4wEeiQkc1FO4uxgA" type="FinalState_Shape">
- <children xmi:type="notation:DecorationNode" xmi:id="_ZPNrQm4wEeiQkc1FO4uxgA" type="FinalState_FloatingNameLabel">
- <layoutConstraint xmi:type="notation:Location" xmi:id="_ZPNrQ24wEeiQkc1FO4uxgA" x="25" y="3"/>
- </children>
- <children xmi:type="notation:DecorationNode" xmi:id="_ZPOSUG4wEeiQkc1FO4uxgA" type="FinalState_StereotypeLabel">
- <layoutConstraint xmi:type="notation:Location" xmi:id="_ZPOSUW4wEeiQkc1FO4uxgA" x="25" y="-10"/>
- </children>
- <element xmi:type="uml:FinalState" href="TestCGenerator.uml#_ZO0CoG4wEeiQkc1FO4uxgA"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ZPNrQW4wEeiQkc1FO4uxgA" x="569" y="110"/>
- </children>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OEdDCW4wEeiQkc1FO4uxgA"/>
- </children>
- <element xmi:type="uml:Region" href="TestCGenerator.uml#_OEbN0G4wEeiQkc1FO4uxgA"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OEdDCm4wEeiQkc1FO4uxgA" width="700" height="280"/>
- </children>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OEdDC24wEeiQkc1FO4uxgA" y="20" width="700" height="280"/>
- </children>
- <element xmi:type="uml:StateMachine" href="TestCGenerator.uml#_MYi60G4wEeiQkc1FO4uxgA"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OEdDDG4wEeiQkc1FO4uxgA" x="30" y="30" width="700" height="300"/>
- </children>
- <styles xmi:type="notation:StringValueStyle" xmi:id="_OEdDDW4wEeiQkc1FO4uxgA" name="diagram_compatibility_version" stringValue="1.4.0"/>
- <styles xmi:type="notation:DiagramStyle" xmi:id="_OEdDDm4wEeiQkc1FO4uxgA"/>
- <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_OEdDD24wEeiQkc1FO4uxgA" diagramKindId="org.eclipse.papyrus.uml.diagram.stateMachine">
- <owner xmi:type="uml:StateMachine" href="TestCGenerator.uml#_MYi60G4wEeiQkc1FO4uxgA"/>
- </styles>
- <element xmi:type="uml:StateMachine" href="TestCGenerator.uml#_MYi60G4wEeiQkc1FO4uxgA"/>
- <edges xmi:type="notation:Connector" xmi:id="_aeuyYG4wEeiQkc1FO4uxgA" type="Transition_Edge" source="_TWZdwG4wEeiQkc1FO4uxgA" target="_T2UT8G4wEeiQkc1FO4uxgA">
- <children xmi:type="notation:DecorationNode" xmi:id="_aevZcG4wEeiQkc1FO4uxgA" type="Transition_NameLabel">
- <styles xmi:type="notation:BooleanValueStyle" xmi:id="_R4g9UH1AEeiUl9OrBp2G3w" name="IS_UPDATED_POSITION" booleanValue="true"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_aevZcW4wEeiQkc1FO4uxgA"/>
- </children>
- <children xmi:type="notation:DecorationNode" xmi:id="_aevZcm4wEeiQkc1FO4uxgA" type="Transition_GuardLabel">
- <styles xmi:type="notation:BooleanValueStyle" xmi:id="_R5RyUH1AEeiUl9OrBp2G3w" name="IS_UPDATED_POSITION" booleanValue="true"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_aevZc24wEeiQkc1FO4uxgA"/>
- </children>
- <children xmi:type="notation:DecorationNode" xmi:id="_aevZdG4wEeiQkc1FO4uxgA" type="Transition_StereotypeLabel">
- <styles xmi:type="notation:BooleanValueStyle" xmi:id="_R5ueQH1AEeiUl9OrBp2G3w" name="IS_UPDATED_POSITION" booleanValue="true"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_aevZdW4wEeiQkc1FO4uxgA" x="1" y="58"/>
- </children>
- <styles xmi:type="notation:FontStyle" xmi:id="_aeuyYW4wEeiQkc1FO4uxgA"/>
- <element xmi:type="uml:Transition" href="TestCGenerator.uml#_aa7QcG4wEeiQkc1FO4uxgA"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_aeuyYm4wEeiQkc1FO4uxgA" points="[109, 80, -643984, -643984]$[240, 160, -643984, -643984]"/>
- <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_aga0cG4wEeiQkc1FO4uxgA" id="(0.45,0.0)"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_agbbgG4wEeiQkc1FO4uxgA" id="(0.0,0.45454545454545453)"/>
- </edges>
- <edges xmi:type="notation:Connector" xmi:id="_a5IPYG4wEeiQkc1FO4uxgA" type="Transition_Edge" source="_T2UT8G4wEeiQkc1FO4uxgA" target="_UPQ_cG4wEeiQkc1FO4uxgA">
- <children xmi:type="notation:DecorationNode" xmi:id="_a5IPY24wEeiQkc1FO4uxgA" type="Transition_NameLabel">
- <layoutConstraint xmi:type="notation:Location" xmi:id="_a5IPZG4wEeiQkc1FO4uxgA" x="9" y="13"/>
- </children>
- <children xmi:type="notation:DecorationNode" xmi:id="_a5IPZW4wEeiQkc1FO4uxgA" type="Transition_GuardLabel">
- <layoutConstraint xmi:type="notation:Location" xmi:id="_a5I2cG4wEeiQkc1FO4uxgA" x="-2" y="33"/>
- </children>
- <children xmi:type="notation:DecorationNode" xmi:id="_a5I2cW4wEeiQkc1FO4uxgA" type="Transition_StereotypeLabel">
- <layoutConstraint xmi:type="notation:Location" xmi:id="_a5I2cm4wEeiQkc1FO4uxgA" y="60"/>
- </children>
- <styles xmi:type="notation:FontStyle" xmi:id="_a5IPYW4wEeiQkc1FO4uxgA"/>
- <element xmi:type="uml:Transition" href="TestCGenerator.uml#_a4vN0G4wEeiQkc1FO4uxgA"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_a5IPYm4wEeiQkc1FO4uxgA" points="[280, 174, -643984, -643984]$[400, 174, -643984, -643984]"/>
- <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_a50y8G4wEeiQkc1FO4uxgA" id="(1.0,0.7727272727272727)"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_a50y8W4wEeiQkc1FO4uxgA" id="(0.0,0.7727272727272727)"/>
- </edges>
- <edges xmi:type="notation:Connector" xmi:id="_bezIQG4wEeiQkc1FO4uxgA" type="Transition_Edge" source="_UPQ_cG4wEeiQkc1FO4uxgA" target="_ZPNrQG4wEeiQkc1FO4uxgA">
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_V8RGoH1AEeiUl9OrBp2G3w" source="PapyrusCSSForceValue">
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_V8RGoX1AEeiUl9OrBp2G3w" key="routing" value="true"/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_vF6roH1AEeiUl9OrBp2G3w" key="closestDistance" value="true"/>
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_vP2qwH1AEeiUl9OrBp2G3w" key="avoidObstructions" value="true"/>
- </eAnnotations>
- <children xmi:type="notation:DecorationNode" xmi:id="_bezIQ24wEeiQkc1FO4uxgA" type="Transition_NameLabel">
- <styles xmi:type="notation:BooleanValueStyle" xmi:id="_lbr_oH0MEeiDS63tULewcA" name="IS_UPDATED_POSITION" booleanValue="true"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_bezIRG4wEeiQkc1FO4uxgA"/>
- </children>
- <children xmi:type="notation:DecorationNode" xmi:id="_bezvUG4wEeiQkc1FO4uxgA" type="Transition_GuardLabel">
- <styles xmi:type="notation:BooleanValueStyle" xmi:id="_lb-6kH0MEeiDS63tULewcA" name="IS_UPDATED_POSITION" booleanValue="true"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_bezvUW4wEeiQkc1FO4uxgA"/>
- </children>
- <children xmi:type="notation:DecorationNode" xmi:id="_bezvUm4wEeiQkc1FO4uxgA" type="Transition_StereotypeLabel">
- <styles xmi:type="notation:BooleanValueStyle" xmi:id="_lcSckH0MEeiDS63tULewcA" name="IS_UPDATED_POSITION" booleanValue="true"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_bezvU24wEeiQkc1FO4uxgA" y="59"/>
- </children>
- <styles xmi:type="notation:FontStyle" xmi:id="_bezIQW4wEeiQkc1FO4uxgA"/>
- <element xmi:type="uml:Transition" href="TestCGenerator.uml#_bebU0G4wEeiQkc1FO4uxgA"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_bezIQm4wEeiQkc1FO4uxgA" points="[501, 160, -643984, -643984]$[621, 171, -643984, -643984]"/>
- <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_bf4GUG4wEeiQkc1FO4uxgA" id="(1.0,0.45454545454545453)"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_bf4GUW4wEeiQkc1FO4uxgA" id="(0.2,0.1)"/>
- </edges>
- <edges xmi:type="notation:Connector" xmi:id="_mrQKEH0MEeiDS63tULewcA" type="Transition_Edge" source="_UPQ_cG4wEeiQkc1FO4uxgA" target="_T2UT8G4wEeiQkc1FO4uxgA">
- <children xmi:type="notation:DecorationNode" xmi:id="_mrQKE30MEeiDS63tULewcA" type="Transition_NameLabel">
- <styles xmi:type="notation:BooleanValueStyle" xmi:id="_nXOfQH0MEeiDS63tULewcA" name="IS_UPDATED_POSITION" booleanValue="true"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_mrQKFH0MEeiDS63tULewcA" x="-9" y="13"/>
- </children>
- <children xmi:type="notation:DecorationNode" xmi:id="_mrQKFX0MEeiDS63tULewcA" type="Transition_GuardLabel">
- <styles xmi:type="notation:BooleanValueStyle" xmi:id="_nXqkIH0MEeiDS63tULewcA" name="IS_UPDATED_POSITION" booleanValue="true"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_mrQKFn0MEeiDS63tULewcA" y="33"/>
- </children>
- <children xmi:type="notation:DecorationNode" xmi:id="_mrQKF30MEeiDS63tULewcA" type="Transition_StereotypeLabel">
- <styles xmi:type="notation:BooleanValueStyle" xmi:id="_nYRBEH0MEeiDS63tULewcA" name="IS_UPDATED_POSITION" booleanValue="true"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_mrQKGH0MEeiDS63tULewcA" y="60"/>
- </children>
- <styles xmi:type="notation:FontStyle" xmi:id="_mrQKEX0MEeiDS63tULewcA"/>
- <element xmi:type="uml:Transition" href="TestCGenerator.uml#_mnr4sH0MEeiDS63tULewcA"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_mrQKEn0MEeiDS63tULewcA" points="[410, 140, -643984, -643984]$[260, 140, -643984, -643984]"/>
- <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_mscc4H0MEeiDS63tULewcA" id="(0.0,0.45454545454545453)"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_mscc4X0MEeiDS63tULewcA" id="(1.0,0.45454545454545453)"/>
- </edges>
- <edges xmi:type="notation:Connector" xmi:id="_Ez0gIH0NEeiDS63tULewcA" type="Transition_Edge" source="_UPQ_cG4wEeiQkc1FO4uxgA" target="_UPQ_cG4wEeiQkc1FO4uxgA" routing="Tree">
- <children xmi:type="notation:DecorationNode" xmi:id="_Ez0gI30NEeiDS63tULewcA" type="Transition_NameLabel">
- <styles xmi:type="notation:BooleanValueStyle" xmi:id="_GbkhEH0NEeiDS63tULewcA" name="IS_UPDATED_POSITION" booleanValue="true"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_Ez0gJH0NEeiDS63tULewcA" x="-49" y="13"/>
- </children>
- <children xmi:type="notation:DecorationNode" xmi:id="_Ez0gJX0NEeiDS63tULewcA" type="Transition_GuardLabel">
- <styles xmi:type="notation:BooleanValueStyle" xmi:id="_GbuSEH0NEeiDS63tULewcA" name="IS_UPDATED_POSITION" booleanValue="true"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_Ez0gJn0NEeiDS63tULewcA" x="-11" y="-27"/>
- </children>
- <children xmi:type="notation:DecorationNode" xmi:id="_Ez0gJ30NEeiDS63tULewcA" type="Transition_StereotypeLabel">
- <styles xmi:type="notation:BooleanValueStyle" xmi:id="_GcBNAH0NEeiDS63tULewcA" name="IS_UPDATED_POSITION" booleanValue="true"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_Ez0gKH0NEeiDS63tULewcA" y="60"/>
- </children>
- <styles xmi:type="notation:FontStyle" xmi:id="_Ez0gIX0NEeiDS63tULewcA"/>
- <element xmi:type="uml:Transition" href="TestCGenerator.uml#_EzhlMH0NEeiDS63tULewcA"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Ez0gIn0NEeiDS63tULewcA" points="[460, 184, -643984, -643984]$[460, 220, -643984, -643984]$[420, 220, -643984, -643984]$[420, 184, -643984, -643984]"/>
- <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_E0kHAH0NEeiDS63tULewcA" id="(0.594059405940594,1.0)"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_E0kHAX0NEeiDS63tULewcA" id="(0.19801980198019803,1.0)"/>
- </edges>
- <edges xmi:type="notation:Connector" xmi:id="_rrJxkH0XEeiDS63tULewcA" type="Transition_Edge" source="_UPQ_cG4wEeiQkc1FO4uxgA" target="_UPQ_cG4wEeiQkc1FO4uxgA" routing="Rectilinear">
- <children xmi:type="notation:DecorationNode" xmi:id="_rrJxk30XEeiDS63tULewcA" type="Transition_NameLabel">
- <styles xmi:type="notation:BooleanValueStyle" xmi:id="_sUC9kH0XEeiDS63tULewcA" name="IS_UPDATED_POSITION" booleanValue="true"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_rrJxlH0XEeiDS63tULewcA" x="-7" y="-33"/>
- </children>
- <children xmi:type="notation:DecorationNode" xmi:id="_rrJxlX0XEeiDS63tULewcA" type="Transition_GuardLabel">
- <styles xmi:type="notation:BooleanValueStyle" xmi:id="_sUMukH0XEeiDS63tULewcA" name="IS_UPDATED_POSITION" booleanValue="true"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_rrJxln0XEeiDS63tULewcA" x="4" y="-13"/>
- </children>
- <children xmi:type="notation:DecorationNode" xmi:id="_rrJxl30XEeiDS63tULewcA" type="Transition_StereotypeLabel">
- <styles xmi:type="notation:BooleanValueStyle" xmi:id="_sUfpgH0XEeiDS63tULewcA" name="IS_UPDATED_POSITION" booleanValue="true"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_rrJxmH0XEeiDS63tULewcA" x="-1" y="57"/>
- </children>
- <styles xmi:type="notation:FontStyle" xmi:id="_rrJxkX0XEeiDS63tULewcA"/>
- <element xmi:type="uml:Transition" href="TestCGenerator.uml#_rq22oH0XEeiDS63tULewcA"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_rrJxkn0XEeiDS63tULewcA" points="[420, 140, -643984, -643984]$[420, 100, -643984, -643984]$[460, 100, -643984, -643984]$[460, 140, -643984, -643984]"/>
- <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_rrwOgH0XEeiDS63tULewcA" id="(0.19801980198019803,0.0)"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_rrwOgX0XEeiDS63tULewcA" id="(0.594059405940594,0.0)"/>
- </edges>
- </notation:Diagram>
- <notation:Diagram xmi:id="_2ZeSEG5IEeiQkc1FO4uxgA" type="CompositeStructure" name="NewCompositeStructureDiagram" measurementUnit="Pixel">
- <styles xmi:type="notation:StringValueStyle" xmi:id="_2ZeSEW5IEeiQkc1FO4uxgA" name="diagram_compatibility_version" stringValue="1.4.0"/>
- <styles xmi:type="notation:DiagramStyle" xmi:id="_2ZeSEm5IEeiQkc1FO4uxgA"/>
- <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_2ZeSE25IEeiQkc1FO4uxgA" diagramKindId="org.eclipse.papyrus.uml.diagram.compositeStructure.root.package">
- <owner xmi:type="uml:Model" href="TestCGenerator.uml#_dRQ7gG4cEeiQkc1FO4uxgA"/>
- </styles>
- <element xmi:type="uml:Model" href="TestCGenerator.uml#_dRQ7gG4cEeiQkc1FO4uxgA"/>
- </notation:Diagram>
-</xmi:XMI>
+<?xml version="1.0" encoding="UTF-8"?>
+<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.2/notation" xmlns:style="http://www.eclipse.org/papyrus/infra/gmfdiag/style" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML">
+ <notation:Diagram xmi:id="_lX0y8G4cEeiQkc1FO4uxgA" type="PapyrusUMLClassDiagram" name="NewClassDiagram" measurementUnit="Pixel">
+ <children xmi:type="notation:Shape" xmi:id="_8752wH0OEeiDS63tULewcA" type="Package_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8752wn0OEeiDS63tULewcA" type="Package_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_8752w30OEeiDS63tULewcA" type="Package_PackagedElementCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_mdmIMG4cEeiQkc1FO4uxgA" type="Class_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_md5DIG4cEeiQkc1FO4uxgA" type="Class_NameLabel"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_md5DIW4cEeiQkc1FO4uxgA" type="Class_FloatingNameLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_md5DIm4cEeiQkc1FO4uxgA" y="15"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_meC0IG4cEeiQkc1FO4uxgA" type="Class_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_o3xEkG4cEeiQkc1FO4uxgA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="TestCGenerator.uml#_o3n6oG4cEeiQkc1FO4uxgA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_o3xEkW4cEeiQkc1FO4uxgA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_pYFjYG4cEeiQkc1FO4uxgA" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="TestCGenerator.uml#_pXpegG4cEeiQkc1FO4uxgA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_pYFjYW4cEeiQkc1FO4uxgA"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_meC0IW4cEeiQkc1FO4uxgA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_meC0Im4cEeiQkc1FO4uxgA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_meC0I24cEeiQkc1FO4uxgA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_meC0JG4cEeiQkc1FO4uxgA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_meC0JW4cEeiQkc1FO4uxgA" type="Class_OperationCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_ua5V8G4cEeiQkc1FO4uxgA" type="Operation_ClassOperationLabel">
+ <element xmi:type="uml:Operation" href="TestCGenerator.uml#_uaa00G4cEeiQkc1FO4uxgA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_ua5V8W4cEeiQkc1FO4uxgA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_vhDswG4cEeiQkc1FO4uxgA" type="Operation_ClassOperationLabel">
+ <element xmi:type="uml:Operation" href="TestCGenerator.uml#_vg57wG4cEeiQkc1FO4uxgA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_vhDswW4cEeiQkc1FO4uxgA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_CteGwH1REeiOvJbQeRuWmA" type="Operation_ClassOperationLabel">
+ <element xmi:type="uml:Operation" href="TestCGenerator.uml#_CtKkwH1REeiOvJbQeRuWmA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_CteGwX1REeiOvJbQeRuWmA"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_meC0Jm4cEeiQkc1FO4uxgA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_meC0J24cEeiQkc1FO4uxgA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_meC0KG4cEeiQkc1FO4uxgA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_meC0KW4cEeiQkc1FO4uxgA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_meC0Km4cEeiQkc1FO4uxgA" type="Class_NestedClassifierCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_meC0K24cEeiQkc1FO4uxgA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_meC0LG4cEeiQkc1FO4uxgA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_meC0LW4cEeiQkc1FO4uxgA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_meC0Lm4cEeiQkc1FO4uxgA"/>
+ </children>
+ <element xmi:type="uml:Class" href="TestCGenerator.uml#_mdTNQG4cEeiQkc1FO4uxgA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_mdmIMW4cEeiQkc1FO4uxgA" x="134" y="16" width="201"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_iY3zcH1PEeiOvJbQeRuWmA" type="Class_Shape_CN">
+ <children xmi:type="notation:DecorationNode" xmi:id="_iY3zcn1PEeiOvJbQeRuWmA" type="Class_NameLabel_CN"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_iY3zc31PEeiOvJbQeRuWmA" type="Class_FloatingNameLabel_CN">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_iY3zdH1PEeiOvJbQeRuWmA" y="15"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_iY3zdX1PEeiOvJbQeRuWmA" type="Class_AttributeCompartment_CN">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_iY3zdn1PEeiOvJbQeRuWmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_iY3zd31PEeiOvJbQeRuWmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_iY3zeH1PEeiOvJbQeRuWmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_iY3zeX1PEeiOvJbQeRuWmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_iY3zen1PEeiOvJbQeRuWmA" type="Class_OperationCompartment_CN">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_iY3ze31PEeiOvJbQeRuWmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_iY3zfH1PEeiOvJbQeRuWmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_iY3zfX1PEeiOvJbQeRuWmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_iY3zfn1PEeiOvJbQeRuWmA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_iY3zf31PEeiOvJbQeRuWmA" type="Class_NestedClassifierCompartment_CN">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_iY3zgH1PEeiOvJbQeRuWmA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_iY3zgX1PEeiOvJbQeRuWmA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_iY3zgn1PEeiOvJbQeRuWmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_iY3zg31PEeiOvJbQeRuWmA"/>
+ </children>
+ <element xmi:type="uml:Class" href="TestCGenerator.uml#_iYk4gH1PEeiOvJbQeRuWmA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_iY3zcX1PEeiOvJbQeRuWmA" x="134" y="256" width="201" height="100"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_udgC_X1PEeiOvJbQeRuWmA" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_udgC_n1PEeiOvJbQeRuWmA"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_udpM4H1PEeiOvJbQeRuWmA" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="TestCGenerator.uml#_iYk4gH1PEeiOvJbQeRuWmA"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_udgC_31PEeiOvJbQeRuWmA" x="334" y="256"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_8752xH0OEeiDS63tULewcA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8752xX0OEeiDS63tULewcA"/>
+ </children>
+ <element xmi:type="uml:Package" href="TestCGenerator.uml#_87wFwH0OEeiDS63tULewcA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8752wX0OEeiDS63tULewcA" x="40" y="40" width="681" height="421"/>
+ </children>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_lX0y8W4cEeiQkc1FO4uxgA" name="diagram_compatibility_version" stringValue="1.4.0"/>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_lX0y8m4cEeiQkc1FO4uxgA"/>
+ <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_lX0y824cEeiQkc1FO4uxgA" diagramKindId="org.eclipse.papyrus.uml.diagram.class">
+ <owner xmi:type="uml:Model" href="TestCGenerator.uml#_dRQ7gG4cEeiQkc1FO4uxgA"/>
+ </styles>
+ <element xmi:type="uml:Model" href="TestCGenerator.uml#_dRQ7gG4cEeiQkc1FO4uxgA"/>
+ <edges xmi:type="notation:Connector" xmi:id="_udpM4X1PEeiOvJbQeRuWmA" type="StereotypeCommentLink" source="_iY3zcH1PEeiOvJbQeRuWmA" target="_udgC_X1PEeiOvJbQeRuWmA">
+ <styles xmi:type="notation:FontStyle" xmi:id="_udpM4n1PEeiOvJbQeRuWmA"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_udpM5n1PEeiOvJbQeRuWmA" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="TestCGenerator.uml#_iYk4gH1PEeiOvJbQeRuWmA"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_udpM431PEeiOvJbQeRuWmA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_udpM5H1PEeiOvJbQeRuWmA"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_udpM5X1PEeiOvJbQeRuWmA"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_yYbncH1PEeiOvJbQeRuWmA" type="Dependency_Edge" source="_iY3zcH1PEeiOvJbQeRuWmA" target="_mdmIMG4cEeiQkc1FO4uxgA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_yYbnc31PEeiOvJbQeRuWmA" type="Dependency_NameLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_yYbndH1PEeiOvJbQeRuWmA" y="40"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_yYbndX1PEeiOvJbQeRuWmA" type="Dependency_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_yYbndn1PEeiOvJbQeRuWmA" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_yYbncX1PEeiOvJbQeRuWmA"/>
+ <element xmi:type="uml:Dependency" href="TestCGenerator.uml#_yYOMEH1PEeiOvJbQeRuWmA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_yYbncn1PEeiOvJbQeRuWmA" points="[280, 324, -643984, -643984]$[280, 219, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_yZBdUH1PEeiOvJbQeRuWmA" id="(0.4975124378109453,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_yZBdUX1PEeiOvJbQeRuWmA" id="(0.4975124378109453,1.0)"/>
+ </edges>
+ </notation:Diagram>
+ <notation:Diagram xmi:id="_OEdDAG4wEeiQkc1FO4uxgA" type="PapyrusUMLStateMachineDiagram" name="NewStateMachineDiagram" measurementUnit="Pixel">
+ <children xmi:type="notation:Shape" xmi:id="_OEdDAW4wEeiQkc1FO4uxgA" type="StateMachine_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_OEdDAm4wEeiQkc1FO4uxgA" type="StateMachine_NameLabel">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OEdDA24wEeiQkc1FO4uxgA" width="700" height="20"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_OEdDBG4wEeiQkc1FO4uxgA" type="StateMachine_RegionCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_OEdDBW4wEeiQkc1FO4uxgA" type="Region_Shape">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_OEdDBm4wEeiQkc1FO4uxgA" source="RegionAnnotationKey">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_OEdDB24wEeiQkc1FO4uxgA" key="RegionZoneKey" value=""/>
+ </eAnnotations>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_OEdDCG4wEeiQkc1FO4uxgA" type="Region_SubvertexCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_TWZdwG4wEeiQkc1FO4uxgA" type="Pseudostate_InitialShape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_TWZdwm4wEeiQkc1FO4uxgA" type="Pseudostate_InitialFloatingNameLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_TWaE0G4wEeiQkc1FO4uxgA" x="25" y="3"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_TWaE0W4wEeiQkc1FO4uxgA" type="Pseudostate_InitialStereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_TWaE0m4wEeiQkc1FO4uxgA" x="25" y="-10"/>
+ </children>
+ <element xmi:type="uml:Pseudostate" href="TestCGenerator.uml#_TWN3kG4wEeiQkc1FO4uxgA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_TWZdwW4wEeiQkc1FO4uxgA" x="29" y="110"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_T2UT8G4wEeiQkc1FO4uxgA" type="State_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_T2UT8m4wEeiQkc1FO4uxgA" type="State_NameLabel">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_km8I8H0MEeiDS63tULewcA" width="100"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_T2UT824wEeiQkc1FO4uxgA" type="State_FloatingNameLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_T2U7AG4wEeiQkc1FO4uxgA" x="40"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_T2ViEG4wEeiQkc1FO4uxgA" type="State_RegionCompartment">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_T2ViEW4wEeiQkc1FO4uxgA" y="-1" width="100"/>
+ </children>
+ <element xmi:type="uml:State" href="TestCGenerator.uml#_T2FqcG4wEeiQkc1FO4uxgA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_T2UT8W4wEeiQkc1FO4uxgA" x="149" y="90" width="100"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_UPQ_cG4wEeiQkc1FO4uxgA" type="State_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_UPQ_cm4wEeiQkc1FO4uxgA" type="State_NameLabel">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_lDY0YH0MEeiDS63tULewcA" width="121"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_UPQ_c24wEeiQkc1FO4uxgA" type="State_FloatingNameLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_UPQ_dG4wEeiQkc1FO4uxgA" x="40"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_UPQ_dW4wEeiQkc1FO4uxgA" type="State_RegionCompartment">
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_UPQ_dm4wEeiQkc1FO4uxgA" y="-1" width="121"/>
+ </children>
+ <element xmi:type="uml:State" href="TestCGenerator.uml#_UPBu4G4wEeiQkc1FO4uxgA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_UPQ_cW4wEeiQkc1FO4uxgA" x="369" y="90" width="121"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_ZPNrQG4wEeiQkc1FO4uxgA" type="FinalState_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_ZPNrQm4wEeiQkc1FO4uxgA" type="FinalState_FloatingNameLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_ZPNrQ24wEeiQkc1FO4uxgA" x="25" y="3"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_ZPOSUG4wEeiQkc1FO4uxgA" type="FinalState_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_ZPOSUW4wEeiQkc1FO4uxgA" x="25" y="-10"/>
+ </children>
+ <element xmi:type="uml:FinalState" href="TestCGenerator.uml#_ZO0CoG4wEeiQkc1FO4uxgA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ZPNrQW4wEeiQkc1FO4uxgA" x="569" y="110"/>
+ </children>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OEdDCW4wEeiQkc1FO4uxgA"/>
+ </children>
+ <element xmi:type="uml:Region" href="TestCGenerator.uml#_OEbN0G4wEeiQkc1FO4uxgA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OEdDCm4wEeiQkc1FO4uxgA" width="700" height="280"/>
+ </children>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OEdDC24wEeiQkc1FO4uxgA" y="20" width="700" height="280"/>
+ </children>
+ <element xmi:type="uml:StateMachine" href="TestCGenerator.uml#_MYi60G4wEeiQkc1FO4uxgA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OEdDDG4wEeiQkc1FO4uxgA" x="30" y="30" width="700" height="300"/>
+ </children>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_OEdDDW4wEeiQkc1FO4uxgA" name="diagram_compatibility_version" stringValue="1.4.0"/>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_OEdDDm4wEeiQkc1FO4uxgA"/>
+ <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_OEdDD24wEeiQkc1FO4uxgA" diagramKindId="org.eclipse.papyrus.uml.diagram.stateMachine">
+ <owner xmi:type="uml:StateMachine" href="TestCGenerator.uml#_MYi60G4wEeiQkc1FO4uxgA"/>
+ </styles>
+ <element xmi:type="uml:StateMachine" href="TestCGenerator.uml#_MYi60G4wEeiQkc1FO4uxgA"/>
+ <edges xmi:type="notation:Connector" xmi:id="_aeuyYG4wEeiQkc1FO4uxgA" type="Transition_Edge" source="_TWZdwG4wEeiQkc1FO4uxgA" target="_T2UT8G4wEeiQkc1FO4uxgA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_aevZcG4wEeiQkc1FO4uxgA" type="Transition_NameLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_R4g9UH1AEeiUl9OrBp2G3w" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_aevZcW4wEeiQkc1FO4uxgA"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_aevZcm4wEeiQkc1FO4uxgA" type="Transition_GuardLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_R5RyUH1AEeiUl9OrBp2G3w" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_aevZc24wEeiQkc1FO4uxgA"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_aevZdG4wEeiQkc1FO4uxgA" type="Transition_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_R5ueQH1AEeiUl9OrBp2G3w" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_aevZdW4wEeiQkc1FO4uxgA" x="1" y="58"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_aeuyYW4wEeiQkc1FO4uxgA"/>
+ <element xmi:type="uml:Transition" href="TestCGenerator.uml#_aa7QcG4wEeiQkc1FO4uxgA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_aeuyYm4wEeiQkc1FO4uxgA" points="[109, 80, -643984, -643984]$[240, 160, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_aga0cG4wEeiQkc1FO4uxgA" id="(0.45,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_agbbgG4wEeiQkc1FO4uxgA" id="(0.0,0.45454545454545453)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_a5IPYG4wEeiQkc1FO4uxgA" type="Transition_Edge" source="_T2UT8G4wEeiQkc1FO4uxgA" target="_UPQ_cG4wEeiQkc1FO4uxgA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_a5IPY24wEeiQkc1FO4uxgA" type="Transition_NameLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_a5IPZG4wEeiQkc1FO4uxgA" x="9" y="13"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_a5IPZW4wEeiQkc1FO4uxgA" type="Transition_GuardLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_a5I2cG4wEeiQkc1FO4uxgA" x="-2" y="33"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_a5I2cW4wEeiQkc1FO4uxgA" type="Transition_StereotypeLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_a5I2cm4wEeiQkc1FO4uxgA" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_a5IPYW4wEeiQkc1FO4uxgA"/>
+ <element xmi:type="uml:Transition" href="TestCGenerator.uml#_a4vN0G4wEeiQkc1FO4uxgA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_a5IPYm4wEeiQkc1FO4uxgA" points="[280, 174, -643984, -643984]$[400, 174, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_a50y8G4wEeiQkc1FO4uxgA" id="(1.0,0.7727272727272727)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_a50y8W4wEeiQkc1FO4uxgA" id="(0.0,0.7727272727272727)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_bezIQG4wEeiQkc1FO4uxgA" type="Transition_Edge" source="_UPQ_cG4wEeiQkc1FO4uxgA" target="_ZPNrQG4wEeiQkc1FO4uxgA">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_V8RGoH1AEeiUl9OrBp2G3w" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_V8RGoX1AEeiUl9OrBp2G3w" key="routing" value="true"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_vF6roH1AEeiUl9OrBp2G3w" key="closestDistance" value="true"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_vP2qwH1AEeiUl9OrBp2G3w" key="avoidObstructions" value="true"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_bezIQ24wEeiQkc1FO4uxgA" type="Transition_NameLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_lbr_oH0MEeiDS63tULewcA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_bezIRG4wEeiQkc1FO4uxgA"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_bezvUG4wEeiQkc1FO4uxgA" type="Transition_GuardLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_lb-6kH0MEeiDS63tULewcA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_bezvUW4wEeiQkc1FO4uxgA"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_bezvUm4wEeiQkc1FO4uxgA" type="Transition_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_lcSckH0MEeiDS63tULewcA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_bezvU24wEeiQkc1FO4uxgA" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_bezIQW4wEeiQkc1FO4uxgA"/>
+ <element xmi:type="uml:Transition" href="TestCGenerator.uml#_bebU0G4wEeiQkc1FO4uxgA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_bezIQm4wEeiQkc1FO4uxgA" points="[501, 160, -643984, -643984]$[621, 171, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_bf4GUG4wEeiQkc1FO4uxgA" id="(1.0,0.45454545454545453)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_bf4GUW4wEeiQkc1FO4uxgA" id="(0.2,0.1)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_mrQKEH0MEeiDS63tULewcA" type="Transition_Edge" source="_UPQ_cG4wEeiQkc1FO4uxgA" target="_T2UT8G4wEeiQkc1FO4uxgA">
+ <children xmi:type="notation:DecorationNode" xmi:id="_mrQKE30MEeiDS63tULewcA" type="Transition_NameLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_nXOfQH0MEeiDS63tULewcA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_mrQKFH0MEeiDS63tULewcA" x="-9" y="13"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_mrQKFX0MEeiDS63tULewcA" type="Transition_GuardLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_nXqkIH0MEeiDS63tULewcA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_mrQKFn0MEeiDS63tULewcA" y="33"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_mrQKF30MEeiDS63tULewcA" type="Transition_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_nYRBEH0MEeiDS63tULewcA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_mrQKGH0MEeiDS63tULewcA" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_mrQKEX0MEeiDS63tULewcA"/>
+ <element xmi:type="uml:Transition" href="TestCGenerator.uml#_mnr4sH0MEeiDS63tULewcA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_mrQKEn0MEeiDS63tULewcA" points="[410, 140, -643984, -643984]$[260, 140, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_mscc4H0MEeiDS63tULewcA" id="(0.0,0.45454545454545453)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_mscc4X0MEeiDS63tULewcA" id="(1.0,0.45454545454545453)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_Ez0gIH0NEeiDS63tULewcA" type="Transition_Edge" source="_UPQ_cG4wEeiQkc1FO4uxgA" target="_UPQ_cG4wEeiQkc1FO4uxgA" routing="Tree">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Ez0gI30NEeiDS63tULewcA" type="Transition_NameLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_GbkhEH0NEeiDS63tULewcA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Ez0gJH0NEeiDS63tULewcA" x="-49" y="13"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_Ez0gJX0NEeiDS63tULewcA" type="Transition_GuardLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_GbuSEH0NEeiDS63tULewcA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Ez0gJn0NEeiDS63tULewcA" x="-11" y="-27"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_Ez0gJ30NEeiDS63tULewcA" type="Transition_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_GcBNAH0NEeiDS63tULewcA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Ez0gKH0NEeiDS63tULewcA" y="60"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_Ez0gIX0NEeiDS63tULewcA"/>
+ <element xmi:type="uml:Transition" href="TestCGenerator.uml#_EzhlMH0NEeiDS63tULewcA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Ez0gIn0NEeiDS63tULewcA" points="[460, 184, -643984, -643984]$[460, 220, -643984, -643984]$[420, 220, -643984, -643984]$[420, 184, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_E0kHAH0NEeiDS63tULewcA" id="(0.594059405940594,1.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_E0kHAX0NEeiDS63tULewcA" id="(0.19801980198019803,1.0)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_rrJxkH0XEeiDS63tULewcA" type="Transition_Edge" source="_UPQ_cG4wEeiQkc1FO4uxgA" target="_UPQ_cG4wEeiQkc1FO4uxgA" routing="Rectilinear">
+ <children xmi:type="notation:DecorationNode" xmi:id="_rrJxk30XEeiDS63tULewcA" type="Transition_NameLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_sUC9kH0XEeiDS63tULewcA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_rrJxlH0XEeiDS63tULewcA" x="-7" y="-33"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_rrJxlX0XEeiDS63tULewcA" type="Transition_GuardLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_sUMukH0XEeiDS63tULewcA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_rrJxln0XEeiDS63tULewcA" x="4" y="-13"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_rrJxl30XEeiDS63tULewcA" type="Transition_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_sUfpgH0XEeiDS63tULewcA" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_rrJxmH0XEeiDS63tULewcA" x="-1" y="57"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_rrJxkX0XEeiDS63tULewcA"/>
+ <element xmi:type="uml:Transition" href="TestCGenerator.uml#_rq22oH0XEeiDS63tULewcA"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_rrJxkn0XEeiDS63tULewcA" points="[420, 140, -643984, -643984]$[420, 100, -643984, -643984]$[460, 100, -643984, -643984]$[460, 140, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_rrwOgH0XEeiDS63tULewcA" id="(0.19801980198019803,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_rrwOgX0XEeiDS63tULewcA" id="(0.594059405940594,0.0)"/>
+ </edges>
+ </notation:Diagram>
+ <notation:Diagram xmi:id="_2ZeSEG5IEeiQkc1FO4uxgA" type="CompositeStructure" name="NewCompositeStructureDiagram" measurementUnit="Pixel">
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_2ZeSEW5IEeiQkc1FO4uxgA" name="diagram_compatibility_version" stringValue="1.4.0"/>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_2ZeSEm5IEeiQkc1FO4uxgA"/>
+ <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_2ZeSE25IEeiQkc1FO4uxgA" diagramKindId="org.eclipse.papyrus.uml.diagram.compositeStructure.root.package">
+ <owner xmi:type="uml:Model" href="TestCGenerator.uml#_dRQ7gG4cEeiQkc1FO4uxgA"/>
+ </styles>
+ <element xmi:type="uml:Model" href="TestCGenerator.uml#_dRQ7gG4cEeiQkc1FO4uxgA"/>
+ </notation:Diagram>
+</xmi:XMI>
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/resources/TestCGenerator.uml b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/resources/TestCGenerator.uml
index dd8f116..a65c256 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/resources/TestCGenerator.uml
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/resources/TestCGenerator.uml
@@ -1,132 +1,132 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<xmi:XMI xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:C_Cpp="http://www.eclipse.org/papyrus/C_Cpp/1" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML">
- <uml:Model xmi:id="_dRQ7gG4cEeiQkc1FO4uxgA" name="TestCGenerator">
- <packageImport xmi:type="uml:PackageImport" xmi:id="_d46xYG4cEeiQkc1FO4uxgA">
- <importedPackage xmi:type="uml:Model" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#_0"/>
- </packageImport>
- <packagedElement xmi:type="uml:Package" xmi:id="_87wFwH0OEeiDS63tULewcA" name="Bathtub">
- <packagedElement xmi:type="uml:Class" xmi:id="_mdTNQG4cEeiQkc1FO4uxgA" name="Bathtub" classifierBehavior="_MYi60G4wEeiQkc1FO4uxgA" isActive="true">
- <ownedAttribute xmi:type="uml:Property" xmi:id="_o3n6oG4cEeiQkc1FO4uxgA" name="Lm">
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
- </ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_pXpegG4cEeiQkc1FO4uxgA" name="l">
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
- </ownedAttribute>
- <ownedBehavior xmi:type="uml:StateMachine" xmi:id="_MYi60G4wEeiQkc1FO4uxgA" name="ButhtubStateMachine">
- <region xmi:type="uml:Region" xmi:id="_OEbN0G4wEeiQkc1FO4uxgA" name="Region1">
- <transition xmi:type="uml:Transition" xmi:id="_aa7QcG4wEeiQkc1FO4uxgA" source="_TWN3kG4wEeiQkc1FO4uxgA" target="_T2FqcG4wEeiQkc1FO4uxgA"/>
- <transition xmi:type="uml:Transition" xmi:id="_a4vN0G4wEeiQkc1FO4uxgA" name="E2F" guard="_fwH04H0VEeiDS63tULewcA" source="_T2FqcG4wEeiQkc1FO4uxgA" target="_UPBu4G4wEeiQkc1FO4uxgA">
- <ownedRule xmi:type="uml:Constraint" xmi:id="_fwH04H0VEeiDS63tULewcA">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_d0KpEH0WEeiDS63tULewcA">
- <language>C/C++</language>
- <body>x <= self->Lm - self->l</body>
- </specification>
- </ownedRule>
- <effect xmi:type="uml:OpaqueBehavior" xmi:id="_wyJmAH7XEei0bqkaoBEVJQ" name="msg">
- <language>C/C++</language>
- <body>printf("New State is Filled \n");</body>
- </effect>
- <trigger xmi:type="uml:Trigger" xmi:id="_nYLSwH0SEeiDS63tULewcA" event="_GQC7oH0PEeiDS63tULewcA"/>
- </transition>
- <transition xmi:type="uml:Transition" xmi:id="_bebU0G4wEeiQkc1FO4uxgA" source="_UPBu4G4wEeiQkc1FO4uxgA" target="_ZO0CoG4wEeiQkc1FO4uxgA"/>
- <transition xmi:type="uml:Transition" xmi:id="_mnr4sH0MEeiDS63tULewcA" name="F2E" guard="__7tWIH0WEeiDS63tULewcA" source="_UPBu4G4wEeiQkc1FO4uxgA" target="_T2FqcG4wEeiQkc1FO4uxgA">
- <ownedRule xmi:type="uml:Constraint" xmi:id="__7tWIH0WEeiDS63tULewcA">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_F8fz4H0XEeiDS63tULewcA">
- <language>C\C++</language>
- <body>self->l-x==0</body>
- </specification>
- </ownedRule>
- <effect xmi:type="uml:OpaqueBehavior" xmi:id="_8he68H7XEei0bqkaoBEVJQ" name="msg">
- <language>C/C++</language>
- <body>printf("New State is Empty \n");</body>
- </effect>
- <trigger xmi:type="uml:Trigger" xmi:id="_3jBJsH0SEeiDS63tULewcA" event="_HFFtQH0PEeiDS63tULewcA"/>
- </transition>
- <transition xmi:type="uml:Transition" xmi:id="_EzhlMH0NEeiDS63tULewcA" name="F2FF" guard="_lriN8H0WEeiDS63tULewcA" source="_UPBu4G4wEeiQkc1FO4uxgA" target="_UPBu4G4wEeiQkc1FO4uxgA">
- <ownedRule xmi:type="uml:Constraint" xmi:id="_lriN8H0WEeiDS63tULewcA">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_vXKlwH0WEeiDS63tULewcA">
- <language>C\C++</language>
- <body>self->l+x<self->Lm</body>
- </specification>
- </ownedRule>
- <effect xmi:type="uml:OpaqueBehavior" xmi:id="_Nx2PgH7YEei0bqkaoBEVJQ" name="msg">
- <language>C/C++</language>
- <body>printf("Remain in the same state Filled \n");</body>
- </effect>
- <trigger xmi:type="uml:Trigger" xmi:id="_9IHJ8H0SEeiDS63tULewcA" event="_GQC7oH0PEeiDS63tULewcA"/>
- </transition>
- <transition xmi:type="uml:Transition" xmi:id="_rq22oH0XEeiDS63tULewcA" name="F2FR" guard="__6IzYH0XEeiDS63tULewcA" source="_UPBu4G4wEeiQkc1FO4uxgA" target="_UPBu4G4wEeiQkc1FO4uxgA">
- <ownedRule xmi:type="uml:Constraint" xmi:id="__6IzYH0XEeiDS63tULewcA">
- <specification xmi:type="uml:OpaqueExpression" xmi:id="_EayUEH0YEeiDS63tULewcA">
- <language>C\C++</language>
- <body>self->l-x > 0</body>
- </specification>
- </ownedRule>
- <effect xmi:type="uml:OpaqueBehavior" xmi:id="_IH0r8H7YEei0bqkaoBEVJQ" name="msg">
- <language>C/C++</language>
- <body>printf("Remain in the same state Filled \n");</body>
- </effect>
- <trigger xmi:type="uml:Trigger" xmi:id="_7qne8H0XEeiDS63tULewcA" event="_HFFtQH0PEeiDS63tULewcA"/>
- </transition>
- <subvertex xmi:type="uml:Pseudostate" xmi:id="_TWN3kG4wEeiQkc1FO4uxgA" name="Initial1"/>
- <subvertex xmi:type="uml:State" xmi:id="_T2FqcG4wEeiQkc1FO4uxgA" name="Empty"/>
- <subvertex xmi:type="uml:State" xmi:id="_UPBu4G4wEeiQkc1FO4uxgA" name="Filled"/>
- <subvertex xmi:type="uml:FinalState" xmi:id="_ZO0CoG4wEeiQkc1FO4uxgA" name="FinalState1"/>
- </region>
- </ownedBehavior>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_uaa00G4cEeiQkc1FO4uxgA" name="fill" visibility="public" method="_kFJtsH0QEeiDS63tULewcA">
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_ufxEsH0LEeiDS63tULewcA" name="x">
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
- </ownedParameter>
- </ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_vg57wG4cEeiQkc1FO4uxgA" name="withdraw" visibility="public" method="_Xw-7cH0SEeiDS63tULewcA">
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_yjtlcG4cEeiQkc1FO4uxgA" name="x">
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
- </ownedParameter>
- </ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_CtKkwH1REeiOvJbQeRuWmA" name="run" method="_hbnPEH1REeiOvJbQeRuWmA"/>
- <nestedClassifier xmi:type="uml:OpaqueBehavior" xmi:id="_kFJtsH0QEeiDS63tULewcA" name="fill" specification="_uaa00G4cEeiQkc1FO4uxgA">
- <language>C/C++</language>
- <body>printf("fill the bathtub with liquid quantity = %d \n", x);
- self->l = self->l + x;
- printf("new level = %d \n", self->l);</body>
- </nestedClassifier>
- <nestedClassifier xmi:type="uml:OpaqueBehavior" xmi:id="_Xw-7cH0SEeiDS63tULewcA" name="withdraw" specification="_vg57wG4cEeiQkc1FO4uxgA">
- <language>C/C++</language>
- <body>printf("remove the liquid quantity %d from the bathtub \n", x);
- self->l = self->l - x;
- printf("new level = %d \n", self->l);</body>
- </nestedClassifier>
- <nestedClassifier xmi:type="uml:OpaqueBehavior" xmi:id="_hbnPEH1REeiOvJbQeRuWmA" name="run" specification="_CtKkwH1REeiOvJbQeRuWmA">
- <language>C/C++</language>
- <body>self->activeStateID = Empty;
- self->l = 0;
- self->Lm = 100;
- Bathtub_fill(self, 50);
- Bathtub_withdraw(self, 10);
- Bathtub_fill(self, 30);
- Bathtub_withdraw(self, 70);</body>
- </nestedClassifier>
- </packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_iYk4gH1PEeiOvJbQeRuWmA" name="Main"/>
- <packagedElement xmi:type="uml:Dependency" xmi:id="_yYOMEH1PEeiOvJbQeRuWmA" client="_iYk4gH1PEeiOvJbQeRuWmA" supplier="_mdTNQG4cEeiQkc1FO4uxgA"/>
- <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_N2I-wH0ZEeiDS63tULewcA">
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_N2KM4H0ZEeiDS63tULewcA" source="http://www.eclipse.org/uml2/2.0.0/UML">
- <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/C_Cpp/1#/"/>
- </eAnnotations>
- <appliedProfile xmi:type="uml:Profile" href="pathmap://PapyrusC_Cpp_PROFILES/C_Cpp.profile.uml#_j9REUByGEduN1bTiWJ0lyw"/>
- </profileApplication>
- </packagedElement>
- <packagedElement xmi:type="uml:Package" xmi:id="_EklfYH0PEeiDS63tULewcA" name="events">
- <packagedElement xmi:type="uml:CallEvent" xmi:id="_GQC7oH0PEeiDS63tULewcA" name="fill" operation="_uaa00G4cEeiQkc1FO4uxgA"/>
- <packagedElement xmi:type="uml:CallEvent" xmi:id="_HFFtQH0PEeiDS63tULewcA" name="remove" operation="_vg57wG4cEeiQkc1FO4uxgA"/>
- </packagedElement>
- <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_ZlGrcG4fEeiQkc1FO4uxgA">
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_ZlP1YG4fEeiQkc1FO4uxgA" source="http://www.eclipse.org/uml2/2.0.0/UML">
- <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/C_Cpp/1#/"/>
- </eAnnotations>
- <appliedProfile xmi:type="uml:Profile" href="pathmap://PapyrusC_Cpp_PROFILES/C_Cpp.profile.uml#_j9REUByGEduN1bTiWJ0lyw"/>
- </profileApplication>
- </uml:Model>
- <C_Cpp:Include xmi:id="_udMg8H1PEeiOvJbQeRuWmA" body="#include "Bathtub.h"

// Include from Include declaration (body)
int main(void) {
	Bathtub * myBathtub =Bathtub_create();
	Bathtub_run (myBathtub);
	return 1;
}" base_class="_iYk4gH1PEeiOvJbQeRuWmA" base_Classifier="_iYk4gH1PEeiOvJbQeRuWmA"/>
-</xmi:XMI>
+<?xml version="1.0" encoding="UTF-8"?>
+<xmi:XMI xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:C_Cpp="http://www.eclipse.org/papyrus/C_Cpp/1" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML">
+ <uml:Model xmi:id="_dRQ7gG4cEeiQkc1FO4uxgA" name="TestCGenerator">
+ <packageImport xmi:type="uml:PackageImport" xmi:id="_d46xYG4cEeiQkc1FO4uxgA">
+ <importedPackage xmi:type="uml:Model" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#_0"/>
+ </packageImport>
+ <packagedElement xmi:type="uml:Package" xmi:id="_87wFwH0OEeiDS63tULewcA" name="Bathtub">
+ <packagedElement xmi:type="uml:Class" xmi:id="_mdTNQG4cEeiQkc1FO4uxgA" name="Bathtub" classifierBehavior="_MYi60G4wEeiQkc1FO4uxgA" isActive="true">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_o3n6oG4cEeiQkc1FO4uxgA" name="Lm">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_pXpegG4cEeiQkc1FO4uxgA" name="l">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
+ </ownedAttribute>
+ <ownedBehavior xmi:type="uml:StateMachine" xmi:id="_MYi60G4wEeiQkc1FO4uxgA" name="ButhtubStateMachine">
+ <region xmi:type="uml:Region" xmi:id="_OEbN0G4wEeiQkc1FO4uxgA" name="Region1">
+ <transition xmi:type="uml:Transition" xmi:id="_aa7QcG4wEeiQkc1FO4uxgA" source="_TWN3kG4wEeiQkc1FO4uxgA" target="_T2FqcG4wEeiQkc1FO4uxgA"/>
+ <transition xmi:type="uml:Transition" xmi:id="_a4vN0G4wEeiQkc1FO4uxgA" name="E2F" guard="_fwH04H0VEeiDS63tULewcA" source="_T2FqcG4wEeiQkc1FO4uxgA" target="_UPBu4G4wEeiQkc1FO4uxgA">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_fwH04H0VEeiDS63tULewcA">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_d0KpEH0WEeiDS63tULewcA">
+ <language>C/C++</language>
+ <body>x <= self->Lm - self->l</body>
+ </specification>
+ </ownedRule>
+ <effect xmi:type="uml:OpaqueBehavior" xmi:id="_wyJmAH7XEei0bqkaoBEVJQ" name="msg">
+ <language>C/C++</language>
+ <body>printf("New State is Filled \n");</body>
+ </effect>
+ <trigger xmi:type="uml:Trigger" xmi:id="_nYLSwH0SEeiDS63tULewcA" event="_GQC7oH0PEeiDS63tULewcA"/>
+ </transition>
+ <transition xmi:type="uml:Transition" xmi:id="_bebU0G4wEeiQkc1FO4uxgA" source="_UPBu4G4wEeiQkc1FO4uxgA" target="_ZO0CoG4wEeiQkc1FO4uxgA"/>
+ <transition xmi:type="uml:Transition" xmi:id="_mnr4sH0MEeiDS63tULewcA" name="F2E" guard="__7tWIH0WEeiDS63tULewcA" source="_UPBu4G4wEeiQkc1FO4uxgA" target="_T2FqcG4wEeiQkc1FO4uxgA">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="__7tWIH0WEeiDS63tULewcA">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_F8fz4H0XEeiDS63tULewcA">
+ <language>C\C++</language>
+ <body>self->l-x==0</body>
+ </specification>
+ </ownedRule>
+ <effect xmi:type="uml:OpaqueBehavior" xmi:id="_8he68H7XEei0bqkaoBEVJQ" name="msg">
+ <language>C/C++</language>
+ <body>printf("New State is Empty \n");</body>
+ </effect>
+ <trigger xmi:type="uml:Trigger" xmi:id="_3jBJsH0SEeiDS63tULewcA" event="_HFFtQH0PEeiDS63tULewcA"/>
+ </transition>
+ <transition xmi:type="uml:Transition" xmi:id="_EzhlMH0NEeiDS63tULewcA" name="F2FF" guard="_lriN8H0WEeiDS63tULewcA" source="_UPBu4G4wEeiQkc1FO4uxgA" target="_UPBu4G4wEeiQkc1FO4uxgA">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="_lriN8H0WEeiDS63tULewcA">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_vXKlwH0WEeiDS63tULewcA">
+ <language>C\C++</language>
+ <body>self->l+x<self->Lm</body>
+ </specification>
+ </ownedRule>
+ <effect xmi:type="uml:OpaqueBehavior" xmi:id="_Nx2PgH7YEei0bqkaoBEVJQ" name="msg">
+ <language>C/C++</language>
+ <body>printf("Remain in the same state Filled \n");</body>
+ </effect>
+ <trigger xmi:type="uml:Trigger" xmi:id="_9IHJ8H0SEeiDS63tULewcA" event="_GQC7oH0PEeiDS63tULewcA"/>
+ </transition>
+ <transition xmi:type="uml:Transition" xmi:id="_rq22oH0XEeiDS63tULewcA" name="F2FR" guard="__6IzYH0XEeiDS63tULewcA" source="_UPBu4G4wEeiQkc1FO4uxgA" target="_UPBu4G4wEeiQkc1FO4uxgA">
+ <ownedRule xmi:type="uml:Constraint" xmi:id="__6IzYH0XEeiDS63tULewcA">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_EayUEH0YEeiDS63tULewcA">
+ <language>C\C++</language>
+ <body>self->l-x > 0</body>
+ </specification>
+ </ownedRule>
+ <effect xmi:type="uml:OpaqueBehavior" xmi:id="_IH0r8H7YEei0bqkaoBEVJQ" name="msg">
+ <language>C/C++</language>
+ <body>printf("Remain in the same state Filled \n");</body>
+ </effect>
+ <trigger xmi:type="uml:Trigger" xmi:id="_7qne8H0XEeiDS63tULewcA" event="_HFFtQH0PEeiDS63tULewcA"/>
+ </transition>
+ <subvertex xmi:type="uml:Pseudostate" xmi:id="_TWN3kG4wEeiQkc1FO4uxgA" name="Initial1"/>
+ <subvertex xmi:type="uml:State" xmi:id="_T2FqcG4wEeiQkc1FO4uxgA" name="Empty"/>
+ <subvertex xmi:type="uml:State" xmi:id="_UPBu4G4wEeiQkc1FO4uxgA" name="Filled"/>
+ <subvertex xmi:type="uml:FinalState" xmi:id="_ZO0CoG4wEeiQkc1FO4uxgA" name="FinalState1"/>
+ </region>
+ </ownedBehavior>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_uaa00G4cEeiQkc1FO4uxgA" name="fill" visibility="public" method="_kFJtsH0QEeiDS63tULewcA">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_ufxEsH0LEeiDS63tULewcA" name="x">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
+ </ownedParameter>
+ </ownedOperation>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_vg57wG4cEeiQkc1FO4uxgA" name="withdraw" visibility="public" method="_Xw-7cH0SEeiDS63tULewcA">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_yjtlcG4cEeiQkc1FO4uxgA" name="x">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
+ </ownedParameter>
+ </ownedOperation>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_CtKkwH1REeiOvJbQeRuWmA" name="run" method="_hbnPEH1REeiOvJbQeRuWmA"/>
+ <nestedClassifier xmi:type="uml:OpaqueBehavior" xmi:id="_kFJtsH0QEeiDS63tULewcA" name="fill" specification="_uaa00G4cEeiQkc1FO4uxgA">
+ <language>C/C++</language>
+ <body>printf("fill the bathtub with liquid quantity = %d \n", x);
+ self->l = self->l + x;
+ printf("new level = %d \n", self->l);</body>
+ </nestedClassifier>
+ <nestedClassifier xmi:type="uml:OpaqueBehavior" xmi:id="_Xw-7cH0SEeiDS63tULewcA" name="withdraw" specification="_vg57wG4cEeiQkc1FO4uxgA">
+ <language>C/C++</language>
+ <body>printf("remove the liquid quantity %d from the bathtub \n", x);
+ self->l = self->l - x;
+ printf("new level = %d \n", self->l);</body>
+ </nestedClassifier>
+ <nestedClassifier xmi:type="uml:OpaqueBehavior" xmi:id="_hbnPEH1REeiOvJbQeRuWmA" name="run" specification="_CtKkwH1REeiOvJbQeRuWmA">
+ <language>C/C++</language>
+ <body>self->activeStateID = Empty;
+ self->l = 0;
+ self->Lm = 100;
+ Bathtub_fill(self, 50);
+ Bathtub_withdraw(self, 10);
+ Bathtub_fill(self, 30);
+ Bathtub_withdraw(self, 70);</body>
+ </nestedClassifier>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_iYk4gH1PEeiOvJbQeRuWmA" name="Main"/>
+ <packagedElement xmi:type="uml:Dependency" xmi:id="_yYOMEH1PEeiOvJbQeRuWmA" client="_iYk4gH1PEeiOvJbQeRuWmA" supplier="_mdTNQG4cEeiQkc1FO4uxgA"/>
+ <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_N2I-wH0ZEeiDS63tULewcA">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_N2KM4H0ZEeiDS63tULewcA" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/C_Cpp/1#/"/>
+ </eAnnotations>
+ <appliedProfile xmi:type="uml:Profile" href="pathmap://PapyrusC_Cpp_PROFILES/C_Cpp.profile.uml#_j9REUByGEduN1bTiWJ0lyw"/>
+ </profileApplication>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Package" xmi:id="_EklfYH0PEeiDS63tULewcA" name="events">
+ <packagedElement xmi:type="uml:CallEvent" xmi:id="_GQC7oH0PEeiDS63tULewcA" name="fill" operation="_uaa00G4cEeiQkc1FO4uxgA"/>
+ <packagedElement xmi:type="uml:CallEvent" xmi:id="_HFFtQH0PEeiDS63tULewcA" name="remove" operation="_vg57wG4cEeiQkc1FO4uxgA"/>
+ </packagedElement>
+ <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_ZlGrcG4fEeiQkc1FO4uxgA">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_ZlP1YG4fEeiQkc1FO4uxgA" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/C_Cpp/1#/"/>
+ </eAnnotations>
+ <appliedProfile xmi:type="uml:Profile" href="pathmap://PapyrusC_Cpp_PROFILES/C_Cpp.profile.uml#_j9REUByGEduN1bTiWJ0lyw"/>
+ </profileApplication>
+ </uml:Model>
+ <C_Cpp:Include xmi:id="_udMg8H1PEeiOvJbQeRuWmA" body="#include "Bathtub.h"

// Include from Include declaration (body)
int main(void) {
	Bathtub * myBathtub =Bathtub_create();
	Bathtub_run (myBathtub);
	return 1;
}" base_class="_iYk4gH1PEeiOvJbQeRuWmA" base_Classifier="_iYk4gH1PEeiOvJbQeRuWmA"/>
+</xmi:XMI>
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/CLangCodegen.java b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/CLangCodegen.java
index 6166782..79e1685 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/CLangCodegen.java
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/CLangCodegen.java
@@ -21,7 +21,6 @@
import org.eclipse.papyrus.designer.languages.common.extensionpoints.MethodInfo;
import org.eclipse.papyrus.designer.languages.common.extensionpoints.SyncInformation;
import org.eclipse.papyrus.designer.languages.cpp.profile.C_Cpp.C_CppPackage;
-import org.eclipse.uml2.uml.Classifier;
import org.eclipse.uml2.uml.Element;
import org.eclipse.uml2.uml.NamedElement;
import org.eclipse.uml2.uml.Package;
@@ -40,12 +39,12 @@
@Override
public String getDescription() {
- return "A C code generator. Requires the common C/C++ profile";
+ return "A C code generator. Requires the common C/C++ profile"; //$NON-NLS-1$
}
@Override
public boolean isEligible(Element modelElement) {
- if (modelElement instanceof Classifier) {
+ if (modelElement instanceof PackageableElement) {
Package nearestPackage = modelElement.getNearestPackage();
if (nearestPackage != null) {
// check whether the C++ profile is applied
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/doxygen/doxyfileScript.xtend b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/doxygen/doxyfileScript.xtend
index 4f6e759..54255ea 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/doxygen/doxyfileScript.xtend
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/doxygen/doxyfileScript.xtend
@@ -5,7 +5,7 @@
import org.eclipse.uml2.uml.Package
class doxyfileScript {
- def public static doxyfileScript(Model model) '''
+ def static doxyfileScript(Model model) '''
// This template is called by the main module file
#---------------------------------------------------------------------------
# Project related configuration options
@@ -233,8 +233,7 @@
SEARCHENGINE = NO
'''
-
- def public static genPackagePaths(Package pkg) '''
+ def static genPackagePaths(Package pkg) '''
«pkg.qualifiedName.replace(".", "/")»
'''
}
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/header/classHeaderScript.xtend b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/header/classHeaderScript.xtend
index e33b290..e05890e 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/header/classHeaderScript.xtend
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/header/classHeaderScript.xtend
@@ -44,10 +44,8 @@
'''
def static classHeaderBody(Class clazz) '''
-
-
-
- «IF (clazz.classifierBehavior != null && !clazz.ownedBehaviors.filter(StateMachine).isEmpty)»
+
+ «IF (clazz.classifierBehavior !== null && !clazz.ownedBehaviors.filter(StateMachine).isEmpty)»
// ----------------------------------Enum State declaration ----------------------------------
«clazz.partComment('Enum State declaration')»
«clazz.ownedBehaviors.filter(StateMachine).head.genStateEnumPrototype»
@@ -55,7 +53,7 @@
«clazz.partComment('State_t declaration')»
«clazz.ownedBehaviors.filter(StateMachine).head.genStatetStructure»
«ENDIF»
-
+
«IF (clazz.visibility == VisibilityKind.PUBLIC_LITERAL)»
«clazz.partComment('Public Class Description')»
// Structure
@@ -76,11 +74,11 @@
// ----------------------------------Public Global VariableDescription----------------------------------
- «IF (clazz.ownedAttributes.filter[isStatic && visibility == VisibilityKind.PUBLIC_LITERAL && type != null].size > 0)»
+ «IF (clazz.ownedAttributes.filter[isStatic && visibility == VisibilityKind.PUBLIC_LITERAL && type !== null].size > 0)»
«clazz.partComment('Global Public Variable Declarations')»
«ENDIF»
«FOR attribute : clazz.ownedAttributes»
- «IF (attribute.isStatic && attribute.visibility == VisibilityKind.PUBLIC_LITERAL && attribute.type != null)»
+ «IF (attribute.isStatic && attribute.visibility == VisibilityKind.PUBLIC_LITERAL && attribute.type !== null)»
// global variable declaration
«attribute.genVariableDeclaration»
«ENDIF»
@@ -113,7 +111,7 @@
«ENDIF»
- «IF (clazz.classifierBehavior != null && !clazz.ownedBehaviors.filter(StateMachine).isEmpty)»
+ «IF (clazz.classifierBehavior !== null && !clazz.ownedBehaviors.filter(StateMachine).isEmpty)»
«var sm = clazz.ownedBehaviors.filter(StateMachine).head»
// ----------------------------------Entry Exit and DoActivity Prototypes for each state ----------------------------------
«IF !sm.regions.head.subvertices.filter(State).filter[!(it instanceof FinalState)].isEmpty»
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/header/commonHeaderScript.xtend b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/header/commonHeaderScript.xtend
index 14e08da..9031ea2 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/header/commonHeaderScript.xtend
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/header/commonHeaderScript.xtend
@@ -15,13 +15,13 @@
import org.eclipse.uml2.uml.NamedElement
class commonHeaderScript {
- def public static genHeadingHeader(NamedElement namedElement) '''
+ def static genHeadingHeader(NamedElement namedElement) '''
#ifndef «namedElement.genName.toString.toUpperCase»_H_
#define «namedElement.genName.toString.toUpperCase»_H_
'''
- def public static genEndHeader(NamedElement namedElement) '''
+ def static genEndHeader(NamedElement namedElement) '''
#endif /*«namedElement.genName.toString.toUpperCase»_H_*/
'''
}
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/header/dataTypeHeaderScript.xtend b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/header/dataTypeHeaderScript.xtend
index 08f8b1d..07a3d37 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/header/dataTypeHeaderScript.xtend
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/header/dataTypeHeaderScript.xtend
@@ -22,11 +22,10 @@
import static extension org.eclipse.papyrus.designer.languages.c.codegen.services.UmlCommentServices.*
class dataTypeHeaderScript {
- def public static dataTypefill(DataType dataType) '''
+ def static dataTypefill(DataType dataType) '''
'''
-
- def public static dataTypeHeaderScript(DataType dataType) '''
+ def static dataTypeHeaderScript(DataType dataType) '''
// This template is called by the main module file
«dataType.genHeading»
@@ -41,8 +40,7 @@
«dataType.genEndHeader»
'''
-
- def public static dataTypeHeaderBody(DataType dataType) '''
+ def static dataTypeHeaderBody(DataType dataType) '''
«dataType.partComment('Public Class Description')»
// Structure
«dataType.genDataTypeStructDeclarations()»
@@ -51,11 +49,11 @@
«dataType.genDefaultInitialisationProtoype()»
// ----------------------------------Public Global VariableDescription----------------------------------
- «IF (dataType.ownedAttributes.filter[isStatic && visibility == VisibilityKind.PUBLIC_LITERAL && type != null].size> 0)»
+ «IF (dataType.ownedAttributes.filter[isStatic && visibility == VisibilityKind.PUBLIC_LITERAL && type !== null].size> 0)»
«dataType.partComment('Global Public Variable Declarations')»
«ENDIF»
«FOR attribute : dataType.ownedAttributes.filter[!isStatic]»
- «IF (attribute.visibility == VisibilityKind.PUBLIC_LITERAL && attribute.type != null)»
+ «IF (attribute.visibility == VisibilityKind.PUBLIC_LITERAL && attribute.type !== null)»
// global variable declaration
«attribute.genVariableDeclaration()»
«ENDIF»
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/lib/TransformationUtil.xtend b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/lib/TransformationUtil.xtend
index f443cd3..6dfdc51 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/lib/TransformationUtil.xtend
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/lib/TransformationUtil.xtend
@@ -26,7 +26,6 @@
import org.eclipse.uml2.uml.State
import java.util.ArrayList
import org.eclipse.uml2.uml.OpaqueBehavior
-import org.eclipse.uml2.uml.Transition
import org.eclipse.uml2.uml.FinalState
import org.eclipse.uml2.uml.Event
import org.eclipse.uml2.uml.Behavior
@@ -39,7 +38,7 @@
pack.ownedElements.filter(typeof(Class)).forEach[
var behavior = it.ownedBehaviors.filter(typeof(StateMachine)).head
- if (behavior != null) {
+ if (behavior !== null) {
map.put(it, behavior)
}
]
@@ -47,7 +46,7 @@
return map
}
- public static def Pseudostate firstPseudoState(Region region, PseudostateKind kind) {
+ static def Pseudostate firstPseudoState(Region region, PseudostateKind kind) {
for (Vertex vertex : region.getSubvertices()) {
if (vertex instanceof Pseudostate) {
var pseudoState = vertex as Pseudostate
@@ -59,20 +58,20 @@
return null;
}
- public static def List<State> findCompositeStatesInRegion(Vertex des1, Vertex des2) {
+ static def List<State> findCompositeStatesInRegion(Vertex des1, Vertex des2) {
var ret = new ArrayList<State>
val path1 = new ArrayList<State>
if (des1 instanceof State) {
path1.add(des1)
}
var owner1 = des1.container.state
- while(owner1 != null) {
+ while(owner1 !== null) {
path1.add(owner1)
owner1 = owner1.container.state
}
var owner2 = des2
- while(owner2 != null && ret.empty) {
+ while(owner2 !== null && ret.empty) {
for(s:path1) {
if (s.container == owner2.container && owner2 instanceof State) {
ret.add(s)
@@ -87,7 +86,7 @@
def static State findInitialState(Region r) {
var pseudoDefault = TransformationUtil.firstPseudoState(r, PseudostateKind.INITIAL_LITERAL)
- if (pseudoDefault != null) {
+ if (pseudoDefault !== null) {
return pseudoDefault.outgoings.head.target as State
}
return null
@@ -95,9 +94,9 @@
def static String getInitialEffect(Region r) {
var pseudoDefault = TransformationUtil.firstPseudoState(r, PseudostateKind.INITIAL_LITERAL)
- if (pseudoDefault != null) {
+ if (pseudoDefault !== null) {
var t = pseudoDefault.outgoings.head
- if (t.effect != null && t.effect instanceof OpaqueBehavior) {
+ if (t.effect !== null && t.effect instanceof OpaqueBehavior) {
return (t.effect as OpaqueBehavior).bodies.head
}
}
@@ -130,7 +129,7 @@
/**
* Return the name of an event (remove non-ASCII characters)
*/
- public def static eventName(Event event) {
+ def static eventName(Event event) {
var name = ""
var repeat = false
for (c : event.name.toCharArray) {
@@ -149,7 +148,7 @@
/**
* Return the ID of an event
*/
- public def static eventID(Event event) {
+ def static eventID(Event event) {
event.eventName.toUpperCase + "_ID"
}
@@ -162,7 +161,7 @@
}
def static isBehaviorExist(Behavior b) {
- if (b != null && b instanceof OpaqueBehavior) {
+ if (b !== null && b instanceof OpaqueBehavior) {
return !GenUtils.getBodyFromOB(b as OpaqueBehavior, functionScript.CLANGUAGE).empty
}
return false
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/lib/behaviorScript.xtend b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/lib/behaviorScript.xtend
index 2a69150..c0c32c3 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/lib/behaviorScript.xtend
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/lib/behaviorScript.xtend
@@ -23,7 +23,7 @@
class behaviorScript {
static def returnSpec(Behavior behavior) '''
- «IF (GenUtils.returnResult(behavior) == null)»void «ELSE»«Modifier.modCVQualifier(GenUtils.returnResult(behavior))» «CGenUtils.cppQualifiedName(GenUtils.returnResult(behavior).type)»«Modifier.modPtr(GenUtils.returnResult(behavior))»«Modifier.modRef(GenUtils.returnResult(behavior))» «ENDIF»
+ «IF (GenUtils.returnResult(behavior) === null)»void «ELSE»«Modifier.modCVQualifier(GenUtils.returnResult(behavior))» «CGenUtils.cppQualifiedName(GenUtils.returnResult(behavior).type)»«Modifier.modPtr(GenUtils.returnResult(behavior))»«Modifier.modRef(GenUtils.returnResult(behavior))» «ENDIF»
'''
static def behaviorImplementation(String name,OpaqueBehavior behavior) '''
@@ -59,6 +59,6 @@
}
static def defaultValue(Parameter parameter) {
- if (parameter.defaultValue != null) " = " + parameter.defaultValue.stringValue() else ""
+ if (parameter.defaultValue !== null) " = " + parameter.defaultValue.stringValue() else ""
}
}
\ No newline at end of file
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/lib/classScript.xtend b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/lib/classScript.xtend
index 13b9397..7230f89 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/lib/classScript.xtend
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/lib/classScript.xtend
@@ -26,14 +26,14 @@
import static extension org.eclipse.papyrus.designer.languages.common.base.GenUtils.*
class classScript {
- def public static genDynamicInstanciationOperationPrototypes(Class clazz) '''
+ def static genDynamicInstanciationOperationPrototypes(Class clazz) '''
«clazz.partComment('Default constructor & destructor prototypes')»
«clazz.genConstructorPrototype»
«clazz.genDestructorPrototype»
'''
// generate a constructor prototype, if there is none
- def public static genConstructorPrototype(Class clazz) '''
+ def static genConstructorPrototype(Class clazz) '''
«IF (clazz.ownedOperations.filter[hasStereotype(Create)].size == 0)»
/**
* Dynamic instantiation of a «clazz.genName()» structure
@@ -45,7 +45,7 @@
'''
// generate a destructor prototype, if there is none
- def public static genDestructorPrototype(Class clazz) '''
+ def static genDestructorPrototype(Class clazz) '''
«IF (clazz.ownedOperations.filter[hasStereotype(Destroy)].size == 0)»
/**
* Dynamic destruction of a «clazz.genName()» structure instantiation
@@ -56,14 +56,14 @@
«ENDIF»
'''
- def public static genDynamicInstanciationOperations(Class clazz) '''
+ def static genDynamicInstanciationOperations(Class clazz) '''
«clazz.partComment('Default constructor & destructor implementations')»
«clazz.genConstructor»
«clazz.genDestructor»
'''
// generate a constructor, if there is none
- def public static genConstructor(Class clazz) '''
+ def static genConstructor(Class clazz) '''
«IF (clazz.ownedOperations.filter[hasStereotype(Create)].size == 0)»
«clazz.genName()»* «clazz.genName()»_create() {
«clazz.genName()»* self = («clazz.genName()»*) malloc(sizeof(«clazz.genName()»));
@@ -76,7 +76,7 @@
'''
// generate a destructor implementation, if there is none
- def public static genDestructor(Class clazz) '''
+ def static genDestructor(Class clazz) '''
«IF (clazz.ownedOperations.filter[hasStereotype(Destroy)].size == 0)»
// default destructor
void «clazz.genName()»_destroy(«clazz.genName()»* self) {
@@ -86,7 +86,7 @@
«ENDIF»
'''
- def public static genDefaultInitialisationProtoype(Class clazz) '''
+ def static genDefaultInitialisationProtoype(Class clazz) '''
«IF (!clazz.ownedBehaviors.filter(StateMachine).isEmpty || clazz.getAllAttributes.filter[defaultValue !== null].size > 0)»
«clazz.partComment('Default value initialization prototypes')»
/**
@@ -99,7 +99,7 @@
«ENDIF»
'''
- def public static genDefaultIntialisationOperation(Class clazz) '''
+ def static genDefaultIntialisationOperation(Class clazz) '''
«IF (!clazz.ownedBehaviors.filter(StateMachine).isEmpty || clazz.getAllAttributes.filter[defaultValue !== null].size > 0)»
void «clazz.genName()»_init(«clazz.genName()»* self) {
@@ -151,14 +151,14 @@
«ENDIF»
'''
- def public static defaultIntialisationCall(Class clazz) '''
+ def static defaultIntialisationCall(Class clazz) '''
«IF (clazz.getAllAttributes.filter[defaultValue !== null].size > 0)»
/* Default value initialization */
«clazz.genName()»_init(&«clazz.genName()»);
«ENDIF»
'''
- def public static genClassStructDeclarations(Class clazz) '''
+ def static genClassStructDeclarations(Class clazz) '''
/* Class Macro definition */
#define «clazz.genName()»(OBJ) ((«clazz.genName()»*)OBJ)
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/lib/commonScript.xtend b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/lib/commonScript.xtend
index b09ed81..7318506 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/lib/commonScript.xtend
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/lib/commonScript.xtend
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2015 CEA LIST.
+ * Copyright (c) 2020 CEA LIST.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -27,7 +27,7 @@
import static extension org.eclipse.papyrus.designer.languages.common.base.GenUtils.*
class commonScript {
- def public static genHeading(NamedElement namedElement) '''
+ def static genHeading(NamedElement namedElement) '''
/*
* File generated from the «namedElement.qualifiedName» uml class
* Generated by the Papyrus C Generator (CEA LIST)
@@ -36,14 +36,14 @@
'''
//* $ Date : «namedElement.getShortDate» «namedElement.getTime()» («namedElement.getLongDate()») $
- def public static packagePath(NamedElement element) '''
+ def static packagePath(NamedElement element) '''
«element.qualifiedName.replace('.', File.separator)»
'''
- def public static genComment(Element element) {
+ def static genComment(Element element) {
var commentText = ""; //$NON-NLS-1$
- for (Comment comment : element.getOwnedComments()) {
+ for (Comment comment : element.ownedComments) {
// remove eventual CRs (avoid confusion in Acceleo template which adds " *" after line breaks)
commentText += GenUtils.cleanCR(comment.getBody());
}
@@ -56,27 +56,27 @@
}
- def public static genAbstract(Class clazz) '''
+ def static genAbstract(Class clazz) '''
«IF (clazz.isAbstract)»abstract «ENDIF»
'''
- def public static genAbstract(Operation operation) '''
+ def static genAbstract(Operation operation) '''
«IF (operation.isAbstract)»abstract «ENDIF»
'''
- def public static genFinal(RedefinableElement redefinableElement) '''
+ def static genFinal(RedefinableElement redefinableElement) '''
«IF (redefinableElement.isLeaf)»final «ENDIF»
'''
- def public static genStatic(Feature feature) '''
+ def static genStatic(Feature feature) '''
«IF (feature.isStatic)»static «ENDIF»
'''
- def public static HeaderPackageImportTemplate(PackageImport packageImport) '''
+ def static HeaderPackageImportTemplate(PackageImport packageImport) '''
«IF (packageImport.importedPackage.hasStereotype(ModelLibrary))»
#include <«packageImport.importedPackage.name».h>
«ELSE»
@@ -85,16 +85,16 @@
'''
- def public static genName(NamedElement namedElement) '''
+ def static genName(NamedElement namedElement) '''
«namedElement.genVisibility»«namedElement.genCoreName()»'''
- def public static genCoreName(NamedElement namedElement) {
+ def static genCoreName(NamedElement namedElement) {
'''«namedElement.name.replaceAll("/|\\.|~", "_")»'''
}
- def public static genVisibility(NamedElement namedElement) {
+ def static genVisibility(NamedElement namedElement) {
'''«IF (namedElement.visibility == VisibilityKind.PRIVATE_LITERAL)»
/* private */
«ELSEIF (namedElement.visibility == VisibilityKind.PROTECTED_LITERAL)»
@@ -103,7 +103,7 @@
}
- def public static genIncludeSelf(NamedElement namedElement) '''
+ def static genIncludeSelf(NamedElement namedElement) '''
/* include header file*/
#include "«namedElement.genName».h"
'''
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/lib/dataTypeScript.xtend b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/lib/dataTypeScript.xtend
index cdcee11..7dda053 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/lib/dataTypeScript.xtend
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/lib/dataTypeScript.xtend
@@ -26,8 +26,8 @@
import org.eclipse.uml2.uml.FinalState
class dataTypeScript {
- def public static genDefaultInitialisationProtoype(DataType dataType) '''
- «IF (dataType.ownedAttributes.filter[defaultValue != null].size > 0)»
+ def static genDefaultInitialisationProtoype(DataType dataType) '''
+ «IF (dataType.ownedAttributes.filter[defaultValue !== null].size > 0)»
«dataType.partComment('Default value initialization prototypes')»
/*
* Default value initialization
@@ -40,12 +40,12 @@
'''
- def public static genDefaultIntialisationOperation(DataType dataType) '''
- «IF (dataType.ownedAttributes.filter[defaultValue != null].size > 0)»
+ def static genDefaultIntialisationOperation(DataType dataType) '''
+ «IF (dataType.ownedAttributes.filter[defaultValue !== null].size > 0)»
«dataType.partComment('Default value initialization Implementation')»
void «dataType.genName()»_init(«dataType.genName()»* self){
«FOR attribute : dataType.ownedAttributes»
- «IF (attribute.defaultValue != null && !attribute.isStatic && attribute.type != null)»
+ «IF (attribute.defaultValue !== null && !attribute.isStatic && attribute.type !== null)»
«attribute.genInitDefaultValue()»
«ENDIF»
«ENDFOR»
@@ -54,7 +54,7 @@
'''
- def public static genDataTypeStructDeclarations(DataType dataType) '''
+ def static genDataTypeStructDeclarations(DataType dataType) '''
«FOR comment : dataType.ownedComments»
«comment.genComment()»
«ENDFOR»
@@ -68,7 +68,7 @@
'''
- def public static genDataTypeStructDeclarations(Enumeration enumeration) '''
+ def static genDataTypeStructDeclarations(Enumeration enumeration) '''
«FOR comment : enumeration.ownedComments»
«comment.genComment()»
«ENDFOR»
@@ -80,20 +80,19 @@
«ENDFOR»
};
'''
-def public static genStateEnumPrototype(StateMachine sm) '''
-
-typedef enum StateIDEnum StateIDEnum;
+
+ def static genStateEnumPrototype(StateMachine sm) '''
+ typedef enum StateIDEnum StateIDEnum;
enum StateIDEnum {
«FOR state : sm.regions.head.subvertices.filter(State).filter[!(it instanceof FinalState)]»
«state.genName()»,
«ENDFOR»
};
-'''
+ '''
-def public static genStatetStructure(StateMachine sm) '''
-
-typedef struct State_t State_t;
+ def static genStatetStructure(StateMachine sm) '''
+ typedef struct State_t State_t;
struct State_t {
void (*entry)();
@@ -101,8 +100,9 @@
void (*doActivity)();
};
-'''
- def public static genDataTypeStructDeclarations(PrimitiveType primitiveType) '''
+ '''
+
+ def static genDataTypeStructDeclarations(PrimitiveType primitiveType) '''
«FOR comment : primitiveType.ownedComments»
«comment.genComment()»
«ENDFOR»
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/lib/functionScript.xtend b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/lib/functionScript.xtend
index 102204d..99f8a8d 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/lib/functionScript.xtend
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/lib/functionScript.xtend
@@ -37,7 +37,6 @@
import static extension org.eclipse.papyrus.designer.languages.common.base.GenUtils.*
import static extension org.eclipse.uml2.uml.util.UMLUtil.getStereotypeApplication
import org.eclipse.papyrus.designer.languages.c.codegen.utils.CClassUtils
-import org.eclipse.papyrus.designer.languages.common.base.GenUtils
class functionScript {
final public static Pattern CLANGUAGE = Pattern.compile("C|C\\/C\\+\\+|c")
@@ -83,7 +82,7 @@
val clazz = reception.owner as Class
var SignalEvent signalEvent = null
var i = 0;
- var triggers = (reception.owner as Class).classifierBehavior.allOwnedElements.filter(Trigger)
+ var triggers = clazz.classifierBehavior.allOwnedElements.filter(Trigger)
while (signalEvent === null && i < triggers.size) {
val trigger = triggers.get(i)
@@ -371,7 +370,7 @@
}
def static genReturnArgumentType(Operation operation, boolean isHeader) '''
- «IF (operation.getReturnResult != null)»
+ «IF (operation.getReturnResult !== null)»
«val declaredClassifiers = CClassUtils.declaredClassifiers(operation.class_)»
«operation.getReturnResult.genStruct(isHeader, declaredClassifiers)»«operation.getReturnResult.genType»«operation.getReturnResult.genPointer»
«ELSE»
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/lib/importScript.xtend b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/lib/importScript.xtend
index 1ca58ab..06b4300 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/lib/importScript.xtend
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/lib/importScript.xtend
@@ -20,7 +20,7 @@
import org.eclipse.papyrus.designer.languages.cpp.profile.C_Cpp.ExternLibrary
import org.eclipse.papyrus.designer.languages.cpp.profile.C_Cpp.External
import org.eclipse.papyrus.designer.languages.cpp.profile.C_Cpp.Include
-import org.eclipse.papyrus.designer.languages.cpp.profile.C_Cpp.NoCodeGen
+import org.eclipse.papyrus.designer.languages.common.profile.Codegen.NoCodeGen
import org.eclipse.papyrus.designer.languages.cpp.profile.C_Cpp.Template
import org.eclipse.uml2.uml.Classifier
import org.eclipse.uml2.uml.Enumeration
@@ -33,7 +33,7 @@
import org.eclipse.papyrus.designer.languages.c.codegen.utils.CClassUtils
class importScript {
- def public static genHeaderIncludes(Classifier classifier) '''
+ def static genHeaderIncludes(Classifier classifier) '''
«classifier.partComment('Includes and declares')»
««« Derived includes from required classifiers that are not pointers
// Derived includes
@@ -58,7 +58,7 @@
// End of Std headers
'''
- def public static genBodyIncludes(Classifier classifier) '''
+ def static genBodyIncludes(Classifier classifier) '''
««« Includes from <<Include>> stereotype's preBody attribute
«CIncludePreBody(classifier)»
««« Include self header
@@ -75,7 +75,7 @@
// TODO: why do need stdlib in this case?
// TODO: why do we need this at all?
- def public static genStdInclude() '''
+ def static genStdInclude() '''
#include <stdio.h>
#include <stdlib.h>
#include <stdint.h>
@@ -122,11 +122,11 @@
//str = null
}
}
- return newList.filter[str | str != null]
+ return newList.filter[str | str !== null]
}
static def cOwnerPackageIncludePath(Package pkg) {
- if ((pkg != null) && (!GenUtils.hasStereotype(pkg, CppRoot))) {
+ if ((pkg !== null) && (!GenUtils.hasStereotype(pkg, CppRoot))) {
return GenUtils.getFullPath(pkg) + '/Pkg_' + pkg.name + '.h'
} else {
return null
@@ -176,7 +176,7 @@
}
static def declareDirective(String path) {
- if ((path != null) && (path.length > 0)) {
+ if ((path !== null) && (path.length > 0)) {
return path
}
}
@@ -188,8 +188,8 @@
static def cClassAllDeclares(Classifier classifier, EList<Classifier> declaredClassifiers, EList<Classifier> includedClassifiers) {
var List<String> newList = new ArrayList<String>()
- if (declaredClassifiers != null) {
- if (includedClassifiers != null) {
+ if (declaredClassifiers !== null) {
+ if (includedClassifiers !== null) {
declaredClassifiers.removeAll(includedClassifiers)
}
@@ -210,7 +210,7 @@
}
}
- return newList.filter[str | str != null]
+ return newList.filter[str | str !== null]
}
static def CIncludeHeader(NamedElement ne) {
@@ -236,7 +236,7 @@
static def CIncludePreBody(NamedElement ne) {
if (GenUtils.hasStereotype(ne, Include)) {
var String preBody = UMLUtil.getStereotypeApplication(ne, Include).preBody
- if ((preBody != null) && (preBody.length > 0)) {
+ if ((preBody !== null) && (preBody.length > 0)) {
var includePreBody = constIncludePreBodyStart + GenUtils.cleanCR(preBody) + '\n' +
constIncludePreBodyEnd
return includePreBody
@@ -255,7 +255,7 @@
static def CIncludeBody(NamedElement ne) {
if (GenUtils.hasStereotype(ne, Include)) {
var String body = UMLUtil.getStereotypeApplication(ne, Include).body
- if ((body != null) && (body.length > 0)) {
+ if ((body !== null) && (body.length > 0)) {
var includeBody = constIncludeBodyStart + GenUtils.cleanCR(body) + '\n' +
constIncludeBodyEnd
return includeBody
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/lib/interfaceScript.xtend b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/lib/interfaceScript.xtend
index ff3f4f9..0eeb65a 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/lib/interfaceScript.xtend
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/lib/interfaceScript.xtend
@@ -11,7 +11,7 @@
package org.eclipse.papyrus.designer.languages.c.codegen.lib
-import org.eclipse.papyrus.designer.languages.cpp.profile.C_Cpp.NoCodeGen
+import org.eclipse.papyrus.designer.languages.common.profile.Codegen.NoCodeGen
import org.eclipse.uml2.common.util.UML2Util
import org.eclipse.uml2.uml.Classifier
import org.eclipse.uml2.uml.Element
@@ -20,7 +20,7 @@
import static extension org.eclipse.papyrus.designer.languages.common.base.GenUtils.hasStereotypeTree
class interfaceScript {
- def public static getInterfaceRealizationClass(Classifier classifier) {
+ def static getInterfaceRealizationClass(Classifier classifier) {
UML2Util.getInverseReferences(classifier).filter[it instanceof InterfaceRealization && !(it as Element).hasStereotypeTree(NoCodeGen)].map[(it as InterfaceRealization).clients]
}
}
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/lib/multiplicityScript.xtend b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/lib/multiplicityScript.xtend
index 174ca81..ce56a57 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/lib/multiplicityScript.xtend
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/lib/multiplicityScript.xtend
@@ -14,7 +14,7 @@
import org.eclipse.uml2.uml.MultiplicityElement
class multiplicityScript {
- def public static genMultiplicity(MultiplicityElement multiplicityElement) '''
+ def static genMultiplicity(MultiplicityElement multiplicityElement) '''
«IF (multiplicityElement.upper == -1)»
[]
«ELSEIF (multiplicityElement.upper > 1)»
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/lib/stateMachineScript.xtend b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/lib/stateMachineScript.xtend
index b44e4b9..24dc86d 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/lib/stateMachineScript.xtend
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/lib/stateMachineScript.xtend
@@ -2,27 +2,24 @@
import java.util.ArrayList
import java.util.List
+import java.util.regex.Pattern
import org.eclipse.papyrus.designer.languages.c.codegen.preferences.CCodeGenConstants
import org.eclipse.papyrus.designer.languages.common.base.GenUtils
-import org.eclipse.uml2.uml.CallEvent
import org.eclipse.uml2.uml.Class
import org.eclipse.uml2.uml.Event
+import org.eclipse.uml2.uml.FinalState
import org.eclipse.uml2.uml.OpaqueBehavior
import org.eclipse.uml2.uml.OpaqueExpression
import org.eclipse.uml2.uml.Region
import org.eclipse.uml2.uml.State
import org.eclipse.uml2.uml.StateMachine
import org.eclipse.uml2.uml.Transition
-import org.eclipse.uml2.uml.Vertex
-import org.eclipse.uml2.uml.FinalState
-import java.util.regex.Pattern
class stateMachineScript {
static List<Transition> transitions = new ArrayList
public static Region region
public List<State> states = new ArrayList
- List<Vertex> vertexes = new ArrayList
public static String ACTIVE_ROOT_STATE_ID = "activeStateID"
def static genProcessCompletionEventMethodBody(Class clazz) {
@@ -40,22 +37,22 @@
val setTransitions= NonTriggeredTrans.toSet;
var body = '''
- «IF NonTriggeredTrans.size > 0»
+ «IF NonTriggeredTrans.size > 0»
switch(self->«ACTIVE_ROOT_STATE_ID») {
- «FOR state:sources»
- case «state.name»:
- «FOR t:setTransitions»
- «IF t.source==state»
- «generateTransitionCode(t.source as State, t)»
- «ENDIF»
- «ENDFOR»
- {}
-
- break;
- «ENDFOR»
- default:
- //do nothing
- break;
+ «FOR state:sources»
+ case «state.name»:
+ «FOR t:setTransitions»
+ «IF t.source==state»
+ «generateTransitionCode(t.source as State, t)»
+ «ENDIF»
+ «ENDFOR»
+ {}
+
+ break;
+ «ENDFOR»
+ default:
+ // do nothing
+ break;
}
«ENDIF»
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/lib/typeScript.xtend b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/lib/typeScript.xtend
index 3152c5f..40cee7f 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/lib/typeScript.xtend
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/lib/typeScript.xtend
@@ -14,16 +14,16 @@
import org.eclipse.uml2.uml.Type
class typeScript {
- def public static genIntegerType(Type type) {
+ def static genIntegerType(Type type) {
'''int'''
}
- def public static genStringType(Type type) {
+ def static genStringType(Type type) {
'''char*'''
}
- def public static genBooleanType(Type type) {
+ def static genBooleanType(Type type) {
'''/*bool*/ char'''
}
}
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/lib/valueSpecificationScript.xtend b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/lib/valueSpecificationScript.xtend
index d707635..411d0d0 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/lib/valueSpecificationScript.xtend
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/lib/valueSpecificationScript.xtend
@@ -17,12 +17,11 @@
import org.eclipse.uml2.uml.Expression
class valueSpecificationScript {
- def public static ValueSpecificationTemplate(ValueSpecification valueSpecification) '''
+ def static ValueSpecificationTemplate(ValueSpecification valueSpecification) '''
«valueSpecification.stringValue()»
'''
-
- def public static ValueSpecificationTemplate(InstanceValue instanceValue) '''
+ def static ValueSpecificationTemplate(InstanceValue instanceValue) '''
«IF (instanceValue.instance instanceof EnumerationLiteral)»
«FOR slot : instanceValue.instance.slots»
«FOR value : slot.values» «value.ValueSpecificationTemplate»
@@ -37,8 +36,7 @@
«ENDIF»
'''
-
- def public static ValueSpecificationTemplate(Expression expression) '''
+ def static ValueSpecificationTemplate(Expression expression) '''
'''
}
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/lib/variableScript.xtend b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/lib/variableScript.xtend
index ba305a4..b55ce92 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/lib/variableScript.xtend
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/lib/variableScript.xtend
@@ -33,25 +33,28 @@
import org.eclipse.papyrus.designer.languages.c.codegen.utils.CClassUtils
class variableScript {
- def public static genVariableDeclaration(Property property) '''
+ def static genVariableDeclaration(Property property) '''
«FOR comment : property.ownedComments»
«comment.genComment»
«ENDFOR»
«val declaredClassifiers = CClassUtils.declaredClassifiers(property.class_)»
- «property.genDeclarator»«property.genStruct(true, declaredClassifiers)»«property.genType»«property.genPointer» «property.genName»«property.genMultiplicity»«IF (property.defaultValue != null && property.isStatic)» «property.genDefaultValue()» «ENDIF»;
+ «property.genDeclarator»«property.genStruct(true, declaredClassifiers)»«
+ property.genType»«property.genPointer» «property.genName»«property.genMultiplicity»«
+ IF (property.defaultValue !== null && property.isStatic)» «property.genDefaultValue()» «ENDIF»;
'''
-def public static genStateVariableDeclaration(Class clazz) '''
+
+ def static genStateVariableDeclaration(Class clazz) '''
enum StateIDEnum activeStateID;
'''
-def public static genStateArrayDeclaration(StateMachine sm) '''
+ def static genStateArrayDeclaration(StateMachine sm) '''
State_t states[«sm.regions.head.subvertices.filter(State).filter[!(it instanceof FinalState)].size»];
'''
- def public static genDefaultValue(Property property) '''
- «IF (property.defaultValue != null)»
+ def static genDefaultValue(Property property) '''
+ «IF (property.defaultValue !== null)»
= «IF (property.upper != 1)»{ «property.defaultValue.ValueSpecificationTemplate()» }
«ELSE»«property.defaultValue.ValueSpecificationTemplate()»
«ENDIF»
@@ -59,8 +62,8 @@
'''
- def public static genType(TypedElement typedElement) { '''
- «IF (typedElement.type == null)»
+ def static genType(TypedElement typedElement) { '''
+ «IF (typedElement.type === null)»
void *
«ELSE»
«typedElement.type.genCTypeName»
@@ -69,8 +72,8 @@
}
- def public static genCTypeName(Type type) '''
- «IF (type == null || type.name == null)»
+ def static genCTypeName(Type type) '''
+ «IF (type === null || type.name === null)»
undefined
«ELSEIF (type.name.toLowerCase == 'boolean') || (type.name.toLowerCase == 'bool')»
«type.genBooleanType»
@@ -83,12 +86,12 @@
«ENDIF»'''
- def public static genDeclarator(TypedElement typedElement) '''
+ def static genDeclarator(TypedElement typedElement) '''
«typedElement.genStorageClass()» «typedElement.genConstant»
'''
- def public static genStorageClass(TypedElement typedElement) '''
+ def static genStorageClass(TypedElement typedElement) '''
«IF (typedElement.hasStereotype(StorageClass))»
«typedElement.getStereotypeApplication(StorageClass).storageClass.toString»
«ENDIF»
@@ -96,19 +99,19 @@
'''
- def public static genConstant(TypedElement typedElement) '''
+ def static genConstant(TypedElement typedElement) '''
«IF (typedElement.hasStereotype(Const))»const «ENDIF»
'''
- def public static genPointer(TypedElement typedElement) '''
+ def static genPointer(TypedElement typedElement) '''
«IF (typedElement.hasStereotype(Ptr))»* «ENDIF»
'''
- def public static genStruct(TypedElement typedElement, boolean isHeader, List<Classifier> declaredClassifiers) '''
+ def static genStruct(TypedElement typedElement, boolean isHeader, List<Classifier> declaredClassifiers) '''
«IF (isHeader && typedElement.type !== null && declaredClassifiers.contains(typedElement.type))»struct «ENDIF»
'''
- def public static genInitDefaultValue(Property property) '''
+ def static genInitDefaultValue(Property property) '''
«IF (property.upper == 1)»
self->«property.genName» «property.genDefaultValue»;
«ELSE»
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/module/classModuleScript.xtend b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/module/classModuleScript.xtend
index cab5ec1..ca2be32 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/module/classModuleScript.xtend
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/module/classModuleScript.xtend
@@ -101,7 +101,7 @@
// ----------------------------------Receptions Implementation----------------------------------
«FOR reception : clazz.ownedReceptions»
- «IF reception.signal != null»«reception.genFunctionImplementation()»«ENDIF»
+ «IF reception.signal !== null»«reception.genFunctionImplementation()»«ENDIF»
«ENDFOR»
// ----------------------------------Signal Event Process Functions Implementations--------------------------------
@@ -120,7 +120,7 @@
«ENDFOR»
«ENDIF»
- «IF (clazz.classifierBehavior != null && !clazz.ownedBehaviors.filter(StateMachine).isEmpty)»
+ «IF (clazz.classifierBehavior !== null && !clazz.ownedBehaviors.filter(StateMachine).isEmpty)»
«var sm = clazz.ownedBehaviors.filter(StateMachine).head»
// ----------------------------------Entry Exit and DoActivity Implementations for each state ----------------------------------
«IF !sm.regions.head.subvertices.filter(State).filter[!(it instanceof FinalState)].isEmpty»
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/module/commonModuleScript.xtend b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/module/commonModuleScript.xtend
index 898cbd8..a40feb6 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/module/commonModuleScript.xtend
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/module/commonModuleScript.xtend
@@ -15,13 +15,13 @@
import org.eclipse.uml2.uml.NamedElement
class commonModuleScript {
- def public static genHeadingModule(NamedElement namedElement) '''
+ def static genHeadingModule(NamedElement namedElement) '''
#ifndef «(namedElement.genName() as String).toUpperCase()»_C_
#define «(namedElement.genName() as String).toUpperCase()»_C_
'''
- def public static genEndModule(NamedElement namedElement) '''
+ def static genEndModule(NamedElement namedElement) '''
#endif /*«(namedElement.genName() as String).toUpperCase()»_C_*/
'''
}
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/services/StringServices.java b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/services/StringServices.java
index 145be2c..26d0fa9 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/services/StringServices.java
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/services/StringServices.java
@@ -11,8 +11,11 @@
package org.eclipse.papyrus.designer.languages.c.codegen.services;
+import org.eclipse.papyrus.designer.languages.common.base.StringConstants;
import org.eclipse.uml2.uml.LiteralString;
import org.eclipse.uml2.uml.NamedElement;
+import org.eclipse.uml2.uml.Parameter;
+import org.eclipse.uml2.uml.Property;
import org.eclipse.uml2.uml.Slot;
import org.eclipse.uml2.uml.TypedElement;
@@ -24,6 +27,7 @@
* get the relative path between two elements in a model format : ./P1/P2 or
* ../../P1/
*/
+ @SuppressWarnings("nls")
public String getRelativePath(NamedElement src, NamedElement dest)
throws ArrayIndexOutOfBoundsException {
try {
@@ -32,7 +36,7 @@
NAME_SEP);
String tmp_src = src.getQualifiedName();
String tmp_dest = dest.getQualifiedName();
- String relativePath = "";
+ String relativePath = StringConstants.EMPTY;
//System.out.println("---");
//System.out.println("src : "+src.getQualifiedName());
@@ -42,9 +46,9 @@
if(qualifiedNameSrcParts[i]
.equalsIgnoreCase(qualifiedNameDestParts[i])) {
tmp_src = tmp_src.replaceFirst(qualifiedNameDestParts[i]
- + NAME_SEP, "");
+ + NAME_SEP, StringConstants.EMPTY);
tmp_dest = tmp_dest.replaceFirst(qualifiedNameDestParts[i]
- + NAME_SEP, "");
+ + NAME_SEP, StringConstants.EMPTY);
}
}
qualifiedNameSrcParts = tmp_src.split(NAME_SEP);
@@ -63,12 +67,12 @@
//System.out.println("Lenght dest parts"+qualifiedNameDestParts.length);
for(int i = 0; i < (qualifiedNameDestParts.length - 1); i++) {
//System.out.println("qualifiedNameDestParts[i]"+qualifiedNameDestParts[i]);
- relativePath = relativePath + qualifiedNameDestParts[i] + "/";
+ relativePath = relativePath + qualifiedNameDestParts[i] + StringConstants.SLASH;
}
//System.out.println("relativePath :"+relativePath);
return relativePath;
} catch (ArrayIndexOutOfBoundsException e) {
- return "";
+ return StringConstants.EMPTY;
}
}
@@ -76,24 +80,23 @@
* return a string with quote if the property, the parameter or the slot
* defining feature are typed as Strings
*/
+ @SuppressWarnings("nls")
public String LiteralStringValue(LiteralString lst)
{
- if(lst.getOwner().eClass().getName().equalsIgnoreCase("Property")
- || lst.getOwner().eClass().getName().equalsIgnoreCase(
- "Parameter")) {
+ if(lst.getOwner() instanceof Property || lst.getOwner() instanceof Parameter) {
TypedElement tmp = (TypedElement)lst.getOwner();
if(tmp.getType() == null) {
return "\" \"";
}
if(tmp.getType().getName().equalsIgnoreCase("char")) {
- if(lst.getValue().toString().equalsIgnoreCase("")) {
+ if(lst.getValue().toString().equalsIgnoreCase(StringConstants.EMPTY)) {
return "' '";
} else {
return withSimpleQuote(lst.getValue().toString());
}
}
if(tmp.getType().getName().equalsIgnoreCase("String")) {
- if(lst.getValue().toString().equalsIgnoreCase("")) {
+ if(lst.getValue().toString().equalsIgnoreCase(StringConstants.EMPTY)) {
return "\" \"";
} else {
return withDoubleQuote(lst.getValue().toString());
@@ -104,10 +107,10 @@
Slot tmp = (Slot)lst.getOwner();
if(tmp.getDefiningFeature() == null
|| tmp.getDefiningFeature().getType() == null) {
- return " ";
+ return StringConstants.SPACE;
}
if(tmp.getDefiningFeature().getName().equalsIgnoreCase("char")) {
- if(lst.getValue().toString().equalsIgnoreCase("")) {
+ if(lst.getValue().toString().equalsIgnoreCase(StringConstants.EMPTY)) {
return "' '";
} else {
return withSimpleQuote(lst.getValue().toString());
@@ -115,7 +118,7 @@
}
if(tmp.getDefiningFeature().getType().getName().equalsIgnoreCase(
"String")) {
- if(lst.getValue().toString().equalsIgnoreCase("")) {
+ if(lst.getValue().toString().equalsIgnoreCase(StringConstants.EMPTY)) {
return "\" \"";
} else {
return withDoubleQuote(lst.getValue().toString());
@@ -128,11 +131,10 @@
/**
* Transform a String with notation aa.bb.cc to aa/bb/cc<br/>
- * Usefull for
- * package translating.
+ * Usefull for package translating.
*/
public String toPath(String packageName) {
- return packageName.trim().replaceAll("\\.", "/");
+ return packageName.trim().replaceAll("\\.", StringConstants.SLASH); //$NON-NLS-1$
}
/**
@@ -144,10 +146,10 @@
* default string value.
*/
public String withDoubleQuote(String value) {
- if(value.endsWith("'") && value.startsWith("'")) {
+ if(value.endsWith(StringConstants.SINGLE_QUOTE) && value.startsWith(StringConstants.SINGLE_QUOTE)) {
value = value.substring(1, value.length() - 1);
}
- if(value.endsWith("\"") && value.startsWith("\"")) {
+ if(value.endsWith(StringConstants.QUOTE) && value.startsWith(StringConstants.QUOTE)) {
value = value.substring(1, value.length() - 1);
}
// if null return null without "
@@ -155,7 +157,7 @@
// return value;
// }
// replace " with /"
- return "\"" + value.trim().replaceAll("\"", "\\\\\\\"") + "\"";
+ return StringConstants.QUOTE + value.trim().replaceAll(StringConstants.QUOTE, "\\\\\\\"") + StringConstants.QUOTE; //$NON-NLS-1$
}
/**
@@ -168,17 +170,17 @@
* string value.
*/
public String withSimpleQuote(String value) {
- if(value.endsWith("'") && value.startsWith("'")) {
+ if(value.endsWith(StringConstants.SINGLE_QUOTE) && value.startsWith(StringConstants.SINGLE_QUOTE)) {
value = value.substring(1, value.length() - 1);
}
- if(value.endsWith("\"") && value.startsWith("\"")) {
+ if(value.endsWith(StringConstants.QUOTE) && value.startsWith(StringConstants.QUOTE)) {
value = value.substring(1, value.length() - 1);
}
// if null return null without "
- if(value.equalsIgnoreCase("null")) {
+ if(value.equalsIgnoreCase("null")) { //$NON-NLS-1$
return value;
}
// replace " with /"
- return "'" + value.trim() + "'";
+ return StringConstants.SINGLE_QUOTE + value.trim() + StringConstants.SINGLE_QUOTE;
}
}
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlAssociationServices.java b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlAssociationServices.java
index b66a109..3ebb2e4 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlAssociationServices.java
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlAssociationServices.java
@@ -32,7 +32,7 @@
*/
public ArrayList<Association> getClassAssociation(EObject rootNode, Class aClass) {
ArrayList<Association> resultList = new ArrayList<Association>();
- for (TreeIterator iterAssoc = rootNode.eAllContents(); iterAssoc.hasNext();) {
+ for (TreeIterator<EObject> iterAssoc = rootNode.eAllContents(); iterAssoc.hasNext();) {
Object obj = iterAssoc.next();
if (obj instanceof Association) {
// if obj is an association object
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlCommentServices.java b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlCommentServices.java
index 8456591..be1d643 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlCommentServices.java
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlCommentServices.java
@@ -19,6 +19,7 @@
* <%body>-------------------- *\/ number of "-" symbol depends both of the
* body length and the lengthComment local variable
*/
+ @SuppressWarnings("nls")
public static String partComment(Element elt, String body) {
int lengthComment = 50;
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlPackageServices.java b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlPackageServices.java
index dcfe575..5efdac5 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlPackageServices.java
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlPackageServices.java
@@ -14,6 +14,7 @@
import org.eclipse.emf.common.util.EList;
import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.designer.languages.c.codegen.Activator;
import org.eclipse.uml2.uml.Classifier;
import org.eclipse.uml2.uml.Model;
import org.eclipse.uml2.uml.Namespace;
@@ -27,10 +28,8 @@
/**
* Minimize an attribute list with type criteria.
*
- * @param the
- * attributeList attribute.
+ * @param attributeList the list of attributes.
* @return ArrayList Minimized list.
- * @
*/
public ArrayList<Property> getMinimizeAttributeOnType(EList<Property> attributeList)
{
@@ -56,9 +55,8 @@
* Get minimized list of parameters with type criteria.
*
* @param parameterList
- * the list parameter.
- * @return Arraylist minized parameter list.
- * @
+ * the parameter list.
+ * @return Arraylist minimized parameter list.
*/
public ArrayList<Parameter> getMinimizeParameterOnType(EList<Parameter> parameterList)
{
@@ -86,7 +84,6 @@
* @param anAttribute
* the attribute.
* @return Package the package where is the attribute.
- * @
*/
public Package getPackageAttribute(Property anAttribute)
{
@@ -109,7 +106,6 @@
* @param aParameter
* a parameter.
* @return Package The package of the parameter type.
- * @
*/
public Package getPackageMethod(Parameter aParameter)
{
@@ -132,15 +128,14 @@
* @param classifierList
* the classifier list.
* @param aClassifier
- * the reference classifer.
+ * the reference classifier.
* @return ArrayList ret element is not in classifier package.
- * @
*/
public ArrayList<Classifier> minimizeClassNoInPackage(EList<Classifier> classifierList,
Classifier aClassifier) {
Namespace namespaceClass = aClassifier.getNamespace();// getPackage();
if(classifierList == null) {
- System.out.println("Classe liste null");
+ Activator.log.debug("Classifier list null"); //$NON-NLS-1$
return null;
}
ArrayList<Classifier> resultList = new ArrayList<Classifier>();
@@ -153,15 +148,4 @@
// System.out.println("Liste :" + resultList);
return resultList;
}
-
- // public String getRelativePathInModel(Package source, Package destination)
- // {
- // Boolean found = false;
- // int intermediatePackageNumber=0;
- // Package var_package= (Package) source;
- // while(!found || var_package!=destination){
- // intermediatePackageNumber++;
- // var_package=source.getPa
- // }
- // }
}
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/transformation/CModelElementsCreator.java b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/transformation/CModelElementsCreator.java
index 76c39e5..5438e62 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/transformation/CModelElementsCreator.java
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/transformation/CModelElementsCreator.java
@@ -28,14 +28,14 @@
import org.eclipse.papyrus.designer.languages.c.codegen.preferences.CCodeGenUtils;
import org.eclipse.papyrus.designer.languages.common.base.GenUtils;
import org.eclipse.papyrus.designer.languages.common.base.ModelElementsCreator;
+import org.eclipse.papyrus.designer.languages.common.base.file.FileSystemAccessFactory;
+import org.eclipse.papyrus.designer.languages.common.profile.Codegen.NoCodeGen;
import org.eclipse.papyrus.designer.languages.cpp.profile.C_Cpp.CppRoot;
import org.eclipse.papyrus.designer.languages.cpp.profile.C_Cpp.External;
import org.eclipse.papyrus.designer.languages.cpp.profile.C_Cpp.Include;
import org.eclipse.papyrus.designer.languages.cpp.profile.C_Cpp.ManualGeneration;
-import org.eclipse.papyrus.designer.languages.cpp.profile.C_Cpp.NoCodeGen;
import org.eclipse.papyrus.designer.languages.cpp.profile.C_Cpp.Template;
import org.eclipse.papyrus.infra.tools.file.IPFileSystemAccess;
-import org.eclipse.papyrus.infra.tools.file.ProjectBasedFileAccess;
import org.eclipse.text.edits.MalformedTreeException;
import org.eclipse.text.edits.TextEdit;
import org.eclipse.uml2.uml.Class;
@@ -59,7 +59,7 @@
*/
public class CModelElementsCreator extends ModelElementsCreator {
- private static final String C_LANG = "C_LANG"; //$NON-NLS-1$
+ private static final String C_LANG = "C"; //$NON-NLS-1$
protected String sourceFolder;
/**
@@ -69,7 +69,7 @@
* the project in which the generated code should be placed
*/
public CModelElementsCreator(IProject project) {
- this(new ProjectBasedFileAccess(project), null);
+ this(FileSystemAccessFactory.create(project), null);
}
/**
@@ -81,14 +81,14 @@
* Custom prefix for each generated file
*/
public CModelElementsCreator(IProject project, String commentHeader) {
- this(new ProjectBasedFileAccess(project), commentHeader);
+ this(FileSystemAccessFactory.create(project), commentHeader);
}
/**
* Constructor. Pass caller defined file system access and commentHeader
*
- * @param project
- * the project in which the generated code should be placed
+ * @param fileSystemAccess
+ * the file-system access used to write generated code
* @param commentHeader
* commentHeader. If null, take from preferences
*/
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/utils/CClassUtils.java b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/utils/CClassUtils.java
index 42371e4..9a23d63 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/utils/CClassUtils.java
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/utils/CClassUtils.java
@@ -18,10 +18,10 @@
import org.eclipse.emf.common.util.UniqueEList;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.papyrus.designer.languages.common.base.GenUtils;
+import org.eclipse.papyrus.designer.languages.common.profile.Codegen.NoCodeGen;
import org.eclipse.papyrus.designer.languages.cpp.profile.C_Cpp.ExternLibrary;
import org.eclipse.papyrus.designer.languages.cpp.profile.C_Cpp.External;
import org.eclipse.papyrus.designer.languages.cpp.profile.C_Cpp.Inline;
-import org.eclipse.papyrus.designer.languages.cpp.profile.C_Cpp.NoCodeGen;
import org.eclipse.papyrus.designer.languages.cpp.profile.C_Cpp.Ptr;
import org.eclipse.papyrus.designer.languages.cpp.profile.C_Cpp.Ref;
import org.eclipse.uml2.uml.Classifier;
@@ -34,16 +34,16 @@
import org.eclipse.uml2.uml.util.UMLUtil;
/**
- * A set of utility functions related to C++ classes
- *
+ * A set of utility functions related to C classes
+ * TODO (unify with C++ ClassUtils?)
*/
public class CClassUtils {
-
+
/**
* Calculate the list of classifiers that needs to be included in a header file
*
* @param currentClass
- * @return
+ * @return a list of included classifiers
*/
public static EList<Classifier> includedClassifiers(Classifier currentClass) {
// Retrieve package used by current package (dependencies)
@@ -54,33 +54,33 @@
EList<Class<? extends EObject>> ptrRefStereotypes = new BasicEList<Class<? extends EObject>>();
ptrRefStereotypes.add(Ptr.class);
ptrRefStereotypes.add(Ref.class);
-
+
EList<Class<? extends EObject>> noCodeGenInlineStereotypes = new BasicEList<Class<? extends EObject>>();
noCodeGenInlineStereotypes.add(NoCodeGen.class);
noCodeGenInlineStereotypes.add(Inline.class);
-
+
EList<Class<? extends EObject>> inlineStereotypes = new BasicEList<Class<? extends EObject>>();
inlineStereotypes.add(Inline.class);
-
+
EList<Class<? extends EObject>> noCodeGenStereotypes = new BasicEList<Class<? extends EObject>>();
noCodeGenStereotypes.add(NoCodeGen.class);
-
+
// class attributes dependencies (non-ptr and non-ref)
usedClasses.addAll(GenUtils.getTypesViaAttributes(currentClass, ptrRefStereotypes, null, true, true));
addEnumerationsPrimitiveTypesExternalTypes(usedClasses, GenUtils.getTypesViaAttributes(currentClass));
-
+
// class inline operation parameters dependencies (non-ptr and non-ref)
usedClasses.addAll(GenUtils.getTypesViaOperations(currentClass, noCodeGenStereotypes, inlineStereotypes, ptrRefStereotypes, null, true));
addEnumerationsPrimitiveTypesExternalTypes(usedClasses, GenUtils.getTypesViaOperations(currentClass));
-
+
// inner classifier attribute dependencies (non-ptr and non-ref)
usedClasses.addAll(GenUtils.getInnerClassifierTypesViaAttributes(currentClass, ptrRefStereotypes, null, true, true));
addEnumerationsPrimitiveTypesExternalTypes(usedClasses, GenUtils.getInnerClassifierTypesViaAttributes(currentClass));
-
+
// inner classifier operation parameters dependencies (non-ptr and non-ref)
usedClasses.addAll(GenUtils.getInnerClassifierTypesViaOperations(currentClass, noCodeGenStereotypes, inlineStereotypes, ptrRefStereotypes, null, true));
addEnumerationsPrimitiveTypesExternalTypes(usedClasses, GenUtils.getInnerClassifierTypesViaOperations(currentClass));
-
+
// realized interface dependencies
if (currentClass instanceof org.eclipse.uml2.uml.Class) {
org.eclipse.uml2.uml.Class clazz = (org.eclipse.uml2.uml.Class) currentClass;
@@ -95,12 +95,12 @@
usedClasses.removeAll(GenUtils.getTemplateParameteredElements(currentClass));
return usedClasses;
}
-
+
/**
* Calculate the list of classifiers that needs to be included in a body file
*
* @param currentClass
- * @return
+ * @return a list of included implementastion classifiers
*/
public static EList<Classifier> includedImplementationClassifiers(Classifier currentClass) {
// Retrieve package used by current package (dependencies)
@@ -111,21 +111,21 @@
// Make sure to not include classifiers already included in header
usedClasses.addAll(declaredClassifiers(currentClass));
usedClasses.removeAll(includedClassifiers(currentClass));
-
+
// dependency relationships
usedClasses.addAll(GenUtils.getTypesViaDependencies(currentClass));
-
+
// template parameters are declared locally (if owned) and do not correspond to a file
// that can be included
usedClasses.removeAll(GenUtils.getTemplateParameteredElements(currentClass));
return usedClasses;
}
-
+
/**
* Calculate the list of classifiers that needs to be declared in a header file
*
* @param currentClass
- * @return
+ * @return the list of classifiers that need to be declared
*/
public static EList<Classifier> declaredClassifiers(Classifier currentClass) {
EList<Classifier> usedClasses = new UniqueEList<Classifier>();
@@ -134,13 +134,13 @@
EList<Class<? extends EObject>> ptrRefStereotypes = new BasicEList<Class<? extends EObject>>();
ptrRefStereotypes.add(Ptr.class);
ptrRefStereotypes.add(Ref.class);
-
+
EList<Class<? extends EObject>> inlineStereotypes = new BasicEList<Class<? extends EObject>>();
inlineStereotypes.add(Inline.class);
-
+
EList<Class<? extends EObject>> noCodeGenStereotypes = new BasicEList<Class<? extends EObject>>();
noCodeGenStereotypes.add(NoCodeGen.class);
-
+
// class attributes dependencies (only ptr and ref and shared aggregation)
usedClasses.addAll(GenUtils.getTypesViaAttributes(currentClass, null, ptrRefStereotypes, false, false));
usedClasses.addAll(GenUtils.getTypesViaSharedAggregationAttributes(currentClass));
@@ -149,7 +149,7 @@
usedClasses.removeAll(GenUtils.getTypesViaOperations(currentClass, noCodeGenStereotypes, inlineStereotypes, ptrRefStereotypes, null, true)); // Remove inline operation parameter types that have been included previously
// no-specification opaque behavior dependencies
usedClasses.addAll(GenUtils.getTypesViaOpaqueBehaviors(currentClass));
-
+
// inner classifier attribute dependencies (only ptr and ref and shared aggregation)
usedClasses.addAll(GenUtils.getInnerClassifierTypesViaAttributes(currentClass, null, ptrRefStereotypes, false, false));
usedClasses.addAll(GenUtils.getInnerClassifierTypesViaSharedAggregationAttributes(currentClass));
@@ -158,13 +158,13 @@
usedClasses.removeAll(GenUtils.getInnerClassifierTypesViaOperations(currentClass, noCodeGenStereotypes, inlineStereotypes, ptrRefStereotypes, null, true)); // Remove inner classifier inline operation parameter types that have been included previously
// inner classifier no-specification opaque behavior dependencies
usedClasses.addAll(GenUtils.getInnerClassifierTypesViaOpaqueBehaviors(currentClass));
-
+
// TODO inline operation body dependencies: how?
-
+
// template parameters are declared locally (if owned) and do not correspond to a file
// that can be included
usedClasses.removeAll(GenUtils.getTemplateParameteredElements(currentClass));
-
+
// Remove enumerations and primitive types
List<Classifier> enumerationsAndPrimitiveTypes = new UniqueEList<Classifier>();
for (Classifier classifier : usedClasses) {
@@ -175,54 +175,54 @@
}
}
usedClasses.removeAll(enumerationsAndPrimitiveTypes);
-
+
return usedClasses;
}
-
+
public static EList<Classifier> usingClassifiers(Classifier currentClass) {
EList<Classifier> usedClasses = new UniqueEList<Classifier>();
usedClasses.addAll(includedClassifiers(currentClass));
usedClasses.addAll(includedImplementationClassifiers(currentClass));
usedClasses.addAll(declaredClassifiers(currentClass));
-
+
EList<Classifier> classesToRemove = new UniqueEList<Classifier>();
for (Classifier classifier : usedClasses) {
if (classifier.getOwner() instanceof Classifier) {
classesToRemove.add(classifier);
} else if (!classifier.getModel().equals(currentClass.getModel())) {
classesToRemove.add(classifier);
- } else if (UMLUtil.getStereotypeApplication(classifier, External.class) != null) {
+ } else if (UMLUtil.getStereotypeApplication(classifier, External.class) != null) {
classesToRemove.add(classifier);
} else if (classifier.getOwner() instanceof Package
&& UMLUtil.getStereotypeApplication(classifier.getOwner(), ExternLibrary.class) != null) {
classesToRemove.add(classifier);
}
}
-
+
usedClasses.removeAll(classesToRemove);
-
+
return usedClasses;
}
-
+
/**
* Retrieve the list of operations of classes nested in the current class
* without the operations directly owned by the current class
*
* @param currentClass
- * @return
+ * @return a list of nested operations
*/
public static EList<Operation> nestedOperations(Classifier currentClass) {
EList<Operation> nestedOperations = new UniqueEList<Operation>();
-
+
for (Element element : currentClass.allOwnedElements()) {
if (element instanceof Operation && !(element.getOwner().equals(currentClass))) {
nestedOperations.add((Operation) element);
}
}
-
+
return nestedOperations;
}
-
+
private static void addEnumerationsPrimitiveTypesExternalTypes(List<Classifier> usedClasses, List<Classifier> unfilteredClasses) {
if (usedClasses != null && unfilteredClasses != null) {
for (Classifier classifier : unfilteredClasses) {
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/utils/CGenUtils.java b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/utils/CGenUtils.java
index 4b5f868..697021d 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/utils/CGenUtils.java
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/utils/CGenUtils.java
@@ -18,9 +18,9 @@
import org.eclipse.emf.common.util.BasicEList;
import org.eclipse.emf.common.util.EList;
import org.eclipse.papyrus.designer.languages.common.base.GenUtils;
+import org.eclipse.papyrus.designer.languages.common.profile.Codegen.NoCodeGen;
import org.eclipse.papyrus.designer.languages.cpp.profile.C_Cpp.ExternLibrary;
import org.eclipse.papyrus.designer.languages.cpp.profile.C_Cpp.External;
-import org.eclipse.papyrus.designer.languages.cpp.profile.C_Cpp.NoCodeGen;
import org.eclipse.papyrus.designer.languages.cpp.profile.C_Cpp.Typedef;
import org.eclipse.papyrus.designer.languages.cpp.profile.C_Cpp.Visibility;
import org.eclipse.uml2.uml.Classifier;
@@ -45,10 +45,10 @@
/**
* Some utilities specific to C code generation: a set of static methods that is intended
- * for use from Acceleo templates.
+ * for use from xtend templates.
*
* @author wassim, ansgar
- *
+ * TODO: Unify with C++ GenUtils?
*/
public class CGenUtils {
@@ -61,10 +61,9 @@
public static boolean USE_ALL_NS = true;
/**
- * Return a list of template parameters without type
*
* @param classifier
- * @return
+ * @return a list of template parameters without type
*/
public static String getTemplateParametersWoType(Classifier classifier) {
String tparamWoType = ""; //$NON-NLS-1$
@@ -83,11 +82,10 @@
}
/**
- * The standard UML and MARTE libraries do not apply the stereotype "Typedef". Yet, we want to treat these
- * types in an identical way, i.e. we use a typedef to the associated primitive C++ type
- *
* @param type
- * @return
+ * a primitive type
+ * @return The standard UML and MARTE libraries do not apply the stereotype "Typedef". Yet, we want to treat these
+ * types in an identical way, i.e. we use a typedef to the associated primitive C++ type
*/
public static String getStdtypes(PrimitiveType type) {
Object owner = type.getOwner();
@@ -103,20 +101,15 @@
if (name.equals("Boolean")) { //$NON-NLS-1$
td = "bool"; //$NON-NLS-1$
- }
- else if (name.equals("Integer")) { //$NON-NLS-1$
+ } else if (name.equals("Integer")) { //$NON-NLS-1$
td = "int"; //$NON-NLS-1$
- }
- else if (name.equals("Unlimited Natural")) { //$NON-NLS-1$
+ } else if (name.equals("Unlimited Natural")) { //$NON-NLS-1$
td = "unsigned long"; //$NON-NLS-1$
- }
- else if (name.equals("Real")) { //$NON-NLS-1$
+ } else if (name.equals("Real")) { //$NON-NLS-1$
td = "float"; //$NON-NLS-1$
- }
- else if (name.equals("String")) { //$NON-NLS-1$
+ } else if (name.equals("String")) { //$NON-NLS-1$
td = "const char *"; //$NON-NLS-1$
- }
- else if (name.equals("Unlimited Natural")) { //$NON-NLS-1$
+ } else if (name.equals("Unlimited Natural")) { //$NON-NLS-1$
td = "unsigned long"; //$NON-NLS-1$
}
if (td != null) {
@@ -170,7 +163,7 @@
* - The named element is a primitive type that has no further definition via a stereotype (TODO: why is this required/useful?)
*
* @param ne
- * @return
+ * @return a qualified name
*/
public static String cppQualifiedName(NamedElement ne) {
if (ne == null) {
@@ -193,22 +186,18 @@
if (GenUtils.hasStereotypeTree(ne, NoCodeGen.class)) {
return ne.getName();
- }
- else if (GenUtils.hasStereotypeTree(ne, ExternLibrary.class)) {
+ } else if (GenUtils.hasStereotypeTree(ne, ExternLibrary.class)) {
ExternLibrary extLibrary = GenUtils.getApplicationTree(ne, ExternLibrary.class);
// handle potential prefix defined for all types within the external library
return GenUtils.maskNull(extLibrary.getPrefix()) + ne.getName();
- }
- else if (GenUtils.hasStereotype(ne, External.class)) {
+ } else if (GenUtils.hasStereotype(ne, External.class)) {
// check External after ExternLibrary stereotype, in order to take an
// eventual prefix defined by the latter into account
return ne.getName();
- }
- else if (owningPkgName.equals(ANSI_C_LIB)) {
+ } else if (owningPkgName.equals(ANSI_C_LIB)) {
// always use the short name for types within the ANSI C library
return ne.getName();
- }
- else if (owner instanceof ClassifierTemplateParameter) {
+ } else if (owner instanceof ClassifierTemplateParameter) {
// return short name for template in Type
return ne.getName();
}
@@ -321,8 +310,7 @@
allNamespaces.add((Package) ne);
allNamespaces.addAll(ne.allNamespaces());
return allNamespaces;
- }
- else {
+ } else {
return ne.allNamespaces();
}
}
@@ -362,7 +350,7 @@
}
return openNS;
}
-
+
/**
* Return a C++ close-namespace definition for a named element
*
@@ -399,11 +387,10 @@
/**
- * Return the C++ visibility (on generalizations) in text form. Return public, if no stereotype
+ * @return Return the C visibility (on generalizations) in text form. Return public, if no stereotype
* visibility exists
*
* @param element
- * @return
*/
public static String getGeneralizationVisibility(Element element) {
// get visibility and target name
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/utils/Modifier.java b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/utils/Modifier.java
index 6b7367d..da1a801 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/utils/Modifier.java
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/src/org/eclipse/papyrus/designer/languages/c/codegen/utils/Modifier.java
@@ -11,8 +11,9 @@
package org.eclipse.papyrus.designer.languages.c.codegen.utils;
-import org.eclipse.papyrus.designer.languages.common.base.GenUtils;
import org.eclipse.papyrus.designer.languages.c.codegen.preferences.CCodeGenUtils;
+import org.eclipse.papyrus.designer.languages.common.base.GenUtils;
+import org.eclipse.papyrus.designer.languages.common.base.StringConstants;
import org.eclipse.papyrus.designer.languages.cpp.profile.C_Cpp.Array;
import org.eclipse.papyrus.designer.languages.cpp.profile.C_Cpp.Const;
import org.eclipse.papyrus.designer.languages.cpp.profile.C_Cpp.Mutable;
@@ -41,16 +42,16 @@
public static String modPtr(Element propertyOrParameter) {
// Pointer
- String ptr; //$NON-NLS-1$
+ String ptr;
Ptr cppPtr = UMLUtil.getStereotypeApplication(propertyOrParameter, Ptr.class);
if (cppPtr != null) {
- ptr = (cppPtr.getDeclaration() != null && !cppPtr.getDeclaration().equals("")) ? cppPtr.getDeclaration() : "*"; //$NON-NLS-1$
+ ptr = (cppPtr.getDeclaration() != null && !cppPtr.getDeclaration().equals(StringConstants.EMPTY)) ? cppPtr.getDeclaration() : StringConstants.STAR;
} else {
if (propertyOrParameter instanceof Property
&& ((Property) propertyOrParameter).getAggregation() == AggregationKind.SHARED_LITERAL) {
- ptr = "*"; //$NON-NLS-1$
+ ptr = StringConstants.STAR;
} else {
- ptr = ""; //$NON-NLS-1$
+ ptr = StringConstants.EMPTY;
}
}
@@ -73,12 +74,12 @@
public static String modRef(Element propertyOrParameter) {
// Reference
- String ref; //$NON-NLS-1$
+ String ref;
Ref cppRef = UMLUtil.getStereotypeApplication(propertyOrParameter, Ref.class);
if (cppRef != null) {
- ref = (cppRef.getDeclaration() != null && !cppRef.getDeclaration().equals("")) ? cppRef.getDeclaration() : "&"; //$NON-NLS-1$
+ ref = (cppRef.getDeclaration() != null && !cppRef.getDeclaration().equals(StringConstants.EMPTY)) ? cppRef.getDeclaration() : "&"; //$NON-NLS-1$
} else {
- ref = "";
+ ref = StringConstants.EMPTY;
}
return ref;
@@ -87,7 +88,7 @@
public static String modArray(Element propertyOrParameter) {
// Array
Array cppArray = UMLUtil.getStereotypeApplication(propertyOrParameter, Array.class);
- String array = ""; //$NON-NLS-1$
+ String array = StringConstants.EMPTY;
if (cppArray != null) {
// explicit array definition
array = (cppArray.getDefinition() != null && !cppArray.getDefinition().isEmpty()) ? cppArray.getDefinition() : "[]"; //$NON-NLS-1$
@@ -97,7 +98,7 @@
if (propertyOrParameter instanceof MultiplicityElement) {
multiplicity = ((MultiplicityElement) propertyOrParameter).getUpper();
}
- array = ""; //$NON-NLS-1$
+ array = StringConstants.EMPTY;
if (multiplicity == -1) {
array = "[]"; //$NON-NLS-1$
} else if (multiplicity > 1) {
@@ -108,12 +109,11 @@
}
/**
- * return modifier for const and volatile
* @param propertyOrParameter
- * @return
+ * @return modifier for const and volatile
*/
public static String modCVQualifier(Element propertyOrParameter) {
- String cvQualifier = ""; //$NON-NLS-1$
+ String cvQualifier = StringConstants.EMPTY;
// CVQualifiers cannot be used with static functions
if (propertyOrParameter instanceof Operation && ((Operation) propertyOrParameter).isStatic()) {
// do nothing
@@ -146,7 +146,7 @@
// Mutable (non-static attribute only)
if (GenUtils.hasStereotype(propertyOrParameter, Mutable.class)) {
if (propertyOrParameter instanceof Property && !((Property) propertyOrParameter).isStatic()) {
- cvQualifier = "mutable " + cvQualifier;
+ cvQualifier = "mutable " + cvQualifier; //$NON-NLS-1$
}
}
@@ -156,21 +156,21 @@
/**
* return modifier for storage class
* @param propertyOrParameter
- * @return
+ * @return modifier
*/
public static String modSCQualifier(Element propertyOrParameter) {
StorageClass sc = UMLUtil.getStereotypeApplication(propertyOrParameter, StorageClass.class);
if (sc != null) {
return sc.getStorageClass().getLiteral() + " "; //$NON-NLS-1$
}
- return ""; //$NON-NLS-1$
+ return StringConstants.EMPTY;
}
/**
* Return inform about the direction of a parameter in form of a comment
*
* @param propertyOperationOrParameter
- * @return
+ * @return string information
*/
public static String dirInfo(Element propertyOperationOrParameter) {
if (propertyOperationOrParameter instanceof Parameter) {
@@ -183,7 +183,7 @@
return " /*inout*/"; //$NON-NLS-1$
}
}
- return ""; //$NON-NLS-1$
+ return StringConstants.EMPTY;
}
/**
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/Activator.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/Activator.class
deleted file mode 100644
index ea1ea10..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/Activator.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/CLangCodegen.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/CLangCodegen.class
deleted file mode 100644
index fba01cf..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/CLangCodegen.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/doxygen/.doxyfileScript.java._trace b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/doxygen/.doxyfileScript.java._trace
deleted file mode 100644
index eb603a7..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/doxygen/.doxyfileScript.java._trace
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/doxygen/doxyfileScript.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/doxygen/doxyfileScript.class
deleted file mode 100644
index c29238f..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/doxygen/doxyfileScript.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/doxygen/doxyfileScript.xtend b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/doxygen/doxyfileScript.xtend
deleted file mode 100644
index 4f6e759..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/doxygen/doxyfileScript.xtend
+++ /dev/null
@@ -1,240 +0,0 @@
-package org.eclipse.papyrus.designer.languages.c.codegen.doxygen
-
-import static extension org.eclipse.papyrus.designer.languages.c.codegen.lib.commonScript.*
-import org.eclipse.uml2.uml.Model
-import org.eclipse.uml2.uml.Package
-
-class doxyfileScript {
- def public static doxyfileScript(Model model) '''
- // This template is called by the main module file
- #---------------------------------------------------------------------------
- # Project related configuration options
- #---------------------------------------------------------------------------
- PROJECT_NAME = «model.genName»
- PROJECT_NUMBER =
- OUTPUT_DIRECTORY = ./docs/
- CREATE_SUBDIRS = NO
- OUTPUT_LANGUAGE = English
- USE_WINDOWS_ENCODING = NO
- BRIEF_MEMBER_DESC = YES
- REPEAT_BRIEF = YES
- ABBREVIATE_BRIEF =
- ALWAYS_DETAILED_SEC = NO
- INLINE_INHERITED_MEMB = NO
- FULL_PATH_NAMES = NO
- STRIP_FROM_PATH =
- STRIP_FROM_INC_PATH =
- SHORT_NAMES = NO
- JAVADOC_AUTOBRIEF = NO
- MULTILINE_CPP_IS_BRIEF = NO
- DETAILS_AT_TOP = NO
- INHERIT_DOCS = YES
- SEPARATE_MEMBER_PAGES = NO
- TAB_SIZE = 4
- ALIASES =
- OPTIMIZE_OUTPUT_FOR_C = YES
- OPTIMIZE_OUTPUT_JAVA = NO
- BUILTIN_STL_SUPPORT = NO
- DISTRIBUTE_GROUP_DOC = NO
- SUBGROUPING = YES
- #---------------------------------------------------------------------------
- # Build related configuration options
- #---------------------------------------------------------------------------
- EXTRACT_ALL = YES
- EXTRACT_PRIVATE = NO
- EXTRACT_STATIC = NO
- EXTRACT_LOCAL_CLASSES = YES
- EXTRACT_LOCAL_METHODS = NO
- HIDE_UNDOC_MEMBERS = YES
- HIDE_UNDOC_CLASSES = YES
- HIDE_FRIEND_COMPOUNDS = NO
- HIDE_IN_BODY_DOCS = NO
- INTERNAL_DOCS = NO
- CASE_SENSE_NAMES = YES
- HIDE_SCOPE_NAMES = NO
- SHOW_INCLUDE_FILES = YES
- INLINE_INFO = YES
- SORT_MEMBER_DOCS = YES
- SORT_BRIEF_DOCS = NO
- SORT_BY_SCOPE_NAME = NO
- GENERATE_TODOLIST = YES
- GENERATE_TESTLIST = YES
- GENERATE_BUGLIST = YES
- GENERATE_DEPRECATEDLIST= YES
- ENABLED_SECTIONS =
- MAX_INITIALIZER_LINES = 30
- SHOW_USED_FILES = YES
- SHOW_DIRECTORIES = YES
- FILE_VERSION_FILTER =
- #---------------------------------------------------------------------------
- # configuration options related to warning and progress messages
- #---------------------------------------------------------------------------
- QUIET = NO
- WARNINGS = YES
- WARN_IF_UNDOCUMENTED = YES
- WARN_IF_DOC_ERROR = YES
- WARN_NO_PARAMDOC = NO
- WARN_FORMAT = "$file:$line: $text"
- WARN_LOGFILE =
- #---------------------------------------------------------------------------
- # configuration options related to the input files
- #---------------------------------------------------------------------------
- INPUT = «model.genPackagePaths»
- FILE_PATTERNS = *.c \
- *.h
- RECURSIVE = YES
- EXCLUDE =
- EXCLUDE_SYMLINKS = NO
- EXCLUDE_PATTERNS =
- EXAMPLE_PATH =
- EXAMPLE_PATTERNS =
- EXAMPLE_RECURSIVE = NO
- IMAGE_PATH = ./docs/pictures/
- INPUT_FILTER =
- FILTER_PATTERNS =
- FILTER_SOURCE_FILES = NO
- #---------------------------------------------------------------------------
- # configuration options related to source browsing
- #---------------------------------------------------------------------------
- SOURCE_BROWSER = YES
- INLINE_SOURCES = YES
- STRIP_CODE_COMMENTS = YES
- REFERENCED_BY_RELATION = YES
- REFERENCES_RELATION = YES
- REFERENCES_LINK_SOURCE = YES
- USE_HTAGS = NO
- VERBATIM_HEADERS = YES
- #---------------------------------------------------------------------------
- # configuration options related to the alphabetical class index
- #---------------------------------------------------------------------------
- ALPHABETICAL_INDEX = YES
- COLS_IN_ALPHA_INDEX = 5
- IGNORE_PREFIX =
- #---------------------------------------------------------------------------
- # configuration options related to the HTML output
- #---------------------------------------------------------------------------
- GENERATE_HTML = YES
- HTML_OUTPUT = html
- HTML_FILE_EXTENSION = .html
- HTML_HEADER =
- HTML_FOOTER =
- HTML_STYLESHEET =
- HTML_ALIGN_MEMBERS = YES
- GENERATE_HTMLHELP = NO
- CHM_FILE =
- HHC_LOCATION =
- GENERATE_CHI = NO
- BINARY_TOC = NO
- TOC_EXPAND = NO
- DISABLE_INDEX = NO
- ENUM_VALUES_PER_LINE = 4
- GENERATE_TREEVIEW = YES
- TREEVIEW_WIDTH = 250
- #---------------------------------------------------------------------------
- # configuration options related to the LaTeX output
- #---------------------------------------------------------------------------
- GENERATE_LATEX = NO
- LATEX_OUTPUT = latex
- LATEX_CMD_NAME = latex
- MAKEINDEX_CMD_NAME = makeindex
- COMPACT_LATEX = NO
- PAPER_TYPE = a4wide
- EXTRA_PACKAGES =
- LATEX_HEADER =
- PDF_HYPERLINKS = NO
- USE_PDFLATEX = NO
- LATEX_BATCHMODE = NO
- LATEX_HIDE_INDICES = NO
- #---------------------------------------------------------------------------
- # configuration options related to the RTF output
- #---------------------------------------------------------------------------
- GENERATE_RTF = NO
- RTF_OUTPUT = rtf
- COMPACT_RTF = NO
- RTF_HYPERLINKS = NO
- RTF_STYLESHEET_FILE =
- RTF_EXTENSIONS_FILE =
- #---------------------------------------------------------------------------
- # configuration options related to the man page output
- #---------------------------------------------------------------------------
- GENERATE_MAN = NO
- MAN_OUTPUT = man
- MAN_EXTENSION = .3
- MAN_LINKS = NO
- #---------------------------------------------------------------------------
- # configuration options related to the XML output
- #---------------------------------------------------------------------------
- GENERATE_XML = NO
- XML_OUTPUT = xml
- XML_SCHEMA =
- XML_DTD =
- XML_PROGRAMLISTING = YES
- #---------------------------------------------------------------------------
- # configuration options for the AutoGen Definitions output
- #---------------------------------------------------------------------------
- GENERATE_AUTOGEN_DEF = NO
- #---------------------------------------------------------------------------
- # configuration options related to the Perl module output
- #---------------------------------------------------------------------------
- GENERATE_PERLMOD = NO
- PERLMOD_LATEX = NO
- PERLMOD_PRETTY = YES
- PERLMOD_MAKEVAR_PREFIX =
- #---------------------------------------------------------------------------
- # Configuration options related to the preprocessor
- #---------------------------------------------------------------------------
- ENABLE_PREPROCESSING = YES
- MACRO_EXPANSION = NO
- EXPAND_ONLY_PREDEF = NO
- SEARCH_INCLUDES = YES
- INCLUDE_PATH =
- INCLUDE_FILE_PATTERNS =
- PREDEFINED =
- EXPAND_AS_DEFINED =
- SKIP_FUNCTION_MACROS = YES
- #---------------------------------------------------------------------------
- # Configuration.additions related to external references
- #---------------------------------------------------------------------------
- TAGFILES =
- GENERATE_TAGFILE =
- ALLEXTERNALS = NO
- EXTERNAL_GROUPS = YES
- PERL_PATH = /usr/bin/perl
- #---------------------------------------------------------------------------
- # Configuration options related to the dot tool
- #---------------------------------------------------------------------------
- CLASS_DIAGRAMS = YES
- HIDE_UNDOC_RELATIONS = YES
- HAVE_DOT = YES
- CLASS_GRAPH = YES
- COLLABORATION_GRAPH = YES
- GROUP_GRAPHS = YES
- UML_LOOK = YES
- TEMPLATE_RELATIONS = YES
- INCLUDE_GRAPH = YES
- INCLUDED_BY_GRAPH = YES
- CALL_GRAPH = YES
- CALLER_GRAPH = YES
- GRAPHICAL_HIERARCHY = YES
- DIRECTORY_GRAPH = YES
- DOT_IMAGE_FORMAT = png
- DOT_PATH =
- DOTFILE_DIRS =
- MAX_DOT_GRAPH_WIDTH = 1024
- MAX_DOT_GRAPH_HEIGHT = 1024
- MAX_DOT_GRAPH_DEPTH = 0
- DOT_TRANSPARENT = NO
- DOT_MULTI_TARGETS = NO
- GENERATE_LEGEND = YES
- DOT_CLEANUP = YES
- #---------------------------------------------------------------------------
- # Configuration.additions related to the search engine
- #---------------------------------------------------------------------------
- SEARCHENGINE = NO
- '''
-
-
- def public static genPackagePaths(Package pkg) '''
- «pkg.qualifiedName.replace(".", "/")»
- '''
-}
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/header/.classHeaderScript.java._trace b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/header/.classHeaderScript.java._trace
deleted file mode 100644
index 8941569..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/header/.classHeaderScript.java._trace
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/header/.commonHeaderScript.java._trace b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/header/.commonHeaderScript.java._trace
deleted file mode 100644
index edc58ed..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/header/.commonHeaderScript.java._trace
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/header/.dataTypeHeaderScript.java._trace b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/header/.dataTypeHeaderScript.java._trace
deleted file mode 100644
index b12f3f8..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/header/.dataTypeHeaderScript.java._trace
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/header/classHeaderScript$1.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/header/classHeaderScript$1.class
deleted file mode 100644
index 5bc59a2..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/header/classHeaderScript$1.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/header/classHeaderScript$2.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/header/classHeaderScript$2.class
deleted file mode 100644
index 75e1cad..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/header/classHeaderScript$2.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/header/classHeaderScript$3.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/header/classHeaderScript$3.class
deleted file mode 100644
index 3f10375..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/header/classHeaderScript$3.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/header/classHeaderScript.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/header/classHeaderScript.class
deleted file mode 100644
index 23c7857..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/header/classHeaderScript.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/header/classHeaderScript.xtend b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/header/classHeaderScript.xtend
deleted file mode 100644
index 6c0d76b..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/header/classHeaderScript.xtend
+++ /dev/null
@@ -1,79 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2015 CEA LIST.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * CEA LIST - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.papyrus.designer.languages.c.codegen.header
-
-import org.eclipse.uml2.uml.Class
-import org.eclipse.uml2.uml.VisibilityKind
-
-import static extension org.eclipse.papyrus.designer.languages.c.codegen.header.commonHeaderScript.*
-import static extension org.eclipse.papyrus.designer.languages.c.codegen.lib.classScript.*
-import static extension org.eclipse.papyrus.designer.languages.c.codegen.lib.commonScript.*
-import static extension org.eclipse.papyrus.designer.languages.c.codegen.lib.functionScript.*
-import static extension org.eclipse.papyrus.designer.languages.c.codegen.lib.importScript.*
-import static extension org.eclipse.papyrus.designer.languages.c.codegen.lib.variableScript.*
-import static extension org.eclipse.papyrus.designer.languages.c.codegen.services.UmlCommentServices.*
-
-class classHeaderScript {
- def public static classHeaderScript(Class clazz) '''
- // This template is called by the main module file
- «clazz.genHeading»
-
- «clazz.genHeadingHeader»
-
- // Explicit import of the class
- «clazz.genImport»
-
- // header body
- «clazz.classHeaderBody»
-
- «clazz.genEndHeader»
- '''
-
- def public static classHeaderBody(Class clazz) '''
- «IF (clazz.visibility == VisibilityKind.PUBLIC_LITERAL)»
- «clazz.partComment('Public Class Description')»
- // Structure
- «clazz.genClassStructDeclarations()»
-
- // Constructor and destructor declarations
- «clazz.genDynamicInstanciationOperationPrototypes()»
-
- // Property initialisation declarations
- «clazz.genDefaultInitialisationProtoype()»
-
- // Class methods declarations
- «clazz.genNonStaticFunctionDeclarations()»
- «ENDIF»
-
- // ----------------------------------Public Global VariableDescription----------------------------------
-
- «IF (clazz.ownedAttributes.filter[isStatic && visibility == VisibilityKind.PUBLIC_LITERAL && type != null].size > 0)»
- «clazz.partComment('Global Public Variable Declarations')»
- «ENDIF»
- «FOR attribute : clazz.ownedAttributes»
- «IF (attribute.isStatic && attribute.visibility == VisibilityKind.PUBLIC_LITERAL && attribute.type != null)»
- // global variable declaration
- «attribute.genVariableDeclaration»
- «ENDIF»
- «ENDFOR»
-
- // ----------------------------------Global Public Functions----------------------------------
- «IF (clazz.ownedOperations.filter[isStatic && visibility == VisibilityKind.PUBLIC_LITERAL].size > 0)»
- «clazz.partComment('Global Public Function Declarations')»
- «ENDIF»
- «FOR operation : clazz.ownedOperations + clazz.interfaceRealizations.map[contract.ownedOperations].flatten»
- «IF operation.isStatic && operation.visibility == VisibilityKind.PUBLIC_LITERAL»
- «operation.genFunctionPrototype»
- «ENDIF»
- «ENDFOR»
- '''
-}
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/header/commonHeaderScript.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/header/commonHeaderScript.class
deleted file mode 100644
index 32d28bc..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/header/commonHeaderScript.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/header/commonHeaderScript.xtend b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/header/commonHeaderScript.xtend
deleted file mode 100644
index 14e08da..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/header/commonHeaderScript.xtend
+++ /dev/null
@@ -1,27 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2015 CEA LIST.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * CEA LIST - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.papyrus.designer.languages.c.codegen.header
-
-import static extension org.eclipse.papyrus.designer.languages.c.codegen.lib.commonScript.*
-import org.eclipse.uml2.uml.NamedElement
-
-class commonHeaderScript {
- def public static genHeadingHeader(NamedElement namedElement) '''
- #ifndef «namedElement.genName.toString.toUpperCase»_H_
- #define «namedElement.genName.toString.toUpperCase»_H_
- '''
-
-
- def public static genEndHeader(NamedElement namedElement) '''
- #endif /*«namedElement.genName.toString.toUpperCase»_H_*/
- '''
-}
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/header/dataTypeHeaderScript$1.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/header/dataTypeHeaderScript$1.class
deleted file mode 100644
index 78ab200..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/header/dataTypeHeaderScript$1.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/header/dataTypeHeaderScript$2.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/header/dataTypeHeaderScript$2.class
deleted file mode 100644
index 2419f72..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/header/dataTypeHeaderScript$2.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/header/dataTypeHeaderScript.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/header/dataTypeHeaderScript.class
deleted file mode 100644
index 41449c0..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/header/dataTypeHeaderScript.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/header/dataTypeHeaderScript.xtend b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/header/dataTypeHeaderScript.xtend
deleted file mode 100644
index 4291dc4..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/header/dataTypeHeaderScript.xtend
+++ /dev/null
@@ -1,64 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2015 CEA LIST.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * CEA LIST - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.papyrus.designer.languages.c.codegen.header
-
-import org.eclipse.uml2.uml.DataType
-import org.eclipse.uml2.uml.VisibilityKind
-
-import static extension org.eclipse.papyrus.designer.languages.c.codegen.header.commonHeaderScript.*
-import static extension org.eclipse.papyrus.designer.languages.c.codegen.lib.commonScript.*
-import static extension org.eclipse.papyrus.designer.languages.c.codegen.lib.dataTypeScript.*
-import static extension org.eclipse.papyrus.designer.languages.c.codegen.lib.importScript.*
-import static extension org.eclipse.papyrus.designer.languages.c.codegen.lib.variableScript.*
-import static extension org.eclipse.papyrus.designer.languages.c.codegen.services.UmlCommentServices.*
-
-class dataTypeHeaderScript {
- def public static dataTypefill(DataType dataType) '''
- '''
-
-
- def public static dataTypeHeaderScript(DataType dataType) '''
- // This template is called by the main module file
- «dataType.genHeading»
-
- «dataType.genHeadingHeader»
-
- // Explicit import of the class
- «dataType.genImport»
-
- // header body
- «dataType.dataTypeHeaderBody»
-
- «dataType.genEndHeader»
- '''
-
-
- def public static dataTypeHeaderBody(DataType dataType) '''
- «dataType.partComment('Public Class Description')»
- // Structure
- «dataType.genDataTypeStructDeclarations()»
-
- // Property initialisation declarations
- «dataType.genDefaultInitialisationProtoype()»
-
- // ----------------------------------Public Global VariableDescription----------------------------------
- «IF (dataType.ownedAttributes.filter[isStatic && visibility == VisibilityKind.PUBLIC_LITERAL && type != null].size> 0)»
- «dataType.partComment('Global Public Variable Declarations')»
- «ENDIF»
- «FOR attribute : dataType.ownedAttributes.filter[!isStatic]»
- «IF (attribute.visibility == VisibilityKind.PUBLIC_LITERAL && attribute.type != null)»
- // global variable declaration
- «attribute.genVariableDeclaration()»
- «ENDIF»
- «ENDFOR»
- '''
-}
\ No newline at end of file
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/.classScript.java._trace b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/.classScript.java._trace
deleted file mode 100644
index 2b16900..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/.classScript.java._trace
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/.commentScript.java._trace b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/.commentScript.java._trace
deleted file mode 100644
index e68a473..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/.commentScript.java._trace
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/.commonScript.java._trace b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/.commonScript.java._trace
deleted file mode 100644
index bffcf54..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/.commonScript.java._trace
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/.dataTypeScript.java._trace b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/.dataTypeScript.java._trace
deleted file mode 100644
index cb488f6..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/.dataTypeScript.java._trace
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/.functionScript.java._trace b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/.functionScript.java._trace
deleted file mode 100644
index 8949046..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/.functionScript.java._trace
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/.importScript.java._trace b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/.importScript.java._trace
deleted file mode 100644
index bf6ea50..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/.importScript.java._trace
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/.interfaceScript.java._trace b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/.interfaceScript.java._trace
deleted file mode 100644
index f79e8ff..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/.interfaceScript.java._trace
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/.multiplicityScript.java._trace b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/.multiplicityScript.java._trace
deleted file mode 100644
index 6d8b34d..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/.multiplicityScript.java._trace
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/.typeScript.java._trace b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/.typeScript.java._trace
deleted file mode 100644
index f431b39..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/.typeScript.java._trace
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/.valueSpecificationScript.java._trace b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/.valueSpecificationScript.java._trace
deleted file mode 100644
index 9cf173a..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/.valueSpecificationScript.java._trace
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/.variableScript.java._trace b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/.variableScript.java._trace
deleted file mode 100644
index 12394d7..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/.variableScript.java._trace
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/classScript$1.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/classScript$1.class
deleted file mode 100644
index 2b84531..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/classScript$1.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/classScript$10.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/classScript$10.class
deleted file mode 100644
index c8c5bdf..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/classScript$10.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/classScript$2.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/classScript$2.class
deleted file mode 100644
index a56f6d6..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/classScript$2.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/classScript$3.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/classScript$3.class
deleted file mode 100644
index 867c2df..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/classScript$3.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/classScript$4.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/classScript$4.class
deleted file mode 100644
index 30f89da..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/classScript$4.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/classScript$5.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/classScript$5.class
deleted file mode 100644
index a98489e..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/classScript$5.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/classScript$6.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/classScript$6.class
deleted file mode 100644
index 8ce6356..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/classScript$6.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/classScript$7.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/classScript$7.class
deleted file mode 100644
index 0784f94..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/classScript$7.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/classScript$8.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/classScript$8.class
deleted file mode 100644
index d6a6054..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/classScript$8.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/classScript$9.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/classScript$9.class
deleted file mode 100644
index a65d188..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/classScript$9.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/classScript.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/classScript.class
deleted file mode 100644
index 5f98a1c..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/classScript.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/classScript.xtend b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/classScript.xtend
deleted file mode 100644
index 07ca105..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/classScript.xtend
+++ /dev/null
@@ -1,147 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2015 CEA LIST.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * CEA LIST - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.papyrus.designer.languages.c.codegen.lib
-
-import static extension org.eclipse.papyrus.designer.languages.c.codegen.lib.functionScript.*
-import static extension org.eclipse.papyrus.designer.languages.c.codegen.lib.commonScript.*
-import static extension org.eclipse.papyrus.designer.languages.c.codegen.lib.variableScript.*
-
-import static extension org.eclipse.papyrus.designer.languages.c.codegen.services.UmlCommentServices.*
-import static extension org.eclipse.papyrus.designer.languages.common.base.GenUtils.*
-import org.eclipse.uml2.uml.Class
-import org.eclipse.uml2.uml.profile.standard.Create
-import org.eclipse.uml2.uml.VisibilityKind
-import org.eclipse.uml2.uml.profile.standard.Destroy
-
-class classScript {
- def public static genDynamicInstanciationOperationPrototypes(Class clazz) '''
- «clazz.partComment('Default constructor & destructor prototypes')»
- «clazz.genConstructorPrototype»
- «clazz.genDestructorPrototype»
- '''
-
- // generate a constructor prototype, if there is none
- def public static genConstructorPrototype(Class clazz) '''
- «IF (clazz.ownedOperations.filter[hasStereotype(Create)].size == 0)»
- /**
- * Dynamic instantiation of a «clazz.genName()» structure
- * @return «clazz.genName()» instance pointer
- */
- «clazz.genName»* «clazz.genName()»_create();
- «ENDIF»
-
- '''
-
- // generate a destructor prototype, if there is none
- def public static genDestructorPrototype(Class clazz) '''
- «IF (clazz.ownedOperations.filter[hasStereotype(Destroy)].size == 0)»
- /**
- * Dynamic destruction of a «clazz.genName()» structure instantiation
- * @param Pointer to an instance of the «clazz.genName()» structure
- * @return void
- */
- void «clazz.genName»_destroy(«clazz.genName»*);
- «ENDIF»
- '''
-
- def public static genDynamicInstanciationOperations(Class clazz) '''
- «clazz.partComment('Default constructor & destructor implementations')»
- «clazz.genConstructor»
- «clazz.genDestructor»
- '''
-
- // generate a constructor, if there is none
- def public static genConstructor(Class clazz) '''
- «IF (clazz.ownedOperations.filter[hasStereotype(Create)].size == 0)»
- «clazz.genName()»* «clazz.genName()»_create() {
- «clazz.genName()»* self = («clazz.genName()»*) malloc(sizeof(«clazz.genName()»));
- return self;
- }
- «ENDIF»
- '''
-
- // generate a destructor implementation, if there is none
- def public static genDestructor(Class clazz) '''
- «IF (clazz.ownedOperations.filter[hasStereotype(Destroy)].size == 0)»
- // default destructor
- void «clazz.genName()»_destroy(«clazz.genName()»* self) {
- free(self);
- }
-
- «ENDIF»
- '''
-
- def public static genDefaultInitialisationProtoype(Class clazz) '''
- «IF (clazz.getAllAttributes().filter[defaultValue != null].size > 0)»
- «clazz.partComment('Default value initialization prototypes')»
- /**
- * Default value initialization
- * @param «clazz.genName()» structure instance pointer
- * @return void
- */
- void «clazz.genName()»_init(«clazz.genName()»* self);
-
- «ENDIF»
- '''
-
- def public static genDefaultIntialisationOperation(Class clazz) '''
- «IF (clazz.getAllAttributes.filter[defaultValue != null].size > 0)»
- «clazz.partComment('Default value initialization implementation')»
- void «clazz.genName()»_init(«clazz.genName()»* self) {
- «FOR attribute : clazz.getAllAttributes»
- «IF (attribute.defaultValue != null && !attribute.isStatic && attribute.type != null)»
- «attribute.genInitDefaultValue»
- «ENDIF»
- «ENDFOR»
- }
- «ENDIF»
- '''
-
- def public static defaultIntialisationCall(Class clazz) '''
- «IF (clazz.getAllAttributes.filter[defaultValue != null].size > 0)»
- /* Default value initialization */
- «clazz.genName()»_init(&«clazz.genName()»);
- «ENDIF»
- '''
-
- def public static genClassStructDeclarations(Class clazz) '''
- /* Class Macro definition */
- #define «clazz.genName()»(OBJ) ((«clazz.genName()»*)OBJ)
-
- «FOR comment : clazz.ownedComments»
- «comment.genComment»
- «ENDFOR»
- typedef struct «clazz.genName» «clazz.genName»;
-
- struct «clazz.genName» {
- «FOR attribute : clazz.getClassStructAttributes»
- «IF (!attribute.isStatic)»
- «attribute.genVariableDeclaration»«ENDIF»
- «ENDFOR»
- };
- '''
-
- def static getClassStructAttributes(Class clazz) {
- clazz.getAllAttributes.clone + clazz.interfaceRealizations.map[contract].map[ownedAttributes].flatten
- }
-
- def public static genNonStaticFunctionDeclarations(Class clazz) '''
- «IF (clazz.ownedOperations.filter[!isStatic && visibility == VisibilityKind.PUBLIC_LITERAL].size() > 0)»
- «clazz.partComment('Function Declarations')»
- «ENDIF»
- «FOR operation : clazz.getAllOperations»
- «IF (!operation.isStatic && operation.visibility == VisibilityKind.PUBLIC_LITERAL)»
- «operation.genFunctionPrototype»
- «ENDIF»
- «ENDFOR»
- '''
-}
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/commentScript.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/commentScript.class
deleted file mode 100644
index 1b5a313..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/commentScript.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/commentScript.xtend b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/commentScript.xtend
deleted file mode 100644
index b24e5d4..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/commentScript.xtend
+++ /dev/null
@@ -1,22 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2015 CEA LIST.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * CEA LIST - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.papyrus.designer.languages.c.codegen.lib
-
-import org.eclipse.uml2.uml.Comment
-
-class commentScript {
- def public static genComment(Comment comment) '''
- /**
- * «comment.body»
- */
- '''
-}
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/commonScript.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/commonScript.class
deleted file mode 100644
index 3e7820e..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/commonScript.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/commonScript.xtend b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/commonScript.xtend
deleted file mode 100644
index 2d5268b..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/commonScript.xtend
+++ /dev/null
@@ -1,99 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2015 CEA LIST.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * CEA LIST - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.papyrus.designer.languages.c.codegen.lib
-
-import static extension org.eclipse.papyrus.designer.languages.c.codegen.services.DateUtils.*
-import static extension org.eclipse.papyrus.designer.languages.common.base.GenUtils.*
-import org.eclipse.uml2.uml.NamedElement
-import org.eclipse.uml2.uml.Element
-import org.eclipse.uml2.uml.Class
-import org.eclipse.uml2.uml.Feature
-import org.eclipse.uml2.uml.PackageImport
-import org.eclipse.uml2.uml.VisibilityKind
-import org.eclipse.uml2.uml.profile.standard.ModelLibrary
-import org.eclipse.uml2.uml.Operation
-import org.eclipse.uml2.uml.RedefinableElement
-import java.io.File
-
-class commonScript {
- def public static genHeading(NamedElement namedElement) '''
- /*
- * File generated from the «namedElement.qualifiedName» uml class
- * Generated by the Papyrus C Generator (CEA LIST)
- * $ Date : «namedElement.getShortDate» «namedElement.getTime()» («namedElement.getLongDate()») $
- *
- */
- '''
-
-
- def public static packagePath(NamedElement element) '''
- «element.qualifiedName.replace('.', File.separator)»
- '''
-
-
- def public static genComment(Element element) '''
- «FOR comment : element.ownedComments»comment.body»«ENDFOR»
- '''
-
-
- def public static genAbstract(Class clazz) '''
- «IF (clazz.isAbstract)»abstract «ENDIF»
- '''
-
-
- def public static genAbstract(Operation operation) '''
- «IF (operation.isAbstract)»abstract «ENDIF»
- '''
-
-
- def public static genFinal(RedefinableElement redefinableElement) '''
- «IF (redefinableElement.isLeaf)»final «ENDIF»
- '''
-
-
- def public static genStatic(Feature feature) '''
- «IF (feature.isStatic)»static «ENDIF»
- '''
-
-
- def public static HeaderPackageImportTemplate(PackageImport packageImport) '''
- «IF (packageImport.importedPackage.hasStereotype(ModelLibrary))»
- #include <«packageImport.importedPackage.name».h>
- «ELSE»
- #include «packageImport.importedPackage.name».h
- «ENDIF»
- '''
-
-
- def public static genName(NamedElement namedElement) '''
- «namedElement.genVisibility»«namedElement.genCoreName()»'''
-
-
- def public static genCoreName(NamedElement namedElement) {
- '''«namedElement.name.replaceAll("/|\\.|~", "_")»'''
- }
-
-
- def public static genVisibility(NamedElement namedElement) {
- '''«IF (namedElement.visibility == VisibilityKind.PRIVATE_LITERAL)»
- /* private */
- «ELSEIF (namedElement.visibility == VisibilityKind.PROTECTED_LITERAL)»
- /* protected */
- «ENDIF»'''.toString.trim
- }
-
-
- def public static genIncludeSelf(NamedElement namedElement) '''
- /* include header file*/
- #include "«namedElement.genName».h"
- '''
-}
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/dataTypeScript$1.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/dataTypeScript$1.class
deleted file mode 100644
index 377257f..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/dataTypeScript$1.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/dataTypeScript$2.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/dataTypeScript$2.class
deleted file mode 100644
index 8e802e2..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/dataTypeScript$2.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/dataTypeScript$3.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/dataTypeScript$3.class
deleted file mode 100644
index 4b1ffec..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/dataTypeScript$3.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/dataTypeScript.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/dataTypeScript.class
deleted file mode 100644
index 98bbc2a..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/dataTypeScript.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/dataTypeScript.xtend b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/dataTypeScript.xtend
deleted file mode 100644
index 3bab71b..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/dataTypeScript.xtend
+++ /dev/null
@@ -1,99 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2015 CEA LIST.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * CEA LIST - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.papyrus.designer.languages.c.codegen.lib
-
-import org.eclipse.papyrus.designer.languages.cpp.profile.C_Cpp.Typedef
-import org.eclipse.uml2.uml.DataType
-import org.eclipse.uml2.uml.Enumeration
-import org.eclipse.uml2.uml.PrimitiveType
-
-import static extension org.eclipse.papyrus.designer.languages.c.codegen.lib.commonScript.*
-import static extension org.eclipse.papyrus.designer.languages.c.codegen.lib.variableScript.*
-import static extension org.eclipse.papyrus.designer.languages.c.codegen.services.UmlCommentServices.*
-import static extension org.eclipse.papyrus.designer.languages.common.base.GenUtils.*
-import static extension org.eclipse.uml2.uml.util.UMLUtil.getStereotypeApplication
-
-class dataTypeScript {
- def public static genDefaultInitialisationProtoype(DataType dataType) '''
- «IF (dataType.ownedAttributes.filter[defaultValue != null].size > 0)»
- «dataType.partComment('Default value initialization prototypes')»
- /*
- * Default value initialization
- * @param «dataType.genName» structure instance pointer
- * @return void
- */
- void «dataType.genName»_init(«dataType.genName»* self);
- «ENDIF»
-
- '''
-
-
- def public static genDefaultIntialisationOperation(DataType dataType) '''
- «IF (dataType.ownedAttributes.filter[defaultValue != null].size > 0)»
- «dataType.partComment('Default value initialization Implementation')»
- void «dataType.genName()»_init(«dataType.genName()»* self){
- «FOR attribute : dataType.ownedAttributes»
- «IF (attribute.defaultValue != null && !attribute.isStatic && attribute.type != null)»
- «attribute.genInitDefaultValue()»
- «ENDIF»
- «ENDFOR»
- }
- «ENDIF»
- '''
-
-
- def public static genDataTypeStructDeclarations(DataType dataType) '''
- «FOR comment : dataType.ownedComments»
- «comment.genComment()»
- «ENDFOR»
- typedef struct «dataType.genName» «dataType.genName»;
-
- struct «dataType.genName» {
- «FOR attribute : dataType.getAllAttributes().filter[!isStatic]»
- «attribute.genVariableDeclaration»
- «ENDFOR»
- };
- '''
-
-
- def public static genDataTypeStructDeclarations(Enumeration enumeration) '''
- «FOR comment : enumeration.ownedComments»
- «comment.genComment()»
- «ENDFOR»
- typedef enum «enumeration.genName()» «enumeration.genName()»;
-
- enum «enumeration.genName()»{
- «FOR literal : enumeration.ownedLiterals SEPARATOR(',\n')»
- «literal.genName()»
- «ENDFOR»
- };
- '''
-
-
- def public static genDataTypeStructDeclarations(PrimitiveType primitiveType) '''
- «FOR comment : primitiveType.ownedComments»
- «comment.genComment()»
- «ENDFOR»
- «IF (primitiveType.hasStereotype(Typedef))»
- typedef «primitiveType.getStereotypeApplication(Typedef).definition» «primitiveType.genName()»;
- «ELSE»
- typedef struct «primitiveType.genName()» «primitiveType.genName()»;
- struct «primitiveType.genName()»{
- «FOR attribute : primitiveType.ownedAttributes»
- «IF (!attribute.isStatic)»
- «attribute.genVariableDeclaration()»
- «ENDIF»
- «ENDFOR»
- };
- «ENDIF»
- '''
-}
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/functionScript$1.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/functionScript$1.class
deleted file mode 100644
index f392c83..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/functionScript$1.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/functionScript$2.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/functionScript$2.class
deleted file mode 100644
index f5f9c09..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/functionScript$2.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/functionScript.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/functionScript.class
deleted file mode 100644
index 0f855d8..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/functionScript.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/functionScript.xtend b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/functionScript.xtend
deleted file mode 100644
index 9d4450a..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/functionScript.xtend
+++ /dev/null
@@ -1,136 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2015 CEA LIST.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * CEA LIST - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.papyrus.designer.languages.c.codegen.lib
-
-import java.util.regex.Pattern
-import org.eclipse.papyrus.designer.languages.cpp.profile.C_Cpp.Const
-import org.eclipse.papyrus.designer.languages.cpp.profile.C_Cpp.EStorageClass
-import org.eclipse.papyrus.designer.languages.cpp.profile.C_Cpp.Ptr
-import org.eclipse.papyrus.designer.languages.cpp.profile.C_Cpp.StorageClass
-import org.eclipse.uml2.uml.Interface
-import org.eclipse.uml2.uml.NamedElement
-import org.eclipse.uml2.uml.Operation
-import org.eclipse.uml2.uml.profile.standard.Create
-
-import static extension org.eclipse.papyrus.designer.languages.c.codegen.lib.commonScript.*
-import static extension org.eclipse.papyrus.designer.languages.c.codegen.lib.interfaceScript.*
-import static extension org.eclipse.papyrus.designer.languages.c.codegen.lib.variableScript.*
-import static extension org.eclipse.papyrus.designer.languages.c.codegen.services.UmlOperationServices.*
-import static extension org.eclipse.papyrus.designer.languages.common.base.GenUtils.*
-import static extension org.eclipse.uml2.uml.util.UMLUtil.getStereotypeApplication
-
-class functionScript {
- final static Pattern CLANGUAGE = Pattern.compile("C|C\\/C\\+\\+|c")
-
- def public static genFunctionPrototype(Operation operation) '''
- «FOR comment : operation.ownedComments»
- «comment.genComment»
- «ENDFOR»
- «operation.genDeclarator»«operation.genReturnArgumentType»«operation.genFunctionDeclarator»(«operation.genArgumentDeclarator»);
-
- '''
-
-
- def public static genFunctionImplementation(Operation operation) '''
- «FOR comment : operation.ownedComments»
- «comment.genComment()»
- «ENDFOR»
- «operation.genDeclarator()»«operation.genReturnArgumentType»«operation.genFunctionDeclarator()»(«operation.genArgumentDeclarator») {
- «operation.getBody(CLANGUAGE)»
- }
-
- '''
-
-
- def public static genDeclarator(Operation operation) {
- '''«operation.genStorageClass»«operation.genVolatile»«operation.genConstant»'''
- }
-
- def public static genPointer(Operation operation) {
- '''«IF operation.hasStereotype(Ptr)»* «ENDIF»'''
- }
-
-
- def public static genStorageClass(Operation operation) '''
- «IF (operation.hasStereotype(StorageClass))»
- «operation.getStereotypeApplication(StorageClass).storageClass»
- «ENDIF»
- '''
-
-
- def public static genConstant(Operation operation) '''
- «IF (operation.hasStereotype(Const))»const «ENDIF»
- '''
-
-
- def public static genVolatile(Operation operation) '''
- «IF operation.hasStereotype(StorageClass)»
- «IF (operation.getStereotypeApplication(StorageClass).storageClass == EStorageClass.VOLATILE)»volatile «ENDIF»
- «ENDIF»
- '''
-
- def public static genArgumentDeclarator(Operation operation) { '''
- «IF (operation.isStatic)»
- «IF (operation.getArguments.size == 0)»
- void
- «ELSE»
- «operation.genArguments»
- «ENDIF»
- «ELSEIF (!operation.hasStereotype(Create))»
- «operation.genClassArgument»«IF (operation.getArguments.size > 0)», «ENDIF»
- «ENDIF»«operation.genArguments»
- '''.toString.trim }
-
-
- def public static genFunctionDeclarator(Operation operation) { '''
- «IF (operation.hasStereotype(Ptr))»
- (*«operation.genName»)
- «ELSE»
- «operation.genName»
- «ENDIF»
- '''.toString.trim }
-
-
- def public static genClassArgument(Operation operation) { '''
- «IF (operation.namespace instanceof Interface)»
- «operation.interface.getInterfaceRealizationClass.map[(it as NamedElement).genName]» *self
- «ELSE»
- «operation.namespace.genName()» *self
- «ENDIF»
- '''.toString.trim }
-
-
- def public static genArguments(Operation operation) { '''
- «FOR parameter : operation.getArguments SEPARATOR(', ')» «parameter.genType()» «parameter.genPointer()»«parameter.genName()» «ENDFOR»
- '''.toString.trim }
-
-
- def public static genReturnArgumentType(Operation operation) '''
- «IF (operation.getReturnResult != null)»
- «operation.getReturnResult.genType»«operation.getReturnResult.genPointer»
- «ELSE»
- void
- «ENDIF»
- '''
-
- def public static genName(Operation operation) '''
- «IF (operation.isStatic)»
- «operation.genVisibility()»«operation.genCoreName()»
- «ELSE»
- «IF (operation.namespace instanceof Interface)»
- «operation.genVisibility()»«operation.interface.getInterfaceRealizationClass.map[(it as NamedElement).genName]»_«operation.genCoreName()»
- «ELSE»
- «operation.genVisibility()»«operation.namespace.genName()»_«operation.genCoreName()»
- «ENDIF»
- «ENDIF»
- '''
-}
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/importScript$1.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/importScript$1.class
deleted file mode 100644
index e124976..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/importScript$1.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/importScript$2.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/importScript$2.class
deleted file mode 100644
index 1bf6757..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/importScript$2.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/importScript$3.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/importScript$3.class
deleted file mode 100644
index 502e4ed..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/importScript$3.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/importScript$4$1.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/importScript$4$1.class
deleted file mode 100644
index 619c69e..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/importScript$4$1.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/importScript$4.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/importScript$4.class
deleted file mode 100644
index a812eba..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/importScript$4.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/importScript$5.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/importScript$5.class
deleted file mode 100644
index dec9e03..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/importScript$5.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/importScript$6$1.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/importScript$6$1.class
deleted file mode 100644
index 65bbb8b..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/importScript$6$1.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/importScript$6.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/importScript$6.class
deleted file mode 100644
index c538a81..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/importScript$6.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/importScript$7.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/importScript$7.class
deleted file mode 100644
index d673eab..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/importScript$7.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/importScript$8$1.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/importScript$8$1.class
deleted file mode 100644
index ffe81bb..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/importScript$8$1.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/importScript$8.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/importScript$8.class
deleted file mode 100644
index e338005..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/importScript$8.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/importScript.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/importScript.class
deleted file mode 100644
index 2a972a3..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/importScript.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/importScript.xtend b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/importScript.xtend
deleted file mode 100644
index 5be6588..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/importScript.xtend
+++ /dev/null
@@ -1,122 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2015 CEA LIST.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * CEA LIST - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.papyrus.designer.languages.c.codegen.lib
-
-import java.util.ArrayList
-import org.eclipse.uml2.uml.Class
-import org.eclipse.uml2.uml.Classifier
-import org.eclipse.uml2.uml.DataType
-import org.eclipse.uml2.uml.Element
-import org.eclipse.uml2.uml.Interface
-import org.eclipse.uml2.uml.NamedElement
-import org.eclipse.uml2.uml.Namespace
-import org.eclipse.uml2.uml.Package
-import org.eclipse.uml2.uml.profile.standard.ModelLibrary
-
-import static extension org.eclipse.papyrus.designer.languages.c.codegen.lib.commonScript.*
-import static extension org.eclipse.papyrus.designer.languages.c.codegen.lib.interfaceScript.*
-import static extension org.eclipse.papyrus.designer.languages.c.codegen.services.UmlCommentServices.*
-import static extension org.eclipse.papyrus.designer.languages.common.base.GenUtils.*
-
-class importScript {
- def public static genImport(Classifier classifier) '''
- «classifier.partComment('Import')»
- «classifier.genImportList()» «classifier.genDynamicInstanciationImport()»
- // User imports
- /* "startUserCode" to add imports */
- /* "endUserCode" to add imports */
- '''
-
-
- def public static genImportList(Classifier classifier) '''
- «FOR import_ : classifier.getImportList»
- «import_.genRelativeNamedImport(classifier)»
- «ENDFOR»
- '''
-
-
- def public static getImportList(Classifier classifier) {
- classifier.genNamespaceImports + classifier.genOwningPackageImports + classifier.genUsageImports
- }
-
-
- def public static genRelativeNamedImport(Element element) '''
- '''
-
-
- def public static genRelativeNamedImport(NamedElement namedElement1, NamedElement namedElement2) '''
- «IF (namedElement1.hasStereotypeTree(ModelLibrary))»
- #include <«namedElement1.namespace.genName()».h>
- «ELSE»
- #include "«namedElement2.getRelativePath(namedElement1)»«namedElement1.genName()».h"
- «ENDIF»
- '''
-
- def public static genRelativeNamedImport(Package pkg, NamedElement namedElement) '''
- «IF (pkg.hasStereotypeTree(ModelLibrary))»
- #include <«pkg.genName()».h>
- «ELSE»
- #include "«pkg.getRelativePath(namedElement)»«pkg.genName».h"
- «ENDIF»
- '''
-
-
- def public static genOwningPackageImports(Classifier classifier) {
- classifier.namespace.genNamespaceImports()
- }
-
-
- def public static genNamespaceImports(Namespace namespace) {
- namespace.elementImports.map[it.importedElement]
- }
-
- def public static genUsageImports(Classifier lassifier) {
- return new ArrayList<Classifier>();
- }
-
- def public static genUsageImports(Class clazz) {
- if (clazz.hasStereotypeTree(ModelLibrary)) {
- clazz.getUsedInterfaces()
- }
- else {
- clazz.getUsedInterfaces().map[getInterfaceRealizationClass]
- }
- }
-
- def public static getTypeListOfClassifier(Class clazz) {
- val list = clazz.getAllAttributes.map[type]
- list.addAll(clazz.getAllOperations.map[ownedParameters.map[type]])
- list.addAll(clazz.generals)
- return list
- }
-
-
- def public static getTypeListOfClassifier(Interface intf) {
- val list = intf.ownedAttributes.map[type]
- list.addAll(intf.ownedOperations.map[ownedParameters.map[type]])
- list.addAll(intf.generals)
- return list
- }
-
-
- def public static getTypeListOfClassifier(DataType dataType) {
- val list = dataType.ownedAttributes.map[type]
- list.addAll(dataType.ownedOperations.map[ownedParameters.map[type]])
- list.addAll(dataType.generals)
- return list
- }
-
- // TODO: why do need stdlib in this case?
- def public static genDynamicInstanciationImport(Classifier classifier) '''
- #include <stdlib.h>
- '''
-}
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/interfaceScript$1.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/interfaceScript$1.class
deleted file mode 100644
index 5a7f038..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/interfaceScript$1.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/interfaceScript$2.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/interfaceScript$2.class
deleted file mode 100644
index 2209709..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/interfaceScript$2.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/interfaceScript.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/interfaceScript.class
deleted file mode 100644
index 11f3296..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/interfaceScript.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/interfaceScript.xtend b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/interfaceScript.xtend
deleted file mode 100644
index ff3f4f9..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/interfaceScript.xtend
+++ /dev/null
@@ -1,26 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2015 CEA LIST.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * CEA LIST - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.papyrus.designer.languages.c.codegen.lib
-
-import org.eclipse.papyrus.designer.languages.cpp.profile.C_Cpp.NoCodeGen
-import org.eclipse.uml2.common.util.UML2Util
-import org.eclipse.uml2.uml.Classifier
-import org.eclipse.uml2.uml.Element
-import org.eclipse.uml2.uml.InterfaceRealization
-
-import static extension org.eclipse.papyrus.designer.languages.common.base.GenUtils.hasStereotypeTree
-
-class interfaceScript {
- def public static getInterfaceRealizationClass(Classifier classifier) {
- UML2Util.getInverseReferences(classifier).filter[it instanceof InterfaceRealization && !(it as Element).hasStereotypeTree(NoCodeGen)].map[(it as InterfaceRealization).clients]
- }
-}
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/multiplicityScript.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/multiplicityScript.class
deleted file mode 100644
index f0bbb06..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/multiplicityScript.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/multiplicityScript.xtend b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/multiplicityScript.xtend
deleted file mode 100644
index 174ca81..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/multiplicityScript.xtend
+++ /dev/null
@@ -1,23 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2015 CEA LIST.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * CEA LIST - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.papyrus.designer.languages.c.codegen.lib
-
-import org.eclipse.uml2.uml.MultiplicityElement
-
-class multiplicityScript {
- def public static genMultiplicity(MultiplicityElement multiplicityElement) '''
- «IF (multiplicityElement.upper == -1)»
- []
- «ELSEIF (multiplicityElement.upper > 1)»
- [«multiplicityElement.upper.toString()»]
- «ENDIF»'''
-}
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/typeScript.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/typeScript.class
deleted file mode 100644
index 142f304..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/typeScript.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/typeScript.xtend b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/typeScript.xtend
deleted file mode 100644
index 3152c5f..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/typeScript.xtend
+++ /dev/null
@@ -1,29 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2015 CEA LIST.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * CEA LIST - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.papyrus.designer.languages.c.codegen.lib
-
-import org.eclipse.uml2.uml.Type
-
-class typeScript {
- def public static genIntegerType(Type type) {
- '''int'''
- }
-
- def public static genStringType(Type type) {
- '''char*'''
- }
-
-
- def public static genBooleanType(Type type) {
- '''/*bool*/ char'''
- }
-}
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/valueSpecificationScript.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/valueSpecificationScript.class
deleted file mode 100644
index a34120c..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/valueSpecificationScript.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/valueSpecificationScript.xtend b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/valueSpecificationScript.xtend
deleted file mode 100644
index d707635..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/valueSpecificationScript.xtend
+++ /dev/null
@@ -1,44 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2015 CEA LIST.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * CEA LIST - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.papyrus.designer.languages.c.codegen.lib
-
-import org.eclipse.uml2.uml.InstanceValue
-import org.eclipse.uml2.uml.ValueSpecification
-import org.eclipse.uml2.uml.EnumerationLiteral
-import org.eclipse.uml2.uml.Expression
-
-class valueSpecificationScript {
- def public static ValueSpecificationTemplate(ValueSpecification valueSpecification) '''
- «valueSpecification.stringValue()»
- '''
-
-
- def public static ValueSpecificationTemplate(InstanceValue instanceValue) '''
- «IF (instanceValue.instance instanceof EnumerationLiteral)»
- «FOR slot : instanceValue.instance.slots»
- «FOR value : slot.values» «value.ValueSpecificationTemplate»
- «ENDFOR»
- «ENDFOR»{
- «FOR slot : instanceValue.instance.slots»
- «slot.definingFeature.name.toUpperCase()» = «FOR value : slot.values» «value.ValueSpecificationTemplate» «ENDFOR»;
- «ENDFOR»
- }
- «ELSE»
- «instanceValue.instance.name»
- «ENDIF»
- '''
-
-
- def public static ValueSpecificationTemplate(Expression expression) '''
-
- '''
-}
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/variableScript.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/variableScript.class
deleted file mode 100644
index 55cdab9..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/variableScript.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/variableScript.xtend b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/variableScript.xtend
deleted file mode 100644
index fe8a5c6..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/lib/variableScript.xtend
+++ /dev/null
@@ -1,106 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2015 CEA LIST.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * CEA LIST - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.papyrus.designer.languages.c.codegen.lib
-
-import org.eclipse.papyrus.designer.languages.cpp.profile.C_Cpp.Const
-import org.eclipse.papyrus.designer.languages.cpp.profile.C_Cpp.Ptr
-import org.eclipse.papyrus.designer.languages.cpp.profile.C_Cpp.StorageClass
-import org.eclipse.uml2.uml.Property
-import org.eclipse.uml2.uml.Type
-import org.eclipse.uml2.uml.TypedElement
-
-import static extension org.eclipse.papyrus.designer.languages.c.codegen.lib.commonScript.*
-import static extension org.eclipse.papyrus.designer.languages.c.codegen.lib.multiplicityScript.*
-import static extension org.eclipse.papyrus.designer.languages.c.codegen.lib.typeScript.*
-import static extension org.eclipse.papyrus.designer.languages.c.codegen.lib.valueSpecificationScript.*
-import static extension org.eclipse.papyrus.designer.languages.common.base.GenUtils.*
-import static extension org.eclipse.uml2.uml.util.UMLUtil.getStereotypeApplication
-
-class variableScript {
- def public static genVariableDeclaration(Property property) '''
- «FOR comment : property.ownedComments»
- «comment.genComment»
- «ENDFOR»
- «property.genDeclarator»«property.genType»«property.genPointer» «property.genName»«property.genMultiplicity»«IF (property.defaultValue != null && property.isStatic)» «property.genDefaultValue()» «ENDIF»;
- '''
-
-
- def public static genDefaultValue(Property property) '''
- «IF (property.defaultValue != null)»
- = «IF (property.upper != 1)»{ «property.defaultValue.ValueSpecificationTemplate()» }
- «ELSE»«property.defaultValue.ValueSpecificationTemplate()»
- «ENDIF»
- «ENDIF»
- '''
-
-
- def public static genType(TypedElement typedElement) { '''
- «IF (typedElement.type == null)»
- void *
- «ELSE»
- «typedElement.type.genCTypeName»
- «ENDIF»
- '''.toString.trim()
- }
-
-
- def public static genCTypeName(Type type) '''
- «IF (type == null || type.name == null)»
- undefined
- «ELSEIF (type.name.toLowerCase == 'boolean') || (type.name.toLowerCase == 'bool')»
- «type.genBooleanType»
- «ELSEIF (type.name.toLowerCase == 'integer')»
- «type.genIntegerType»
- «ELSEIF (type.name.toLowerCase == 'string')»
- «type.genStringType»
- «ELSE»
- «type.name»
- «ENDIF»'''
-
-
- def public static genDeclarator(TypedElement typedElement) '''
- «typedElement.genStorageClass()» «typedElement.genConstant»
- '''
-
-
- def public static genStorageClass(TypedElement typedElement) '''
- «IF (typedElement.hasStereotype(StorageClass))»
- «typedElement.getStereotypeApplication(StorageClass).storageClass.toString»
- «ENDIF»
-
- '''
-
-
- def public static genConstant(TypedElement typedElement) '''
- «IF (typedElement.hasStereotype(Const))»const «ENDIF»
- '''
-
-
- def public static genPointer(TypedElement typedElement) '''
- «IF (typedElement.hasStereotype(Ptr))»* «ENDIF»
- '''
-
-
- def public static genPointer(Property property) {
- '''«IF (property.hasStereotype(Ptr))»* «ENDIF»'''
- }
-
-
- def public static genInitDefaultValue(Property property) '''
- «IF (property.upper == 1)»
- self->«property.genName» «property.genDefaultValue»;
- «ELSE»
- «property.genType» tmp_«property.genName»«property.genMultiplicity» «property.genDefaultValue»;
- self->«property.genName»«'«'»0«'»'» = tmp_«property.genName()»;
- «ENDIF»
- '''
-}
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/module/.classModuleScript.java._trace b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/module/.classModuleScript.java._trace
deleted file mode 100644
index 3ad7f8d..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/module/.classModuleScript.java._trace
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/module/.commonModuleScript.java._trace b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/module/.commonModuleScript.java._trace
deleted file mode 100644
index 1e5e2db..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/module/.commonModuleScript.java._trace
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/module/classModuleScript$1.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/module/classModuleScript$1.class
deleted file mode 100644
index f9fecda..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/module/classModuleScript$1.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/module/classModuleScript$2.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/module/classModuleScript$2.class
deleted file mode 100644
index 1d9c668..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/module/classModuleScript$2.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/module/classModuleScript$3.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/module/classModuleScript$3.class
deleted file mode 100644
index 1c510f1..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/module/classModuleScript$3.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/module/classModuleScript.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/module/classModuleScript.class
deleted file mode 100644
index 3e9ada0..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/module/classModuleScript.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/module/classModuleScript.xtend b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/module/classModuleScript.xtend
deleted file mode 100644
index f780ce8..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/module/classModuleScript.xtend
+++ /dev/null
@@ -1,103 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2015 CEA LIST.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * CEA LIST - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.papyrus.designer.languages.c.codegen.module
-
-import org.eclipse.uml2.uml.Class
-import org.eclipse.uml2.uml.VisibilityKind
-
-import static extension org.eclipse.papyrus.designer.languages.c.codegen.lib.classScript.*
-import static extension org.eclipse.papyrus.designer.languages.c.codegen.lib.commonScript.*
-import static extension org.eclipse.papyrus.designer.languages.c.codegen.lib.functionScript.*
-import static extension org.eclipse.papyrus.designer.languages.c.codegen.lib.variableScript.*
-import static extension org.eclipse.papyrus.designer.languages.c.codegen.services.UmlCommentServices.*
-
-class classModuleScript {
- def public static classModuleScript(Class clazz) '''
- // This template is called by the main module file
- «clazz.genHeading()»
-
- // include of the self header
- «clazz.genIncludeSelf()»
-
- // Generate import of class ---------------------------------------------
- /* "startUserCode" to add imports */
- /* "endUserCode" to add imports */
-
- «clazz.genModuleDeclarationBody()»
- «clazz.genModuleImplementationBody()»
- '''
-
-
- def public static genModuleDeclarationBody(Class clazz) '''
- «IF (clazz.visibility != VisibilityKind.PUBLIC_LITERAL)»
- «clazz.partComment('Private Class Description')»
- // Structure
- «clazz.genClassStructDeclarations()»
-
- // Constructor and destructor declarations
- «clazz.genDynamicInstanciationOperationPrototypes()»
-
- // Property initialisation declarations
- «clazz.genDefaultInitialisationProtoype()»
-
- // Class methods declarations
- «clazz.genNonStaticFunctionDeclarations()»
- «ENDIF»
-
- // ----------------------------------Private and Protected Global VariableDescription----------------------------------
- «IF (clazz.ownedAttributes.filter[isStatic && visibility != VisibilityKind.PUBLIC_LITERAL && type != null].size > 0)»
- «clazz.partComment('Private/Protected Global Variable Declarations')»
- «ENDIF»
- «FOR attribute : clazz.ownedAttributes»
- «IF (attribute.isStatic && attribute.visibility != VisibilityKind.PUBLIC_LITERAL && attribute.type != null)»
- // global variable declaration
- «attribute.genVariableDeclaration()»
- «ENDIF»
- «ENDFOR»
-
- // ----------------------------------Private and Protected Class Functions----------------------------------
- «IF (clazz.ownedOperations.filter[!isStatic && namespace.visibility == VisibilityKind.PUBLIC_LITERAL && visibility == VisibilityKind.PUBLIC_LITERAL].size > 0)»
- «clazz.partComment('Private/Protected Function Declarations')»
- «ENDIF»
- «FOR operation : clazz.ownedOperations»
- «IF (!operation.isStatic && operation.namespace.visibility == VisibilityKind.PUBLIC_LITERAL && operation.visibility != VisibilityKind.PUBLIC_LITERAL)»
- «operation.genFunctionPrototype()»
- «ENDIF»
- «ENDFOR»
-
- // ----------------------------------Private and Protected Global Functions----------------------------------
- «IF (clazz.getAllOperations.filter[isStatic && visibility == VisibilityKind.PUBLIC_LITERAL].size > 0)»
- «clazz.partComment('Private/Protected Global Function Declarations')»
- «ENDIF»
- «FOR operation : clazz.getAllOperations»
- «IF (operation.isStatic && operation.visibility != VisibilityKind.PUBLIC_LITERAL)»
- «operation.genFunctionPrototype()»
- «ENDIF»
- «ENDFOR»
- '''
-
-
- def public static genModuleImplementationBody(Class clazz) '''
-
- // ----------------------------------Implementation of the class constructor and destructor----------
- «clazz.genDynamicInstanciationOperations()»
-
- // ----------------------------------Initialisation function implementation----------------------------------
- «clazz.genDefaultIntialisationOperation()»
-
- // ----------------------------------Function Implementation----------------------------------
- «clazz.partComment('Function Implementation')»
- «FOR operation : clazz.getAllOperations»
- «operation.genFunctionImplementation()»
- «ENDFOR»
- '''
-}
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/module/commonModuleScript.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/module/commonModuleScript.class
deleted file mode 100644
index 6d3166a..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/module/commonModuleScript.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/module/commonModuleScript.xtend b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/module/commonModuleScript.xtend
deleted file mode 100644
index 898cbd8..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/module/commonModuleScript.xtend
+++ /dev/null
@@ -1,27 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2015 CEA LIST.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * CEA LIST - initial API and implementation
- *******************************************************************************/
-
-package org.eclipse.papyrus.designer.languages.c.codegen.module
-
-import static extension org.eclipse.papyrus.designer.languages.c.codegen.lib.commonScript.genName
-import org.eclipse.uml2.uml.NamedElement
-
-class commonModuleScript {
- def public static genHeadingModule(NamedElement namedElement) '''
- #ifndef «(namedElement.genName() as String).toUpperCase()»_C_
- #define «(namedElement.genName() as String).toUpperCase()»_C_
- '''
-
-
- def public static genEndModule(NamedElement namedElement) '''
- #endif /*«(namedElement.genName() as String).toUpperCase()»_C_*/
- '''
-}
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/preferences/CCodeGenConstants.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/preferences/CCodeGenConstants.class
deleted file mode 100644
index f67c443..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/preferences/CCodeGenConstants.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/preferences/CCodeGenPreferenceInitializer.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/preferences/CCodeGenPreferenceInitializer.class
deleted file mode 100644
index f37d442..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/preferences/CCodeGenPreferenceInitializer.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/preferences/CCodeGenUtils.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/preferences/CCodeGenUtils.class
deleted file mode 100644
index 3258b8a..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/preferences/CCodeGenUtils.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/services/DateUtils.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/services/DateUtils.class
deleted file mode 100644
index f5661aa..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/services/DateUtils.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/services/StringServices.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/services/StringServices.class
deleted file mode 100644
index 486a74c..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/services/StringServices.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlAssociationServices.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlAssociationServices.class
deleted file mode 100644
index c48df6d..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlAssociationServices.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlClassServices.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlClassServices.class
deleted file mode 100644
index 3fb44da..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlClassServices.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlCommentServices.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlCommentServices.class
deleted file mode 100644
index 9d28f7c..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlCommentServices.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlDataTypeServices.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlDataTypeServices.class
deleted file mode 100644
index 19dd032..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlDataTypeServices.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlInstanceSpecificationServices.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlInstanceSpecificationServices.class
deleted file mode 100644
index 86670b7..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlInstanceSpecificationServices.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlOperationServices.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlOperationServices.class
deleted file mode 100644
index 0f08b34..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlOperationServices.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlPackageServices.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlPackageServices.class
deleted file mode 100644
index c2eea1c..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlPackageServices.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/transformation/CModelElementsCreator.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/transformation/CModelElementsCreator.class
deleted file mode 100644
index 7b9c95a..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/transformation/CModelElementsCreator.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/transformation/CppLocationStrategy.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/transformation/CppLocationStrategy.class
deleted file mode 100644
index 9465a68..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/transformation/CppLocationStrategy.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/transformation/Messages.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/transformation/Messages.class
deleted file mode 100644
index 54c20a1..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/transformation/Messages.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/transformation/messages.properties b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/transformation/messages.properties
deleted file mode 100644
index b2b1f38..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/transformation/messages.properties
+++ /dev/null
@@ -1 +0,0 @@
-CModelElementsCreator_CanNotFormatContent=Can not format content
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/utils/LocateCProject$1.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/utils/LocateCProject$1.class
deleted file mode 100644
index bc20583..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/utils/LocateCProject$1.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/utils/LocateCProject.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/utils/LocateCProject.class
deleted file mode 100644
index 2c4d770..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/utils/LocateCProject.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/utils/Messages.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/utils/Messages.class
deleted file mode 100644
index b535a10..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/utils/Messages.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/utils/messages.properties b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/utils/messages.properties
deleted file mode 100644
index d9c697f..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/utils/messages.properties
+++ /dev/null
@@ -1,4 +0,0 @@
-LocateCProject_ApplyCNatureTitle=Need to apply C nature
-LocateCProject_ApplyCNatureDesc=Code generation requires that the underlying project has a C nature. Do you want to apply this nature?
-LocateCProject_CreateTargetProjectDesc=Code generation needs to create a CDT project called "%s". Do you want to do this?
-LocateCProject_CreateTargetProjectTitle=Target project does not exist
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/Activator.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/Activator.class
deleted file mode 100644
index ef6314a..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/Activator.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/CLangCodegen.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/CLangCodegen.class
deleted file mode 100644
index ce00705..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/CLangCodegen.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/doxygen/doxyfileScript.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/doxygen/doxyfileScript.class
deleted file mode 100644
index 955beb6..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/doxygen/doxyfileScript.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/header/classHeaderScript.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/header/classHeaderScript.class
deleted file mode 100644
index 5390fd2..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/header/classHeaderScript.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/header/commonHeaderScript.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/header/commonHeaderScript.class
deleted file mode 100644
index 3182435..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/header/commonHeaderScript.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/header/dataTypeHeaderScript.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/header/dataTypeHeaderScript.class
deleted file mode 100644
index 97c7de0..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/header/dataTypeHeaderScript.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/lib/classScript.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/lib/classScript.class
deleted file mode 100644
index 7350b04..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/lib/classScript.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/lib/commentScript.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/lib/commentScript.class
deleted file mode 100644
index 5e20afb..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/lib/commentScript.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/lib/commonScript.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/lib/commonScript.class
deleted file mode 100644
index bde86a7..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/lib/commonScript.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/lib/dataTypeScript.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/lib/dataTypeScript.class
deleted file mode 100644
index df47319..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/lib/dataTypeScript.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/lib/functionScript.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/lib/functionScript.class
deleted file mode 100644
index 0a1fd29..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/lib/functionScript.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/lib/importScript.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/lib/importScript.class
deleted file mode 100644
index e1c5763..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/lib/importScript.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/lib/interfaceScript.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/lib/interfaceScript.class
deleted file mode 100644
index 9f324f7..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/lib/interfaceScript.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/lib/multiplicityScript.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/lib/multiplicityScript.class
deleted file mode 100644
index 8d1c94e..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/lib/multiplicityScript.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/lib/typeScript.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/lib/typeScript.class
deleted file mode 100644
index 4a82f9e..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/lib/typeScript.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/lib/valueSpecificationScript.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/lib/valueSpecificationScript.class
deleted file mode 100644
index d116bb6..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/lib/valueSpecificationScript.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/lib/variableScript.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/lib/variableScript.class
deleted file mode 100644
index fe1bd83..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/lib/variableScript.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/module/classModuleScript.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/module/classModuleScript.class
deleted file mode 100644
index 41201a9..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/module/classModuleScript.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/module/commonModuleScript.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/module/commonModuleScript.class
deleted file mode 100644
index af0fc7a..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/module/commonModuleScript.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/preferences/CCodeGenConstants.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/preferences/CCodeGenConstants.class
deleted file mode 100644
index 39c6af4..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/preferences/CCodeGenConstants.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/preferences/CCodeGenPreferenceInitializer.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/preferences/CCodeGenPreferenceInitializer.class
deleted file mode 100644
index 794c1a2..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/preferences/CCodeGenPreferenceInitializer.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/preferences/CCodeGenUtils.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/preferences/CCodeGenUtils.class
deleted file mode 100644
index e2f3c61..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/preferences/CCodeGenUtils.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/services/DateUtils.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/services/DateUtils.class
deleted file mode 100644
index 19478f3..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/services/DateUtils.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/services/StringServices.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/services/StringServices.class
deleted file mode 100644
index 3be4207..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/services/StringServices.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlAssociationServices.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlAssociationServices.class
deleted file mode 100644
index 066653c..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlAssociationServices.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlClassServices.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlClassServices.class
deleted file mode 100644
index 02d67ed..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlClassServices.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlCommentServices.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlCommentServices.class
deleted file mode 100644
index 2db454d..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlCommentServices.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlDataTypeServices.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlDataTypeServices.class
deleted file mode 100644
index 5988cea..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlDataTypeServices.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlInstanceSpecificationServices.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlInstanceSpecificationServices.class
deleted file mode 100644
index de705a7..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlInstanceSpecificationServices.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlOperationServices.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlOperationServices.class
deleted file mode 100644
index 6a582f1..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlOperationServices.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlPackageServices.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlPackageServices.class
deleted file mode 100644
index d8d24e3..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlPackageServices.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/transformation/CModelElementsCreator.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/transformation/CModelElementsCreator.class
deleted file mode 100644
index fe880fb..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/transformation/CModelElementsCreator.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/transformation/CppLocationStrategy.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/transformation/CppLocationStrategy.class
deleted file mode 100644
index 374b4f9..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/transformation/CppLocationStrategy.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/transformation/Messages.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/transformation/Messages.class
deleted file mode 100644
index a6a6ef6..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/transformation/Messages.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/utils/LocateCProject$1.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/utils/LocateCProject$1.class
deleted file mode 100644
index 733598c..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/utils/LocateCProject$1.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/utils/LocateCProject.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/utils/LocateCProject.class
deleted file mode 100644
index 31f6285..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/utils/LocateCProject.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/utils/Messages.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/utils/Messages.class
deleted file mode 100644
index 073241f..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73307562311290/org/eclipse/papyrus/designer/languages/c/codegen/utils/Messages.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/Activator.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/Activator.class
deleted file mode 100644
index ef6314a..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/Activator.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/CLangCodegen.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/CLangCodegen.class
deleted file mode 100644
index ce00705..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/CLangCodegen.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/doxygen/doxyfileScript.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/doxygen/doxyfileScript.class
deleted file mode 100644
index 955beb6..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/doxygen/doxyfileScript.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/header/classHeaderScript.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/header/classHeaderScript.class
deleted file mode 100644
index 5390fd2..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/header/classHeaderScript.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/header/commonHeaderScript.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/header/commonHeaderScript.class
deleted file mode 100644
index 3182435..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/header/commonHeaderScript.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/header/dataTypeHeaderScript.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/header/dataTypeHeaderScript.class
deleted file mode 100644
index 97c7de0..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/header/dataTypeHeaderScript.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/lib/classScript.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/lib/classScript.class
deleted file mode 100644
index 7350b04..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/lib/classScript.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/lib/commentScript.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/lib/commentScript.class
deleted file mode 100644
index 5e20afb..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/lib/commentScript.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/lib/commonScript.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/lib/commonScript.class
deleted file mode 100644
index bde86a7..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/lib/commonScript.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/lib/dataTypeScript.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/lib/dataTypeScript.class
deleted file mode 100644
index df47319..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/lib/dataTypeScript.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/lib/functionScript.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/lib/functionScript.class
deleted file mode 100644
index 0a1fd29..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/lib/functionScript.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/lib/importScript.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/lib/importScript.class
deleted file mode 100644
index e1c5763..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/lib/importScript.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/lib/interfaceScript.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/lib/interfaceScript.class
deleted file mode 100644
index 9f324f7..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/lib/interfaceScript.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/lib/multiplicityScript.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/lib/multiplicityScript.class
deleted file mode 100644
index 8d1c94e..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/lib/multiplicityScript.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/lib/typeScript.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/lib/typeScript.class
deleted file mode 100644
index 4a82f9e..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/lib/typeScript.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/lib/valueSpecificationScript.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/lib/valueSpecificationScript.class
deleted file mode 100644
index d116bb6..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/lib/valueSpecificationScript.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/lib/variableScript.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/lib/variableScript.class
deleted file mode 100644
index fe1bd83..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/lib/variableScript.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/module/classModuleScript.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/module/classModuleScript.class
deleted file mode 100644
index 41201a9..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/module/classModuleScript.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/module/commonModuleScript.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/module/commonModuleScript.class
deleted file mode 100644
index af0fc7a..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/module/commonModuleScript.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/preferences/CCodeGenConstants.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/preferences/CCodeGenConstants.class
deleted file mode 100644
index 39c6af4..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/preferences/CCodeGenConstants.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/preferences/CCodeGenPreferenceInitializer.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/preferences/CCodeGenPreferenceInitializer.class
deleted file mode 100644
index 794c1a2..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/preferences/CCodeGenPreferenceInitializer.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/preferences/CCodeGenUtils.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/preferences/CCodeGenUtils.class
deleted file mode 100644
index e2f3c61..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/preferences/CCodeGenUtils.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/services/DateUtils.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/services/DateUtils.class
deleted file mode 100644
index 19478f3..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/services/DateUtils.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/services/StringServices.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/services/StringServices.class
deleted file mode 100644
index 3be4207..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/services/StringServices.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlAssociationServices.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlAssociationServices.class
deleted file mode 100644
index 066653c..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlAssociationServices.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlClassServices.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlClassServices.class
deleted file mode 100644
index 02d67ed..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlClassServices.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlCommentServices.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlCommentServices.class
deleted file mode 100644
index 2db454d..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlCommentServices.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlDataTypeServices.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlDataTypeServices.class
deleted file mode 100644
index 5988cea..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlDataTypeServices.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlInstanceSpecificationServices.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlInstanceSpecificationServices.class
deleted file mode 100644
index de705a7..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlInstanceSpecificationServices.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlOperationServices.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlOperationServices.class
deleted file mode 100644
index 6a582f1..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlOperationServices.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlPackageServices.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlPackageServices.class
deleted file mode 100644
index d8d24e3..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/services/UmlPackageServices.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/transformation/CModelElementsCreator.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/transformation/CModelElementsCreator.class
deleted file mode 100644
index fe880fb..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/transformation/CModelElementsCreator.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/transformation/CppLocationStrategy.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/transformation/CppLocationStrategy.class
deleted file mode 100644
index 374b4f9..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/transformation/CppLocationStrategy.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/transformation/Messages.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/transformation/Messages.class
deleted file mode 100644
index a6a6ef6..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/transformation/Messages.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/utils/LocateCProject$1.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/utils/LocateCProject$1.class
deleted file mode 100644
index 733598c..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/utils/LocateCProject$1.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/utils/LocateCProject.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/utils/LocateCProject.class
deleted file mode 100644
index 31f6285..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/utils/LocateCProject.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/utils/Messages.class b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/utils/Messages.class
deleted file mode 100644
index 073241f..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/classes73617185198978/org/eclipse/papyrus/designer/languages/c/codegen/utils/Messages.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73307640173687/org/eclipse/papyrus/designer/languages/c/codegen/doxygen/doxyfileScript.java b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73307640173687/org/eclipse/papyrus/designer/languages/c/codegen/doxygen/doxyfileScript.java
deleted file mode 100644
index 673d304..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73307640173687/org/eclipse/papyrus/designer/languages/c/codegen/doxygen/doxyfileScript.java
+++ /dev/null
@@ -1,2 +0,0 @@
-package org.eclipse.papyrus.designer.languages.c.codegen.doxygen;
-public class doxyfileScript{}
\ No newline at end of file
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73307640173687/org/eclipse/papyrus/designer/languages/c/codegen/header/classHeaderScript.java b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73307640173687/org/eclipse/papyrus/designer/languages/c/codegen/header/classHeaderScript.java
deleted file mode 100644
index 9f87bc6..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73307640173687/org/eclipse/papyrus/designer/languages/c/codegen/header/classHeaderScript.java
+++ /dev/null
@@ -1,2 +0,0 @@
-package org.eclipse.papyrus.designer.languages.c.codegen.header;
-public class classHeaderScript{}
\ No newline at end of file
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73307640173687/org/eclipse/papyrus/designer/languages/c/codegen/header/commonHeaderScript.java b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73307640173687/org/eclipse/papyrus/designer/languages/c/codegen/header/commonHeaderScript.java
deleted file mode 100644
index ce2a98f..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73307640173687/org/eclipse/papyrus/designer/languages/c/codegen/header/commonHeaderScript.java
+++ /dev/null
@@ -1,2 +0,0 @@
-package org.eclipse.papyrus.designer.languages.c.codegen.header;
-public class commonHeaderScript{}
\ No newline at end of file
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73307640173687/org/eclipse/papyrus/designer/languages/c/codegen/header/dataTypeHeaderScript.java b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73307640173687/org/eclipse/papyrus/designer/languages/c/codegen/header/dataTypeHeaderScript.java
deleted file mode 100644
index 3b85d3c..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73307640173687/org/eclipse/papyrus/designer/languages/c/codegen/header/dataTypeHeaderScript.java
+++ /dev/null
@@ -1,2 +0,0 @@
-package org.eclipse.papyrus.designer.languages.c.codegen.header;
-public class dataTypeHeaderScript{}
\ No newline at end of file
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73307640173687/org/eclipse/papyrus/designer/languages/c/codegen/lib/classScript.java b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73307640173687/org/eclipse/papyrus/designer/languages/c/codegen/lib/classScript.java
deleted file mode 100644
index 075f945..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73307640173687/org/eclipse/papyrus/designer/languages/c/codegen/lib/classScript.java
+++ /dev/null
@@ -1,2 +0,0 @@
-package org.eclipse.papyrus.designer.languages.c.codegen.lib;
-public class classScript{}
\ No newline at end of file
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73307640173687/org/eclipse/papyrus/designer/languages/c/codegen/lib/commentScript.java b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73307640173687/org/eclipse/papyrus/designer/languages/c/codegen/lib/commentScript.java
deleted file mode 100644
index a648d48..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73307640173687/org/eclipse/papyrus/designer/languages/c/codegen/lib/commentScript.java
+++ /dev/null
@@ -1,2 +0,0 @@
-package org.eclipse.papyrus.designer.languages.c.codegen.lib;
-public class commentScript{}
\ No newline at end of file
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73307640173687/org/eclipse/papyrus/designer/languages/c/codegen/lib/commonScript.java b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73307640173687/org/eclipse/papyrus/designer/languages/c/codegen/lib/commonScript.java
deleted file mode 100644
index e104731..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73307640173687/org/eclipse/papyrus/designer/languages/c/codegen/lib/commonScript.java
+++ /dev/null
@@ -1,2 +0,0 @@
-package org.eclipse.papyrus.designer.languages.c.codegen.lib;
-public class commonScript{}
\ No newline at end of file
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73307640173687/org/eclipse/papyrus/designer/languages/c/codegen/lib/dataTypeScript.java b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73307640173687/org/eclipse/papyrus/designer/languages/c/codegen/lib/dataTypeScript.java
deleted file mode 100644
index bda83e0..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73307640173687/org/eclipse/papyrus/designer/languages/c/codegen/lib/dataTypeScript.java
+++ /dev/null
@@ -1,2 +0,0 @@
-package org.eclipse.papyrus.designer.languages.c.codegen.lib;
-public class dataTypeScript{}
\ No newline at end of file
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73307640173687/org/eclipse/papyrus/designer/languages/c/codegen/lib/functionScript.java b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73307640173687/org/eclipse/papyrus/designer/languages/c/codegen/lib/functionScript.java
deleted file mode 100644
index 743a94e..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73307640173687/org/eclipse/papyrus/designer/languages/c/codegen/lib/functionScript.java
+++ /dev/null
@@ -1,2 +0,0 @@
-package org.eclipse.papyrus.designer.languages.c.codegen.lib;
-public class functionScript{}
\ No newline at end of file
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73307640173687/org/eclipse/papyrus/designer/languages/c/codegen/lib/importScript.java b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73307640173687/org/eclipse/papyrus/designer/languages/c/codegen/lib/importScript.java
deleted file mode 100644
index 906e833..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73307640173687/org/eclipse/papyrus/designer/languages/c/codegen/lib/importScript.java
+++ /dev/null
@@ -1,2 +0,0 @@
-package org.eclipse.papyrus.designer.languages.c.codegen.lib;
-public class importScript{}
\ No newline at end of file
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73307640173687/org/eclipse/papyrus/designer/languages/c/codegen/lib/interfaceScript.java b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73307640173687/org/eclipse/papyrus/designer/languages/c/codegen/lib/interfaceScript.java
deleted file mode 100644
index bc3789d..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73307640173687/org/eclipse/papyrus/designer/languages/c/codegen/lib/interfaceScript.java
+++ /dev/null
@@ -1,2 +0,0 @@
-package org.eclipse.papyrus.designer.languages.c.codegen.lib;
-public class interfaceScript{}
\ No newline at end of file
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73307640173687/org/eclipse/papyrus/designer/languages/c/codegen/lib/multiplicityScript.java b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73307640173687/org/eclipse/papyrus/designer/languages/c/codegen/lib/multiplicityScript.java
deleted file mode 100644
index 9916e91..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73307640173687/org/eclipse/papyrus/designer/languages/c/codegen/lib/multiplicityScript.java
+++ /dev/null
@@ -1,2 +0,0 @@
-package org.eclipse.papyrus.designer.languages.c.codegen.lib;
-public class multiplicityScript{}
\ No newline at end of file
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73307640173687/org/eclipse/papyrus/designer/languages/c/codegen/lib/typeScript.java b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73307640173687/org/eclipse/papyrus/designer/languages/c/codegen/lib/typeScript.java
deleted file mode 100644
index 5c01af0..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73307640173687/org/eclipse/papyrus/designer/languages/c/codegen/lib/typeScript.java
+++ /dev/null
@@ -1,2 +0,0 @@
-package org.eclipse.papyrus.designer.languages.c.codegen.lib;
-public class typeScript{}
\ No newline at end of file
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73307640173687/org/eclipse/papyrus/designer/languages/c/codegen/lib/valueSpecificationScript.java b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73307640173687/org/eclipse/papyrus/designer/languages/c/codegen/lib/valueSpecificationScript.java
deleted file mode 100644
index 5752d31..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73307640173687/org/eclipse/papyrus/designer/languages/c/codegen/lib/valueSpecificationScript.java
+++ /dev/null
@@ -1,2 +0,0 @@
-package org.eclipse.papyrus.designer.languages.c.codegen.lib;
-public class valueSpecificationScript{}
\ No newline at end of file
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73307640173687/org/eclipse/papyrus/designer/languages/c/codegen/lib/variableScript.java b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73307640173687/org/eclipse/papyrus/designer/languages/c/codegen/lib/variableScript.java
deleted file mode 100644
index 35a657f..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73307640173687/org/eclipse/papyrus/designer/languages/c/codegen/lib/variableScript.java
+++ /dev/null
@@ -1,2 +0,0 @@
-package org.eclipse.papyrus.designer.languages.c.codegen.lib;
-public class variableScript{}
\ No newline at end of file
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73307640173687/org/eclipse/papyrus/designer/languages/c/codegen/module/classModuleScript.java b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73307640173687/org/eclipse/papyrus/designer/languages/c/codegen/module/classModuleScript.java
deleted file mode 100644
index 8dade28..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73307640173687/org/eclipse/papyrus/designer/languages/c/codegen/module/classModuleScript.java
+++ /dev/null
@@ -1,2 +0,0 @@
-package org.eclipse.papyrus.designer.languages.c.codegen.module;
-public class classModuleScript{}
\ No newline at end of file
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73307640173687/org/eclipse/papyrus/designer/languages/c/codegen/module/commonModuleScript.java b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73307640173687/org/eclipse/papyrus/designer/languages/c/codegen/module/commonModuleScript.java
deleted file mode 100644
index 61095be..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73307640173687/org/eclipse/papyrus/designer/languages/c/codegen/module/commonModuleScript.java
+++ /dev/null
@@ -1,2 +0,0 @@
-package org.eclipse.papyrus.designer.languages.c.codegen.module;
-public class commonModuleScript{}
\ No newline at end of file
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73617254840816/org/eclipse/papyrus/designer/languages/c/codegen/doxygen/doxyfileScript.java b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73617254840816/org/eclipse/papyrus/designer/languages/c/codegen/doxygen/doxyfileScript.java
deleted file mode 100644
index 673d304..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73617254840816/org/eclipse/papyrus/designer/languages/c/codegen/doxygen/doxyfileScript.java
+++ /dev/null
@@ -1,2 +0,0 @@
-package org.eclipse.papyrus.designer.languages.c.codegen.doxygen;
-public class doxyfileScript{}
\ No newline at end of file
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73617254840816/org/eclipse/papyrus/designer/languages/c/codegen/header/classHeaderScript.java b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73617254840816/org/eclipse/papyrus/designer/languages/c/codegen/header/classHeaderScript.java
deleted file mode 100644
index 9f87bc6..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73617254840816/org/eclipse/papyrus/designer/languages/c/codegen/header/classHeaderScript.java
+++ /dev/null
@@ -1,2 +0,0 @@
-package org.eclipse.papyrus.designer.languages.c.codegen.header;
-public class classHeaderScript{}
\ No newline at end of file
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73617254840816/org/eclipse/papyrus/designer/languages/c/codegen/header/commonHeaderScript.java b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73617254840816/org/eclipse/papyrus/designer/languages/c/codegen/header/commonHeaderScript.java
deleted file mode 100644
index ce2a98f..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73617254840816/org/eclipse/papyrus/designer/languages/c/codegen/header/commonHeaderScript.java
+++ /dev/null
@@ -1,2 +0,0 @@
-package org.eclipse.papyrus.designer.languages.c.codegen.header;
-public class commonHeaderScript{}
\ No newline at end of file
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73617254840816/org/eclipse/papyrus/designer/languages/c/codegen/header/dataTypeHeaderScript.java b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73617254840816/org/eclipse/papyrus/designer/languages/c/codegen/header/dataTypeHeaderScript.java
deleted file mode 100644
index 3b85d3c..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73617254840816/org/eclipse/papyrus/designer/languages/c/codegen/header/dataTypeHeaderScript.java
+++ /dev/null
@@ -1,2 +0,0 @@
-package org.eclipse.papyrus.designer.languages.c.codegen.header;
-public class dataTypeHeaderScript{}
\ No newline at end of file
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73617254840816/org/eclipse/papyrus/designer/languages/c/codegen/lib/classScript.java b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73617254840816/org/eclipse/papyrus/designer/languages/c/codegen/lib/classScript.java
deleted file mode 100644
index 075f945..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73617254840816/org/eclipse/papyrus/designer/languages/c/codegen/lib/classScript.java
+++ /dev/null
@@ -1,2 +0,0 @@
-package org.eclipse.papyrus.designer.languages.c.codegen.lib;
-public class classScript{}
\ No newline at end of file
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73617254840816/org/eclipse/papyrus/designer/languages/c/codegen/lib/commentScript.java b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73617254840816/org/eclipse/papyrus/designer/languages/c/codegen/lib/commentScript.java
deleted file mode 100644
index a648d48..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73617254840816/org/eclipse/papyrus/designer/languages/c/codegen/lib/commentScript.java
+++ /dev/null
@@ -1,2 +0,0 @@
-package org.eclipse.papyrus.designer.languages.c.codegen.lib;
-public class commentScript{}
\ No newline at end of file
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73617254840816/org/eclipse/papyrus/designer/languages/c/codegen/lib/commonScript.java b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73617254840816/org/eclipse/papyrus/designer/languages/c/codegen/lib/commonScript.java
deleted file mode 100644
index e104731..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73617254840816/org/eclipse/papyrus/designer/languages/c/codegen/lib/commonScript.java
+++ /dev/null
@@ -1,2 +0,0 @@
-package org.eclipse.papyrus.designer.languages.c.codegen.lib;
-public class commonScript{}
\ No newline at end of file
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73617254840816/org/eclipse/papyrus/designer/languages/c/codegen/lib/dataTypeScript.java b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73617254840816/org/eclipse/papyrus/designer/languages/c/codegen/lib/dataTypeScript.java
deleted file mode 100644
index bda83e0..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73617254840816/org/eclipse/papyrus/designer/languages/c/codegen/lib/dataTypeScript.java
+++ /dev/null
@@ -1,2 +0,0 @@
-package org.eclipse.papyrus.designer.languages.c.codegen.lib;
-public class dataTypeScript{}
\ No newline at end of file
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73617254840816/org/eclipse/papyrus/designer/languages/c/codegen/lib/functionScript.java b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73617254840816/org/eclipse/papyrus/designer/languages/c/codegen/lib/functionScript.java
deleted file mode 100644
index 743a94e..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73617254840816/org/eclipse/papyrus/designer/languages/c/codegen/lib/functionScript.java
+++ /dev/null
@@ -1,2 +0,0 @@
-package org.eclipse.papyrus.designer.languages.c.codegen.lib;
-public class functionScript{}
\ No newline at end of file
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73617254840816/org/eclipse/papyrus/designer/languages/c/codegen/lib/importScript.java b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73617254840816/org/eclipse/papyrus/designer/languages/c/codegen/lib/importScript.java
deleted file mode 100644
index 906e833..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73617254840816/org/eclipse/papyrus/designer/languages/c/codegen/lib/importScript.java
+++ /dev/null
@@ -1,2 +0,0 @@
-package org.eclipse.papyrus.designer.languages.c.codegen.lib;
-public class importScript{}
\ No newline at end of file
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73617254840816/org/eclipse/papyrus/designer/languages/c/codegen/lib/interfaceScript.java b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73617254840816/org/eclipse/papyrus/designer/languages/c/codegen/lib/interfaceScript.java
deleted file mode 100644
index bc3789d..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73617254840816/org/eclipse/papyrus/designer/languages/c/codegen/lib/interfaceScript.java
+++ /dev/null
@@ -1,2 +0,0 @@
-package org.eclipse.papyrus.designer.languages.c.codegen.lib;
-public class interfaceScript{}
\ No newline at end of file
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73617254840816/org/eclipse/papyrus/designer/languages/c/codegen/lib/multiplicityScript.java b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73617254840816/org/eclipse/papyrus/designer/languages/c/codegen/lib/multiplicityScript.java
deleted file mode 100644
index 9916e91..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73617254840816/org/eclipse/papyrus/designer/languages/c/codegen/lib/multiplicityScript.java
+++ /dev/null
@@ -1,2 +0,0 @@
-package org.eclipse.papyrus.designer.languages.c.codegen.lib;
-public class multiplicityScript{}
\ No newline at end of file
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73617254840816/org/eclipse/papyrus/designer/languages/c/codegen/lib/typeScript.java b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73617254840816/org/eclipse/papyrus/designer/languages/c/codegen/lib/typeScript.java
deleted file mode 100644
index 5c01af0..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73617254840816/org/eclipse/papyrus/designer/languages/c/codegen/lib/typeScript.java
+++ /dev/null
@@ -1,2 +0,0 @@
-package org.eclipse.papyrus.designer.languages.c.codegen.lib;
-public class typeScript{}
\ No newline at end of file
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73617254840816/org/eclipse/papyrus/designer/languages/c/codegen/lib/valueSpecificationScript.java b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73617254840816/org/eclipse/papyrus/designer/languages/c/codegen/lib/valueSpecificationScript.java
deleted file mode 100644
index 5752d31..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73617254840816/org/eclipse/papyrus/designer/languages/c/codegen/lib/valueSpecificationScript.java
+++ /dev/null
@@ -1,2 +0,0 @@
-package org.eclipse.papyrus.designer.languages.c.codegen.lib;
-public class valueSpecificationScript{}
\ No newline at end of file
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73617254840816/org/eclipse/papyrus/designer/languages/c/codegen/lib/variableScript.java b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73617254840816/org/eclipse/papyrus/designer/languages/c/codegen/lib/variableScript.java
deleted file mode 100644
index 35a657f..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73617254840816/org/eclipse/papyrus/designer/languages/c/codegen/lib/variableScript.java
+++ /dev/null
@@ -1,2 +0,0 @@
-package org.eclipse.papyrus.designer.languages.c.codegen.lib;
-public class variableScript{}
\ No newline at end of file
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73617254840816/org/eclipse/papyrus/designer/languages/c/codegen/module/classModuleScript.java b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73617254840816/org/eclipse/papyrus/designer/languages/c/codegen/module/classModuleScript.java
deleted file mode 100644
index 8dade28..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73617254840816/org/eclipse/papyrus/designer/languages/c/codegen/module/classModuleScript.java
+++ /dev/null
@@ -1,2 +0,0 @@
-package org.eclipse.papyrus.designer.languages.c.codegen.module;
-public class classModuleScript{}
\ No newline at end of file
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73617254840816/org/eclipse/papyrus/designer/languages/c/codegen/module/commonModuleScript.java b/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73617254840816/org/eclipse/papyrus/designer/languages/c/codegen/module/commonModuleScript.java
deleted file mode 100644
index 61095be..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.codegen/target/xtend/stubs73617254840816/org/eclipse/papyrus/designer/languages/c/codegen/module/commonModuleScript.java
+++ /dev/null
@@ -1,2 +0,0 @@
-package org.eclipse.papyrus.designer.languages.c.codegen.module;
-public class commonModuleScript{}
\ No newline at end of file
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.tests/META-INF/MANIFEST.MF b/languages/c/org.eclipse.papyrus.designer.languages.c.tests/META-INF/MANIFEST.MF
index 6109346..188e021 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.tests/META-INF/MANIFEST.MF
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.tests/META-INF/MANIFEST.MF
@@ -20,10 +20,10 @@
org.eclipse.papyrus.designer.languages.common.base
Export-Package: org.eclipse.papyrus.designer.languages.c.codegen.tests
Bundle-Vendor: %providerName
-Bundle-Version: 0.7.1.qualifier
+Bundle-Version: 0.8.1.qualifier
Bundle-Name: %pluginName
Bundle-ManifestVersion: 2
Bundle-Activator: org.eclipse.papyrus.designer.languages.c.codegen.tests.TestPlugin
Bundle-SymbolicName: org.eclipse.papyrus.designer.languages.c.codegen.tests
-Bundle-RequiredExecutionEnvironment: JavaSE-1.6
+Bundle-RequiredExecutionEnvironment: JavaSE-1.8
Bundle-Localization: plugin
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Class1.c b/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Class1.c
index 498ec34..71e4d30 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Class1.c
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Class1.c
@@ -1,44 +1,50 @@
-// --------------------------------------------------------
-// Code generated by Papyrus C
-// --------------------------------------------------------
-
-// This template is called by the main module file
-/*
- * File generated from the CCodegenTest::Class1 uml class
- * Generated by the Papyrus C Generator (CEA LIST)
- *
- */
-
-// include of the self header
-/* include header file*/
-#include "Class1.h"
-
-// Generate import of class ---------------------------------------------
-/* "startUserCode" to add imports */
-/* "endUserCode" to add imports */
-
-// ----------------------------------Private and Protected Global VariableDescription----------------------------------
-// ----------------------------------Private and Protected Class Functions----------------------------------
-/*
- *------Private/Protected Function Declarations-----
- */
-
-// ----------------------------------Private and Protected Global Functions----------------------------------
-// ----------------------------------Implementation of the class constructor and destructor----------
-/*
- *--Default constructor & destructor implementations-
- */
-
-// ----------------------------------Initialisation function implementation----------------------------------
-// ----------------------------------Function Implementation----------------------------------
-/*
- *--------------Function Implementation-------------
- */
-void Class1__Class1(Class1 *self) {
-
-}
-
-void Class1_Class1(Class1 cSource, Class1 *self) {
- self->iVal = cSource.iVal;
-}
-
+// --------------------------------------------------------
+// Code generated by Papyrus C
+// --------------------------------------------------------
+
+/*
+ * File generated from the CCodegenTest::Class1 uml class
+ * Generated by the Papyrus C Generator (CEA LIST)
+ *
+ */
+
+// Include self header
+#include "Class1.h"
+// Derived includes
+
+// ----------------------------------Private and Protected Global VariableDescription----------------------------------
+
+// ----------------------------------Private and Protected Class Functions----------------------------------
+/*
+ *------Private/Protected Function Declarations-----
+ */
+
+// ----------------------------------Private and Protected Global Functions----------------------------------
+// ----------------------------------Implementation of the class constructor and destructor----------
+/*
+ *--Default constructor & destructor implementations-
+ */
+
+// ----------------------------------Initialization functions implementation----------------------------------
+// ----------------------------------Functions Implementation----------------------------------
+/**
+ * Destructor
+ */
+void Class1__Class1(Class1 *self) {
+
+}
+
+/**
+ * Copy constructor
+ */
+void Class1_Class1(Class1 cSource, Class1 *self) {
+
+ self->iVal = cSource.iVal;
+}
+
+// ----------------------------------Receptions Implementation----------------------------------
+
+// ----------------------------------Signal Event Process Functions Implementations--------------------------------
+
+// ----------------------------------Call Event Process Functions Implementations----------------------------------
+
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Class1.h b/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Class1.h
index 650fc3f..578358d 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Class1.h
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Class1.h
@@ -1,60 +1,75 @@
-// --------------------------------------------------------
-// Code generated by Papyrus C
-// --------------------------------------------------------
-
-// This template is called by the main module file
-/*
- * File generated from the CCodegenTest::Class1 uml class
- * Generated by the Papyrus C Generator (CEA LIST)
- *
- */
-
-#ifndef CLASS1_H_
-#define CLASS1_H_
-
-// Explicit import of the class
-/*
- *-----------------------Import----------------------
- */
-#include <stdlib.h>
-// User imports
-/* "startUserCode" to add imports */
-/* "endUserCode" to add imports */
-/* include other files*/
-
-// header body
-/*
- *--------------Public Class Description-------------
- */
-// Structure
-/* Class Macro definition */
-#define Class1(OBJ) ((Class1*)OBJ)
-
-typedef struct Class1 Class1;
-
-struct Class1 {
-
- int /* private */iVal;
-};
-
-// Constructor and destructor declarations
-/*
- *----Default constructor & destructor prototypes---
- */
-
-// Property initialisation declarations
-// Class methods declarations
-/*
- *---------------Function Declarations--------------
- */
-void
-Class1__Class1(Class1 *self);
-
-void
-Class1_Class1(Class1 cSource, Class1 *self);
-
-// ----------------------------------Public Global VariableDescription----------------------------------
-
-// ----------------------------------Global Public Functions----------------------------------
-
-#endif /*CLASS1_H_*/
+// --------------------------------------------------------
+// Code generated by Papyrus C
+// --------------------------------------------------------
+
+/*
+ * File generated from the CCodegenTest::Class1 uml class
+ * Generated by the Papyrus C Generator (CEA LIST)
+ *
+ */
+
+#ifndef CLASS1_H_
+#define CLASS1_H_
+
+/*
+ *---------------Includes and declares--------------
+ */
+// Derived includes
+// End of Derived includes
+// Derived declares
+// End of Derived declares
+
+// Std headers
+#include <stdio.h>
+#include <stdlib.h>
+#include <stdint.h>
+// End of Std headers
+
+/*
+ *--------------Public Class Description-------------
+ */
+// Structure
+/* Class Macro definition */
+#define Class1(OBJ) ((Class1*)OBJ)
+
+typedef struct Class1 Class1;
+
+struct Class1 {
+
+ int /* private */iVal;
+
+};
+
+// Constructor and destructor declarations
+/*
+ *----Default constructor & destructor prototypes---
+ */
+
+// Property initialisation declarations
+// Class methods declarations
+/*
+ *---------------Function Declarations--------------
+ */
+/**
+ *
+ */
+void
+Class1__Class1(Class1 *self);
+
+/**
+ *
+ */
+void
+Class1_Class1(struct Class1 cSource, struct Class1 *self);
+
+// Class receptions declarations
+
+// ----------------------------------Public Global VariableDescription----------------------------------
+
+// ----------------------------------Global Public Functions----------------------------------
+
+// ----------------------------------Signal Event Process Functions Implementations--------------------------------
+
+// ----------------------------------Call Event Process Functions ----------------------------------
+
+#endif /*CLASS1_H_*/
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Class2.c b/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Class2.c
index 253ab65..d3ecfcb 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Class2.c
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Class2.c
@@ -1,90 +1,145 @@
-// --------------------------------------------------------
-// Code generated by Papyrus C
-// --------------------------------------------------------
-
-// This template is called by the main module file
-/*
- * File generated from the CCodegenTest::Class2 uml class
- * Generated by the Papyrus C Generator (CEA LIST)
- *
- */
-
-// include of the self header
-/* include header file*/
-#include "Class2.h"
-
-// Generate import of class ---------------------------------------------
-/* "startUserCode" to add imports */
-/* "endUserCode" to add imports */
-
-// ----------------------------------Private and Protected Global VariableDescription----------------------------------
-// ----------------------------------Private and Protected Class Functions----------------------------------
-/*
- *------Private/Protected Function Declarations-----
- */
-
-// ----------------------------------Private and Protected Global Functions----------------------------------
-/*
- *---Private/Protected Global Function Declarations--
- */
-
-// ----------------------------------Implementation of the class constructor and destructor----------
-/*
- *--Default constructor & destructor implementations-
- */
-
-// ----------------------------------Initialisation function implementation----------------------------------
-// ----------------------------------Function Implementation----------------------------------
-/*
- *--------------Function Implementation-------------
- */
-void Class2_Class2_1(Class2 *self) {
- self->iVal1 = 0;
- self->iVal2 = 0;
- self->bVal = 'f';
-}
-
-void Class2_Class2(int newIVal1, int newIVal2, /*bool*/char newBVal,
- Class2 *self) {
- self->iVal1 = newIVal1;
- self->iVal2 = newIVal2;
- self->bVal = newBVal;
-}
-
-double Class2_virtualOp(Class2 *self, double a, double b) {
-}
-
-void staticOp(void) {
-}
-
-int Class2_inlineOp(Class2 *self, int a, int b) {
- return a + b;
-}
-
-void Class2_friendOp(Class2 *self) {
-}
-
-void Class2_nonStaticOp(Class2 *self) {
-}
-
-int Class2_paramsOp(Class2 *self, int in, int out, int inout) {
-}
-
-void Class2_voidOp(Class2 *self) {
-}
-
-void Class2_defaultValueOp(Class2 *self, int newIVal1) {
-}
-
-void Class2__Class2(Class2 *self) {
-}
-
-Class1*
-Class2_classesOp(Class2 *self, Class1 c1) {
-}
-
-const
-void Class2_constOp(Class2 *self) {
- printf("I am a const method\n");
-}
-
+// --------------------------------------------------------
+// Code generated by Papyrus C
+// --------------------------------------------------------
+
+/*
+ * File generated from the CCodegenTest::Class2 uml class
+ * Generated by the Papyrus C Generator (CEA LIST)
+ *
+ */
+
+// Include self header
+#include "Class2.h"
+// Derived includes
+#include "Class1.h"
+// Include from Include stereotype (body)
+#include <Class1.h>
+// End of Include from Include stereotype (body)
+
+// ----------------------------------Private and Protected Global VariableDescription----------------------------------
+
+// ----------------------------------Private and Protected Class Functions----------------------------------
+/*
+ *------Private/Protected Function Declarations-----
+ */
+
+// ----------------------------------Private and Protected Global Functions----------------------------------
+/*
+ *---Private/Protected Global Function Declarations--
+ */
+
+// ----------------------------------Implementation of the class constructor and destructor----------
+/*
+ *--Default constructor & destructor implementations-
+ */
+
+// ----------------------------------Initialization functions implementation----------------------------------
+// ----------------------------------Functions Implementation----------------------------------
+/**
+ * Default constructor
+ */
+void Class2_Class2_1(Class2 *self) {
+
+ self->iVal1 = 0;
+ self->iVal2 = 0;
+ self->bVal = 'f';
+}
+
+/**
+ * Constructor with parameters
+ */
+void Class2_Class2(int newIVal1, int newIVal2, /*bool*/char newBVal,
+ Class2 *self) {
+
+ self->iVal1 = newIVal1;
+ self->iVal2 = newIVal2;
+ self->bVal = newBVal;
+}
+
+/**
+ * Virtual method
+ */
+double Class2_virtualOp(Class2 *self, double a, double b) {
+
+}
+
+/**
+ * Static method
+ */
+void staticOp(void) {
+
+}
+
+/**
+ * Inline method
+ */
+int Class2_inlineOp(Class2 *self, int a, int b) {
+
+ return a + b;
+}
+
+/**
+ * Friend method
+ */
+void Class2_friendOp(Class2 *self) {
+
+}
+
+/**
+ * Non-static method
+ */
+void Class2_nonStaticOp(Class2 *self) {
+
+}
+
+/**
+ * Method with in, out, inout, return parameters
+ */
+int Class2_paramsOp(Class2 *self, int in, int out, int inout) {
+
+}
+
+/**
+ * Void Method
+ */
+void Class2_voidOp(Class2 *self) {
+
+}
+
+/**
+ *
+ */
+void Class2_defaultValueOp(Class2 *self, int newIVal1) {
+
+}
+
+/**
+ * Virtual destructor
+ */
+void Class2__Class2(Class2 *self) {
+
+}
+
+/**
+ *
+ */
+Class1*
+Class2_classesOp(Class2 *self, Class1 c1) {
+
+}
+
+/**
+ * Const method
+ */
+const
+void Class2_constOp(Class2 *self) {
+
+ printf("I am a const method\n");
+}
+
+// ----------------------------------Receptions Implementation----------------------------------
+
+// ----------------------------------Signal Event Process Functions Implementations--------------------------------
+
+// ----------------------------------Call Event Process Functions Implementations----------------------------------
+
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Class2.h b/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Class2.h
index d683cb9..57a2116 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Class2.h
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Class2.h
@@ -1,102 +1,154 @@
-// --------------------------------------------------------
-// Code generated by Papyrus C
-// --------------------------------------------------------
-
-// This template is called by the main module file
-/*
- * File generated from the CCodegenTest::Class2 uml class
- * Generated by the Papyrus C Generator (CEA LIST)
- *
- */
-
-#ifndef CLASS2_H_
-#define CLASS2_H_
-
-// Explicit import of the class
-/*
- *-----------------------Import----------------------
- */
-#include <stdlib.h>
-// User imports
-/* "startUserCode" to add imports */
-/* "endUserCode" to add imports */
-/* include other files*/
-#include <Class1.h>
-
-// header body
-/*
- *--------------Public Class Description-------------
- */
-// Structure
-/* Class Macro definition */
-#define Class2(OBJ) ((Class2*)OBJ)
-
-typedef struct Class2 Class2;
-
-struct Class2 {
-
- /*bool*/
- char bVal;
-
- int /* protected */iVal1;
-
- int /* private */iVal2;
-};
-
-// Constructor and destructor declarations
-/*
- *----Default constructor & destructor prototypes---
- */
-
-// Property initialisation declarations
-// Class methods declarations
-/*
- *---------------Function Declarations--------------
- */
-void
-Class2_Class2_1(Class2 *self);
-
-void
-Class2_Class2(int newIVal1, int newIVal2, /*bool*/char newBVal, Class2 *self);
-
-double
-Class2_virtualOp(Class2 *self, double a, double b);
-
-int
-Class2_inlineOp(Class2 *self, int a, int b);
-
-void
-Class2_friendOp(Class2 *self);
-
-void
-Class2_nonStaticOp(Class2 *self);
-
-int
-Class2_paramsOp(Class2 *self, int in, int out, int inout);
-
-void
-Class2_voidOp(Class2 *self);
-
-void
-Class2_defaultValueOp(Class2 *self, int newIVal1);
-
-void
-Class2__Class2(Class2 *self);
-
-Class1*
-Class2_classesOp(Class2 *self, Class1 c1);
-
-const
-void
-Class2_constOp(Class2 *self);
-
-// ----------------------------------Public Global VariableDescription----------------------------------
-
-// ----------------------------------Global Public Functions----------------------------------
-/*
- *--------Global Public Function Declarations-------
- */
-void
-staticOp(void);
-
-#endif /*CLASS2_H_*/
+// --------------------------------------------------------
+// Code generated by Papyrus C
+// --------------------------------------------------------
+
+/*
+ * File generated from the CCodegenTest::Class2 uml class
+ * Generated by the Papyrus C Generator (CEA LIST)
+ *
+ */
+
+#ifndef CLASS2_H_
+#define CLASS2_H_
+
+/*
+ *---------------Includes and declares--------------
+ */
+// Derived includes
+// End of Derived includes
+// Derived declares
+struct Class1;
+// End of Derived declares
+
+// Std headers
+#include <stdio.h>
+#include <stdlib.h>
+#include <stdint.h>
+// End of Std headers
+
+/*
+ *--------------Public Class Description-------------
+ */
+// Structure
+/* Class Macro definition */
+#define Class2(OBJ) ((Class2*)OBJ)
+
+typedef struct Class2 Class2;
+
+struct Class2 {
+ /**
+ *
+ */
+
+ /*bool*/
+ char bVal;
+ /**
+ *
+ */
+
+ int /* protected */iVal1;
+ /**
+ *
+ */
+
+ int /* private */iVal2;
+
+};
+
+// Constructor and destructor declarations
+/*
+ *----Default constructor & destructor prototypes---
+ */
+
+// Property initialisation declarations
+// Class methods declarations
+/*
+ *---------------Function Declarations--------------
+ */
+/**
+ *
+ */
+void
+Class2_Class2_1(struct Class2 *self);
+
+/**
+ *
+ */
+void
+Class2_Class2(int newIVal1, int newIVal2, /*bool*/char newBVal,
+ struct Class2 *self);
+
+/**
+ *
+ */
+double
+Class2_virtualOp(Class2 *self, double a, double b);
+
+/**
+ *
+ */
+int
+Class2_inlineOp(Class2 *self, int a, int b);
+
+/**
+ *
+ */
+void
+Class2_friendOp(Class2 *self);
+
+/**
+ *
+ */
+void
+Class2_nonStaticOp(Class2 *self);
+
+/**
+ *
+ */
+int
+Class2_paramsOp(Class2 *self, int in, int out, int inout);
+
+/**
+ *
+ */
+void
+Class2_voidOp(Class2 *self);
+
+void
+Class2_defaultValueOp(Class2 *self, int newIVal1);
+
+/**
+ *
+ */
+void
+Class2__Class2(Class2 *self);
+
+struct Class1*
+Class2_classesOp(Class2 *self, struct Class1 c1);
+
+/**
+ *
+ */
+const
+void
+Class2_constOp(Class2 *self);
+
+// Class receptions declarations
+
+// ----------------------------------Public Global VariableDescription----------------------------------
+
+// ----------------------------------Global Public Functions----------------------------------
+/*
+ *--------Global Public Function Declarations-------
+ */
+/**
+ *
+ */
+void
+staticOp(void);
+
+// ----------------------------------Signal Event Process Functions Implementations--------------------------------
+
+// ----------------------------------Call Event Process Functions ----------------------------------
+
+#endif /*CLASS2_H_*/
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Class3.c b/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Class3.c
index deb7da6..4f3dba4 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Class3.c
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Class3.c
@@ -1,100 +1,166 @@
-// --------------------------------------------------------
-// Code generated by Papyrus C
-// --------------------------------------------------------
-
-// This template is called by the main module file
-/*
- * File generated from the CCodegenTest::Class3 uml class
- * Generated by the Papyrus C Generator (CEA LIST)
- *
- */
-
-// include of the self header
-/* include header file*/
-#include "Class3.h"
-
-// Generate import of class ---------------------------------------------
-/* "startUserCode" to add imports */
-/* "endUserCode" to add imports */
-
-// ----------------------------------Private and Protected Global VariableDescription----------------------------------
-// ----------------------------------Private and Protected Class Functions----------------------------------
-/*
- *------Private/Protected Function Declarations-----
- */
-
-// ----------------------------------Private and Protected Global Functions----------------------------------
-/*
- *---Private/Protected Global Function Declarations--
- */
-
-// ----------------------------------Implementation of the class constructor and destructor----------
-/*
- *--Default constructor & destructor implementations-
- */
-
-// ----------------------------------Initialisation function implementation----------------------------------
-// ----------------------------------Function Implementation----------------------------------
-/*
- *--------------Function Implementation-------------
- */
-double Class3_virtualOp(Class3 *self, double a, double b) {
- return a + b;
-}
-
-void Class3__Class3(Class3 *self) {
-}
-
-void Class3_Class3() {
-}
-
-void Class2_Class2_1(Class2 *self) {
- self->iVal1 = 0;
- self->iVal2 = 0;
- self->bVal = 'f';
-}
-
-void Class2_Class2(int newIVal1, int newIVal2, /*bool*/char newBVal,
- Class2 *self) {
- self->iVal1 = newIVal1;
- self->iVal2 = newIVal2;
- self->bVal = newBVal;
-}
-
-double Class2_virtualOp(Class2 *self, double a, double b) {
-}
-
-void staticOp(void) {
-}
-
-int Class2_inlineOp(Class2 *self, int a, int b) {
- return a + b;
-}
-
-void Class2_friendOp(Class2 *self) {
-}
-
-void Class2_nonStaticOp(Class2 *self) {
-}
-
-int Class2_paramsOp(Class2 *self, int in, int out, int inout) {
-}
-
-void Class2_voidOp(Class2 *self) {
-}
-
-void Class2_defaultValueOp(Class2 *self, int newIVal1) {
-}
-
-void Class2__Class2(Class2 *self) {
-}
-
-Class1*
-Class2_classesOp(Class2 *self, Class1 c1) {
-}
-
-const
-void Class2_constOp(Class2 *self) {
- printf("I am a const method\n");
-}
-
+// --------------------------------------------------------
+// Code generated by Papyrus C
+// --------------------------------------------------------
+
+/*
+ * File generated from the CCodegenTest::Class3 uml class
+ * Generated by the Papyrus C Generator (CEA LIST)
+ *
+ */
+
+// Include self header
+#include "Class3.h"
+// Derived includes
+// Include from Include stereotype (body)
+#include <CLass2.h>
+// End of Include from Include stereotype (body)
+
+// ----------------------------------Private and Protected Global VariableDescription----------------------------------
+
+// ----------------------------------Private and Protected Class Functions----------------------------------
+/*
+ *------Private/Protected Function Declarations-----
+ */
+
+// ----------------------------------Private and Protected Global Functions----------------------------------
+/*
+ *---Private/Protected Global Function Declarations--
+ */
+
+// ----------------------------------Implementation of the class constructor and destructor----------
+/*
+ *--Default constructor & destructor implementations-
+ */
+
+// ----------------------------------Initialization functions implementation----------------------------------
+// ----------------------------------Functions Implementation----------------------------------
+/**
+ * Inherited method overriding.
+ */
+double Class3_virtualOp(Class3 *self, double a, double b) {
+
+ return a + b;
+}
+
+/**
+ * Inherited virtual destructor
+ */
+void Class3__Class3(Class3 *self) {
+
+}
+
+/**
+ * Default constructor
+ */
+void Class3_Class3() {
+
+}
+
+/**
+ * Default constructor
+ */
+void Class2_Class2_1(Class2 *self) {
+
+ self->iVal1 = 0;
+ self->iVal2 = 0;
+ self->bVal = 'f';
+}
+
+/**
+ * Constructor with parameters
+ */
+void Class2_Class2(int newIVal1, int newIVal2, /*bool*/char newBVal,
+ Class2 *self) {
+
+ self->iVal1 = newIVal1;
+ self->iVal2 = newIVal2;
+ self->bVal = newBVal;
+}
+
+/**
+ * Virtual method
+ */
+double Class2_virtualOp(Class2 *self, double a, double b) {
+
+}
+
+/**
+ * Static method
+ */
+void staticOp(void) {
+
+}
+
+/**
+ * Inline method
+ */
+int Class2_inlineOp(Class2 *self, int a, int b) {
+
+ return a + b;
+}
+
+/**
+ * Friend method
+ */
+void Class2_friendOp(Class2 *self) {
+
+}
+
+/**
+ * Non-static method
+ */
+void Class2_nonStaticOp(Class2 *self) {
+
+}
+
+/**
+ * Method with in, out, inout, return parameters
+ */
+int Class2_paramsOp(Class2 *self, int in, int out, int inout) {
+
+}
+
+/**
+ * Void Method
+ */
+void Class2_voidOp(Class2 *self) {
+
+}
+
+/**
+ *
+ */
+void Class2_defaultValueOp(Class2 *self, int newIVal1) {
+
+}
+
+/**
+ * Virtual destructor
+ */
+void Class2__Class2(Class2 *self) {
+
+}
+
+/**
+ *
+ */
+Class1*
+Class2_classesOp(Class2 *self, Class1 c1) {
+
+}
+
+/**
+ * Const method
+ */
+const
+void Class2_constOp(Class2 *self) {
+
+ printf("I am a const method\n");
+}
+
+// ----------------------------------Receptions Implementation----------------------------------
+
+// ----------------------------------Signal Event Process Functions Implementations--------------------------------
+
+// ----------------------------------Call Event Process Functions Implementations----------------------------------
+
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Class3.h b/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Class3.h
index 7c59b70..64cbc26 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Class3.h
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Class3.h
@@ -1,104 +1,160 @@
-// --------------------------------------------------------
-// Code generated by Papyrus C
-// --------------------------------------------------------
-
-// This template is called by the main module file
-/*
- * File generated from the CCodegenTest::Class3 uml class
- * Generated by the Papyrus C Generator (CEA LIST)
- *
- */
-
-#ifndef CLASS3_H_
-#define CLASS3_H_
-
-// Explicit import of the class
-/*
- *-----------------------Import----------------------
- */
-#include <stdlib.h>
-// User imports
-/* "startUserCode" to add imports */
-/* "endUserCode" to add imports */
-/* include other files*/
-#include <CLass2.h>
-
-// header body
-/*
- *--------------Public Class Description-------------
- */
-// Structure
-/* Class Macro definition */
-#define Class3(OBJ) ((Class3*)OBJ)
-
-typedef struct Class3 Class3;
-
-struct Class3 {
-
- /*bool*/
- char bVal;
-
- int /* protected */iVal1;
-};
-
-// Constructor and destructor declarations
-/*
- *----Default constructor & destructor prototypes---
- */
-
-// Property initialisation declarations
-// Class methods declarations
-/*
- *---------------Function Declarations--------------
- */
-double
-Class3_virtualOp(Class3 *self, double a, double b);
-
-void
-Class3__Class3(Class3 *self);
-
-void
-Class3_Class3();
-
-void
-Class2_Class2_1(Class2 *self);
-
-void
-Class2_Class2(int newIVal1, int newIVal2, /*bool*/char newBVal, Class2 *self);
-
-double
-Class2_virtualOp(Class2 *self, double a, double b);
-
-int
-Class2_inlineOp(Class2 *self, int a, int b);
-
-void
-Class2_friendOp(Class2 *self);
-
-void
-Class2_nonStaticOp(Class2 *self);
-
-int
-Class2_paramsOp(Class2 *self, int in, int out, int inout);
-
-void
-Class2_voidOp(Class2 *self);
-
-void
-Class2_defaultValueOp(Class2 *self, int newIVal1);
-
-void
-Class2__Class2(Class2 *self);
-
-Class1*
-Class2_classesOp(Class2 *self, Class1 c1);
-
-const
-void
-Class2_constOp(Class2 *self);
-
-// ----------------------------------Public Global VariableDescription----------------------------------
-
-// ----------------------------------Global Public Functions----------------------------------
-
-#endif /*CLASS3_H_*/
+// --------------------------------------------------------
+// Code generated by Papyrus C
+// --------------------------------------------------------
+
+/*
+ * File generated from the CCodegenTest::Class3 uml class
+ * Generated by the Papyrus C Generator (CEA LIST)
+ *
+ */
+
+#ifndef CLASS3_H_
+#define CLASS3_H_
+
+/*
+ *---------------Includes and declares--------------
+ */
+// Derived includes
+#include "Class2.h"
+// End of Derived includes
+
+// Derived declares
+// End of Derived declares
+
+// Std headers
+#include <stdio.h>
+#include <stdlib.h>
+#include <stdint.h>
+// End of Std headers
+
+/*
+ *--------------Public Class Description-------------
+ */
+// Structure
+/* Class Macro definition */
+#define Class3(OBJ) ((Class3*)OBJ)
+
+typedef struct Class3 Class3;
+
+struct Class3 {
+ /**
+ *
+ */
+
+ /*bool*/
+ char bVal;
+ /**
+ *
+ */
+
+ int /* protected */iVal1;
+
+};
+
+// Constructor and destructor declarations
+/*
+ *----Default constructor & destructor prototypes---
+ */
+
+// Property initialisation declarations
+// Class methods declarations
+/*
+ *---------------Function Declarations--------------
+ */
+/**
+ *
+ */
+double
+Class3_virtualOp(Class3 *self, double a, double b);
+
+/**
+ *
+ */
+void
+Class3__Class3(Class3 *self);
+
+/**
+ *
+ */
+void
+Class3_Class3();
+
+/**
+ *
+ */
+void
+Class2_Class2_1(struct Class2 *self);
+
+/**
+ *
+ */
+void
+Class2_Class2(int newIVal1, int newIVal2, /*bool*/char newBVal,
+ struct Class2 *self);
+
+/**
+ *
+ */
+double
+Class2_virtualOp(Class2 *self, double a, double b);
+
+/**
+ *
+ */
+int
+Class2_inlineOp(Class2 *self, int a, int b);
+
+/**
+ *
+ */
+void
+Class2_friendOp(Class2 *self);
+
+/**
+ *
+ */
+void
+Class2_nonStaticOp(Class2 *self);
+
+/**
+ *
+ */
+int
+Class2_paramsOp(Class2 *self, int in, int out, int inout);
+
+/**
+ *
+ */
+void
+Class2_voidOp(Class2 *self);
+
+void
+Class2_defaultValueOp(Class2 *self, int newIVal1);
+
+/**
+ *
+ */
+void
+Class2__Class2(Class2 *self);
+
+struct Class1*
+Class2_classesOp(Class2 *self, struct Class1 c1);
+
+/**
+ *
+ */
+const
+void
+Class2_constOp(Class2 *self);
+
+// Class receptions declarations
+
+// ----------------------------------Public Global VariableDescription----------------------------------
+
+// ----------------------------------Global Public Functions----------------------------------
+
+// ----------------------------------Signal Event Process Functions Implementations--------------------------------
+
+// ----------------------------------Call Event Process Functions ----------------------------------
+
+#endif /*CLASS3_H_*/
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Class4.c b/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Class4.c
index 2153629..1635c9c 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Class4.c
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Class4.c
@@ -1,46 +1,52 @@
-// --------------------------------------------------------
-// Code generated by Papyrus C
-// --------------------------------------------------------
-
-// This template is called by the main module file
-/*
- * File generated from the CCodegenTest::Class4 uml class
- * Generated by the Papyrus C Generator (CEA LIST)
- *
- */
-
-// include of the self header
-/* include header file*/
-#include "Class4.h"
-
-// Generate import of class ---------------------------------------------
-/* "startUserCode" to add imports */
-/* "endUserCode" to add imports */
-
-// ----------------------------------Private and Protected Global VariableDescription----------------------------------
-// ----------------------------------Private and Protected Class Functions----------------------------------
-// ----------------------------------Private and Protected Global Functions----------------------------------
-// ----------------------------------Implementation of the class constructor and destructor----------
-/*
- *--Default constructor & destructor implementations-
- */
-Class4* Class4_create() {
- Class4* self = (Class4*) malloc(sizeof(Class4));
- return self;
-}
-// default destructor
-void Class4_destroy(Class4* self) {
- free(self);
-}
-
-// ----------------------------------Initialisation function implementation----------------------------------
-/*
- *----Default value initialization implementation---
- */
-void Class4_init(Class4* self) {
-}
-
-// ----------------------------------Function Implementation----------------------------------
-/*
- *--------------Function Implementation-------------
- */
+// --------------------------------------------------------
+// Code generated by Papyrus C
+// --------------------------------------------------------
+
+/*
+ * File generated from the CCodegenTest::Class4 uml class
+ * Generated by the Papyrus C Generator (CEA LIST)
+ *
+ */
+
+// Include self header
+#include "Class4.h"
+// Derived includes
+#include "Class3.h"
+// Include from Include stereotype (body)
+#include <Class3.h>
+// End of Include from Include stereotype (body)
+
+// ----------------------------------Private and Protected Global VariableDescription----------------------------------
+
+// ----------------------------------Private and Protected Class Functions----------------------------------
+
+// ----------------------------------Private and Protected Global Functions----------------------------------
+
+// ----------------------------------Implementation of the class constructor and destructor----------
+/*
+ *--Default constructor & destructor implementations-
+ */
+Class4* Class4_create() {
+ Class4 *self = (Class4*) malloc(sizeof(Class4));
+ Class4_init(self);
+ return self;
+}
+// default destructor
+void Class4_destroy(Class4 *self) {
+ free(self);
+}
+
+// ----------------------------------Initialization functions implementation----------------------------------
+
+void Class4_init(Class4 *self) {
+
+}
+
+// ----------------------------------Functions Implementation----------------------------------
+
+// ----------------------------------Receptions Implementation----------------------------------
+
+// ----------------------------------Signal Event Process Functions Implementations--------------------------------
+
+// ----------------------------------Call Event Process Functions Implementations----------------------------------
+
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Class4.h b/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Class4.h
index 3d6da75..6460b5a 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Class4.h
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Class4.h
@@ -1,114 +1,123 @@
-// --------------------------------------------------------
-// Code generated by Papyrus C
-// --------------------------------------------------------
-
-// This template is called by the main module file
-/*
- * File generated from the CCodegenTest::Class4 uml class
- * Generated by the Papyrus C Generator (CEA LIST)
- *
- */
-
-#ifndef CLASS4_H_
-#define CLASS4_H_
-
-// Explicit import of the class
-/*
- *-----------------------Import----------------------
- */
-#include <stdlib.h>
-// User imports
-/* "startUserCode" to add imports */
-/* "endUserCode" to add imports */
-/* include other files*/
-#include <Class3.h>
-
-// header body
-/*
- *--------------Public Class Description-------------
- */
-// Structure
-/* Class Macro definition */
-#define Class4(OBJ) ((Class4*)OBJ)
-
-typedef struct Class4 Class4;
-
-struct Class4 {
-
- Class3* c3;
-
- char charVar;
-
- double doubleVar;
-
- float floatVar;
-
- int intVar;
-
- long longVar;
-
- long double longDoubleVar;
-
- short shortVar;
-
- unsigned int unsignedIntVar;
-
- unsigned short unsignedShortVar;
-
- unsigned char unsignedCharVar;
-
- unsigned long unsignedLongVar;
-
- /*bool*/
- char boolVar;
-
- double arrayDoubleDefault;
-
- char arrayCharInit;
-
- char* charString;
-
- char* ptrChar;
-};
-
-// Constructor and destructor declarations
-/*
- *----Default constructor & destructor prototypes---
- */
-/**
- * Dynamic instantiation of a Class4 structure
- * @return Class4 instance pointer
- */
-Class4* Class4_create();
-
-/**
- * Dynamic destruction of a Class4 structure instantiation
- * @param Pointer to an instance of the Class4 structure
- * @return void
- */
-void Class4_destroy(Class4*);
-
-// Property initialisation declarations
-/*
- *------Default value initialization prototypes-----
- */
-/**
- * Default value initialization
- * @param Class4 structure instance pointer
- * @return void
- */
-void Class4_init(Class4* self);
-
-// Class methods declarations
-
-// ----------------------------------Public Global VariableDescription----------------------------------
-
-/*
- *--------Global Public Variable Declarations-------
- */
-// global variable declaration
-char* charStringStaticInit = "Hello World";
-
-// ----------------------------------Global Public Functions----------------------------------
-
-#endif /*CLASS4_H_*/
+// --------------------------------------------------------
+// Code generated by Papyrus C
+// --------------------------------------------------------
+
+/*
+ * File generated from the CCodegenTest::Class4 uml class
+ * Generated by the Papyrus C Generator (CEA LIST)
+ *
+ */
+
+#ifndef CLASS4_H_
+#define CLASS4_H_
+
+/*
+ *---------------Includes and declares--------------
+ */
+// Derived includes
+// End of Derived includes
+// Derived declares
+struct Class3;
+// End of Derived declares
+
+// Std headers
+#include <stdio.h>
+#include <stdlib.h>
+#include <stdint.h>
+// End of Std headers
+
+/*
+ *--------------Public Class Description-------------
+ */
+// Structure
+/* Class Macro definition */
+#define Class4(OBJ) ((Class4*)OBJ)
+
+typedef struct Class4 Class4;
+
+struct Class4 {
+
+ struct Class3 *c3;
+
+ char charVar;
+
+ double doubleVar;
+
+ float floatVar;
+
+ int intVar;
+
+ long longVar;
+
+ long double longDoubleVar;
+
+ short shortVar;
+
+ unsigned int unsignedIntVar;
+
+ unsigned short unsignedShortVar;
+
+ unsigned char unsignedCharVar;
+
+ unsigned long unsignedLongVar;
+
+ /*bool*/
+ char boolVar;
+
+ double arrayDoubleDefault;
+
+ char arrayCharInit;
+
+ char *charString;
+
+ char *ptrChar;
+
+};
+
+// Constructor and destructor declarations
+/*
+ *----Default constructor & destructor prototypes---
+ */
+/**
+ * Dynamic instantiation of a Class4 structure
+ * @return Class4 instance pointer
+ */
+Class4* Class4_create();
+
+/**
+ * Dynamic destruction of a Class4 structure instantiation
+ * @param Pointer to an instance of the Class4 structure
+ * @return void
+ */
+void Class4_destroy(Class4*);
+
+// Property initialisation declarations
+/*
+ *------Default value initialization prototypes-----
+ */
+/**
+ * Default value initialization
+ * @param Class4 structure instance pointer
+ * @return void
+ */
+void Class4_init(Class4 *self);
+
+// Class methods declarations
+
+// Class receptions declarations
+
+// ----------------------------------Public Global VariableDescription----------------------------------
+
+/*
+ *--------Global Public Variable Declarations-------
+ */
+// global variable declaration
+char *charStringStaticInit = "Hello World";
+
+// ----------------------------------Global Public Functions----------------------------------
+
+// ----------------------------------Signal Event Process Functions Implementations--------------------------------
+
+// ----------------------------------Call Event Process Functions ----------------------------------
+
+#endif /*CLASS4_H_*/
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Class5.c b/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Class5.c
index acd17cd..052e6df 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Class5.c
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Class5.c
@@ -1,52 +1,59 @@
-// --------------------------------------------------------
-// Code generated by Papyrus C
-// --------------------------------------------------------
-
-// This template is called by the main module file
-/*
- * File generated from the CCodegenTest::Class5 uml class
- * Generated by the Papyrus C Generator (CEA LIST)
- *
- */
-
-// include of the self header
-/* include header file*/
-#include "Class5.h"
-
-// Generate import of class ---------------------------------------------
-/* "startUserCode" to add imports */
-/* "endUserCode" to add imports */
-
-// ----------------------------------Private and Protected Global VariableDescription----------------------------------
-// ----------------------------------Private and Protected Class Functions----------------------------------
-/*
- *------Private/Protected Function Declarations-----
- */
-
-// ----------------------------------Private and Protected Global Functions----------------------------------
-// ----------------------------------Implementation of the class constructor and destructor----------
-/*
- *--Default constructor & destructor implementations-
- */
-Class5* Class5_create() {
- Class5* self = (Class5*) malloc(sizeof(Class5));
- return self;
-}
-// default destructor
-void Class5_destroy(Class5* self) {
- free(self);
-}
-
-// ----------------------------------Initialisation function implementation----------------------------------
-
-// ----------------------------------Function Implementation----------------------------------
-/*
- *--------------Function Implementation-------------
- */
-int Class5_pureVirtualOp(Class5 *self) {
-}
-
-int*
-Class5_pureVirtualConstOp(Class5 *self) {
-}
-
+// --------------------------------------------------------
+// Code generated by Papyrus C
+// --------------------------------------------------------
+
+/*
+ * File generated from the CCodegenTest::Class5 uml class
+ * Generated by the Papyrus C Generator (CEA LIST)
+ *
+ */
+
+// Include self header
+#include "Class5.h"
+// Derived includes
+
+// ----------------------------------Private and Protected Global VariableDescription----------------------------------
+
+// ----------------------------------Private and Protected Class Functions----------------------------------
+/*
+ *------Private/Protected Function Declarations-----
+ */
+
+// ----------------------------------Private and Protected Global Functions----------------------------------
+// ----------------------------------Implementation of the class constructor and destructor----------
+/*
+ *--Default constructor & destructor implementations-
+ */
+Class5* Class5_create() {
+ Class5 *self = (Class5*) malloc(sizeof(Class5));
+ return self;
+}
+// default destructor
+void Class5_destroy(Class5 *self) {
+ free(self);
+}
+
+// ----------------------------------Initialization functions implementation----------------------------------
+
+// ----------------------------------Functions Implementation----------------------------------
+/**
+ *
+ */
+int Class5_pureVirtualOp(Class5 *self) {
+
+}
+
+/**
+ *
+ */
+int*
+Class5_pureVirtualConstOp(Class5 *self) {
+
+}
+
+// ----------------------------------Receptions Implementation----------------------------------
+
+// ----------------------------------Signal Event Process Functions Implementations--------------------------------
+
+// ----------------------------------Call Event Process Functions Implementations----------------------------------
+
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Class5.h b/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Class5.h
index ba28fc7..b58296c 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Class5.h
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Class5.h
@@ -1,73 +1,85 @@
-// --------------------------------------------------------
-// Code generated by Papyrus C
-// --------------------------------------------------------
-
-// This template is called by the main module file
-/*
- * File generated from the CCodegenTest::Class5 uml class
- * Generated by the Papyrus C Generator (CEA LIST)
- *
- */
-
-#ifndef CLASS5_H_
-#define CLASS5_H_
-
-// Explicit import of the class
-/*
- *-----------------------Import----------------------
- */
-#include <stdlib.h>
-// User imports
-/* "startUserCode" to add imports */
-/* "endUserCode" to add imports */
-/* include other files*/
-
-// header body
-/*
- *--------------Public Class Description-------------
- */
-// Structure
-/* Class Macro definition */
-#define Class5(OBJ) ((Class5*)OBJ)
-
-typedef struct Class5 Class5;
-
-struct Class5 {
-
- int externalProp;
-};
-
-// Constructor and destructor declarations
-/*
- *----Default constructor & destructor prototypes---
- */
-/**
- * Dynamic instantiation of a Class5 structure
- * @return Class5 instance pointer
- */
-Class5* Class5_create();
-
-/**
- * Dynamic destruction of a Class5 structure instantiation
- * @param Pointer to an instance of the Class5 structure
- * @return void
- */
-void Class5_destroy(Class5*);
-
-// Property initialisation declarations
-
-// Class methods declarations
-/*
- *---------------Function Declarations--------------
- */
-int
-Class5_pureVirtualOp(Class5 *self);
-
-int*
-Class5_pureVirtualConstOp(Class5 *self);
-
-// ----------------------------------Public Global VariableDescription----------------------------------
-
-// ----------------------------------Global Public Functions----------------------------------
-
-#endif /*CLASS5_H_*/
+// --------------------------------------------------------
+// Code generated by Papyrus C
+// --------------------------------------------------------
+
+/*
+ * File generated from the CCodegenTest::Class5 uml class
+ * Generated by the Papyrus C Generator (CEA LIST)
+ *
+ */
+
+#ifndef CLASS5_H_
+#define CLASS5_H_
+
+/*
+ *---------------Includes and declares--------------
+ */
+// Derived includes
+// End of Derived includes
+// Derived declares
+// End of Derived declares
+
+// Std headers
+#include <stdio.h>
+#include <stdlib.h>
+#include <stdint.h>
+// End of Std headers
+
+/*
+ *--------------Public Class Description-------------
+ */
+// Structure
+/* Class Macro definition */
+#define Class5(OBJ) ((Class5*)OBJ)
+
+/**
+ *
+ */
+typedef struct Class5 Class5;
+
+struct Class5 {
+
+ int externalProp;
+
+};
+
+// Constructor and destructor declarations
+/*
+ *----Default constructor & destructor prototypes---
+ */
+/**
+ * Dynamic instantiation of a Class5 structure
+ * @return Class5 instance pointer
+ */
+Class5* Class5_create();
+
+/**
+ * Dynamic destruction of a Class5 structure instantiation
+ * @param Pointer to an instance of the Class5 structure
+ * @return void
+ */
+void Class5_destroy(Class5*);
+
+// Property initialisation declarations
+
+// Class methods declarations
+/*
+ *---------------Function Declarations--------------
+ */
+int
+Class5_pureVirtualOp(Class5 *self);
+
+int*
+Class5_pureVirtualConstOp(Class5 *self);
+
+// Class receptions declarations
+
+// ----------------------------------Public Global VariableDescription----------------------------------
+
+// ----------------------------------Global Public Functions----------------------------------
+
+// ----------------------------------Signal Event Process Functions Implementations--------------------------------
+
+// ----------------------------------Call Event Process Functions ----------------------------------
+
+#endif /*CLASS5_H_*/
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Class6.c b/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Class6.c
index 482d243..ef1de62 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Class6.c
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Class6.c
@@ -1,48 +1,61 @@
-// --------------------------------------------------------
-// Code generated by Papyrus C
-// --------------------------------------------------------
-
-// This template is called by the main module file
-/*
- * File generated from the CCodegenTest::Class6 uml class
- * Generated by the Papyrus C Generator (CEA LIST)
- *
- */
-
-// include of the self header
-/* include header file*/
-#include "Class6.h"
-
-// Generate import of class ---------------------------------------------
-/* "startUserCode" to add imports */
-/* "endUserCode" to add imports */
-
-// ----------------------------------Private and Protected Global VariableDescription----------------------------------
-// ----------------------------------Private and Protected Class Functions----------------------------------
-// ----------------------------------Private and Protected Global Functions----------------------------------
-// ----------------------------------Implementation of the class constructor and destructor----------
-/*
- *--Default constructor & destructor implementations-
- */
-Class6* Class6_create() {
- Class6* self = (Class6*) malloc(sizeof(Class6));
- return self;
-}
-// default destructor
-void Class6_destroy(Class6* self) {
- free(self);
-}
-
-// ----------------------------------Initialisation function implementation----------------------------------
-
-// ----------------------------------Function Implementation----------------------------------
-/*
- *--------------Function Implementation-------------
- */
-int Class5_pureVirtualOp(Class5 *self) {
-}
-
-int*
-Class5_pureVirtualConstOp(Class5 *self) {
-}
-
+// --------------------------------------------------------
+// Code generated by Papyrus C
+// --------------------------------------------------------
+
+/*
+ * File generated from the CCodegenTest::Class6 uml class
+ * Generated by the Papyrus C Generator (CEA LIST)
+ *
+ */
+
+// Include self header
+#include "Class6.h"
+// Derived includes
+// Include from Include stereotype (body)
+#include <Class5.h>
+#include <Class3.h>
+// End of Include from Include stereotype (body)
+
+// ----------------------------------Private and Protected Global VariableDescription----------------------------------
+
+// ----------------------------------Private and Protected Class Functions----------------------------------
+
+// ----------------------------------Private and Protected Global Functions----------------------------------
+
+// ----------------------------------Implementation of the class constructor and destructor----------
+/*
+ *--Default constructor & destructor implementations-
+ */
+Class6* Class6_create() {
+ Class6 *self = (Class6*) malloc(sizeof(Class6));
+ return self;
+}
+// default destructor
+void Class6_destroy(Class6 *self) {
+ free(self);
+}
+
+// ----------------------------------Initialization functions implementation----------------------------------
+
+// ----------------------------------Functions Implementation----------------------------------
+/**
+ *
+ */
+int Class5_pureVirtualOp(Class5 *self) {
+
+}
+
+/**
+ *
+ */
+int*
+Class5_pureVirtualConstOp(Class5 *self) {
+
+}
+
+// ----------------------------------Receptions Implementation----------------------------------
+
+// ----------------------------------Signal Event Process Functions Implementations--------------------------------
+
+// ----------------------------------Call Event Process Functions Implementations----------------------------------
+
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Class6.h b/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Class6.h
index e10baa0..64b2a1b 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Class6.h
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Class6.h
@@ -1,74 +1,87 @@
-// --------------------------------------------------------
-// Code generated by Papyrus C
-// --------------------------------------------------------
-
-// This template is called by the main module file
-/*
- * File generated from the CCodegenTest::Class6 uml class
- * Generated by the Papyrus C Generator (CEA LIST)
- *
- */
-
-#ifndef CLASS6_H_
-#define CLASS6_H_
-
-// Explicit import of the class
-/*
- *-----------------------Import----------------------
- */
-#include <stdlib.h>
-// User imports
-/* "startUserCode" to add imports */
-/* "endUserCode" to add imports */
-/* include other files*/
-#include <Class5.h>
-#include <Class3.h>
-
-// header body
-/*
- *--------------Public Class Description-------------
- */
-// Structure
-/* Class Macro definition */
-#define Class6(OBJ) ((Class6*)OBJ)
-
-typedef struct Class6 Class6;
-
-struct Class6 {
-
- Class3 class3;
-
- int externalProp;
-};
-
-// Constructor and destructor declarations
-/*
- *----Default constructor & destructor prototypes---
- */
-/**
- * Dynamic instantiation of a Class6 structure
- * @return Class6 instance pointer
- */
-Class6* Class6_create();
-
-/**
- * Dynamic destruction of a Class6 structure instantiation
- * @param Pointer to an instance of the Class6 structure
- * @return void
- */
-void Class6_destroy(Class6*);
-
-// Property initialisation declarations
-
-// Class methods declarations
-int
-Class5_pureVirtualOp(Class5 *self);
-
-int*
-Class5_pureVirtualConstOp(Class5 *self);
-
-// ----------------------------------Public Global VariableDescription----------------------------------
-
-// ----------------------------------Global Public Functions----------------------------------
-
-#endif /*CLASS6_H_*/
+// --------------------------------------------------------
+// Code generated by Papyrus C
+// --------------------------------------------------------
+
+/*
+ * File generated from the CCodegenTest::Class6 uml class
+ * Generated by the Papyrus C Generator (CEA LIST)
+ *
+ */
+
+#ifndef CLASS6_H_
+#define CLASS6_H_
+
+/*
+ *---------------Includes and declares--------------
+ */
+// Derived includes
+#include "Class3.h"
+#include "Class5.h"
+// End of Derived includes
+
+// Derived declares
+// End of Derived declares
+
+// Std headers
+#include <stdio.h>
+#include <stdlib.h>
+#include <stdint.h>
+// End of Std headers
+
+/*
+ *--------------Public Class Description-------------
+ */
+// Structure
+/* Class Macro definition */
+#define Class6(OBJ) ((Class6*)OBJ)
+
+/**
+ *
+ */
+typedef struct Class6 Class6;
+
+struct Class6 {
+
+ Class3 class3;
+
+ int externalProp;
+
+};
+
+// Constructor and destructor declarations
+/*
+ *----Default constructor & destructor prototypes---
+ */
+/**
+ * Dynamic instantiation of a Class6 structure
+ * @return Class6 instance pointer
+ */
+Class6* Class6_create();
+
+/**
+ * Dynamic destruction of a Class6 structure instantiation
+ * @param Pointer to an instance of the Class6 structure
+ * @return void
+ */
+void Class6_destroy(Class6*);
+
+// Property initialisation declarations
+
+// Class methods declarations
+int
+Class5_pureVirtualOp(Class5 *self);
+
+int*
+Class5_pureVirtualConstOp(Class5 *self);
+
+// Class receptions declarations
+
+// ----------------------------------Public Global VariableDescription----------------------------------
+
+// ----------------------------------Global Public Functions----------------------------------
+
+// ----------------------------------Signal Event Process Functions Implementations--------------------------------
+
+// ----------------------------------Call Event Process Functions ----------------------------------
+
+#endif /*CLASS6_H_*/
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Class7.c b/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Class7.c
index 797fe65..f2644d3 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Class7.c
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Class7.c
@@ -1,47 +1,48 @@
-// --------------------------------------------------------
-// Code generated by Papyrus C
-// --------------------------------------------------------
-
-// This template is called by the main module file
-/*
- * File generated from the CCodegenTest::Class7 uml class
- * Generated by the Papyrus C Generator (CEA LIST)
- *
- */
-
-// include of the self header
-/* include header file*/
-#include "Class7.h"
-
-// Generate import of class ---------------------------------------------
-/* "startUserCode" to add imports */
-/* "endUserCode" to add imports */
-
-// ----------------------------------Private and Protected Global VariableDescription----------------------------------
-// ----------------------------------Private and Protected Class Functions----------------------------------
-// ----------------------------------Private and Protected Global Functions----------------------------------
-// ----------------------------------Implementation of the class constructor and destructor----------
-/*
- *--Default constructor & destructor implementations-
- */
-Class7* Class7_create() {
- Class7* self = (Class7*) malloc(sizeof(Class7));
- return self;
-}
-// default destructor
-void Class7_destroy(Class7* self) {
- free(self);
-}
-
-// ----------------------------------Initialisation function implementation----------------------------------
-/*
- *----Default value initialization implementation---
- */
-void Class7_init(Class7* self) {
- self->defaultProp = 43;
-}
-
-// ----------------------------------Function Implementation----------------------------------
-/*
- *--------------Function Implementation-------------
- */
+// --------------------------------------------------------
+// Code generated by Papyrus C
+// --------------------------------------------------------
+
+/*
+ * File generated from the CCodegenTest::Class7 uml class
+ * Generated by the Papyrus C Generator (CEA LIST)
+ *
+ */
+
+// Include self header
+#include "Class7.h"
+// Derived includes
+
+// ----------------------------------Private and Protected Global VariableDescription----------------------------------
+
+// ----------------------------------Private and Protected Class Functions----------------------------------
+
+// ----------------------------------Private and Protected Global Functions----------------------------------
+
+// ----------------------------------Implementation of the class constructor and destructor----------
+/*
+ *--Default constructor & destructor implementations-
+ */
+Class7* Class7_create() {
+ Class7 *self = (Class7*) malloc(sizeof(Class7));
+ Class7_init(self);
+ return self;
+}
+// default destructor
+void Class7_destroy(Class7 *self) {
+ free(self);
+}
+
+// ----------------------------------Initialization functions implementation----------------------------------
+
+void Class7_init(Class7 *self) {
+
+}
+
+// ----------------------------------Functions Implementation----------------------------------
+
+// ----------------------------------Receptions Implementation----------------------------------
+
+// ----------------------------------Signal Event Process Functions Implementations--------------------------------
+
+// ----------------------------------Call Event Process Functions Implementations----------------------------------
+
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Class7.h b/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Class7.h
index 08e3bcb..8a34c9f 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Class7.h
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Class7.h
@@ -1,82 +1,94 @@
-// --------------------------------------------------------
-// Code generated by Papyrus C
-// --------------------------------------------------------
-
-// This template is called by the main module file
-/*
- * File generated from the CCodegenTest::Class7 uml class
- * Generated by the Papyrus C Generator (CEA LIST)
- *
- */
-
-#ifndef CLASS7_H_
-#define CLASS7_H_
-
-// Explicit import of the class
-/*
- *-----------------------Import----------------------
- */
-#include <stdlib.h>
-// User imports
-/* "startUserCode" to add imports */
-/* "endUserCode" to add imports */
-/* include other files*/
-
-// header body
-/*
- *--------------Public Class Description-------------
- */
-// Structure
-/* Class Macro definition */
-#define Class7(OBJ) ((Class7*)OBJ)
-
-typedef struct Class7 Class7;
-
-struct Class7 {
-
- int externProp;
-
- int defaultProp;
-};
-
-// Constructor and destructor declarations
-/*
- *----Default constructor & destructor prototypes---
- */
-/**
- * Dynamic instantiation of a Class7 structure
- * @return Class7 instance pointer
- */
-Class7* Class7_create();
-
-/**
- * Dynamic destruction of a Class7 structure instantiation
- * @param Pointer to an instance of the Class7 structure
- * @return void
- */
-void Class7_destroy(Class7*);
-
-// Property initialisation declarations
-/*
- *------Default value initialization prototypes-----
- */
-/**
- * Default value initialization
- * @param Class7 structure instance pointer
- * @return void
- */
-void Class7_init(Class7* self);
-
-// Class methods declarations
-
-// ----------------------------------Public Global VariableDescription----------------------------------
-
-/*
- *--------Global Public Variable Declarations-------
- */
-// global variable declaration
-int staticProp;
-
-// ----------------------------------Global Public Functions----------------------------------
-
-#endif /*CLASS7_H_*/
+// --------------------------------------------------------
+// Code generated by Papyrus C
+// --------------------------------------------------------
+
+/*
+ * File generated from the CCodegenTest::Class7 uml class
+ * Generated by the Papyrus C Generator (CEA LIST)
+ *
+ */
+
+#ifndef CLASS7_H_
+#define CLASS7_H_
+
+/*
+ *---------------Includes and declares--------------
+ */
+// Derived includes
+// End of Derived includes
+// Derived declares
+// End of Derived declares
+// Include from Include stereotype (header)
+#define helloworld 3
+// End of Include stereotype (header)
+
+// Std headers
+#include <stdio.h>
+#include <stdlib.h>
+#include <stdint.h>
+// End of Std headers
+
+/*
+ *--------------Public Class Description-------------
+ */
+// Structure
+/* Class Macro definition */
+#define Class7(OBJ) ((Class7*)OBJ)
+
+typedef struct Class7 Class7;
+
+struct Class7 {
+
+ int externProp;
+
+ int defaultProp;
+
+};
+
+// Constructor and destructor declarations
+/*
+ *----Default constructor & destructor prototypes---
+ */
+/**
+ * Dynamic instantiation of a Class7 structure
+ * @return Class7 instance pointer
+ */
+Class7* Class7_create();
+
+/**
+ * Dynamic destruction of a Class7 structure instantiation
+ * @param Pointer to an instance of the Class7 structure
+ * @return void
+ */
+void Class7_destroy(Class7*);
+
+// Property initialisation declarations
+/*
+ *------Default value initialization prototypes-----
+ */
+/**
+ * Default value initialization
+ * @param Class7 structure instance pointer
+ * @return void
+ */
+void Class7_init(Class7 *self);
+
+// Class methods declarations
+
+// Class receptions declarations
+
+// ----------------------------------Public Global VariableDescription----------------------------------
+
+/*
+ *--------Global Public Variable Declarations-------
+ */
+// global variable declaration
+int staticProp;
+
+// ----------------------------------Global Public Functions----------------------------------
+
+// ----------------------------------Signal Event Process Functions Implementations--------------------------------
+
+// ----------------------------------Call Event Process Functions ----------------------------------
+
+#endif /*CLASS7_H_*/
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Package1/Class8.c b/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Package1/Class8.c
index 10b8480..0a18cf6 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Package1/Class8.c
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Package1/Class8.c
@@ -1,58 +1,64 @@
-// --------------------------------------------------------
-// Code generated by Papyrus C
-// --------------------------------------------------------
-
-// This template is called by the main module file
-/*
- * File generated from the CCodegenTest::Package1::Class8 uml class
- * Generated by the Papyrus C Generator (CEA LIST)
- *
- */
-
-// include of the self header
-/* include header file*/
-#include "Class8.h"
-
-// Generate import of class ---------------------------------------------
-/* "startUserCode" to add imports */
-/* "endUserCode" to add imports */
-
-// ----------------------------------Private and Protected Global VariableDescription----------------------------------
-// ----------------------------------Private and Protected Class Functions----------------------------------
-/*
- *------Private/Protected Function Declarations-----
- */
-
-// ----------------------------------Private and Protected Global Functions----------------------------------
-// ----------------------------------Implementation of the class constructor and destructor----------
-/*
- *--Default constructor & destructor implementations-
- */
-Class8* Class8_create() {
- Class8* self = (Class8*) malloc(sizeof(Class8));
- return self;
-}
-// default destructor
-void Class8_destroy(Class8* self) {
- free(self);
-}
-
-// ----------------------------------Initialisation function implementation----------------------------------
-/*
- *----Default value initialization implementation---
- */
-void Class8_init(Class8* self) {
- self->defaultIValue = 12;
-}
-
-// ----------------------------------Function Implementation----------------------------------
-/*
- *--------------Function Implementation-------------
- */
-int Class8_operation1(Class8 *self, int iVal1, int iVal2, char cVal1,
- char cVal2) {
-}
-
-void Class8_operation2(Class8 *self, int iVal1) {
-}
-
+// --------------------------------------------------------
+// Code generated by Papyrus C
+// --------------------------------------------------------
+
+/*
+ * File generated from the CCodegenTest::Package1::Class8 uml class
+ * Generated by the Papyrus C Generator (CEA LIST)
+ *
+ */
+
+// Include self header
+#include "Class8.h"
+// Derived includes
+
+// ----------------------------------Private and Protected Global VariableDescription----------------------------------
+
+// ----------------------------------Private and Protected Class Functions----------------------------------
+/*
+ *------Private/Protected Function Declarations-----
+ */
+
+// ----------------------------------Private and Protected Global Functions----------------------------------
+// ----------------------------------Implementation of the class constructor and destructor----------
+/*
+ *--Default constructor & destructor implementations-
+ */
+Class8* Class8_create() {
+ Class8 *self = (Class8*) malloc(sizeof(Class8));
+ Class8_init(self);
+ return self;
+}
+// default destructor
+void Class8_destroy(Class8 *self) {
+ free(self);
+}
+
+// ----------------------------------Initialization functions implementation----------------------------------
+
+void Class8_init(Class8 *self) {
+
+}
+
+// ----------------------------------Functions Implementation----------------------------------
+/**
+ *
+ */
+int Class8_operation1(Class8 *self, int iVal1, int iVal2, char cVal1,
+ char cVal2) {
+
+}
+
+/**
+ *
+ */
+void Class8_operation2(Class8 *self, int iVal1) {
+
+}
+
+// ----------------------------------Receptions Implementation----------------------------------
+
+// ----------------------------------Signal Event Process Functions Implementations--------------------------------
+
+// ----------------------------------Call Event Process Functions Implementations----------------------------------
+
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Package1/Class8.h b/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Package1/Class8.h
index c2205bd..10ca70e 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Package1/Class8.h
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Package1/Class8.h
@@ -1,82 +1,91 @@
-// --------------------------------------------------------
-// Code generated by Papyrus C
-// --------------------------------------------------------
-
-// This template is called by the main module file
-/*
- * File generated from the CCodegenTest::Package1::Class8 uml class
- * Generated by the Papyrus C Generator (CEA LIST)
- *
- */
-
-#ifndef CLASS8_H_
-#define CLASS8_H_
-
-// Explicit import of the class
-/*
- *-----------------------Import----------------------
- */
-#include <stdlib.h>
-// User imports
-/* "startUserCode" to add imports */
-/* "endUserCode" to add imports */
-/* include other files*/
-
-// header body
-/*
- *--------------Public Class Description-------------
- */
-// Structure
-/* Class Macro definition */
-#define Class8(OBJ) ((Class8*)OBJ)
-
-typedef struct Class8 Class8;
-
-struct Class8 {
-
- int defaultIValue;
-};
-
-// Constructor and destructor declarations
-/*
- *----Default constructor & destructor prototypes---
- */
-/**
- * Dynamic instantiation of a Class8 structure
- * @return Class8 instance pointer
- */
-Class8* Class8_create();
-
-/**
- * Dynamic destruction of a Class8 structure instantiation
- * @param Pointer to an instance of the Class8 structure
- * @return void
- */
-void Class8_destroy(Class8*);
-
-// Property initialisation declarations
-/*
- *------Default value initialization prototypes-----
- */
-/**
- * Default value initialization
- * @param Class8 structure instance pointer
- * @return void
- */
-void Class8_init(Class8* self);
-
-// Class methods declarations
-/*
- *---------------Function Declarations--------------
- */
-int
-Class8_operation1(Class8 *self, int iVal1, int iVal2, char cVal1, char cVal2);
-
-void
-Class8_operation2(Class8 *self, int iVal1);
-
-// ----------------------------------Public Global VariableDescription----------------------------------
-
-// ----------------------------------Global Public Functions----------------------------------
-
-#endif /*CLASS8_H_*/
+// --------------------------------------------------------
+// Code generated by Papyrus C
+// --------------------------------------------------------
+
+/*
+ * File generated from the CCodegenTest::Package1::Class8 uml class
+ * Generated by the Papyrus C Generator (CEA LIST)
+ *
+ */
+
+#ifndef CLASS8_H_
+#define CLASS8_H_
+
+/*
+ *---------------Includes and declares--------------
+ */
+// Derived includes
+// End of Derived includes
+// Derived declares
+// End of Derived declares
+
+// Std headers
+#include <stdio.h>
+#include <stdlib.h>
+#include <stdint.h>
+// End of Std headers
+
+/*
+ *--------------Public Class Description-------------
+ */
+// Structure
+/* Class Macro definition */
+#define Class8(OBJ) ((Class8*)OBJ)
+
+typedef struct Class8 Class8;
+
+struct Class8 {
+
+ int defaultIValue;
+
+};
+
+// Constructor and destructor declarations
+/*
+ *----Default constructor & destructor prototypes---
+ */
+/**
+ * Dynamic instantiation of a Class8 structure
+ * @return Class8 instance pointer
+ */
+Class8* Class8_create();
+
+/**
+ * Dynamic destruction of a Class8 structure instantiation
+ * @param Pointer to an instance of the Class8 structure
+ * @return void
+ */
+void Class8_destroy(Class8*);
+
+// Property initialisation declarations
+/*
+ *------Default value initialization prototypes-----
+ */
+/**
+ * Default value initialization
+ * @param Class8 structure instance pointer
+ * @return void
+ */
+void Class8_init(Class8 *self);
+
+// Class methods declarations
+/*
+ *---------------Function Declarations--------------
+ */
+int
+Class8_operation1(Class8 *self, int iVal1, int iVal2, char cVal1, char cVal2);
+
+void
+Class8_operation2(Class8 *self, int iVal1);
+
+// Class receptions declarations
+
+// ----------------------------------Public Global VariableDescription----------------------------------
+
+// ----------------------------------Global Public Functions----------------------------------
+
+// ----------------------------------Signal Event Process Functions Implementations--------------------------------
+
+// ----------------------------------Call Event Process Functions ----------------------------------
+
+#endif /*CLASS8_H_*/
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Package1/Class9.c b/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Package1/Class9.c
index 1901c65..55fff3a 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Package1/Class9.c
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Package1/Class9.c
@@ -1,63 +1,73 @@
-// --------------------------------------------------------
-// Code generated by Papyrus C
-// --------------------------------------------------------
-
-// This template is called by the main module file
-/*
- * File generated from the CCodegenTest::Package1::Class9 uml class
- * Generated by the Papyrus C Generator (CEA LIST)
- *
- */
-
-// include of the self header
-/* include header file*/
-#include "Class9.h"
-
-// Generate import of class ---------------------------------------------
-/* "startUserCode" to add imports */
-/* "endUserCode" to add imports */
-
-// ----------------------------------Private and Protected Global VariableDescription----------------------------------
-// ----------------------------------Private and Protected Class Functions----------------------------------
-/*
- *------Private/Protected Function Declarations-----
- */
-int
-Class9_externOperation(Class9 *self);
-
-// ----------------------------------Private and Protected Global Functions----------------------------------
-
-// ----------------------------------Implementation of the class constructor and destructor----------
-/*
- *--Default constructor & destructor implementations-
- */
-Class9* Class9_create() {
- Class9* self = (Class9*) malloc(sizeof(Class9));
- return self;
-}
-// default destructor
-void Class9_destroy(Class9* self) {
- free(self);
-}
-
-// ----------------------------------Initialisation function implementation----------------------------------
-/*
- *----Default value initialization implementation---
- */
-void Class9_init(Class9* self) {
- self->externAttribute = 3;
-}
-
-// ----------------------------------Function Implementation----------------------------------
-/*
- *--------------Function Implementation-------------
- */
-int Class9_volatileIntOperation(Class9 *self) {
-}
-
-int Class9_registerOperation(Class9 *self) {
-}
-
-int Class9_externOperation(Class9 *self) {
-}
-
+// --------------------------------------------------------
+// Code generated by Papyrus C
+// --------------------------------------------------------
+
+/*
+ * File generated from the CCodegenTest::Package1::Class9 uml class
+ * Generated by the Papyrus C Generator (CEA LIST)
+ *
+ */
+
+// Include self header
+#include "Class9.h"
+// Derived includes
+
+// ----------------------------------Private and Protected Global VariableDescription----------------------------------
+
+// ----------------------------------Private and Protected Class Functions----------------------------------
+/*
+ *------Private/Protected Function Declarations-----
+ */
+int
+Class9_externOperation(Class9 *self);
+
+// ----------------------------------Private and Protected Global Functions----------------------------------
+
+// ----------------------------------Implementation of the class constructor and destructor----------
+/*
+ *--Default constructor & destructor implementations-
+ */
+Class9* Class9_create() {
+ Class9 *self = (Class9*) malloc(sizeof(Class9));
+ Class9_init(self);
+ return self;
+}
+// default destructor
+void Class9_destroy(Class9 *self) {
+ free(self);
+}
+
+// ----------------------------------Initialization functions implementation----------------------------------
+
+void Class9_init(Class9 *self) {
+
+}
+
+// ----------------------------------Functions Implementation----------------------------------
+/**
+ *
+ */
+int Class9_volatileIntOperation(Class9 *self) {
+
+}
+
+/**
+ * Should not generate the 'register' keyword as it cannot be used in method signatures.
+ */
+int Class9_registerOperation(Class9 *self) {
+
+}
+
+/**
+ *
+ */
+int Class9_externOperation(Class9 *self) {
+
+}
+
+// ----------------------------------Receptions Implementation----------------------------------
+
+// ----------------------------------Signal Event Process Functions Implementations--------------------------------
+
+// ----------------------------------Call Event Process Functions Implementations----------------------------------
+
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Package1/Class9.h b/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Package1/Class9.h
index 99b2127..bcc7582 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Package1/Class9.h
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.tests/expectedResult/CCodegenTest/Package1/Class9.h
@@ -1,86 +1,101 @@
-// --------------------------------------------------------
-// Code generated by Papyrus C
-// --------------------------------------------------------
-
-// This template is called by the main module file
-/*
- * File generated from the CCodegenTest::Package1::Class9 uml class
- * Generated by the Papyrus C Generator (CEA LIST)
- *
- */
-
-#ifndef CLASS9_H_
-#define CLASS9_H_
-
-// Explicit import of the class
-/*
- *-----------------------Import----------------------
- */
-#include <stdlib.h>
-// User imports
-/* "startUserCode" to add imports */
-/* "endUserCode" to add imports */
-/* include other files*/
-
-// header body
-/*
- *--------------Public Class Description-------------
- */
-// Structure
-/* Class Macro definition */
-#define Class9(OBJ) ((Class9*)OBJ)
-
-typedef struct Class9 Class9;
-
-struct Class9 {
-
- int volatileAttribute;
-
- int registerAttribute;
-
- int externAttribute;
-};
-
-// Constructor and destructor declarations
-/*
- *----Default constructor & destructor prototypes---
- */
-/**
- * Dynamic instantiation of a Class9 structure
- * @return Class9 instance pointer
- */
-Class9* Class9_create();
-
-/**
- * Dynamic destruction of a Class9 structure instantiation
- * @param Pointer to an instance of the Class9 structure
- * @return void
- */
-void Class9_destroy(Class9*);
-
-// Property initialisation declarations
-/*
- *------Default value initialization prototypes-----
- */
-/**
- * Default value initialization
- * @param Class9 structure instance pointer
- * @return void
- */
-void Class9_init(Class9* self);
-
-// Class methods declarations
-/*
- *---------------Function Declarations--------------
- */
-int
-Class9_volatileIntOperation(Class9 *self);
-
-int
-Class9_registerOperation(Class9 *self);
-
-// ----------------------------------Public Global VariableDescription----------------------------------
-
-// ----------------------------------Global Public Functions----------------------------------
-
-#endif /*CLASS9_H_*/
+// --------------------------------------------------------
+// Code generated by Papyrus C
+// --------------------------------------------------------
+
+/*
+ * File generated from the CCodegenTest::Package1::Class9 uml class
+ * Generated by the Papyrus C Generator (CEA LIST)
+ *
+ */
+
+#ifndef CLASS9_H_
+#define CLASS9_H_
+
+/*
+ *---------------Includes and declares--------------
+ */
+// Derived includes
+// End of Derived includes
+// Derived declares
+// End of Derived declares
+
+// Std headers
+#include <stdio.h>
+#include <stdlib.h>
+#include <stdint.h>
+// End of Std headers
+
+/*
+ *--------------Public Class Description-------------
+ */
+// Structure
+/* Class Macro definition */
+#define Class9(OBJ) ((Class9*)OBJ)
+
+typedef struct Class9 Class9;
+
+struct Class9 {
+
+ int volatileAttribute;
+ /**
+ *
+ */
+
+ int registerAttribute;
+
+ int externAttribute;
+
+};
+
+// Constructor and destructor declarations
+/*
+ *----Default constructor & destructor prototypes---
+ */
+/**
+ * Dynamic instantiation of a Class9 structure
+ * @return Class9 instance pointer
+ */
+Class9* Class9_create();
+
+/**
+ * Dynamic destruction of a Class9 structure instantiation
+ * @param Pointer to an instance of the Class9 structure
+ * @return void
+ */
+void Class9_destroy(Class9*);
+
+// Property initialisation declarations
+/*
+ *------Default value initialization prototypes-----
+ */
+/**
+ * Default value initialization
+ * @param Class9 structure instance pointer
+ * @return void
+ */
+void Class9_init(Class9 *self);
+
+// Class methods declarations
+/*
+ *---------------Function Declarations--------------
+ */
+int
+Class9_volatileIntOperation(Class9 *self);
+
+/**
+ *
+ */
+int
+Class9_registerOperation(Class9 *self);
+
+// Class receptions declarations
+
+// ----------------------------------Public Global VariableDescription----------------------------------
+
+// ----------------------------------Global Public Functions----------------------------------
+
+// ----------------------------------Signal Event Process Functions Implementations--------------------------------
+
+// ----------------------------------Call Event Process Functions ----------------------------------
+
+#endif /*CLASS9_H_*/
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.tests/resources/CCodegenTest.notation b/languages/c/org.eclipse.papyrus.designer.languages.c.tests/resources/CCodegenTest.notation
index 5c7f026..589df20 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.tests/resources/CCodegenTest.notation
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.tests/resources/CCodegenTest.notation
@@ -1,408 +1,441 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<notation:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.2/notation" xmlns:style="http://www.eclipse.org/papyrus/infra/viewpoints/policy/style" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML" xmi:id="_t4itkMyYEeOZRP5VM5W4JQ" type="PapyrusUMLClassDiagram" name="NewDiagram" measurementUnit="Pixel">
- <children xmi:type="notation:Shape" xmi:id="_iERxIMyfEeOcyP6DQZu_Og" type="Class_Shape">
- <children xmi:type="notation:DecorationNode" xmi:id="_iERxIsyfEeOcyP6DQZu_Og" type="Class_NameLabel"/>
- <children xmi:type="notation:BasicCompartment" xmi:id="_iERxI8yfEeOcyP6DQZu_Og" type="Class_AttributeCompartment">
- <styles xmi:type="notation:TitleStyle" xmi:id="_iERxJMyfEeOcyP6DQZu_Og"/>
- <styles xmi:type="notation:SortingStyle" xmi:id="_iERxJcyfEeOcyP6DQZu_Og"/>
- <styles xmi:type="notation:FilteringStyle" xmi:id="_iERxJsyfEeOcyP6DQZu_Og"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_iERxJ8yfEeOcyP6DQZu_Og"/>
- </children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_iERxKMyfEeOcyP6DQZu_Og" type="Class_OperationCompartment">
- <children xmi:type="notation:Shape" xmi:id="_UI9c0PAvEeWAsMbO3qivvw" type="Operation_ClassOperationLabel">
- <element xmi:type="uml:Operation" href="CCodegenTest.uml#_b2v08CraEeOncLSXAkfRBA"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_UI9c0fAvEeWAsMbO3qivvw"/>
- </children>
- <children xmi:type="notation:Shape" xmi:id="_UI-q8PAvEeWAsMbO3qivvw" type="Operation_ClassOperationLabel">
- <element xmi:type="uml:Operation" href="CCodegenTest.uml#_fvQ-oCraEeOncLSXAkfRBA"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_UI-q8fAvEeWAsMbO3qivvw"/>
- </children>
- <styles xmi:type="notation:TitleStyle" xmi:id="_iERxKcyfEeOcyP6DQZu_Og"/>
- <styles xmi:type="notation:SortingStyle" xmi:id="_iERxKsyfEeOcyP6DQZu_Og"/>
- <styles xmi:type="notation:FilteringStyle" xmi:id="_iERxK8yfEeOcyP6DQZu_Og"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_iERxLMyfEeOcyP6DQZu_Og"/>
- </children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_iESYMMyfEeOcyP6DQZu_Og" type="Class_NestedClassifierCompartment">
- <styles xmi:type="notation:TitleStyle" xmi:id="_iESYMcyfEeOcyP6DQZu_Og"/>
- <styles xmi:type="notation:SortingStyle" xmi:id="_iESYMsyfEeOcyP6DQZu_Og"/>
- <styles xmi:type="notation:FilteringStyle" xmi:id="_iESYM8yfEeOcyP6DQZu_Og"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_iESYNMyfEeOcyP6DQZu_Og"/>
- </children>
- <children xmi:type="notation:DecorationNode" xmi:id="_N8LJkDBEEeWm39aMVOrpAg" type="Class_FloatingNameLabel">
- <layoutConstraint xmi:type="notation:Location" xmi:id="_N8LJkTBEEeWm39aMVOrpAg" y="5"/>
- </children>
- <element xmi:type="uml:Class" href="CCodegenTest.uml#_x6ArECrKEeOncLSXAkfRBA"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_iERxIcyfEeOcyP6DQZu_Og" x="20" y="20"/>
- </children>
- <children xmi:type="notation:Shape" xmi:id="_kg9O8MyfEeOcyP6DQZu_Og" type="Class_Shape">
- <children xmi:type="notation:DecorationNode" xmi:id="_kg92AMyfEeOcyP6DQZu_Og" type="Class_NameLabel"/>
- <children xmi:type="notation:BasicCompartment" xmi:id="_kg92AcyfEeOcyP6DQZu_Og" type="Class_AttributeCompartment">
- <styles xmi:type="notation:TitleStyle" xmi:id="_kg92AsyfEeOcyP6DQZu_Og"/>
- <styles xmi:type="notation:SortingStyle" xmi:id="_kg92A8yfEeOcyP6DQZu_Og"/>
- <styles xmi:type="notation:FilteringStyle" xmi:id="_kg92BMyfEeOcyP6DQZu_Og"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kg92BcyfEeOcyP6DQZu_Og"/>
- </children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_kg92BsyfEeOcyP6DQZu_Og" type="Class_OperationCompartment">
- <styles xmi:type="notation:TitleStyle" xmi:id="_kg92B8yfEeOcyP6DQZu_Og"/>
- <styles xmi:type="notation:SortingStyle" xmi:id="_kg92CMyfEeOcyP6DQZu_Og"/>
- <styles xmi:type="notation:FilteringStyle" xmi:id="_kg92CcyfEeOcyP6DQZu_Og"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kg92CsyfEeOcyP6DQZu_Og"/>
- </children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_kg92C8yfEeOcyP6DQZu_Og" type="Class_NestedClassifierCompartment">
- <styles xmi:type="notation:TitleStyle" xmi:id="_kg92DMyfEeOcyP6DQZu_Og"/>
- <styles xmi:type="notation:SortingStyle" xmi:id="_kg92DcyfEeOcyP6DQZu_Og"/>
- <styles xmi:type="notation:FilteringStyle" xmi:id="_kg92DsyfEeOcyP6DQZu_Og"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kg92D8yfEeOcyP6DQZu_Og"/>
- </children>
- <children xmi:type="notation:DecorationNode" xmi:id="_N8LwoDBEEeWm39aMVOrpAg" type="Class_FloatingNameLabel">
- <layoutConstraint xmi:type="notation:Location" xmi:id="_N8LwoTBEEeWm39aMVOrpAg" y="5"/>
- </children>
- <element xmi:type="uml:Class" href="CCodegenTest.uml#_0E-t0CrKEeOncLSXAkfRBA"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kg9O8cyfEeOcyP6DQZu_Og" x="485" y="22"/>
- </children>
- <children xmi:type="notation:Shape" xmi:id="_nJzggMyfEeOcyP6DQZu_Og" type="Class_Shape">
- <children xmi:type="notation:DecorationNode" xmi:id="_nJ0uoMyfEeOcyP6DQZu_Og" type="Class_NameLabel"/>
- <children xmi:type="notation:BasicCompartment" xmi:id="_nJ0uocyfEeOcyP6DQZu_Og" type="Class_AttributeCompartment">
- <styles xmi:type="notation:TitleStyle" xmi:id="_nJ0uosyfEeOcyP6DQZu_Og"/>
- <styles xmi:type="notation:SortingStyle" xmi:id="_nJ0uo8yfEeOcyP6DQZu_Og"/>
- <styles xmi:type="notation:FilteringStyle" xmi:id="_nJ0upMyfEeOcyP6DQZu_Og"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_nJ0upcyfEeOcyP6DQZu_Og"/>
- </children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_nJ0upsyfEeOcyP6DQZu_Og" type="Class_OperationCompartment">
- <styles xmi:type="notation:TitleStyle" xmi:id="_nJ0up8yfEeOcyP6DQZu_Og"/>
- <styles xmi:type="notation:SortingStyle" xmi:id="_nJ0uqMyfEeOcyP6DQZu_Og"/>
- <styles xmi:type="notation:FilteringStyle" xmi:id="_nJ0uqcyfEeOcyP6DQZu_Og"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_nJ1VsMyfEeOcyP6DQZu_Og"/>
- </children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_nJ1VscyfEeOcyP6DQZu_Og" type="Class_NestedClassifierCompartment">
- <styles xmi:type="notation:TitleStyle" xmi:id="_nJ1VssyfEeOcyP6DQZu_Og"/>
- <styles xmi:type="notation:SortingStyle" xmi:id="_nJ1Vs8yfEeOcyP6DQZu_Og"/>
- <styles xmi:type="notation:FilteringStyle" xmi:id="_nJ1VtMyfEeOcyP6DQZu_Og"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_nJ1VtcyfEeOcyP6DQZu_Og"/>
- </children>
- <children xmi:type="notation:DecorationNode" xmi:id="_N8LwojBEEeWm39aMVOrpAg" type="Class_FloatingNameLabel">
- <layoutConstraint xmi:type="notation:Location" xmi:id="_N8LwozBEEeWm39aMVOrpAg" y="5"/>
- </children>
- <element xmi:type="uml:Class" href="CCodegenTest.uml#_29UM4CrKEeOncLSXAkfRBA"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_nJzggcyfEeOcyP6DQZu_Og" x="220" y="160"/>
- </children>
- <children xmi:type="notation:Shape" xmi:id="_oC650MyfEeOcyP6DQZu_Og" type="Class_Shape">
- <children xmi:type="notation:DecorationNode" xmi:id="_oC8H8MyfEeOcyP6DQZu_Og" type="Class_NameLabel"/>
- <children xmi:type="notation:BasicCompartment" xmi:id="_oC8H8cyfEeOcyP6DQZu_Og" type="Class_AttributeCompartment">
- <styles xmi:type="notation:TitleStyle" xmi:id="_oC8H8syfEeOcyP6DQZu_Og"/>
- <styles xmi:type="notation:SortingStyle" xmi:id="_oC8H88yfEeOcyP6DQZu_Og"/>
- <styles xmi:type="notation:FilteringStyle" xmi:id="_oC8H9MyfEeOcyP6DQZu_Og"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_oC8H9cyfEeOcyP6DQZu_Og"/>
- </children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_oC8H9syfEeOcyP6DQZu_Og" type="Class_OperationCompartment">
- <styles xmi:type="notation:TitleStyle" xmi:id="_oC8H98yfEeOcyP6DQZu_Og"/>
- <styles xmi:type="notation:SortingStyle" xmi:id="_oC8H-MyfEeOcyP6DQZu_Og"/>
- <styles xmi:type="notation:FilteringStyle" xmi:id="_oC8H-cyfEeOcyP6DQZu_Og"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_oC8H-syfEeOcyP6DQZu_Og"/>
- </children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_oC8H-8yfEeOcyP6DQZu_Og" type="Class_NestedClassifierCompartment">
- <styles xmi:type="notation:TitleStyle" xmi:id="_oC8H_MyfEeOcyP6DQZu_Og"/>
- <styles xmi:type="notation:SortingStyle" xmi:id="_oC8H_cyfEeOcyP6DQZu_Og"/>
- <styles xmi:type="notation:FilteringStyle" xmi:id="_oC8H_syfEeOcyP6DQZu_Og"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_oC8H_8yfEeOcyP6DQZu_Og"/>
- </children>
- <children xmi:type="notation:DecorationNode" xmi:id="_N8LwpDBEEeWm39aMVOrpAg" type="Class_FloatingNameLabel">
- <layoutConstraint xmi:type="notation:Location" xmi:id="_N8LwpTBEEeWm39aMVOrpAg" y="5"/>
- </children>
- <element xmi:type="uml:Class" href="CCodegenTest.uml#_-j3HgCrKEeOncLSXAkfRBA"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_oC7g4MyfEeOcyP6DQZu_Og" x="640" y="34"/>
- </children>
- <children xmi:type="notation:Shape" xmi:id="_o8Ad8MyfEeOcyP6DQZu_Og" type="Class_Shape">
- <children xmi:type="notation:DecorationNode" xmi:id="_o8BFAMyfEeOcyP6DQZu_Og" type="Class_NameLabel"/>
- <children xmi:type="notation:BasicCompartment" xmi:id="_o8BFAcyfEeOcyP6DQZu_Og" type="Class_AttributeCompartment">
- <styles xmi:type="notation:TitleStyle" xmi:id="_o8BFAsyfEeOcyP6DQZu_Og"/>
- <styles xmi:type="notation:SortingStyle" xmi:id="_o8BFA8yfEeOcyP6DQZu_Og"/>
- <styles xmi:type="notation:FilteringStyle" xmi:id="_o8BFBMyfEeOcyP6DQZu_Og"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_o8BFBcyfEeOcyP6DQZu_Og"/>
- </children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_o8BFBsyfEeOcyP6DQZu_Og" type="Class_OperationCompartment">
- <styles xmi:type="notation:TitleStyle" xmi:id="_o8BFB8yfEeOcyP6DQZu_Og"/>
- <styles xmi:type="notation:SortingStyle" xmi:id="_o8BFCMyfEeOcyP6DQZu_Og"/>
- <styles xmi:type="notation:FilteringStyle" xmi:id="_o8BFCcyfEeOcyP6DQZu_Og"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_o8BFCsyfEeOcyP6DQZu_Og"/>
- </children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_o8BFC8yfEeOcyP6DQZu_Og" type="Class_NestedClassifierCompartment">
- <styles xmi:type="notation:TitleStyle" xmi:id="_o8BFDMyfEeOcyP6DQZu_Og"/>
- <styles xmi:type="notation:SortingStyle" xmi:id="_o8BFDcyfEeOcyP6DQZu_Og"/>
- <styles xmi:type="notation:FilteringStyle" xmi:id="_o8BFDsyfEeOcyP6DQZu_Og"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_o8BFD8yfEeOcyP6DQZu_Og"/>
- </children>
- <children xmi:type="notation:DecorationNode" xmi:id="_N8LwpjBEEeWm39aMVOrpAg" type="Class_FloatingNameLabel">
- <layoutConstraint xmi:type="notation:Location" xmi:id="_N8LwpzBEEeWm39aMVOrpAg" y="5"/>
- </children>
- <element xmi:type="uml:Class" href="CCodegenTest.uml#_hTMV0CumEeOcwILjsIdkdw"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_o8Ad8cyfEeOcyP6DQZu_Og" x="799" y="36"/>
- </children>
- <children xmi:type="notation:Shape" xmi:id="_qNfT8MyfEeOcyP6DQZu_Og" type="Class_Shape">
- <children xmi:type="notation:DecorationNode" xmi:id="_qNf7AMyfEeOcyP6DQZu_Og" type="Class_NameLabel"/>
- <children xmi:type="notation:BasicCompartment" xmi:id="_qNf7AcyfEeOcyP6DQZu_Og" type="Class_AttributeCompartment">
- <styles xmi:type="notation:TitleStyle" xmi:id="_qNf7AsyfEeOcyP6DQZu_Og"/>
- <styles xmi:type="notation:SortingStyle" xmi:id="_qNf7A8yfEeOcyP6DQZu_Og"/>
- <styles xmi:type="notation:FilteringStyle" xmi:id="_qNf7BMyfEeOcyP6DQZu_Og"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_qNf7BcyfEeOcyP6DQZu_Og"/>
- </children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_qNf7BsyfEeOcyP6DQZu_Og" type="Class_OperationCompartment">
- <styles xmi:type="notation:TitleStyle" xmi:id="_qNf7B8yfEeOcyP6DQZu_Og"/>
- <styles xmi:type="notation:SortingStyle" xmi:id="_qNf7CMyfEeOcyP6DQZu_Og"/>
- <styles xmi:type="notation:FilteringStyle" xmi:id="_qNf7CcyfEeOcyP6DQZu_Og"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_qNf7CsyfEeOcyP6DQZu_Og"/>
- </children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_qNf7C8yfEeOcyP6DQZu_Og" type="Class_NestedClassifierCompartment">
- <styles xmi:type="notation:TitleStyle" xmi:id="_qNf7DMyfEeOcyP6DQZu_Og"/>
- <styles xmi:type="notation:SortingStyle" xmi:id="_qNf7DcyfEeOcyP6DQZu_Og"/>
- <styles xmi:type="notation:FilteringStyle" xmi:id="_qNf7DsyfEeOcyP6DQZu_Og"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_qNf7D8yfEeOcyP6DQZu_Og"/>
- </children>
- <children xmi:type="notation:DecorationNode" xmi:id="_N8LwqDBEEeWm39aMVOrpAg" type="Class_FloatingNameLabel">
- <layoutConstraint xmi:type="notation:Location" xmi:id="_N8LwqTBEEeWm39aMVOrpAg" y="5"/>
- </children>
- <element xmi:type="uml:Class" href="CCodegenTest.uml#_OJ7A0CxUEeOcwILjsIdkdw"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_qNfT8cyfEeOcyP6DQZu_Og" x="20" y="160"/>
- </children>
- <children xmi:type="notation:Shape" xmi:id="_sl4usMyfEeOcyP6DQZu_Og" type="Class_Shape">
- <children xmi:type="notation:DecorationNode" xmi:id="_sl4ussyfEeOcyP6DQZu_Og" type="Class_NameLabel"/>
- <children xmi:type="notation:BasicCompartment" xmi:id="_sl4us8yfEeOcyP6DQZu_Og" type="Class_AttributeCompartment">
- <styles xmi:type="notation:TitleStyle" xmi:id="_sl4utMyfEeOcyP6DQZu_Og"/>
- <styles xmi:type="notation:SortingStyle" xmi:id="_sl4utcyfEeOcyP6DQZu_Og"/>
- <styles xmi:type="notation:FilteringStyle" xmi:id="_sl4utsyfEeOcyP6DQZu_Og"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_sl4ut8yfEeOcyP6DQZu_Og"/>
- </children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_sl4uuMyfEeOcyP6DQZu_Og" type="Class_OperationCompartment">
- <styles xmi:type="notation:TitleStyle" xmi:id="_sl4uucyfEeOcyP6DQZu_Og"/>
- <styles xmi:type="notation:SortingStyle" xmi:id="_sl4uusyfEeOcyP6DQZu_Og"/>
- <styles xmi:type="notation:FilteringStyle" xmi:id="_sl4uu8yfEeOcyP6DQZu_Og"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_sl4uvMyfEeOcyP6DQZu_Og"/>
- </children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_sl5VwMyfEeOcyP6DQZu_Og" type="Class_NestedClassifierCompartment">
- <styles xmi:type="notation:TitleStyle" xmi:id="_sl5VwcyfEeOcyP6DQZu_Og"/>
- <styles xmi:type="notation:SortingStyle" xmi:id="_sl5VwsyfEeOcyP6DQZu_Og"/>
- <styles xmi:type="notation:FilteringStyle" xmi:id="_sl5Vw8yfEeOcyP6DQZu_Og"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_sl5VxMyfEeOcyP6DQZu_Og"/>
- </children>
- <children xmi:type="notation:DecorationNode" xmi:id="_N8LwqjBEEeWm39aMVOrpAg" type="Class_FloatingNameLabel">
- <layoutConstraint xmi:type="notation:Location" xmi:id="_N8LwqzBEEeWm39aMVOrpAg" y="5"/>
- </children>
- <element xmi:type="uml:Class" href="CCodegenTest.uml#_ZqD3YCz9EeOcwILjsIdkdw"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_sl4uscyfEeOcyP6DQZu_Og" x="360" y="160"/>
- </children>
- <children xmi:type="notation:Shape" xmi:id="_txmT4MyfEeOcyP6DQZu_Og" type="Class_Shape">
- <children xmi:type="notation:DecorationNode" xmi:id="_txm68MyfEeOcyP6DQZu_Og" type="Class_NameLabel"/>
- <children xmi:type="notation:BasicCompartment" xmi:id="_txm68cyfEeOcyP6DQZu_Og" type="Class_AttributeCompartment">
- <styles xmi:type="notation:TitleStyle" xmi:id="_txm68syfEeOcyP6DQZu_Og"/>
- <styles xmi:type="notation:SortingStyle" xmi:id="_txm688yfEeOcyP6DQZu_Og"/>
- <styles xmi:type="notation:FilteringStyle" xmi:id="_txm69MyfEeOcyP6DQZu_Og"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_txm69cyfEeOcyP6DQZu_Og"/>
- </children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_txm69syfEeOcyP6DQZu_Og" type="Class_OperationCompartment">
- <styles xmi:type="notation:TitleStyle" xmi:id="_txm698yfEeOcyP6DQZu_Og"/>
- <styles xmi:type="notation:SortingStyle" xmi:id="_txm6-MyfEeOcyP6DQZu_Og"/>
- <styles xmi:type="notation:FilteringStyle" xmi:id="_txm6-cyfEeOcyP6DQZu_Og"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_txm6-syfEeOcyP6DQZu_Og"/>
- </children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_txm6-8yfEeOcyP6DQZu_Og" type="Class_NestedClassifierCompartment">
- <styles xmi:type="notation:TitleStyle" xmi:id="_txm6_MyfEeOcyP6DQZu_Og"/>
- <styles xmi:type="notation:SortingStyle" xmi:id="_txm6_cyfEeOcyP6DQZu_Og"/>
- <styles xmi:type="notation:FilteringStyle" xmi:id="_txm6_syfEeOcyP6DQZu_Og"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_txm6_8yfEeOcyP6DQZu_Og"/>
- </children>
- <children xmi:type="notation:DecorationNode" xmi:id="_N8LwrDBEEeWm39aMVOrpAg" type="Class_FloatingNameLabel">
- <layoutConstraint xmi:type="notation:Location" xmi:id="_N8LwrTBEEeWm39aMVOrpAg" y="5"/>
- </children>
- <element xmi:type="uml:Class" href="CCodegenTest.uml#_qS9iYDEmEeOSfbt-FmCdoQ"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_txmT4cyfEeOcyP6DQZu_Og" x="500" y="160"/>
- </children>
- <children xmi:type="notation:Shape" xmi:id="_uTijUMyfEeOcyP6DQZu_Og" type="Class_Shape">
- <children xmi:type="notation:DecorationNode" xmi:id="_uTijUsyfEeOcyP6DQZu_Og" type="Class_NameLabel"/>
- <children xmi:type="notation:BasicCompartment" xmi:id="_uTijU8yfEeOcyP6DQZu_Og" type="Class_AttributeCompartment">
- <styles xmi:type="notation:TitleStyle" xmi:id="_uTijVMyfEeOcyP6DQZu_Og"/>
- <styles xmi:type="notation:SortingStyle" xmi:id="_uTijVcyfEeOcyP6DQZu_Og"/>
- <styles xmi:type="notation:FilteringStyle" xmi:id="_uTijVsyfEeOcyP6DQZu_Og"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_uTijV8yfEeOcyP6DQZu_Og"/>
- </children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_uTijWMyfEeOcyP6DQZu_Og" type="Class_OperationCompartment">
- <styles xmi:type="notation:TitleStyle" xmi:id="_uTijWcyfEeOcyP6DQZu_Og"/>
- <styles xmi:type="notation:SortingStyle" xmi:id="_uTjKYMyfEeOcyP6DQZu_Og"/>
- <styles xmi:type="notation:FilteringStyle" xmi:id="_uTjKYcyfEeOcyP6DQZu_Og"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_uTjKYsyfEeOcyP6DQZu_Og"/>
- </children>
- <children xmi:type="notation:BasicCompartment" xmi:id="_uTjKY8yfEeOcyP6DQZu_Og" type="Class_NestedClassifierCompartment">
- <styles xmi:type="notation:TitleStyle" xmi:id="_uTjKZMyfEeOcyP6DQZu_Og"/>
- <styles xmi:type="notation:SortingStyle" xmi:id="_uTjKZcyfEeOcyP6DQZu_Og"/>
- <styles xmi:type="notation:FilteringStyle" xmi:id="_uTjKZsyfEeOcyP6DQZu_Og"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_uTjKZ8yfEeOcyP6DQZu_Og"/>
- </children>
- <children xmi:type="notation:DecorationNode" xmi:id="_N8LwrjBEEeWm39aMVOrpAg" type="Class_FloatingNameLabel">
- <layoutConstraint xmi:type="notation:Location" xmi:id="_N8LwrzBEEeWm39aMVOrpAg" y="5"/>
- </children>
- <element xmi:type="uml:Class" href="CCodegenTest.uml#_jcK5MDG0EeOOEc5pE2t6oQ"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_uTijUcyfEeOcyP6DQZu_Og" x="640" y="160"/>
- </children>
- <children xmi:type="notation:Shape" xmi:id="_t5cpgMy5EeOtSda2xb0Kjw" type="Package_Shape">
- <children xmi:type="notation:DecorationNode" xmi:id="_t5xZoMy5EeOtSda2xb0Kjw" type="Package_NameLabel"/>
- <children xmi:type="notation:BasicCompartment" xmi:id="_NF0TMDbyEeejPb6HKM5TOA" type="Package_PackagedElementCompartment">
- <styles xmi:type="notation:TitleStyle" xmi:id="_t5yAscy5EeOtSda2xb0Kjw"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_t5yAssy5EeOtSda2xb0Kjw"/>
- </children>
- <element xmi:type="uml:Package" href="CCodegenTest.uml#_nZ5DgDEmEeOSfbt-FmCdoQ"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_t5cpgcy5EeOtSda2xb0Kjw" x="20" y="300"/>
- </children>
- <children xmi:type="notation:Shape" xmi:id="_Wu-RgMy6EeOtSda2xb0Kjw" type="Model_Shape">
- <children xmi:type="notation:DecorationNode" xmi:id="_WvAtwMy6EeOtSda2xb0Kjw" type="Model_NameLabel"/>
- <children xmi:type="notation:BasicCompartment" xmi:id="_NF-EMDbyEeejPb6HKM5TOA" type="Model_PackagedElementCompartment">
- <styles xmi:type="notation:TitleStyle" xmi:id="_WvCi8cy6EeOtSda2xb0Kjw"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_WvCi8sy6EeOtSda2xb0Kjw"/>
- </children>
- <element xmi:type="uml:Model" href="CCodegenTest.uml#_1_ToYCoNEeOncLSXAkfRBA"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Wu-Rgcy6EeOtSda2xb0Kjw" x="280" y="300"/>
- </children>
- <children xmi:type="notation:Shape" xmi:id="_OBaO4DBEEeWm39aMVOrpAg" type="StereotypeComment">
- <styles xmi:type="notation:TitleStyle" xmi:id="_OBaO4TBEEeWm39aMVOrpAg" showTitle="true"/>
- <styles xmi:type="notation:EObjectValueStyle" xmi:id="_OBa18DBEEeWm39aMVOrpAg" name="BASE_ELEMENT">
- <eObjectValue xmi:type="uml:Class" href="CCodegenTest.uml#_0E-t0CrKEeOncLSXAkfRBA"/>
- </styles>
- <element xsi:nil="true"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OBaO4jBEEeWm39aMVOrpAg" x="365" y="22"/>
- </children>
- <children xmi:type="notation:Shape" xmi:id="_OCfM8DBEEeWm39aMVOrpAg" type="StereotypeComment">
- <styles xmi:type="notation:TitleStyle" xmi:id="_OCfM8TBEEeWm39aMVOrpAg" showTitle="true"/>
- <styles xmi:type="notation:EObjectValueStyle" xmi:id="_OCfM8zBEEeWm39aMVOrpAg" name="BASE_ELEMENT">
- <eObjectValue xmi:type="uml:Association" href="CCodegenTest.uml#_YZOWUCxoEeOcwILjsIdkdw"/>
- </styles>
- <element xsi:nil="true"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OCfM8jBEEeWm39aMVOrpAg" x="221" y="39"/>
- </children>
- <children xmi:type="notation:Shape" xmi:id="_ODD0sDBEEeWm39aMVOrpAg" type="StereotypeComment">
- <styles xmi:type="notation:TitleStyle" xmi:id="_ODD0sTBEEeWm39aMVOrpAg" showTitle="true"/>
- <styles xmi:type="notation:EObjectValueStyle" xmi:id="_ODD0szBEEeWm39aMVOrpAg" name="BASE_ELEMENT">
- <eObjectValue xmi:type="uml:Class" href="CCodegenTest.uml#_ZqD3YCz9EeOcwILjsIdkdw"/>
- </styles>
- <element xsi:nil="true"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ODD0sjBEEeWm39aMVOrpAg" x="505" y="143"/>
- </children>
- <children xmi:type="notation:Shape" xmi:id="_ulY2-jcWEeejPb6HKM5TOA" type="StereotypeComment">
- <styles xmi:type="notation:TitleStyle" xmi:id="_ulY2-zcWEeejPb6HKM5TOA"/>
- <styles xmi:type="notation:EObjectValueStyle" xmi:id="_ulY2_TcWEeejPb6HKM5TOA" name="BASE_ELEMENT">
- <eObjectValue xmi:type="uml:Class" href="CCodegenTest.uml#_29UM4CrKEeOncLSXAkfRBA"/>
- </styles>
- <element xsi:nil="true"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ulY2_DcWEeejPb6HKM5TOA" x="420" y="160"/>
- </children>
- <children xmi:type="notation:Shape" xmi:id="_A-t-vTcXEeejPb6HKM5TOA" type="StereotypeComment">
- <styles xmi:type="notation:TitleStyle" xmi:id="_A-t-vjcXEeejPb6HKM5TOA"/>
- <styles xmi:type="notation:EObjectValueStyle" xmi:id="_A-t-wDcXEeejPb6HKM5TOA" name="BASE_ELEMENT">
- <eObjectValue xmi:type="uml:Class" href="CCodegenTest.uml#_-j3HgCrKEeOncLSXAkfRBA"/>
- </styles>
- <element xsi:nil="true"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_A-t-vzcXEeejPb6HKM5TOA" x="840" y="34"/>
- </children>
- <children xmi:type="notation:Shape" xmi:id="_FmTN0jcXEeejPb6HKM5TOA" type="StereotypeComment">
- <styles xmi:type="notation:TitleStyle" xmi:id="_FmTN0zcXEeejPb6HKM5TOA"/>
- <styles xmi:type="notation:EObjectValueStyle" xmi:id="_FmTN1TcXEeejPb6HKM5TOA" name="BASE_ELEMENT">
- <eObjectValue xmi:type="uml:Class" href="CCodegenTest.uml#_OJ7A0CxUEeOcwILjsIdkdw"/>
- </styles>
- <element xsi:nil="true"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_FmTN1DcXEeejPb6HKM5TOA" x="220" y="160"/>
- </children>
- <styles xmi:type="notation:DiagramStyle" xmi:id="_t4itkcyYEeOZRP5VM5W4JQ"/>
- <styles xmi:type="style:PapyrusViewStyle" xmi:id="_t4itksyYEeOZRP5VM5W4JQ">
- <owner xmi:type="uml:Model" href="CCodegenTest.uml#_t4hfcMyYEeOZRP5VM5W4JQ"/>
- </styles>
- <styles xmi:type="notation:StringValueStyle" xmi:id="_N8MXsDBEEeWm39aMVOrpAg" name="diagram_compatibility_version" stringValue="1.2.0"/>
- <element xmi:type="uml:Model" href="CCodegenTest.uml#_t4hfcMyYEeOZRP5VM5W4JQ"/>
- <edges xmi:type="notation:Connector" xmi:id="_rssc4MyfEeOcyP6DQZu_Og" type="Association_Edge" source="_qNfT8MyfEeOcyP6DQZu_Og" target="_nJzggMyfEeOcyP6DQZu_Og">
- <children xmi:type="notation:DecorationNode" xmi:id="_rstD8MyfEeOcyP6DQZu_Og" visible="false" type="Association_StereotypeLabel">
- <styles xmi:type="notation:BooleanValueStyle" xmi:id="_Ecye4PAvEeWAsMbO3qivvw" name="IS_UPDATED_POSITION" booleanValue="true"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_rstD8cyfEeOcyP6DQZu_Og" x="-31" y="-28"/>
- </children>
- <children xmi:type="notation:DecorationNode" xmi:id="_rstrAMyfEeOcyP6DQZu_Og" visible="false" type="Association_NameLabel">
- <styles xmi:type="notation:BooleanValueStyle" xmi:id="_EdIdIPAvEeWAsMbO3qivvw" name="IS_UPDATED_POSITION" booleanValue="true"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_rstrAcyfEeOcyP6DQZu_Og" x="1" y="19"/>
- </children>
- <children xmi:type="notation:DecorationNode" xmi:id="_rstrAsyfEeOcyP6DQZu_Og" visible="false" type="Association_TargetRoleLabel">
- <styles xmi:type="notation:BooleanValueStyle" xmi:id="_EdcmMPAvEeWAsMbO3qivvw" name="IS_UPDATED_POSITION" booleanValue="true"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_rstrA8yfEeOcyP6DQZu_Og" x="45" y="-20"/>
- </children>
- <children xmi:type="notation:DecorationNode" xmi:id="_rsuSEMyfEeOcyP6DQZu_Og" visible="false" type="Association_SourceRoleLabel">
- <styles xmi:type="notation:BooleanValueStyle" xmi:id="_EduTAPAvEeWAsMbO3qivvw" name="IS_UPDATED_POSITION" booleanValue="true"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_rsuSEcyfEeOcyP6DQZu_Og" x="-105" y="-50"/>
- </children>
- <children xmi:type="notation:DecorationNode" xmi:id="_rsuSEsyfEeOcyP6DQZu_Og" type="Association_SourceMultiplicityLabel">
- <styles xmi:type="notation:BooleanValueStyle" xmi:id="_EeDqMPAvEeWAsMbO3qivvw" name="IS_UPDATED_POSITION" booleanValue="true"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_rsuSE8yfEeOcyP6DQZu_Og" x="45" y="20"/>
- </children>
- <children xmi:type="notation:DecorationNode" xmi:id="_rsuSFMyfEeOcyP6DQZu_Og" visible="false" type="Association_TargetMultiplicityLabel">
- <styles xmi:type="notation:BooleanValueStyle" xmi:id="_EeZBYPAvEeWAsMbO3qivvw" name="IS_UPDATED_POSITION" booleanValue="true"/>
- <layoutConstraint xmi:type="notation:Location" xmi:id="_rsuSFcyfEeOcyP6DQZu_Og" x="-45" y="-17"/>
- </children>
- <styles xmi:type="notation:FontStyle" xmi:id="_rssc4cyfEeOcyP6DQZu_Og"/>
- <element xmi:type="uml:Association" href="CCodegenTest.uml#_YZOWUCxoEeOcwILjsIdkdw"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_rssc4syfEeOcyP6DQZu_Og" points="[120, 200, -643984, -643984]$[260, 200, -643984, -643984]$[320, 100, -643984, -643984]"/>
- <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_D8EXcPAvEeWAsMbO3qivvw" id="(1.0,0.4)"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_EcduwPAvEeWAsMbO3qivvw" id="(0.0,0.4)"/>
- </edges>
- <edges xmi:type="notation:Connector" xmi:id="_OBcEEDBEEeWm39aMVOrpAg" type="StereotypeCommentLink" source="_kg9O8MyfEeOcyP6DQZu_Og" target="_OBaO4DBEEeWm39aMVOrpAg">
- <styles xmi:type="notation:FontStyle" xmi:id="_OBcEETBEEeWm39aMVOrpAg"/>
- <styles xmi:type="notation:EObjectValueStyle" xmi:id="_OBcEFTBEEeWm39aMVOrpAg" name="BASE_ELEMENT">
- <eObjectValue xmi:type="uml:Class" href="CCodegenTest.uml#_0E-t0CrKEeOncLSXAkfRBA"/>
- </styles>
- <element xsi:nil="true"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_OBcEEjBEEeWm39aMVOrpAg" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
- <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_OBcEEzBEEeWm39aMVOrpAg"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_OBcEFDBEEeWm39aMVOrpAg"/>
- </edges>
- <edges xmi:type="notation:Connector" xmi:id="_OCfM9DBEEeWm39aMVOrpAg" type="StereotypeCommentLink" source="_rssc4MyfEeOcyP6DQZu_Og" target="_OCfM8DBEEeWm39aMVOrpAg">
- <styles xmi:type="notation:FontStyle" xmi:id="_OCfM9TBEEeWm39aMVOrpAg"/>
- <styles xmi:type="notation:EObjectValueStyle" xmi:id="_OCfM-TBEEeWm39aMVOrpAg" name="BASE_ELEMENT">
- <eObjectValue xmi:type="uml:Association" href="CCodegenTest.uml#_YZOWUCxoEeOcwILjsIdkdw"/>
- </styles>
- <element xsi:nil="true"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_OCfM9jBEEeWm39aMVOrpAg" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
- <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_OCfM9zBEEeWm39aMVOrpAg"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_OCfM-DBEEeWm39aMVOrpAg"/>
- </edges>
- <edges xmi:type="notation:Connector" xmi:id="_ODD0tDBEEeWm39aMVOrpAg" type="StereotypeCommentLink" source="_sl4usMyfEeOcyP6DQZu_Og" target="_ODD0sDBEEeWm39aMVOrpAg">
- <styles xmi:type="notation:FontStyle" xmi:id="_ODD0tTBEEeWm39aMVOrpAg"/>
- <styles xmi:type="notation:EObjectValueStyle" xmi:id="_ODEbwDBEEeWm39aMVOrpAg" name="BASE_ELEMENT">
- <eObjectValue xmi:type="uml:Class" href="CCodegenTest.uml#_ZqD3YCz9EeOcwILjsIdkdw"/>
- </styles>
- <element xsi:nil="true"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_ODD0tjBEEeWm39aMVOrpAg" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
- <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ODD0tzBEEeWm39aMVOrpAg"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ODD0uDBEEeWm39aMVOrpAg"/>
- </edges>
- <edges xmi:type="notation:Connector" xmi:id="_ule9kDcWEeejPb6HKM5TOA" type="StereotypeCommentLink" source="_nJzggMyfEeOcyP6DQZu_Og" target="_ulY2-jcWEeejPb6HKM5TOA">
- <styles xmi:type="notation:FontStyle" xmi:id="_ule9kTcWEeejPb6HKM5TOA"/>
- <styles xmi:type="notation:EObjectValueStyle" xmi:id="_ule9lTcWEeejPb6HKM5TOA" name="BASE_ELEMENT">
- <eObjectValue xmi:type="uml:Class" href="CCodegenTest.uml#_29UM4CrKEeOncLSXAkfRBA"/>
- </styles>
- <element xsi:nil="true"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_ule9kjcWEeejPb6HKM5TOA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
- <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ule9kzcWEeejPb6HKM5TOA"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ule9lDcWEeejPb6HKM5TOA"/>
- </edges>
- <edges xmi:type="notation:Connector" xmi:id="_A-t-wTcXEeejPb6HKM5TOA" type="StereotypeCommentLink" source="_oC650MyfEeOcyP6DQZu_Og" target="_A-t-vTcXEeejPb6HKM5TOA">
- <styles xmi:type="notation:FontStyle" xmi:id="_A-t-wjcXEeejPb6HKM5TOA"/>
- <styles xmi:type="notation:EObjectValueStyle" xmi:id="_A-t-xjcXEeejPb6HKM5TOA" name="BASE_ELEMENT">
- <eObjectValue xmi:type="uml:Class" href="CCodegenTest.uml#_-j3HgCrKEeOncLSXAkfRBA"/>
- </styles>
- <element xsi:nil="true"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_A-t-wzcXEeejPb6HKM5TOA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
- <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_A-t-xDcXEeejPb6HKM5TOA"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_A-t-xTcXEeejPb6HKM5TOA"/>
- </edges>
- <edges xmi:type="notation:Connector" xmi:id="_FmTN1jcXEeejPb6HKM5TOA" type="StereotypeCommentLink" source="_qNfT8MyfEeOcyP6DQZu_Og" target="_FmTN0jcXEeejPb6HKM5TOA">
- <styles xmi:type="notation:FontStyle" xmi:id="_FmTN1zcXEeejPb6HKM5TOA"/>
- <styles xmi:type="notation:EObjectValueStyle" xmi:id="_FmTN2zcXEeejPb6HKM5TOA" name="BASE_ELEMENT">
- <eObjectValue xmi:type="uml:Class" href="CCodegenTest.uml#_OJ7A0CxUEeOcwILjsIdkdw"/>
- </styles>
- <element xsi:nil="true"/>
- <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_FmTN2DcXEeejPb6HKM5TOA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
- <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_FmTN2TcXEeejPb6HKM5TOA"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_FmTN2jcXEeejPb6HKM5TOA"/>
- </edges>
-</notation:Diagram>
+<?xml version="1.0" encoding="UTF-8"?>
+<notation:Diagram xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.2/notation" xmlns:style="http://www.eclipse.org/papyrus/infra/gmfdiag/style" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML" xmi:id="_t4itkMyYEeOZRP5VM5W4JQ" type="PapyrusUMLClassDiagram" name="NewDiagram" measurementUnit="Pixel">
+ <children xmi:type="notation:Shape" xmi:id="_iERxIMyfEeOcyP6DQZu_Og" type="Class_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_iERxIsyfEeOcyP6DQZu_Og" type="Class_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_iERxI8yfEeOcyP6DQZu_Og" type="Class_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_iERxJMyfEeOcyP6DQZu_Og"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_iERxJcyfEeOcyP6DQZu_Og"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_iERxJsyfEeOcyP6DQZu_Og"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_iERxJ8yfEeOcyP6DQZu_Og"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_iERxKMyfEeOcyP6DQZu_Og" type="Class_OperationCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_UI9c0PAvEeWAsMbO3qivvw" type="Operation_ClassOperationLabel">
+ <element xmi:type="uml:Operation" href="CCodegenTest.uml#_b2v08CraEeOncLSXAkfRBA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_UI9c0fAvEeWAsMbO3qivvw"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_UI-q8PAvEeWAsMbO3qivvw" type="Operation_ClassOperationLabel">
+ <element xmi:type="uml:Operation" href="CCodegenTest.uml#_fvQ-oCraEeOncLSXAkfRBA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_UI-q8fAvEeWAsMbO3qivvw"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_iERxKcyfEeOcyP6DQZu_Og"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_iERxKsyfEeOcyP6DQZu_Og"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_iERxK8yfEeOcyP6DQZu_Og"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_iERxLMyfEeOcyP6DQZu_Og"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_iESYMMyfEeOcyP6DQZu_Og" visible="false" type="Class_NestedClassifierCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_iESYMcyfEeOcyP6DQZu_Og"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_iESYMsyfEeOcyP6DQZu_Og"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_iESYM8yfEeOcyP6DQZu_Og"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_iESYNMyfEeOcyP6DQZu_Og"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_N8LJkDBEEeWm39aMVOrpAg" type="Class_FloatingNameLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_N8LJkTBEEeWm39aMVOrpAg" y="5"/>
+ </children>
+ <element xmi:type="uml:Class" href="CCodegenTest.uml#_x6ArECrKEeOncLSXAkfRBA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_iERxIcyfEeOcyP6DQZu_Og" x="20" y="20"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_kg9O8MyfEeOcyP6DQZu_Og" type="Class_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_kg92AMyfEeOcyP6DQZu_Og" type="Class_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_kg92AcyfEeOcyP6DQZu_Og" type="Class_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_kg92AsyfEeOcyP6DQZu_Og"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_kg92A8yfEeOcyP6DQZu_Og"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_kg92BMyfEeOcyP6DQZu_Og"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kg92BcyfEeOcyP6DQZu_Og"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_kg92BsyfEeOcyP6DQZu_Og" type="Class_OperationCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_RVyvUIMXEeqidNXBZpFX_A" type="Operation_ClassOperationLabel">
+ <element xmi:type="uml:Operation" href="CCodegenTest.uml#_MRiIoCugEeOcwILjsIdkdw"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_RVyvUYMXEeqidNXBZpFX_A"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_kg92B8yfEeOcyP6DQZu_Og"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_kg92CMyfEeOcyP6DQZu_Og"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_kg92CcyfEeOcyP6DQZu_Og"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kg92CsyfEeOcyP6DQZu_Og"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_kg92C8yfEeOcyP6DQZu_Og" visible="false" type="Class_NestedClassifierCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_kg92DMyfEeOcyP6DQZu_Og"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_kg92DcyfEeOcyP6DQZu_Og"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_kg92DsyfEeOcyP6DQZu_Og"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kg92D8yfEeOcyP6DQZu_Og"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_N8LwoDBEEeWm39aMVOrpAg" type="Class_FloatingNameLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_N8LwoTBEEeWm39aMVOrpAg" y="5"/>
+ </children>
+ <element xmi:type="uml:Class" href="CCodegenTest.uml#_0E-t0CrKEeOncLSXAkfRBA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kg9O8cyfEeOcyP6DQZu_Og" x="460" y="22" width="121"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_nJzggMyfEeOcyP6DQZu_Og" type="Class_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_nJ0uoMyfEeOcyP6DQZu_Og" type="Class_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_nJ0uocyfEeOcyP6DQZu_Og" type="Class_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_nJ0uosyfEeOcyP6DQZu_Og"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_nJ0uo8yfEeOcyP6DQZu_Og"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_nJ0upMyfEeOcyP6DQZu_Og"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_nJ0upcyfEeOcyP6DQZu_Og"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_nJ0upsyfEeOcyP6DQZu_Og" type="Class_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_nJ0up8yfEeOcyP6DQZu_Og"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_nJ0uqMyfEeOcyP6DQZu_Og"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_nJ0uqcyfEeOcyP6DQZu_Og"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_nJ1VsMyfEeOcyP6DQZu_Og"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_nJ1VscyfEeOcyP6DQZu_Og" visible="false" type="Class_NestedClassifierCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_nJ1VssyfEeOcyP6DQZu_Og"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_nJ1Vs8yfEeOcyP6DQZu_Og"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_nJ1VtMyfEeOcyP6DQZu_Og"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_nJ1VtcyfEeOcyP6DQZu_Og"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_N8LwojBEEeWm39aMVOrpAg" type="Class_FloatingNameLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_N8LwozBEEeWm39aMVOrpAg" y="5"/>
+ </children>
+ <element xmi:type="uml:Class" href="CCodegenTest.uml#_29UM4CrKEeOncLSXAkfRBA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_nJzggcyfEeOcyP6DQZu_Og" x="460" y="160" width="122"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_oC650MyfEeOcyP6DQZu_Og" type="Class_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_oC8H8MyfEeOcyP6DQZu_Og" type="Class_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_oC8H8cyfEeOcyP6DQZu_Og" type="Class_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_oC8H8syfEeOcyP6DQZu_Og"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_oC8H88yfEeOcyP6DQZu_Og"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_oC8H9MyfEeOcyP6DQZu_Og"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_oC8H9cyfEeOcyP6DQZu_Og"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_oC8H9syfEeOcyP6DQZu_Og" type="Class_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_oC8H98yfEeOcyP6DQZu_Og"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_oC8H-MyfEeOcyP6DQZu_Og"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_oC8H-cyfEeOcyP6DQZu_Og"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_oC8H-syfEeOcyP6DQZu_Og"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_oC8H-8yfEeOcyP6DQZu_Og" visible="false" type="Class_NestedClassifierCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_oC8H_MyfEeOcyP6DQZu_Og"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_oC8H_cyfEeOcyP6DQZu_Og"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_oC8H_syfEeOcyP6DQZu_Og"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_oC8H_8yfEeOcyP6DQZu_Og"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_N8LwpDBEEeWm39aMVOrpAg" type="Class_FloatingNameLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_N8LwpTBEEeWm39aMVOrpAg" y="5"/>
+ </children>
+ <element xmi:type="uml:Class" href="CCodegenTest.uml#_-j3HgCrKEeOncLSXAkfRBA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_oC7g4MyfEeOcyP6DQZu_Og" x="640" y="20" width="121"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_o8Ad8MyfEeOcyP6DQZu_Og" type="Class_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_o8BFAMyfEeOcyP6DQZu_Og" type="Class_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_o8BFAcyfEeOcyP6DQZu_Og" type="Class_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_o8BFAsyfEeOcyP6DQZu_Og"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_o8BFA8yfEeOcyP6DQZu_Og"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_o8BFBMyfEeOcyP6DQZu_Og"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_o8BFBcyfEeOcyP6DQZu_Og"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_o8BFBsyfEeOcyP6DQZu_Og" type="Class_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_o8BFB8yfEeOcyP6DQZu_Og"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_o8BFCMyfEeOcyP6DQZu_Og"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_o8BFCcyfEeOcyP6DQZu_Og"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_o8BFCsyfEeOcyP6DQZu_Og"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_o8BFC8yfEeOcyP6DQZu_Og" visible="false" type="Class_NestedClassifierCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_o8BFDMyfEeOcyP6DQZu_Og"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_o8BFDcyfEeOcyP6DQZu_Og"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_o8BFDsyfEeOcyP6DQZu_Og"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_o8BFD8yfEeOcyP6DQZu_Og"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_N8LwpjBEEeWm39aMVOrpAg" type="Class_FloatingNameLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_N8LwpzBEEeWm39aMVOrpAg" y="5"/>
+ </children>
+ <element xmi:type="uml:Class" href="CCodegenTest.uml#_hTMV0CumEeOcwILjsIdkdw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_o8Ad8cyfEeOcyP6DQZu_Og" x="799" y="20"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_qNfT8MyfEeOcyP6DQZu_Og" type="Class_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_qNf7AMyfEeOcyP6DQZu_Og" type="Class_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_qNf7AcyfEeOcyP6DQZu_Og" type="Class_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_qNf7AsyfEeOcyP6DQZu_Og"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_qNf7A8yfEeOcyP6DQZu_Og"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_qNf7BMyfEeOcyP6DQZu_Og"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_qNf7BcyfEeOcyP6DQZu_Og"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_qNf7BsyfEeOcyP6DQZu_Og" type="Class_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_qNf7B8yfEeOcyP6DQZu_Og"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_qNf7CMyfEeOcyP6DQZu_Og"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_qNf7CcyfEeOcyP6DQZu_Og"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_qNf7CsyfEeOcyP6DQZu_Og"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_qNf7C8yfEeOcyP6DQZu_Og" visible="false" type="Class_NestedClassifierCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_qNf7DMyfEeOcyP6DQZu_Og"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_qNf7DcyfEeOcyP6DQZu_Og"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_qNf7DsyfEeOcyP6DQZu_Og"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_qNf7D8yfEeOcyP6DQZu_Og"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_N8LwqDBEEeWm39aMVOrpAg" type="Class_FloatingNameLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_N8LwqTBEEeWm39aMVOrpAg" y="5"/>
+ </children>
+ <element xmi:type="uml:Class" href="CCodegenTest.uml#_OJ7A0CxUEeOcwILjsIdkdw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_qNfT8cyfEeOcyP6DQZu_Og" x="280" y="160" width="121"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_sl4usMyfEeOcyP6DQZu_Og" type="Class_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_sl4ussyfEeOcyP6DQZu_Og" type="Class_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_sl4us8yfEeOcyP6DQZu_Og" type="Class_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_sl4utMyfEeOcyP6DQZu_Og"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_sl4utcyfEeOcyP6DQZu_Og"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_sl4utsyfEeOcyP6DQZu_Og"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_sl4ut8yfEeOcyP6DQZu_Og"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_sl4uuMyfEeOcyP6DQZu_Og" type="Class_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_sl4uucyfEeOcyP6DQZu_Og"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_sl4uusyfEeOcyP6DQZu_Og"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_sl4uu8yfEeOcyP6DQZu_Og"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_sl4uvMyfEeOcyP6DQZu_Og"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_sl5VwMyfEeOcyP6DQZu_Og" visible="false" type="Class_NestedClassifierCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_sl5VwcyfEeOcyP6DQZu_Og"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_sl5VwsyfEeOcyP6DQZu_Og"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_sl5Vw8yfEeOcyP6DQZu_Og"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_sl5VxMyfEeOcyP6DQZu_Og"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_N8LwqjBEEeWm39aMVOrpAg" type="Class_FloatingNameLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_N8LwqzBEEeWm39aMVOrpAg" y="5"/>
+ </children>
+ <element xmi:type="uml:Class" href="CCodegenTest.uml#_ZqD3YCz9EeOcwILjsIdkdw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_sl4uscyfEeOcyP6DQZu_Og" x="640" y="280" width="121"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_txmT4MyfEeOcyP6DQZu_Og" type="Class_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_txm68MyfEeOcyP6DQZu_Og" type="Class_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_txm68cyfEeOcyP6DQZu_Og" type="Class_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_txm68syfEeOcyP6DQZu_Og"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_txm688yfEeOcyP6DQZu_Og"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_txm69MyfEeOcyP6DQZu_Og"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_txm69cyfEeOcyP6DQZu_Og"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_txm69syfEeOcyP6DQZu_Og" type="Class_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_txm698yfEeOcyP6DQZu_Og"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_txm6-MyfEeOcyP6DQZu_Og"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_txm6-cyfEeOcyP6DQZu_Og"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_txm6-syfEeOcyP6DQZu_Og"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_txm6-8yfEeOcyP6DQZu_Og" visible="false" type="Class_NestedClassifierCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_txm6_MyfEeOcyP6DQZu_Og"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_txm6_cyfEeOcyP6DQZu_Og"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_txm6_syfEeOcyP6DQZu_Og"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_txm6_8yfEeOcyP6DQZu_Og"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_N8LwrDBEEeWm39aMVOrpAg" type="Class_FloatingNameLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_N8LwrTBEEeWm39aMVOrpAg" y="5"/>
+ </children>
+ <element xmi:type="uml:Class" href="CCodegenTest.uml#_qS9iYDEmEeOSfbt-FmCdoQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_txmT4cyfEeOcyP6DQZu_Og" x="640" y="160" width="121"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_uTijUMyfEeOcyP6DQZu_Og" type="Class_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_uTijUsyfEeOcyP6DQZu_Og" type="Class_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_uTijU8yfEeOcyP6DQZu_Og" type="Class_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_uTijVMyfEeOcyP6DQZu_Og"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_uTijVcyfEeOcyP6DQZu_Og"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_uTijVsyfEeOcyP6DQZu_Og"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_uTijV8yfEeOcyP6DQZu_Og"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_uTijWMyfEeOcyP6DQZu_Og" type="Class_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_uTijWcyfEeOcyP6DQZu_Og"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_uTjKYMyfEeOcyP6DQZu_Og"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_uTjKYcyfEeOcyP6DQZu_Og"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_uTjKYsyfEeOcyP6DQZu_Og"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_uTjKY8yfEeOcyP6DQZu_Og" visible="false" type="Class_NestedClassifierCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_uTjKZMyfEeOcyP6DQZu_Og"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_uTjKZcyfEeOcyP6DQZu_Og"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_uTjKZsyfEeOcyP6DQZu_Og"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_uTjKZ8yfEeOcyP6DQZu_Og"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_N8LwrjBEEeWm39aMVOrpAg" type="Class_FloatingNameLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_N8LwrzBEEeWm39aMVOrpAg" y="5"/>
+ </children>
+ <element xmi:type="uml:Class" href="CCodegenTest.uml#_jcK5MDG0EeOOEc5pE2t6oQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_uTijUcyfEeOcyP6DQZu_Og" x="800" y="280" width="101"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_t5cpgMy5EeOtSda2xb0Kjw" type="Package_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_t5xZoMy5EeOtSda2xb0Kjw" type="Package_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_NF0TMDbyEeejPb6HKM5TOA" type="Package_PackagedElementCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_t5yAscy5EeOtSda2xb0Kjw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_t5yAssy5EeOtSda2xb0Kjw"/>
+ </children>
+ <element xmi:type="uml:Package" href="CCodegenTest.uml#_nZ5DgDEmEeOSfbt-FmCdoQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_t5cpgcy5EeOtSda2xb0Kjw" x="20" y="300"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_Wu-RgMy6EeOtSda2xb0Kjw" type="Model_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_WvAtwMy6EeOtSda2xb0Kjw" type="Model_NameLabel"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_NF-EMDbyEeejPb6HKM5TOA" type="Model_PackagedElementCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_WvCi8cy6EeOtSda2xb0Kjw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_WvCi8sy6EeOtSda2xb0Kjw"/>
+ </children>
+ <element xmi:type="uml:Model" href="CCodegenTest.uml#_1_ToYCoNEeOncLSXAkfRBA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Wu-Rgcy6EeOtSda2xb0Kjw" x="280" y="300"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_Yz58I4MWEeqidNXBZpFX_A" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Yz58JIMWEeqidNXBZpFX_A"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Yz58JoMWEeqidNXBZpFX_A" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="CCodegenTest.uml#_0E-t0CrKEeOncLSXAkfRBA"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Yz58JYMWEeqidNXBZpFX_A" x="685" y="22"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_Y0DtI4MWEeqidNXBZpFX_A" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Y0DtJIMWEeqidNXBZpFX_A"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Y0DtJoMWEeqidNXBZpFX_A" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="CCodegenTest.uml#_29UM4CrKEeOncLSXAkfRBA"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Y0DtJYMWEeqidNXBZpFX_A" x="420" y="160"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_Y0NeIIMWEeqidNXBZpFX_A" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Y0NeIYMWEeqidNXBZpFX_A"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Y0NeI4MWEeqidNXBZpFX_A" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="CCodegenTest.uml#_-j3HgCrKEeOncLSXAkfRBA"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Y0NeIoMWEeqidNXBZpFX_A" x="840" y="34"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_Y0ZrY4MWEeqidNXBZpFX_A" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Y0ZrZIMWEeqidNXBZpFX_A"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Y0aScIMWEeqidNXBZpFX_A" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="CCodegenTest.uml#_OJ7A0CxUEeOcwILjsIdkdw"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Y0ZrZYMWEeqidNXBZpFX_A" x="220" y="160"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_Y0gZEIMWEeqidNXBZpFX_A" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Y0gZEYMWEeqidNXBZpFX_A"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Y0gZE4MWEeqidNXBZpFX_A" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Association" href="CCodegenTest.uml#_YZOWUCxoEeOcwILjsIdkdw"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Y0gZEoMWEeqidNXBZpFX_A" x="220" y="60"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_Y0w3wIMWEeqidNXBZpFX_A" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Y0w3wYMWEeqidNXBZpFX_A"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Y0w3w4MWEeqidNXBZpFX_A" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="CCodegenTest.uml#_ZqD3YCz9EeOcwILjsIdkdw"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Y0w3woMWEeqidNXBZpFX_A" x="560" y="160"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_Y1KgY4MWEeqidNXBZpFX_A" type="StereotypeComment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_Y1KgZIMWEeqidNXBZpFX_A"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Y1LHcIMWEeqidNXBZpFX_A" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Model" href="CCodegenTest.uml#_1_ToYCoNEeOncLSXAkfRBA"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Y1KgZYMWEeqidNXBZpFX_A" x="480" y="300"/>
+ </children>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_t4itkcyYEeOZRP5VM5W4JQ"/>
+ <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_53rlgIJaEeqNJspmoZA5fA" diagramKindId="org.eclipse.papyrus.uml.diagram.class">
+ <owner xmi:type="uml:Model" href="CCodegenTest.uml#_t4hfcMyYEeOZRP5VM5W4JQ"/>
+ </styles>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_N8MXsDBEEeWm39aMVOrpAg" name="diagram_compatibility_version" stringValue="1.4.0"/>
+ <element xmi:type="uml:Model" href="CCodegenTest.uml#_t4hfcMyYEeOZRP5VM5W4JQ"/>
+ <edges xmi:type="notation:Connector" xmi:id="_rssc4MyfEeOcyP6DQZu_Og" type="Association_Edge" source="_qNfT8MyfEeOcyP6DQZu_Og" target="_nJzggMyfEeOcyP6DQZu_Og">
+ <children xmi:type="notation:DecorationNode" xmi:id="_rstD8MyfEeOcyP6DQZu_Og" visible="false" type="Association_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_Ecye4PAvEeWAsMbO3qivvw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_rstD8cyfEeOcyP6DQZu_Og" x="-31" y="-28"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_rstrAMyfEeOcyP6DQZu_Og" visible="false" type="Association_NameLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_EdIdIPAvEeWAsMbO3qivvw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_rstrAcyfEeOcyP6DQZu_Og" x="1" y="19"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_rstrAsyfEeOcyP6DQZu_Og" visible="false" type="Association_TargetRoleLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_EdcmMPAvEeWAsMbO3qivvw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_rstrA8yfEeOcyP6DQZu_Og" x="45" y="-20"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_rsuSEMyfEeOcyP6DQZu_Og" visible="false" type="Association_SourceRoleLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_EduTAPAvEeWAsMbO3qivvw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_rsuSEcyfEeOcyP6DQZu_Og" x="-105" y="-50"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_rsuSEsyfEeOcyP6DQZu_Og" type="Association_SourceMultiplicityLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_EeDqMPAvEeWAsMbO3qivvw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_rsuSE8yfEeOcyP6DQZu_Og" x="45" y="20"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_rsuSFMyfEeOcyP6DQZu_Og" visible="false" type="Association_TargetMultiplicityLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_EeZBYPAvEeWAsMbO3qivvw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_rsuSFcyfEeOcyP6DQZu_Og" x="-45" y="-17"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_rssc4cyfEeOcyP6DQZu_Og"/>
+ <element xmi:type="uml:Association" href="CCodegenTest.uml#_YZOWUCxoEeOcwILjsIdkdw"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_rssc4syfEeOcyP6DQZu_Og" points="[401, 200, -643984, -643984]$[460, 200, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_D8EXcPAvEeWAsMbO3qivvw" id="(1.0,0.37383177570093457)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_EcduwPAvEeWAsMbO3qivvw" id="(0.0,0.3508771929824561)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_Yz58J4MWEeqidNXBZpFX_A" type="StereotypeCommentLink" source="_kg9O8MyfEeOcyP6DQZu_Og" target="_Yz58I4MWEeqidNXBZpFX_A">
+ <styles xmi:type="notation:FontStyle" xmi:id="_Yz58KIMWEeqidNXBZpFX_A"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Yz6jMoMWEeqidNXBZpFX_A" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="CCodegenTest.uml#_0E-t0CrKEeOncLSXAkfRBA"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Yz58KYMWEeqidNXBZpFX_A" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Yz6jMIMWEeqidNXBZpFX_A"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Yz6jMYMWEeqidNXBZpFX_A"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_Y0DtJ4MWEeqidNXBZpFX_A" type="StereotypeCommentLink" source="_nJzggMyfEeOcyP6DQZu_Og" target="_Y0DtI4MWEeqidNXBZpFX_A">
+ <styles xmi:type="notation:FontStyle" xmi:id="_Y0DtKIMWEeqidNXBZpFX_A"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Y0EUMIMWEeqidNXBZpFX_A" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="CCodegenTest.uml#_29UM4CrKEeOncLSXAkfRBA"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Y0DtKYMWEeqidNXBZpFX_A" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Y0DtKoMWEeqidNXBZpFX_A"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Y0DtK4MWEeqidNXBZpFX_A"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_Y0NeJIMWEeqidNXBZpFX_A" type="StereotypeCommentLink" source="_oC650MyfEeOcyP6DQZu_Og" target="_Y0NeIIMWEeqidNXBZpFX_A">
+ <styles xmi:type="notation:FontStyle" xmi:id="_Y0NeJYMWEeqidNXBZpFX_A"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Y0NeKYMWEeqidNXBZpFX_A" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="CCodegenTest.uml#_-j3HgCrKEeOncLSXAkfRBA"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Y0NeJoMWEeqidNXBZpFX_A" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Y0NeJ4MWEeqidNXBZpFX_A"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Y0NeKIMWEeqidNXBZpFX_A"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_Y0aScYMWEeqidNXBZpFX_A" type="StereotypeCommentLink" source="_qNfT8MyfEeOcyP6DQZu_Og" target="_Y0ZrY4MWEeqidNXBZpFX_A">
+ <styles xmi:type="notation:FontStyle" xmi:id="_Y0aScoMWEeqidNXBZpFX_A"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Y0aSdoMWEeqidNXBZpFX_A" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="CCodegenTest.uml#_OJ7A0CxUEeOcwILjsIdkdw"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Y0aSc4MWEeqidNXBZpFX_A" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Y0aSdIMWEeqidNXBZpFX_A"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Y0aSdYMWEeqidNXBZpFX_A"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_Y0gZFIMWEeqidNXBZpFX_A" type="StereotypeCommentLink" source="_rssc4MyfEeOcyP6DQZu_Og" target="_Y0gZEIMWEeqidNXBZpFX_A">
+ <styles xmi:type="notation:FontStyle" xmi:id="_Y0gZFYMWEeqidNXBZpFX_A"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Y0hAIoMWEeqidNXBZpFX_A" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Association" href="CCodegenTest.uml#_YZOWUCxoEeOcwILjsIdkdw"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Y0gZFoMWEeqidNXBZpFX_A" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Y0hAIIMWEeqidNXBZpFX_A"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Y0hAIYMWEeqidNXBZpFX_A"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_Y0w3xIMWEeqidNXBZpFX_A" type="StereotypeCommentLink" source="_sl4usMyfEeOcyP6DQZu_Og" target="_Y0w3wIMWEeqidNXBZpFX_A">
+ <styles xmi:type="notation:FontStyle" xmi:id="_Y0w3xYMWEeqidNXBZpFX_A"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Y0w3yYMWEeqidNXBZpFX_A" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Class" href="CCodegenTest.uml#_ZqD3YCz9EeOcwILjsIdkdw"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Y0w3xoMWEeqidNXBZpFX_A" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Y0w3x4MWEeqidNXBZpFX_A"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Y0w3yIMWEeqidNXBZpFX_A"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_Y1LHcYMWEeqidNXBZpFX_A" type="StereotypeCommentLink" source="_Wu-RgMy6EeOtSda2xb0Kjw" target="_Y1KgY4MWEeqidNXBZpFX_A">
+ <styles xmi:type="notation:FontStyle" xmi:id="_Y1LHcoMWEeqidNXBZpFX_A"/>
+ <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Y1LHdoMWEeqidNXBZpFX_A" name="BASE_ELEMENT">
+ <eObjectValue xmi:type="uml:Model" href="CCodegenTest.uml#_1_ToYCoNEeOncLSXAkfRBA"/>
+ </styles>
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Y1LHc4MWEeqidNXBZpFX_A" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Y1LHdIMWEeqidNXBZpFX_A"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Y1LHdYMWEeqidNXBZpFX_A"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_mVpp4IMWEeqidNXBZpFX_A" type="Generalization_Edge" source="_nJzggMyfEeOcyP6DQZu_Og" target="_kg9O8MyfEeOcyP6DQZu_Og">
+ <children xmi:type="notation:DecorationNode" xmi:id="_mVsGIIMWEeqidNXBZpFX_A" type="Generalization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_soe54IMWEeqidNXBZpFX_A" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_mVstMIMWEeqidNXBZpFX_A" y="39"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_mVpp4YMWEeqidNXBZpFX_A"/>
+ <element xmi:type="uml:Generalization" href="CCodegenTest.uml#_EN-zoCt5EeOcwILjsIdkdw"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_mVpp4oMWEeqidNXBZpFX_A" points="[320, 185, -643984, -643984]$[485, 100, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_spdKQIMWEeqidNXBZpFX_A" id="(0.4918032786885246,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_spdKQYMWEeqidNXBZpFX_A" id="(0.49586776859504134,1.0)"/>
+ </edges>
+</notation:Diagram>
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.tests/resources/CCodegenTest.uml b/languages/c/org.eclipse.papyrus.designer.languages.c.tests/resources/CCodegenTest.uml
index 4f3aca7..2add82f 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.tests/resources/CCodegenTest.uml
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.tests/resources/CCodegenTest.uml
@@ -1,434 +1,443 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<xmi:XMI xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:C_Cpp="http://www.eclipse.org/papyrus/C_Cpp/1" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:standard="http://www.eclipse.org/uml2/5.0.0/UML/Profile/Standard" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML">
- <uml:Model xmi:id="_1_ToYCoNEeOncLSXAkfRBA" name="CCodegenTest">
- <packageImport xmi:type="uml:PackageImport" xmi:id="_1_ToYSoNEeOncLSXAkfRBA">
- <importedPackage xmi:type="uml:Model" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#_0"/>
- </packageImport>
- <packageImport xmi:type="uml:PackageImport" xmi:id="_TaxOkCoTEeOncLSXAkfRBA">
- <importedPackage xmi:type="uml:Model" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_DV8nkBv8EduZN5aJJITI5w"/>
- </packageImport>
- <packagedElement xmi:type="uml:Class" xmi:id="_x6ArECrKEeOncLSXAkfRBA" name="Class1">
- <ownedAttribute xmi:type="uml:Property" xmi:id="_U4LD0CrbEeOncLSXAkfRBA" name="iVal" visibility="private">
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
- </ownedAttribute>
- <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_9--NUCtwEeOcwILjsIdkdw" name="Class1" specification="_fvQ-oCraEeOncLSXAkfRBA">
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_XmDKUWdrEeOvh505Y4rydA" name="cSource" type="_x6ArECrKEeOncLSXAkfRBA"/>
- <language>C/C++</language>
- <body>self->iVal = cSource.iVal;
</body>
- </ownedBehavior>
- <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_KtFesCtxEeOcwILjsIdkdw" name="~Class1" specification="_b2v08CraEeOncLSXAkfRBA">
- <language>C/C++</language>
- <body>
-
</body>
- </ownedBehavior>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_b2v08CraEeOncLSXAkfRBA" name="~Class1" method="_KtFesCtxEeOcwILjsIdkdw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_LY0YwCtwEeOcwILjsIdkdw" annotatedElement="_b2v08CraEeOncLSXAkfRBA">
- <body>Destructor</body>
- </ownedComment>
- </ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_fvQ-oCraEeOncLSXAkfRBA" name="Class1" method="_9--NUCtwEeOcwILjsIdkdw" isQuery="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_PvFOYCtwEeOcwILjsIdkdw" annotatedElement="_fvQ-oCraEeOncLSXAkfRBA">
- <body>Copy constructor</body>
- </ownedComment>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_XmDKUGdrEeOvh505Y4rydA" name="cSource" type="_x6ArECrKEeOncLSXAkfRBA"/>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_13uG0DbvEeejPb6HKM5TOA" name="*self" type="_x6ArECrKEeOncLSXAkfRBA"/>
- </ownedOperation>
- </packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_0E-t0CrKEeOncLSXAkfRBA" name="Class2">
- <ownedAttribute xmi:type="uml:Property" xmi:id="_8hdewCt2EeOcwILjsIdkdw" name="bVal">
- <ownedComment xmi:type="uml:Comment" xmi:id="_0sh-ADHFEeOOEc5pE2t6oQ" annotatedElement="_8hdewCt2EeOcwILjsIdkdw">
- <body>boolean value with public visibility</body>
- </ownedComment>
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_vAIV4I7PEdySGvm5GN66HA"/>
- </ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_NkSbsCt5EeOcwILjsIdkdw" name="iVal1" visibility="protected">
- <ownedComment xmi:type="uml:Comment" xmi:id="_uOkcEDHFEeOOEc5pE2t6oQ" annotatedElement="_NkSbsCt5EeOcwILjsIdkdw">
- <body>int value with protected visibility</body>
- </ownedComment>
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_6uDGwCt-EeOcwILjsIdkdw" value="1"/>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_6uDt0Ct-EeOcwILjsIdkdw" value="1"/>
- </ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_OalxkCt5EeOcwILjsIdkdw" name="iVal2" visibility="private">
- <ownedComment xmi:type="uml:Comment" xmi:id="_tJ-ykDHFEeOOEc5pE2t6oQ" annotatedElement="_OalxkCt5EeOcwILjsIdkdw">
- <body>int value with private visibility</body>
- </ownedComment>
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
- </ownedAttribute>
- <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_RB9HUCt3EeOcwILjsIdkdw" name="Class2" specification="_HV3R8Ct2EeOcwILjsIdkdw">
- <language>C/C++</language>
- <body>self->iVal1 = newIVal1;
-self->iVal2 = newIVal2;
-self->bVal = newBVal;</body>
- </ownedBehavior>
- <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_wrOJMCt5EeOcwILjsIdkdw" name="virtualOp" specification="_6QndgCt2EeOcwILjsIdkdw">
- <language>C/C++</language>
- <body></body>
- </ownedBehavior>
- <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_X_ZAQCuHEeOcwILjsIdkdw" name="Class2" specification="_8h2VwCt1EeOcwILjsIdkdw">
- <language>C/C++</language>
- <body>self->iVal1 = 0;
-self->iVal2 = 0;
-self->bVal = 'f';</body>
- </ownedBehavior>
- <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_q-ZzYC0FEeOcwILjsIdkdw" name="inlineOp" specification="_HtC9sCuIEeOcwILjsIdkdw">
- <language>C/C++</language>
- <body>return a+b;</body>
- </ownedBehavior>
- <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_rqzpYDHGEeOOEc5pE2t6oQ" name="constOps" specification="_fGJ2ADHGEeOOEc5pE2t6oQ">
- <language>C/C++</language>
- <body>printf("I am a const method\n");</body>
- </ownedBehavior>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_8h2VwCt1EeOcwILjsIdkdw" name="Class2_1" method="_X_ZAQCuHEeOcwILjsIdkdw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_Cubz0Ct2EeOcwILjsIdkdw" annotatedElement="_8h2VwCt1EeOcwILjsIdkdw">
- <body>Default constructor</body>
- </ownedComment>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_vKar4DbwEeejPb6HKM5TOA" name="*self" type="_0E-t0CrKEeOncLSXAkfRBA"/>
- </ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_HV3R8Ct2EeOcwILjsIdkdw" name="Class2" method="_RB9HUCt3EeOcwILjsIdkdw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_327CQCt2EeOcwILjsIdkdw" annotatedElement="_HV3R8Ct2EeOcwILjsIdkdw">
- <body>Constructor with parameters</body>
- </ownedComment>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_1ZSiMCt2EeOcwILjsIdkdw" name="newIVal1">
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
- </ownedParameter>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_f5oS8CuHEeOcwILjsIdkdw" name="newIVal2">
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
- </ownedParameter>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_mBfpECuHEeOcwILjsIdkdw" name="newBVal">
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_vAIV4I7PEdySGvm5GN66HA"/>
- </ownedParameter>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_ALFNADbwEeejPb6HKM5TOA" name="*self" type="_0E-t0CrKEeOncLSXAkfRBA"/>
- </ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_6QndgCt2EeOcwILjsIdkdw" name="virtualOp" method="_wrOJMCt5EeOcwILjsIdkdw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_6F9lUCt5EeOcwILjsIdkdw" annotatedElement="_6QndgCt2EeOcwILjsIdkdw">
- <body>Virtual method</body>
- </ownedComment>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_LmW-oGwgEeOUiKqqNL5BkQ" name="a">
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_6j0jABydEduyofBvg4RL2w"/>
- </ownedParameter>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_NOv4wGwgEeOUiKqqNL5BkQ" name="b">
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_6j0jABydEduyofBvg4RL2w"/>
- </ownedParameter>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_O0AmYGwgEeOUiKqqNL5BkQ" name="" direction="return">
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_6j0jABydEduyofBvg4RL2w"/>
- </ownedParameter>
- </ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_EOE8cCuIEeOcwILjsIdkdw" name="staticOp" isStatic="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_dGa0YCubEeOcwILjsIdkdw" annotatedElement="_EOE8cCuIEeOcwILjsIdkdw">
- <body>Static method</body>
- </ownedComment>
- </ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_HtC9sCuIEeOcwILjsIdkdw" name="inlineOp" method="_q-ZzYC0FEeOcwILjsIdkdw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_edOPQCubEeOcwILjsIdkdw" annotatedElement="_HtC9sCuIEeOcwILjsIdkdw">
- <body>Inline method</body>
- </ownedComment>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_GXNQADHGEeOOEc5pE2t6oQ" name="a">
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
- </ownedParameter>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_IBIbMDHGEeOOEc5pE2t6oQ" name="b">
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
- </ownedParameter>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_X2lQ8DHGEeOOEc5pE2t6oQ" direction="return">
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
- </ownedParameter>
- </ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_MZs6ECuIEeOcwILjsIdkdw" name="friendOp">
- <ownedComment xmi:type="uml:Comment" xmi:id="_gnRsACubEeOcwILjsIdkdw" annotatedElement="_MZs6ECuIEeOcwILjsIdkdw">
- <body>Friend method</body>
- </ownedComment>
- </ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_PbnYoCuYEeOcwILjsIdkdw" name="nonStaticOp">
- <ownedComment xmi:type="uml:Comment" xmi:id="_jPwxMCubEeOcwILjsIdkdw" annotatedElement="_PbnYoCuYEeOcwILjsIdkdw">
- <body>Non-static method</body>
- </ownedComment>
- </ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_WoYhUCuYEeOcwILjsIdkdw" name="paramsOp">
- <ownedComment xmi:type="uml:Comment" xmi:id="_nGVaICubEeOcwILjsIdkdw" annotatedElement="_WoYhUCuYEeOcwILjsIdkdw">
- <body>Method with in, out, inout, return parameters</body>
- </ownedComment>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_e2H-0CuYEeOcwILjsIdkdw" name="in">
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
- </ownedParameter>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_ghAzUCuYEeOcwILjsIdkdw" name="out" direction="out">
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
- </ownedParameter>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_iKAKYCuYEeOcwILjsIdkdw" name="inout" direction="inout">
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
- </ownedParameter>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_lPf7sCuYEeOcwILjsIdkdw" name="ret" direction="return">
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
- </ownedParameter>
- </ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_C4qY8CuZEeOcwILjsIdkdw" name="voidOp">
- <ownedComment xmi:type="uml:Comment" xmi:id="_M-gwoDHFEeOOEc5pE2t6oQ" annotatedElement="_C4qY8CuZEeOcwILjsIdkdw">
- <body>Void Method</body>
- </ownedComment>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_DHEZoCufEeOcwILjsIdkdw" name="" direction="return">
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_8I6RgBydEduyofBvg4RL2w"/>
- </ownedParameter>
- </ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_Rmpa4CuaEeOcwILjsIdkdw" name="defaultValueOp">
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_ovlsYCuaEeOcwILjsIdkdw" name="newIVal1">
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
- <defaultValue xmi:type="uml:LiteralInteger" xmi:id="_ovlsYSuaEeOcwILjsIdkdw" name="DEFAULT_INT"/>
- </ownedParameter>
- </ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_Ub5CUCudEeOcwILjsIdkdw" name="~Class2">
- <ownedComment xmi:type="uml:Comment" xmi:id="_9HrlYDHFEeOOEc5pE2t6oQ" annotatedElement="_Ub5CUCudEeOcwILjsIdkdw">
- <body>Virtual destructor</body>
- </ownedComment>
- </ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_MRiIoCugEeOcwILjsIdkdw" name="classesOp">
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_Xd-L4CugEeOcwILjsIdkdw" name="c1" type="_x6ArECrKEeOncLSXAkfRBA"/>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_aK_y0CugEeOcwILjsIdkdw" name="" type="_x6ArECrKEeOncLSXAkfRBA" direction="return"/>
- </ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_fGJ2ADHGEeOOEc5pE2t6oQ" name="constOp" method="_rqzpYDHGEeOOEc5pE2t6oQ">
- <ownedComment xmi:type="uml:Comment" xmi:id="_sz0qcDHHEeOOEc5pE2t6oQ" annotatedElement="_fGJ2ADHGEeOOEc5pE2t6oQ">
- <body>Const method</body>
- </ownedComment>
- </ownedOperation>
- </packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_29UM4CrKEeOncLSXAkfRBA" name="Class3">
- <generalization xmi:type="uml:Generalization" xmi:id="_EN-zoCt5EeOcwILjsIdkdw" general="_0E-t0CrKEeOncLSXAkfRBA"/>
- <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_0ekfACt5EeOcwILjsIdkdw" name="virtualOp" specification="_IoFAYCt5EeOcwILjsIdkdw">
- <language>C/C++</language>
- <body>return a+b;</body>
- </ownedBehavior>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_IoFAYCt5EeOcwILjsIdkdw" name="virtualOp" method="_0ekfACt5EeOcwILjsIdkdw">
- <ownedComment xmi:type="uml:Comment" xmi:id="_4qnosCt5EeOcwILjsIdkdw" annotatedElement="_IoFAYCt5EeOcwILjsIdkdw">
- <body>Inherited method overriding.</body>
- </ownedComment>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_7owzgDHJEeOOEc5pE2t6oQ" name="a">
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_6j0jABydEduyofBvg4RL2w"/>
- </ownedParameter>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_991NcDHJEeOOEc5pE2t6oQ" name="b">
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_6j0jABydEduyofBvg4RL2w"/>
- </ownedParameter>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_HsJs4DHKEeOOEc5pE2t6oQ" direction="return">
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_6j0jABydEduyofBvg4RL2w"/>
- </ownedParameter>
- </ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_du7T8CudEeOcwILjsIdkdw" name="~Class3">
- <ownedComment xmi:type="uml:Comment" xmi:id="_Fr_C4CueEeOcwILjsIdkdw" annotatedElement="_du7T8CudEeOcwILjsIdkdw">
- <body>Inherited virtual destructor</body>
- </ownedComment>
- </ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_1ISAACudEeOcwILjsIdkdw" name="Class3">
- <ownedComment xmi:type="uml:Comment" xmi:id="_JBPugCueEeOcwILjsIdkdw" annotatedElement="_1ISAACudEeOcwILjsIdkdw">
- <body>Default constructor</body>
- </ownedComment>
- </ownedOperation>
- </packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_-j3HgCrKEeOncLSXAkfRBA" name="Class4">
- <ownedAttribute xmi:type="uml:Property" xmi:id="_OIbRcCujEeOcwILjsIdkdw" name="c3" type="_29UM4CrKEeOncLSXAkfRBA"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_k18HwCw-EeOcwILjsIdkdw" name="charVar">
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_5lVhgBydEduyofBvg4RL2w"/>
- </ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_qj4iACw-EeOcwILjsIdkdw" name="doubleVar">
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_6j0jABydEduyofBvg4RL2w"/>
- </ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_snupECw-EeOcwILjsIdkdw" name="floatVar">
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7W3wkBydEduyofBvg4RL2w"/>
- </ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_u2rM4Cw-EeOcwILjsIdkdw" name="intVar">
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
- </ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_ystDQCw-EeOcwILjsIdkdw" name="longVar">
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_8heigBydEduyofBvg4RL2w"/>
- </ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_1Yde4Cw-EeOcwILjsIdkdw" name="longDoubleVar">
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_DLNPkByeEduyofBvg4RL2w"/>
- </ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_-XZv0Cw-EeOcwILjsIdkdw" name="shortVar">
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_K-lFQByeEduyofBvg4RL2w"/>
- </ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_Aj1LICw_EeOcwILjsIdkdw" name="unsignedIntVar">
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_LTZesByeEduyofBvg4RL2w"/>
- </ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_UexPkCw_EeOcwILjsIdkdw" name="unsignedShortVar">
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_V5vyUByeEduyofBvg4RL2w"/>
- </ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_bIofgCw_EeOcwILjsIdkdw" name="unsignedCharVar">
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_YYWiwByeEduyofBvg4RL2w"/>
- </ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_ddUe8Cw_EeOcwILjsIdkdw" name="unsignedLongVar">
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_a1wZUByeEduyofBvg4RL2w"/>
- </ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_f2ShcCw_EeOcwILjsIdkdw" name="boolVar">
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_vAIV4I7PEdySGvm5GN66HA"/>
- </ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_tJYOgCxHEeOcwILjsIdkdw" name="arrayDoubleDefault">
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_6j0jABydEduyofBvg4RL2w"/>
- </ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_CWUEUCxeEeOcwILjsIdkdw" name="arrayCharInit">
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_5lVhgBydEduyofBvg4RL2w"/>
- </ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_f7m3YDECEeOSfbt-FmCdoQ" name="charString">
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_5lVhgBydEduyofBvg4RL2w"/>
- </ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_NBtLYDHBEeOOEc5pE2t6oQ" name="ptrChar">
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_5lVhgBydEduyofBvg4RL2w"/>
- </ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_u7S7ADHMEeOOEc5pE2t6oQ" name="charStringStaticInit" isStatic="true">
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_5lVhgBydEduyofBvg4RL2w"/>
- <defaultValue xmi:type="uml:LiteralString" xmi:id="_FT8swGwdEeOUiKqqNL5BkQ" value=""Hello World""/>
- </ownedAttribute>
- <nestedClassifier xmi:type="uml:PrimitiveType" xmi:id="_lIB18CxBEeOcwILjsIdkdw" name="pChar"/>
- </packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_hTMV0CumEeOcwILjsIdkdw" name="Class5" isAbstract="true">
- <ownedComment xmi:type="uml:Comment" xmi:id="_kJlUICumEeOcwILjsIdkdw" annotatedElement="_hTMV0CumEeOcwILjsIdkdw">
- <body>C++ Virtual Interface</body>
- </ownedComment>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_u_QOYCxwEeOcwILjsIdkdw" name="externalProp">
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
- </ownedAttribute>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_mBTqwCumEeOcwILjsIdkdw" name="pureVirtualOp" isAbstract="true">
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_OCGvICw0EeOcwILjsIdkdw" name="iReturn" direction="return">
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
- </ownedParameter>
- </ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_UZnq0Cw0EeOcwILjsIdkdw" name="pureVirtualConstOp" isAbstract="true">
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_jlwd0Cw0EeOcwILjsIdkdw" name="iReturn" direction="return">
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
- </ownedParameter>
- </ownedOperation>
- </packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_OJ7A0CxUEeOcwILjsIdkdw" name="Class6">
- <ownedComment xmi:type="uml:Comment" xmi:id="_XOFuMGwJEeOUiKqqNL5BkQ" annotatedElement="_OJ7A0CxUEeOcwILjsIdkdw">
- <body>Virtual class inheritance and class instantiation</body>
- </ownedComment>
- <generalization xmi:type="uml:Generalization" xmi:id="_ruktUCxbEeOcwILjsIdkdw" general="_hTMV0CumEeOcwILjsIdkdw"/>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_YZNvQCxoEeOcwILjsIdkdw" name="class3" type="_29UM4CrKEeOncLSXAkfRBA" association="_YZOWUCxoEeOcwILjsIdkdw">
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_YZNvQSxoEeOcwILjsIdkdw" value="1"/>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_YZNvQixoEeOcwILjsIdkdw" value="1"/>
- </ownedAttribute>
- </packagedElement>
- <packagedElement xmi:type="uml:Association" xmi:id="_YZOWUCxoEeOcwILjsIdkdw" name="class6_class3_1" memberEnd="_YZOWUSxoEeOcwILjsIdkdw _YZNvQCxoEeOcwILjsIdkdw">
- <ownedEnd xmi:type="uml:Property" xmi:id="_YZOWUSxoEeOcwILjsIdkdw" name="class6" type="_OJ7A0CxUEeOcwILjsIdkdw" association="_YZOWUCxoEeOcwILjsIdkdw">
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_YZOWUixoEeOcwILjsIdkdw"/>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_YZOWUyxoEeOcwILjsIdkdw" value="*"/>
- </ownedEnd>
- </packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_ZqD3YCz9EeOcwILjsIdkdw" name="Class7">
- <ownedAttribute xmi:type="uml:Property" xmi:id="_oxYb0Cz9EeOcwILjsIdkdw" name="externProp" visibility="package">
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
- </ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_1oxvkCz-EeOcwILjsIdkdw" name="staticProp" isStatic="true">
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
- </ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_RHyasC0FEeOcwILjsIdkdw" name="defaultProp">
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
- <defaultValue xmi:type="uml:LiteralInteger" xmi:id="_m7wOYDHIEeOOEc5pE2t6oQ" name="" value="43"/>
- </ownedAttribute>
- </packagedElement>
- <packagedElement xmi:type="uml:Package" xmi:id="_nZ5DgDEmEeOSfbt-FmCdoQ" name="Package1">
- <packagedElement xmi:type="uml:Class" xmi:id="_qS9iYDEmEeOSfbt-FmCdoQ" name="Class8">
- <ownedAttribute xmi:type="uml:Property" xmi:id="_ncw74DEnEeOSfbt-FmCdoQ" name="defaultIValue">
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
- <defaultValue xmi:type="uml:LiteralInteger" xmi:id="_oxQ9wDE0EeOSfbt-FmCdoQ" name="INT_WORLD" value="12"/>
- </ownedAttribute>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_03LAoDEpEeOSfbt-FmCdoQ" name="operation1">
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_LfwXEDEqEeOSfbt-FmCdoQ" name="iVal1">
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
- </ownedParameter>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_e8_WYDErEeOSfbt-FmCdoQ" name="iVal2" effect="read">
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
- <defaultValue xmi:type="uml:LiteralInteger" xmi:id="_8dO2QDEtEeOSfbt-FmCdoQ" name="LOL" value="2"/>
- </ownedParameter>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_g_QwIDErEeOSfbt-FmCdoQ" name="cVal1" effect="update">
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_5lVhgBydEduyofBvg4RL2w"/>
- </ownedParameter>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_mGIjUDErEeOSfbt-FmCdoQ" name="cVal2" effect="delete">
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_5lVhgBydEduyofBvg4RL2w"/>
- </ownedParameter>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_LjgjwDEsEeOSfbt-FmCdoQ" name="this" direction="return">
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ukQ7UDEtEeOSfbt-FmCdoQ" value="1"/>
- <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_ukT-oDEtEeOSfbt-FmCdoQ" value="1"/>
- <defaultValue xmi:type="uml:LiteralInteger" xmi:id="_LjgjwTEsEeOSfbt-FmCdoQ" name="INT_DEFAULT" value="42"/>
- </ownedParameter>
- </ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_18bYgDEpEeOSfbt-FmCdoQ" name="operation2">
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_oEtfUGwEEeOUiKqqNL5BkQ" name="iVal1">
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
- </ownedParameter>
- </ownedOperation>
- </packagedElement>
- <packagedElement xmi:type="uml:Class" xmi:id="_jcK5MDG0EeOOEc5pE2t6oQ" name="Class9">
- <ownedAttribute xmi:type="uml:Property" xmi:id="_mcsD4DG0EeOOEc5pE2t6oQ" name="volatileAttribute">
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
- </ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_nXAXEDG0EeOOEc5pE2t6oQ" name="registerAttribute">
- <ownedComment xmi:type="uml:Comment" xmi:id="_1om3gHx-EeOJEKG9thf66A" annotatedElement="_nXAXEDG0EeOOEc5pE2t6oQ">
- <body>Should not generate 'register' keyword as 'register' only applies to properties declared within the scope of an operation.</body>
- </ownedComment>
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
- </ownedAttribute>
- <ownedAttribute xmi:type="uml:Property" xmi:id="_ogWkwDG0EeOOEc5pE2t6oQ" name="externAttribute" visibility="package">
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
- <defaultValue xmi:type="uml:LiteralInteger" xmi:id="_kT4K4Hx_EeOJEKG9thf66A" name="" value="3"/>
- </ownedAttribute>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_qtEKQHxuEeOJEKG9thf66A" name="volatileIntOperation">
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_ncNyoHxwEeOJEKG9thf66A" direction="return">
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
- </ownedParameter>
- </ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_CTJY0HxxEeOJEKG9thf66A" name="registerOperation">
- <ownedComment xmi:type="uml:Comment" xmi:id="_93hZsHx-EeOJEKG9thf66A" annotatedElement="_CTJY0HxxEeOJEKG9thf66A">
- <body>Should not generate the 'register' keyword as it cannot be used in method signatures.</body>
- </ownedComment>
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_Fs7YEHxxEeOJEKG9thf66A" direction="return">
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
- </ownedParameter>
- </ownedOperation>
- <ownedOperation xmi:type="uml:Operation" xmi:id="_IX230HxyEeOJEKG9thf66A" name="externOperation" visibility="package">
- <ownedParameter xmi:type="uml:Parameter" xmi:id="_Nx8h8HxyEeOJEKG9thf66A" name="" direction="return">
- <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
- </ownedParameter>
- </ownedOperation>
- </packagedElement>
- </packagedElement>
- <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_CS78MCoZEeOncLSXAkfRBA">
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_CTHiYCoZEeOncLSXAkfRBA" source="http://www.eclipse.org/uml2/2.0.0/UML">
- <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/C_Cpp/1#/"/>
- </eAnnotations>
- <appliedProfile xmi:type="uml:Profile" href="pathmap://PapyrusC_Cpp_PROFILES/C_Cpp.profile.uml#_j9REUByGEduN1bTiWJ0lyw"/>
- </profileApplication>
- <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_oCdSgGNyEeO-Le8KnWSqzQ">
- <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_oCxbkGNyEeO-Le8KnWSqzQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
- <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/uml2/5.0.0/UML/Profile/Standard#/"/>
- </eAnnotations>
- <appliedProfile xmi:type="uml:Profile" href="pathmap://UML_PROFILES/Standard.profile.uml#_0"/>
- </profileApplication>
- </uml:Model>
- <C_Cpp:Inline xmi:id="_JIPJUCuIEeOcwILjsIdkdw" base_operation="_HtC9sCuIEeOcwILjsIdkdw"/>
- <C_Cpp:Friend xmi:id="_2YLpACuaEeOcwILjsIdkdw" base_operation="_MZs6ECuIEeOcwILjsIdkdw"/>
- <C_Cpp:Virtual xmi:id="_7PMbQCuaEeOcwILjsIdkdw" base_operation="_6QndgCt2EeOcwILjsIdkdw"/>
- <C_Cpp:Virtual xmi:id="_aQVGICudEeOcwILjsIdkdw" base_operation="_Ub5CUCudEeOcwILjsIdkdw"/>
- <C_Cpp:Ptr xmi:id="_m8i9QCuhEeOcwILjsIdkdw" base_parameter="_aK_y0CugEeOcwILjsIdkdw" declaration=""/>
- <C_Cpp:Ptr xmi:id="_e6lAACujEeOcwILjsIdkdw" base_property="_OIbRcCujEeOcwILjsIdkdw"/>
- <C_Cpp:Ptr xmi:id="_lZJuECw0EeOcwILjsIdkdw" base_parameter="_jlwd0Cw0EeOcwILjsIdkdw"/>
- <C_Cpp:Typedef xmi:id="_sIiEQCxBEeOcwILjsIdkdw" definition="char *" base_primitivetype="_lIB18CxBEeOcwILjsIdkdw"/>
- <C_Cpp:Array xmi:id="_1DLcUCxHEeOcwILjsIdkdw" definition="[13]" base_property="_tJYOgCxHEeOcwILjsIdkdw"/>
- <C_Cpp:Array xmi:id="_H5buoCxeEeOcwILjsIdkdw" definition="[11]={'h','e','l','l','o',' ','w','o','r','l','d'}" base_property="_CWUEUCxeEeOcwILjsIdkdw"/>
- <C_Cpp:NoCodeGen xmi:id="_Sp100CxsEeOcwILjsIdkdw" base_element="_YZOWUCxoEeOcwILjsIdkdw"/>
- <C_Cpp:Include xmi:id="_FXyJoC0AEeOcwILjsIdkdw" header="#define helloworld 3" base_class="_ZqD3YCz9EeOcwILjsIdkdw"/>
- <C_Cpp:Ptr xmi:id="_FeAvgDEIEeOSfbt-FmCdoQ" base_property="_f7m3YDECEeOSfbt-FmCdoQ"/>
- <C_Cpp:Ptr xmi:id="_pmaiADHBEeOOEc5pE2t6oQ" base_property="_NBtLYDHBEeOOEc5pE2t6oQ"/>
- <C_Cpp:Const xmi:id="_uj4IQDHGEeOOEc5pE2t6oQ" base_operation="_fGJ2ADHGEeOOEc5pE2t6oQ"/>
- <C_Cpp:Include xmi:id="_fO_McDHHEeOOEc5pE2t6oQ" body="#include <Class1.h>" base_class="_0E-t0CrKEeOncLSXAkfRBA"/>
- <standard:Create xmi:id="_ts_zcGNyEeO-Le8KnWSqzQ" base_BehavioralFeature="_fvQ-oCraEeOncLSXAkfRBA"/>
- <standard:Destroy xmi:id="_ugUt0GNyEeO-Le8KnWSqzQ" base_BehavioralFeature="_b2v08CraEeOncLSXAkfRBA"/>
- <C_Cpp:Const xmi:id="_XmGNoGdrEeOvh505Y4rydA" base_parameter="_XmDKUGdrEeOvh505Y4rydA"/>
- <C_Cpp:Ref xmi:id="_XmJQ8GdrEeOvh505Y4rydA" base_parameter="_XmDKUGdrEeOvh505Y4rydA"/>
- <C_Cpp:Ptr xmi:id="_4rG88GwcEeOUiKqqNL5BkQ" base_property="_u7S7ADHMEeOOEc5pE2t6oQ"/>
- <standard:Create xmi:id="_gBWuEGweEeOUiKqqNL5BkQ" base_BehavioralFeature="_1ISAACudEeOcwILjsIdkdw"/>
- <standard:Destroy xmi:id="_gt0LcGweEeOUiKqqNL5BkQ" base_BehavioralFeature="_du7T8CudEeOcwILjsIdkdw"/>
- <standard:Destroy xmi:id="_7DEn8GweEeOUiKqqNL5BkQ" base_BehavioralFeature="_Ub5CUCudEeOcwILjsIdkdw"/>
- <standard:Create xmi:id="_8zGbIGweEeOUiKqqNL5BkQ" base_BehavioralFeature="_HV3R8Ct2EeOcwILjsIdkdw"/>
- <standard:Create xmi:id="_9_6zkGweEeOUiKqqNL5BkQ" base_BehavioralFeature="_8h2VwCt1EeOcwILjsIdkdw"/>
- <C_Cpp:Include xmi:id="_ukoB8DcWEeejPb6HKM5TOA" body="#include <CLass2.h>" base_class="_29UM4CrKEeOncLSXAkfRBA" base_Classifier="_29UM4CrKEeOncLSXAkfRBA"/>
- <C_Cpp:Include xmi:id="_A-DQUDcXEeejPb6HKM5TOA" body="#include <Class3.h>" base_class="_-j3HgCrKEeOncLSXAkfRBA" base_Classifier="_-j3HgCrKEeOncLSXAkfRBA"/>
- <C_Cpp:Include xmi:id="_FliY0DcXEeejPb6HKM5TOA" body="#include <Class5.h>
#include <Class3.h>" base_class="_OJ7A0CxUEeOcwILjsIdkdw" base_Classifier="_OJ7A0CxUEeOcwILjsIdkdw"/>
-</xmi:XMI>
+<?xml version="1.0" encoding="UTF-8"?>
+<xmi:XMI xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:C_Cpp="http://www.eclipse.org/papyrus/C_Cpp/1" xmlns:Codegen="http://www.eclipse.org/papyrus/Codegen/1" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:standard="http://www.eclipse.org/uml2/5.0.0/UML/Profile/Standard" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML">
+ <uml:Model xmi:id="_1_ToYCoNEeOncLSXAkfRBA" name="CCodegenTest">
+ <packageImport xmi:type="uml:PackageImport" xmi:id="_1_ToYSoNEeOncLSXAkfRBA">
+ <importedPackage xmi:type="uml:Model" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#_0"/>
+ </packageImport>
+ <packageImport xmi:type="uml:PackageImport" xmi:id="_TaxOkCoTEeOncLSXAkfRBA">
+ <importedPackage xmi:type="uml:Model" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_DV8nkBv8EduZN5aJJITI5w"/>
+ </packageImport>
+ <packagedElement xmi:type="uml:Class" xmi:id="_x6ArECrKEeOncLSXAkfRBA" name="Class1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_U4LD0CrbEeOncLSXAkfRBA" name="iVal" visibility="private">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
+ </ownedAttribute>
+ <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_9--NUCtwEeOcwILjsIdkdw" name="Class1" specification="_fvQ-oCraEeOncLSXAkfRBA">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_XmDKUWdrEeOvh505Y4rydA" name="cSource" type="_x6ArECrKEeOncLSXAkfRBA"/>
+ <language>C/C++</language>
+ <body>self->iVal = cSource.iVal;
</body>
+ </ownedBehavior>
+ <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_KtFesCtxEeOcwILjsIdkdw" name="~Class1" specification="_b2v08CraEeOncLSXAkfRBA">
+ <language>C/C++</language>
+ <body>
+
</body>
+ </ownedBehavior>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_b2v08CraEeOncLSXAkfRBA" name="~Class1" method="_KtFesCtxEeOcwILjsIdkdw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_LY0YwCtwEeOcwILjsIdkdw" annotatedElement="_b2v08CraEeOncLSXAkfRBA">
+ <body>Destructor</body>
+ </ownedComment>
+ </ownedOperation>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_fvQ-oCraEeOncLSXAkfRBA" name="Class1" method="_9--NUCtwEeOcwILjsIdkdw" isQuery="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_PvFOYCtwEeOcwILjsIdkdw" annotatedElement="_fvQ-oCraEeOncLSXAkfRBA">
+ <body>Copy constructor</body>
+ </ownedComment>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_XmDKUGdrEeOvh505Y4rydA" name="cSource" type="_x6ArECrKEeOncLSXAkfRBA"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_13uG0DbvEeejPb6HKM5TOA" name="*self" type="_x6ArECrKEeOncLSXAkfRBA"/>
+ </ownedOperation>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_0E-t0CrKEeOncLSXAkfRBA" name="Class2">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_8hdewCt2EeOcwILjsIdkdw" name="bVal">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_0sh-ADHFEeOOEc5pE2t6oQ" annotatedElement="_8hdewCt2EeOcwILjsIdkdw">
+ <body>boolean value with public visibility</body>
+ </ownedComment>
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_vAIV4I7PEdySGvm5GN66HA"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_NkSbsCt5EeOcwILjsIdkdw" name="iVal1" visibility="protected">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_uOkcEDHFEeOOEc5pE2t6oQ" annotatedElement="_NkSbsCt5EeOcwILjsIdkdw">
+ <body>int value with protected visibility</body>
+ </ownedComment>
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_6uDGwCt-EeOcwILjsIdkdw" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_6uDt0Ct-EeOcwILjsIdkdw" value="1"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_OalxkCt5EeOcwILjsIdkdw" name="iVal2" visibility="private">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_tJ-ykDHFEeOOEc5pE2t6oQ" annotatedElement="_OalxkCt5EeOcwILjsIdkdw">
+ <body>int value with private visibility</body>
+ </ownedComment>
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
+ </ownedAttribute>
+ <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_RB9HUCt3EeOcwILjsIdkdw" name="Class2" specification="_HV3R8Ct2EeOcwILjsIdkdw">
+ <language>C/C++</language>
+ <body>self->iVal1 = newIVal1;
+self->iVal2 = newIVal2;
+self->bVal = newBVal;</body>
+ </ownedBehavior>
+ <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_wrOJMCt5EeOcwILjsIdkdw" name="virtualOp" specification="_6QndgCt2EeOcwILjsIdkdw">
+ <language>C/C++</language>
+ <body></body>
+ </ownedBehavior>
+ <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_X_ZAQCuHEeOcwILjsIdkdw" name="Class2" specification="_8h2VwCt1EeOcwILjsIdkdw">
+ <language>C/C++</language>
+ <body>self->iVal1 = 0;
+self->iVal2 = 0;
+self->bVal = 'f';</body>
+ </ownedBehavior>
+ <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_q-ZzYC0FEeOcwILjsIdkdw" name="inlineOp" specification="_HtC9sCuIEeOcwILjsIdkdw">
+ <language>C/C++</language>
+ <body>return a+b;</body>
+ </ownedBehavior>
+ <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_rqzpYDHGEeOOEc5pE2t6oQ" name="constOps" specification="_fGJ2ADHGEeOOEc5pE2t6oQ">
+ <language>C/C++</language>
+ <body>printf("I am a const method\n");</body>
+ </ownedBehavior>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_8h2VwCt1EeOcwILjsIdkdw" name="Class2_1" method="_X_ZAQCuHEeOcwILjsIdkdw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Cubz0Ct2EeOcwILjsIdkdw" annotatedElement="_8h2VwCt1EeOcwILjsIdkdw">
+ <body>Default constructor</body>
+ </ownedComment>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_vKar4DbwEeejPb6HKM5TOA" name="*self" type="_0E-t0CrKEeOncLSXAkfRBA"/>
+ </ownedOperation>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_HV3R8Ct2EeOcwILjsIdkdw" name="Class2" method="_RB9HUCt3EeOcwILjsIdkdw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_327CQCt2EeOcwILjsIdkdw" annotatedElement="_HV3R8Ct2EeOcwILjsIdkdw">
+ <body>Constructor with parameters</body>
+ </ownedComment>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_1ZSiMCt2EeOcwILjsIdkdw" name="newIVal1">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
+ </ownedParameter>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_f5oS8CuHEeOcwILjsIdkdw" name="newIVal2">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
+ </ownedParameter>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_mBfpECuHEeOcwILjsIdkdw" name="newBVal">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_vAIV4I7PEdySGvm5GN66HA"/>
+ </ownedParameter>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_ALFNADbwEeejPb6HKM5TOA" name="*self" type="_0E-t0CrKEeOncLSXAkfRBA"/>
+ </ownedOperation>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_6QndgCt2EeOcwILjsIdkdw" name="virtualOp" method="_wrOJMCt5EeOcwILjsIdkdw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_6F9lUCt5EeOcwILjsIdkdw" annotatedElement="_6QndgCt2EeOcwILjsIdkdw">
+ <body>Virtual method</body>
+ </ownedComment>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_LmW-oGwgEeOUiKqqNL5BkQ" name="a">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_6j0jABydEduyofBvg4RL2w"/>
+ </ownedParameter>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_NOv4wGwgEeOUiKqqNL5BkQ" name="b">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_6j0jABydEduyofBvg4RL2w"/>
+ </ownedParameter>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_O0AmYGwgEeOUiKqqNL5BkQ" name="" direction="return">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_6j0jABydEduyofBvg4RL2w"/>
+ </ownedParameter>
+ </ownedOperation>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_EOE8cCuIEeOcwILjsIdkdw" name="staticOp" isStatic="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_dGa0YCubEeOcwILjsIdkdw" annotatedElement="_EOE8cCuIEeOcwILjsIdkdw">
+ <body>Static method</body>
+ </ownedComment>
+ </ownedOperation>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_HtC9sCuIEeOcwILjsIdkdw" name="inlineOp" method="_q-ZzYC0FEeOcwILjsIdkdw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_edOPQCubEeOcwILjsIdkdw" annotatedElement="_HtC9sCuIEeOcwILjsIdkdw">
+ <body>Inline method</body>
+ </ownedComment>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_GXNQADHGEeOOEc5pE2t6oQ" name="a">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
+ </ownedParameter>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_IBIbMDHGEeOOEc5pE2t6oQ" name="b">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
+ </ownedParameter>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_X2lQ8DHGEeOOEc5pE2t6oQ" direction="return">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
+ </ownedParameter>
+ </ownedOperation>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_MZs6ECuIEeOcwILjsIdkdw" name="friendOp">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_gnRsACubEeOcwILjsIdkdw" annotatedElement="_MZs6ECuIEeOcwILjsIdkdw">
+ <body>Friend method</body>
+ </ownedComment>
+ </ownedOperation>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_PbnYoCuYEeOcwILjsIdkdw" name="nonStaticOp">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_jPwxMCubEeOcwILjsIdkdw" annotatedElement="_PbnYoCuYEeOcwILjsIdkdw">
+ <body>Non-static method</body>
+ </ownedComment>
+ </ownedOperation>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_WoYhUCuYEeOcwILjsIdkdw" name="paramsOp">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_nGVaICubEeOcwILjsIdkdw" annotatedElement="_WoYhUCuYEeOcwILjsIdkdw">
+ <body>Method with in, out, inout, return parameters</body>
+ </ownedComment>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_e2H-0CuYEeOcwILjsIdkdw" name="in">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
+ </ownedParameter>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_ghAzUCuYEeOcwILjsIdkdw" name="out" direction="out">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
+ </ownedParameter>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_iKAKYCuYEeOcwILjsIdkdw" name="inout" direction="inout">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
+ </ownedParameter>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_lPf7sCuYEeOcwILjsIdkdw" name="ret" direction="return">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
+ </ownedParameter>
+ </ownedOperation>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_C4qY8CuZEeOcwILjsIdkdw" name="voidOp">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_M-gwoDHFEeOOEc5pE2t6oQ" annotatedElement="_C4qY8CuZEeOcwILjsIdkdw">
+ <body>Void Method</body>
+ </ownedComment>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_DHEZoCufEeOcwILjsIdkdw" name="" direction="return">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_8I6RgBydEduyofBvg4RL2w"/>
+ </ownedParameter>
+ </ownedOperation>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Rmpa4CuaEeOcwILjsIdkdw" name="defaultValueOp">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_ovlsYCuaEeOcwILjsIdkdw" name="newIVal1">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
+ <defaultValue xmi:type="uml:LiteralInteger" xmi:id="_ovlsYSuaEeOcwILjsIdkdw" name="DEFAULT_INT"/>
+ </ownedParameter>
+ </ownedOperation>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Ub5CUCudEeOcwILjsIdkdw" name="~Class2">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_9HrlYDHFEeOOEc5pE2t6oQ" annotatedElement="_Ub5CUCudEeOcwILjsIdkdw">
+ <body>Virtual destructor</body>
+ </ownedComment>
+ </ownedOperation>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_MRiIoCugEeOcwILjsIdkdw" name="classesOp">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_Xd-L4CugEeOcwILjsIdkdw" name="c1" type="_x6ArECrKEeOncLSXAkfRBA"/>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_aK_y0CugEeOcwILjsIdkdw" name="" type="_x6ArECrKEeOncLSXAkfRBA" direction="return"/>
+ </ownedOperation>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_fGJ2ADHGEeOOEc5pE2t6oQ" name="constOp" method="_rqzpYDHGEeOOEc5pE2t6oQ">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_sz0qcDHHEeOOEc5pE2t6oQ" annotatedElement="_fGJ2ADHGEeOOEc5pE2t6oQ">
+ <body>Const method</body>
+ </ownedComment>
+ </ownedOperation>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_29UM4CrKEeOncLSXAkfRBA" name="Class3">
+ <generalization xmi:type="uml:Generalization" xmi:id="_EN-zoCt5EeOcwILjsIdkdw" general="_0E-t0CrKEeOncLSXAkfRBA"/>
+ <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_0ekfACt5EeOcwILjsIdkdw" name="virtualOp" specification="_IoFAYCt5EeOcwILjsIdkdw">
+ <language>C/C++</language>
+ <body>return a+b;</body>
+ </ownedBehavior>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_IoFAYCt5EeOcwILjsIdkdw" name="virtualOp" method="_0ekfACt5EeOcwILjsIdkdw">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_4qnosCt5EeOcwILjsIdkdw" annotatedElement="_IoFAYCt5EeOcwILjsIdkdw">
+ <body>Inherited method overriding.</body>
+ </ownedComment>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_7owzgDHJEeOOEc5pE2t6oQ" name="a">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_6j0jABydEduyofBvg4RL2w"/>
+ </ownedParameter>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_991NcDHJEeOOEc5pE2t6oQ" name="b">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_6j0jABydEduyofBvg4RL2w"/>
+ </ownedParameter>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_HsJs4DHKEeOOEc5pE2t6oQ" direction="return">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_6j0jABydEduyofBvg4RL2w"/>
+ </ownedParameter>
+ </ownedOperation>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_du7T8CudEeOcwILjsIdkdw" name="~Class3">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_Fr_C4CueEeOcwILjsIdkdw" annotatedElement="_du7T8CudEeOcwILjsIdkdw">
+ <body>Inherited virtual destructor</body>
+ </ownedComment>
+ </ownedOperation>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_1ISAACudEeOcwILjsIdkdw" name="Class3">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_JBPugCueEeOcwILjsIdkdw" annotatedElement="_1ISAACudEeOcwILjsIdkdw">
+ <body>Default constructor</body>
+ </ownedComment>
+ </ownedOperation>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_-j3HgCrKEeOncLSXAkfRBA" name="Class4">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_OIbRcCujEeOcwILjsIdkdw" name="c3" type="_29UM4CrKEeOncLSXAkfRBA"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_k18HwCw-EeOcwILjsIdkdw" name="charVar">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_5lVhgBydEduyofBvg4RL2w"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_qj4iACw-EeOcwILjsIdkdw" name="doubleVar">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_6j0jABydEduyofBvg4RL2w"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_snupECw-EeOcwILjsIdkdw" name="floatVar">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7W3wkBydEduyofBvg4RL2w"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_u2rM4Cw-EeOcwILjsIdkdw" name="intVar">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ystDQCw-EeOcwILjsIdkdw" name="longVar">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_8heigBydEduyofBvg4RL2w"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_1Yde4Cw-EeOcwILjsIdkdw" name="longDoubleVar">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_DLNPkByeEduyofBvg4RL2w"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_-XZv0Cw-EeOcwILjsIdkdw" name="shortVar">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_K-lFQByeEduyofBvg4RL2w"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Aj1LICw_EeOcwILjsIdkdw" name="unsignedIntVar">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_LTZesByeEduyofBvg4RL2w"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_UexPkCw_EeOcwILjsIdkdw" name="unsignedShortVar">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_V5vyUByeEduyofBvg4RL2w"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_bIofgCw_EeOcwILjsIdkdw" name="unsignedCharVar">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_YYWiwByeEduyofBvg4RL2w"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ddUe8Cw_EeOcwILjsIdkdw" name="unsignedLongVar">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_a1wZUByeEduyofBvg4RL2w"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_f2ShcCw_EeOcwILjsIdkdw" name="boolVar">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_vAIV4I7PEdySGvm5GN66HA"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_tJYOgCxHEeOcwILjsIdkdw" name="arrayDoubleDefault">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_6j0jABydEduyofBvg4RL2w"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_CWUEUCxeEeOcwILjsIdkdw" name="arrayCharInit">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_5lVhgBydEduyofBvg4RL2w"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_f7m3YDECEeOSfbt-FmCdoQ" name="charString">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_5lVhgBydEduyofBvg4RL2w"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_NBtLYDHBEeOOEc5pE2t6oQ" name="ptrChar">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_5lVhgBydEduyofBvg4RL2w"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_u7S7ADHMEeOOEc5pE2t6oQ" name="charStringStaticInit" isStatic="true">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_5lVhgBydEduyofBvg4RL2w"/>
+ <defaultValue xmi:type="uml:LiteralString" xmi:id="_FT8swGwdEeOUiKqqNL5BkQ" value=""Hello World""/>
+ </ownedAttribute>
+ <nestedClassifier xmi:type="uml:PrimitiveType" xmi:id="_lIB18CxBEeOcwILjsIdkdw" name="pChar"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_hTMV0CumEeOcwILjsIdkdw" name="Class5" isAbstract="true">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_kJlUICumEeOcwILjsIdkdw" annotatedElement="_hTMV0CumEeOcwILjsIdkdw">
+ <body>C++ Virtual Interface</body>
+ </ownedComment>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_u_QOYCxwEeOcwILjsIdkdw" name="externalProp">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
+ </ownedAttribute>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_mBTqwCumEeOcwILjsIdkdw" name="pureVirtualOp" isAbstract="true">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_OCGvICw0EeOcwILjsIdkdw" name="iReturn" direction="return">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
+ </ownedParameter>
+ </ownedOperation>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_UZnq0Cw0EeOcwILjsIdkdw" name="pureVirtualConstOp" isAbstract="true">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_jlwd0Cw0EeOcwILjsIdkdw" name="iReturn" direction="return">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
+ </ownedParameter>
+ </ownedOperation>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_OJ7A0CxUEeOcwILjsIdkdw" name="Class6">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_XOFuMGwJEeOUiKqqNL5BkQ" annotatedElement="_OJ7A0CxUEeOcwILjsIdkdw">
+ <body>Virtual class inheritance and class instantiation</body>
+ </ownedComment>
+ <generalization xmi:type="uml:Generalization" xmi:id="_ruktUCxbEeOcwILjsIdkdw" general="_hTMV0CumEeOcwILjsIdkdw"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_YZNvQCxoEeOcwILjsIdkdw" name="class3" type="_29UM4CrKEeOncLSXAkfRBA" association="_YZOWUCxoEeOcwILjsIdkdw">
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_YZNvQSxoEeOcwILjsIdkdw" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_YZNvQixoEeOcwILjsIdkdw" value="1"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Association" xmi:id="_YZOWUCxoEeOcwILjsIdkdw" name="class6_class3_1" memberEnd="_YZOWUSxoEeOcwILjsIdkdw _YZNvQCxoEeOcwILjsIdkdw">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_YZOWUSxoEeOcwILjsIdkdw" name="class6" type="_OJ7A0CxUEeOcwILjsIdkdw" association="_YZOWUCxoEeOcwILjsIdkdw">
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_YZOWUixoEeOcwILjsIdkdw"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_YZOWUyxoEeOcwILjsIdkdw" value="*"/>
+ </ownedEnd>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ZqD3YCz9EeOcwILjsIdkdw" name="Class7">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_oxYb0Cz9EeOcwILjsIdkdw" name="externProp" visibility="package">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_1oxvkCz-EeOcwILjsIdkdw" name="staticProp" isStatic="true">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_RHyasC0FEeOcwILjsIdkdw" name="defaultProp">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
+ <defaultValue xmi:type="uml:LiteralInteger" xmi:id="_m7wOYDHIEeOOEc5pE2t6oQ" name="" value="43"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Package" xmi:id="_nZ5DgDEmEeOSfbt-FmCdoQ" name="Package1">
+ <packagedElement xmi:type="uml:Class" xmi:id="_qS9iYDEmEeOSfbt-FmCdoQ" name="Class8">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ncw74DEnEeOSfbt-FmCdoQ" name="defaultIValue">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
+ <defaultValue xmi:type="uml:LiteralInteger" xmi:id="_oxQ9wDE0EeOSfbt-FmCdoQ" name="INT_WORLD" value="12"/>
+ </ownedAttribute>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_03LAoDEpEeOSfbt-FmCdoQ" name="operation1">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_LfwXEDEqEeOSfbt-FmCdoQ" name="iVal1">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
+ </ownedParameter>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_e8_WYDErEeOSfbt-FmCdoQ" name="iVal2" effect="read">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
+ <defaultValue xmi:type="uml:LiteralInteger" xmi:id="_8dO2QDEtEeOSfbt-FmCdoQ" name="LOL" value="2"/>
+ </ownedParameter>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_g_QwIDErEeOSfbt-FmCdoQ" name="cVal1" effect="update">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_5lVhgBydEduyofBvg4RL2w"/>
+ </ownedParameter>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_mGIjUDErEeOSfbt-FmCdoQ" name="cVal2" effect="delete">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_5lVhgBydEduyofBvg4RL2w"/>
+ </ownedParameter>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_LjgjwDEsEeOSfbt-FmCdoQ" name="this" direction="return">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ukQ7UDEtEeOSfbt-FmCdoQ" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_ukT-oDEtEeOSfbt-FmCdoQ" value="1"/>
+ <defaultValue xmi:type="uml:LiteralInteger" xmi:id="_LjgjwTEsEeOSfbt-FmCdoQ" name="INT_DEFAULT" value="42"/>
+ </ownedParameter>
+ </ownedOperation>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_18bYgDEpEeOSfbt-FmCdoQ" name="operation2">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_oEtfUGwEEeOUiKqqNL5BkQ" name="iVal1">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
+ </ownedParameter>
+ </ownedOperation>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_jcK5MDG0EeOOEc5pE2t6oQ" name="Class9">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_mcsD4DG0EeOOEc5pE2t6oQ" name="volatileAttribute">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_nXAXEDG0EeOOEc5pE2t6oQ" name="registerAttribute">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_1om3gHx-EeOJEKG9thf66A" annotatedElement="_nXAXEDG0EeOOEc5pE2t6oQ">
+ <body>Should not generate 'register' keyword as 'register' only applies to properties declared within the scope of an operation.</body>
+ </ownedComment>
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ogWkwDG0EeOOEc5pE2t6oQ" name="externAttribute" visibility="package">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
+ <defaultValue xmi:type="uml:LiteralInteger" xmi:id="_kT4K4Hx_EeOJEKG9thf66A" name="" value="3"/>
+ </ownedAttribute>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_qtEKQHxuEeOJEKG9thf66A" name="volatileIntOperation">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_ncNyoHxwEeOJEKG9thf66A" direction="return">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
+ </ownedParameter>
+ </ownedOperation>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_CTJY0HxxEeOJEKG9thf66A" name="registerOperation">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_93hZsHx-EeOJEKG9thf66A" annotatedElement="_CTJY0HxxEeOJEKG9thf66A">
+ <body>Should not generate the 'register' keyword as it cannot be used in method signatures.</body>
+ </ownedComment>
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_Fs7YEHxxEeOJEKG9thf66A" direction="return">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
+ </ownedParameter>
+ </ownedOperation>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_IX230HxyEeOJEKG9thf66A" name="externOperation" visibility="package">
+ <ownedParameter xmi:type="uml:Parameter" xmi:id="_Nx8h8HxyEeOJEKG9thf66A" name="" direction="return">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_7wRIABydEduyofBvg4RL2w"/>
+ </ownedParameter>
+ </ownedOperation>
+ </packagedElement>
+ </packagedElement>
+ <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_CS78MCoZEeOncLSXAkfRBA">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_CTHiYCoZEeOncLSXAkfRBA" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/C_Cpp/1#/"/>
+ </eAnnotations>
+ <appliedProfile xmi:type="uml:Profile" href="pathmap://PapyrusC_Cpp_PROFILES/C_Cpp.profile.uml#_j9REUByGEduN1bTiWJ0lyw"/>
+ </profileApplication>
+ <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_oCdSgGNyEeO-Le8KnWSqzQ">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_oCxbkGNyEeO-Le8KnWSqzQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/uml2/5.0.0/UML/Profile/Standard#/"/>
+ </eAnnotations>
+ <appliedProfile xmi:type="uml:Profile" href="pathmap://UML_PROFILES/Standard.profile.uml#_0"/>
+ </profileApplication>
+ <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_Jiss4IJbEeqNJspmoZA5fA">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_JivwMIJbEeqNJspmoZA5fA" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/Codegen/1#/"/>
+ </eAnnotations>
+ <appliedProfile xmi:type="uml:Profile" href="pathmap://Codegen_PROFILES/Codegen.profile.uml#_fPDsIBa-EearhdjjJ6cVzQ"/>
+ </profileApplication>
+ </uml:Model>
+ <C_Cpp:Inline xmi:id="_JIPJUCuIEeOcwILjsIdkdw" base_operation="_HtC9sCuIEeOcwILjsIdkdw"/>
+ <C_Cpp:Friend xmi:id="_2YLpACuaEeOcwILjsIdkdw" base_operation="_MZs6ECuIEeOcwILjsIdkdw"/>
+ <C_Cpp:Virtual xmi:id="_7PMbQCuaEeOcwILjsIdkdw" base_operation="_6QndgCt2EeOcwILjsIdkdw"/>
+ <C_Cpp:Virtual xmi:id="_aQVGICudEeOcwILjsIdkdw" base_operation="_Ub5CUCudEeOcwILjsIdkdw"/>
+ <C_Cpp:Ptr xmi:id="_m8i9QCuhEeOcwILjsIdkdw" base_parameter="_aK_y0CugEeOcwILjsIdkdw" declaration=""/>
+ <C_Cpp:Ptr xmi:id="_e6lAACujEeOcwILjsIdkdw" base_property="_OIbRcCujEeOcwILjsIdkdw"/>
+ <C_Cpp:Ptr xmi:id="_lZJuECw0EeOcwILjsIdkdw" base_parameter="_jlwd0Cw0EeOcwILjsIdkdw"/>
+ <C_Cpp:Typedef xmi:id="_sIiEQCxBEeOcwILjsIdkdw" definition="char *" base_primitivetype="_lIB18CxBEeOcwILjsIdkdw"/>
+ <C_Cpp:Array xmi:id="_1DLcUCxHEeOcwILjsIdkdw" definition="[13]" base_property="_tJYOgCxHEeOcwILjsIdkdw"/>
+ <C_Cpp:Array xmi:id="_H5buoCxeEeOcwILjsIdkdw" definition="[11]={'h','e','l','l','o',' ','w','o','r','l','d'}" base_property="_CWUEUCxeEeOcwILjsIdkdw"/>
+ <C_Cpp:Include xmi:id="_FXyJoC0AEeOcwILjsIdkdw" header="#define helloworld 3" base_class="_ZqD3YCz9EeOcwILjsIdkdw" base_Classifier="_ZqD3YCz9EeOcwILjsIdkdw"/>
+ <C_Cpp:Ptr xmi:id="_FeAvgDEIEeOSfbt-FmCdoQ" base_property="_f7m3YDECEeOSfbt-FmCdoQ"/>
+ <C_Cpp:Ptr xmi:id="_pmaiADHBEeOOEc5pE2t6oQ" base_property="_NBtLYDHBEeOOEc5pE2t6oQ"/>
+ <C_Cpp:Const xmi:id="_uj4IQDHGEeOOEc5pE2t6oQ" base_operation="_fGJ2ADHGEeOOEc5pE2t6oQ"/>
+ <C_Cpp:Include xmi:id="_fO_McDHHEeOOEc5pE2t6oQ" body="#include <Class1.h>" base_class="_0E-t0CrKEeOncLSXAkfRBA" base_Classifier="_0E-t0CrKEeOncLSXAkfRBA"/>
+ <standard:Create xmi:id="_ts_zcGNyEeO-Le8KnWSqzQ" base_BehavioralFeature="_fvQ-oCraEeOncLSXAkfRBA"/>
+ <standard:Destroy xmi:id="_ugUt0GNyEeO-Le8KnWSqzQ" base_BehavioralFeature="_b2v08CraEeOncLSXAkfRBA"/>
+ <C_Cpp:Const xmi:id="_XmGNoGdrEeOvh505Y4rydA" base_parameter="_XmDKUGdrEeOvh505Y4rydA"/>
+ <C_Cpp:Ref xmi:id="_XmJQ8GdrEeOvh505Y4rydA" base_parameter="_XmDKUGdrEeOvh505Y4rydA"/>
+ <C_Cpp:Ptr xmi:id="_4rG88GwcEeOUiKqqNL5BkQ" base_property="_u7S7ADHMEeOOEc5pE2t6oQ"/>
+ <standard:Create xmi:id="_gBWuEGweEeOUiKqqNL5BkQ" base_BehavioralFeature="_1ISAACudEeOcwILjsIdkdw"/>
+ <standard:Destroy xmi:id="_gt0LcGweEeOUiKqqNL5BkQ" base_BehavioralFeature="_du7T8CudEeOcwILjsIdkdw"/>
+ <standard:Destroy xmi:id="_7DEn8GweEeOUiKqqNL5BkQ" base_BehavioralFeature="_Ub5CUCudEeOcwILjsIdkdw"/>
+ <standard:Create xmi:id="_8zGbIGweEeOUiKqqNL5BkQ" base_BehavioralFeature="_HV3R8Ct2EeOcwILjsIdkdw"/>
+ <standard:Create xmi:id="_9_6zkGweEeOUiKqqNL5BkQ" base_BehavioralFeature="_8h2VwCt1EeOcwILjsIdkdw"/>
+ <C_Cpp:Include xmi:id="_ukoB8DcWEeejPb6HKM5TOA" body="#include <Class1.h>
#include <Class2.h>" base_class="_29UM4CrKEeOncLSXAkfRBA" base_Classifier="_29UM4CrKEeOncLSXAkfRBA"/>
+ <C_Cpp:Include xmi:id="_A-DQUDcXEeejPb6HKM5TOA" body="#include <Class3.h>" base_class="_-j3HgCrKEeOncLSXAkfRBA" base_Classifier="_-j3HgCrKEeOncLSXAkfRBA"/>
+ <C_Cpp:Include xmi:id="_FliY0DcXEeejPb6HKM5TOA" body="#include <Class5.h>
#include <Class3.h>" base_class="_OJ7A0CxUEeOcwILjsIdkdw" base_Classifier="_OJ7A0CxUEeOcwILjsIdkdw"/>
+ <Codegen:NoCodeGen xmi:id="_K7mZgIJbEeqNJspmoZA5fA" base_Element="_YZOWUCxoEeOcwILjsIdkdw"/>
+ <Codegen:GeneratorHint xmi:id="_6r2_AIJbEeqDZOQT-Tr1OQ" base_Element="_1_ToYCoNEeOncLSXAkfRBA" generatorID="Standard C">
+ <language xmi:type="Codegen:Language" href="pathmap://Codegen_PROFILES/languages.uml#_38rh8CjREeayco6FJ_OtTQ"/>
+ </Codegen:GeneratorHint>
+</xmi:XMI>
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.tests/src/org/eclipse/papyrus/designer/languages/c/codegen/tests/CCodegenTest.java b/languages/c/org.eclipse.papyrus.designer.languages.c.tests/src/org/eclipse/papyrus/designer/languages/c/codegen/tests/CCodegenTest.java
index a28bcda..51c4bc4 100644
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.tests/src/org/eclipse/papyrus/designer/languages/c/codegen/tests/CCodegenTest.java
+++ b/languages/c/org.eclipse.papyrus.designer.languages.c.tests/src/org/eclipse/papyrus/designer/languages/c/codegen/tests/CCodegenTest.java
@@ -43,7 +43,7 @@
TestInfo.runHeadless();
}
- private static final String GENERATE_COMMAND_ID = "org.eclipse.papyrus.designer.languages.c.codegen.command";
+ private static final String GENERATE_COMMAND_ID = "org.eclipse.papyrus.designer.languages.common.codegen.command";
private static final String ModelName = "CCodegenTest.uml";
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.tests/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/tests/AllPapyrusCCodegenTests.class b/languages/c/org.eclipse.papyrus.designer.languages.c.tests/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/tests/AllPapyrusCCodegenTests.class
deleted file mode 100644
index c25f2d9..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.tests/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/tests/AllPapyrusCCodegenTests.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.tests/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/tests/CCodegenTest.class b/languages/c/org.eclipse.papyrus.designer.languages.c.tests/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/tests/CCodegenTest.class
deleted file mode 100644
index 7ee05ef..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.tests/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/tests/CCodegenTest.class
+++ /dev/null
Binary files differ
diff --git a/languages/c/org.eclipse.papyrus.designer.languages.c.tests/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/tests/TestPlugin.class b/languages/c/org.eclipse.papyrus.designer.languages.c.tests/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/tests/TestPlugin.class
deleted file mode 100644
index f01946d..0000000
--- a/languages/c/org.eclipse.papyrus.designer.languages.c.tests/target/classes/org/eclipse/papyrus/designer/languages/c/codegen/tests/TestPlugin.class
+++ /dev/null
Binary files differ