Bug 580187 - [Designer, releng] Create a minimal feature/RCP for code generation - Move handlers into separate UI plugin (avoid UI dependency in code generators) - Move static rewrite function into transformation context Change-Id: Id453bb25452acf8870cec093a6c0b453b56824c8 Signed-off-by: aradermache <ansgar.radermacher@cea.fr>
diff --git a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.cdteditor/META-INF/MANIFEST.MF b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.cdteditor/META-INF/MANIFEST.MF index 9778c3c..2e6dee0 100644 --- a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.cdteditor/META-INF/MANIFEST.MF +++ b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.cdteditor/META-INF/MANIFEST.MF
@@ -34,7 +34,8 @@ org.eclipse.papyrus.infra.ui;bundle-version="[2.1.0,4.0.0)", org.eclipse.ui.ide;bundle-version="[3.17.0,4.0.0)", org.eclipse.papyrus.designer.uml.tools.utils;bundle-version="3.0.0", - org.eclipse.papyrus.designer.languages.common.base;bundle-version="3.0.0" + org.eclipse.papyrus.designer.languages.common.base;bundle-version="3.0.0", + org.eclipse.papyrus.designer.infra.ui;bundle-version="3.0.0" Bundle-Vendor: %providerName Bundle-ActivationPolicy: lazy Bundle-Version: 0.8.0.qualifier
diff --git a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.cdteditor/src/org/eclipse/papyrus/robotics/ros2/cdteditor/sync/SyncRoboticsModelToCDT.java b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.cdteditor/src/org/eclipse/papyrus/robotics/ros2/cdteditor/sync/SyncRoboticsModelToCDT.java index 8fa821a..d8d316f 100644 --- a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.cdteditor/src/org/eclipse/papyrus/robotics/ros2/cdteditor/sync/SyncRoboticsModelToCDT.java +++ b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.cdteditor/src/org/eclipse/papyrus/robotics/ros2/cdteditor/sync/SyncRoboticsModelToCDT.java
@@ -22,11 +22,11 @@ import org.eclipse.core.runtime.CoreException; import org.eclipse.core.runtime.Path; import org.eclipse.core.runtime.jobs.Job; +import org.eclipse.papyrus.designer.infra.ui.UIProjectManagement; import org.eclipse.papyrus.designer.languages.common.extensionpoints.ILangCodegen; import org.eclipse.papyrus.designer.languages.common.extensionpoints.ILangCodegen.FILE_KIND; import org.eclipse.papyrus.designer.languages.common.extensionpoints.LanguageCodegen; import org.eclipse.papyrus.designer.languages.cpp.codegen.Constants; -import org.eclipse.papyrus.designer.transformation.base.utils.ProjectManagement; import org.eclipse.papyrus.infra.core.Activator; import org.eclipse.papyrus.robotics.codegen.common.utils.PackageTools; import org.eclipse.papyrus.robotics.ros2.cdteditor.TextEditorConstants; @@ -56,7 +56,7 @@ final Package pkg = PackageUtil.getRootPackage((Class) classifier); - Job job = new CppGenJob(pkg, ProjectManagement.getCurrentProject()); + Job job = new CppGenJob(pkg, UIProjectManagement.getCurrentProject()); job.setUser(true); job.schedule();
diff --git a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.common/src/org/eclipse/papyrus/robotics/ros2/codegen/common/RoboticsTContext.java b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.common/src/org/eclipse/papyrus/robotics/ros2/codegen/common/RoboticsTContext.java index d265ec2..1f2389f 100644 --- a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.common/src/org/eclipse/papyrus/robotics/ros2/codegen/common/RoboticsTContext.java +++ b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.common/src/org/eclipse/papyrus/robotics/ros2/codegen/common/RoboticsTContext.java
@@ -33,4 +33,22 @@ * A reference to language specific transformations */ public LangSpecificTransformations lst; + + /** + * return true, if the passed project should be rewritten + * + * @param projectName + * a name identifying a project + * @return + */ + public static boolean rewriteProject(String projectName) { + Map<String, Boolean> rewriteMap = current.rewriteMap; + if (rewriteMap != null) { + if (!rewriteMap.containsKey(projectName)) { + rewriteMap.put(projectName, true); + return true; + } + } + return false; + } }
diff --git a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui/.classpath b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui/.classpath new file mode 100644 index 0000000..bc57d23 --- /dev/null +++ b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui/.classpath
@@ -0,0 +1,7 @@ +<?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-11"/> + <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/> + <classpathentry kind="src" path="src/"/> + <classpathentry kind="output" path="target/classes"/> +</classpath>
diff --git a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui/.gitignore b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui/.gitignore new file mode 100644 index 0000000..5500bf7 --- /dev/null +++ b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui/.gitignore
@@ -0,0 +1 @@ +tmpModel
diff --git a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui/.project b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui/.project new file mode 100644 index 0000000..3f21582 --- /dev/null +++ b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui/.project
@@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui</name> + <comment></comment> + <projects> + </projects> + <buildSpec> + <buildCommand> + <name>org.eclipse.jdt.core.javabuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.pde.ManifestBuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.pde.SchemaBuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.m2e.core.maven2Builder</name> + <arguments> + </arguments> + </buildCommand> + </buildSpec> + <natures> + <nature>org.eclipse.m2e.core.maven2Nature</nature> + <nature>org.eclipse.pde.PluginNature</nature> + <nature>org.eclipse.jdt.core.javanature</nature> + </natures> +</projectDescription>
diff --git a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui/.settings/org.eclipse.core.resources.prefs b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui/.settings/org.eclipse.core.resources.prefs new file mode 100644 index 0000000..99f26c0 --- /dev/null +++ b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,2 @@ +eclipse.preferences.version=1 +encoding/<project>=UTF-8
diff --git a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui/.settings/org.eclipse.jdt.core.prefs b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 0000000..f4d933e --- /dev/null +++ b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,7 @@ +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled +org.eclipse.jdt.core.compiler.codegen.targetPlatform=11 +org.eclipse.jdt.core.compiler.compliance=11 +org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.enumIdentifier=error +org.eclipse.jdt.core.compiler.source=11
diff --git a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui/.settings/org.eclipse.m2e.core.prefs b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui/.settings/org.eclipse.m2e.core.prefs new file mode 100644 index 0000000..f897a7f --- /dev/null +++ b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui/.settings/org.eclipse.m2e.core.prefs
@@ -0,0 +1,4 @@ +activeProfiles= +eclipse.preferences.version=1 +resolveWorkspaceProjects=true +version=1
diff --git a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui/.settings/org.eclipse.xtend.core.Xtend.prefs b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui/.settings/org.eclipse.xtend.core.Xtend.prefs new file mode 100644 index 0000000..df3c3c4 --- /dev/null +++ b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui/.settings/org.eclipse.xtend.core.Xtend.prefs
@@ -0,0 +1,6 @@ +//outlet.DEFAULT_OUTPUT.sourceFolder.src/main/java.directory=xtend-gen +BuilderConfiguration.is_project_specific=true +eclipse.preferences.version=1 +outlet.DEFAULT_OUTPUT.hideLocalSyntheticVariables=true +outlet.DEFAULT_OUTPUT.installDslAsPrimarySource=false +outlet.DEFAULT_OUTPUT.userOutputPerSourceFolder=true
diff --git a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui/META-INF/MANIFEST.MF b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui/META-INF/MANIFEST.MF new file mode 100644 index 0000000..2f4b56f --- /dev/null +++ b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui/META-INF/MANIFEST.MF
@@ -0,0 +1,22 @@ +Manifest-Version: 1.0 +Export-Package: org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui +Require-Bundle: org.eclipse.ui;bundle-version="3.0.0", + org.eclipse.core.runtime;bundle-version="3.0.0", + org.eclipse.papyrus.robotics.ros2.codegen.cpp;bundle-version="0.8.0", + org.eclipse.papyrus.robotics.ros2.codegen.common;bundle-version="0.8.0", + org.eclipse.papyrus.designer.infra.ui, + org.eclipse.papyrus.designer.transformation.core, + org.eclipse.papyrus.designer.transformation.profile, + org.eclipse.papyrus.designer.uml.tools.utils, + org.eclipse.papyrus.uml.diagram.common, + org.eclipse.core.resources;bundle-version="3.0.0" +Bundle-Vendor: %providerName +Bundle-ActivationPolicy: lazy +Bundle-Version: 0.8.0.qualifier +Bundle-Localization: plugin +Bundle-Name: %pluginName +Bundle-Activator: org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui.Activator +Bundle-ManifestVersion: 2 +Bundle-SymbolicName: org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui;singleton:=true +Bundle-RequiredExecutionEnvironment: JavaSE-11 +Automatic-Module-Name: org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui
diff --git a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui/about.html b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui/about.html new file mode 100644 index 0000000..778e1ba --- /dev/null +++ b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui/about.html
@@ -0,0 +1,27 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" + "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> +<html xmlns="http://www.w3.org/1999/xhtml"> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/> +<title>About</title> +</head> +<body lang="EN-US"> +<h2>About This Content</h2> + +<h3>License</h3> + +<p>The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise +indicated below, the Content is provided to you under the terms and conditions of the +Eclipse Public License Version 2.0 ("EPL"). A copy of the EPL is available +at <a href="https://www.eclipse.org/legal/epl-2.0/">https://www.eclipse.org/legal/epl-2.0/</a>. +For purposes of the EPL, "Program" will mean the Content.</p> + +<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is +being redistributed by another party ("Redistributor") and different terms and conditions may +apply to your use of any object code in the Content. Check the Redistributor's license that was +provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise +indicated below, the terms and conditions of the EPL still apply to any source code in the Content +and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p> + +</body> +</html>
diff --git a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui/build.properties b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui/build.properties new file mode 100644 index 0000000..cf8677c --- /dev/null +++ b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui/build.properties
@@ -0,0 +1,13 @@ +# +#Thu Jun 28 15:46:18 CEST 2012 +bin.includes = META-INF/,\ + .,\ + models/,\ + plugin.xml,\ + .classpath,\ + .project,\ + about.html,\ + plugin.properties +src.includes = models/,\ + about.html +source.. = src/
diff --git a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui/models/library/rclcppLibrary.di b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui/models/library/rclcppLibrary.di new file mode 100644 index 0000000..8c549ee --- /dev/null +++ b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui/models/library/rclcppLibrary.di
@@ -0,0 +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"/>
diff --git a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui/models/library/rclcppLibrary.notation b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui/models/library/rclcppLibrary.notation new file mode 100644 index 0000000..3402f5a --- /dev/null +++ b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui/models/library/rclcppLibrary.notation
@@ -0,0 +1,834 @@ +<?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.3/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="_DtbcUG_GEeiX6ta975XXMg" type="PapyrusUMLClassDiagram" name="rclcpp diagram" measurementUnit="Pixel"> + <children xmi:type="notation:Shape" xmi:id="_E80noG_GEeiX6ta975XXMg" type="Class_Shape"> + <children xmi:type="notation:DecorationNode" xmi:id="_E81OsG_GEeiX6ta975XXMg" type="Class_NameLabel"/> + <children xmi:type="notation:DecorationNode" xmi:id="_E81OsW_GEeiX6ta975XXMg" type="Class_FloatingNameLabel"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_E81Osm_GEeiX6ta975XXMg" y="15"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_E81Os2_GEeiX6ta975XXMg" visible="false" type="Class_AttributeCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_E81OtG_GEeiX6ta975XXMg"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_E81OtW_GEeiX6ta975XXMg"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_E81Otm_GEeiX6ta975XXMg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_E81Ot2_GEeiX6ta975XXMg"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_E81OuG_GEeiX6ta975XXMg" visible="false" type="Class_OperationCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_E81OuW_GEeiX6ta975XXMg"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_E81Oum_GEeiX6ta975XXMg"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_E81Ou2_GEeiX6ta975XXMg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_E81OvG_GEeiX6ta975XXMg"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_E811wG_GEeiX6ta975XXMg" visible="false" type="Class_NestedClassifierCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_E811wW_GEeiX6ta975XXMg"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_E811wm_GEeiX6ta975XXMg"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_E811w2_GEeiX6ta975XXMg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_E811xG_GEeiX6ta975XXMg"/> + </children> + <element xmi:type="uml:Class" href="rclcppLibrary.uml#_E8zZgG_GEeiX6ta975XXMg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_E80noW_GEeiX6ta975XXMg" x="60" y="40" width="121" height="61"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_GhKIMG_GEeiX6ta975XXMg" type="Class_Shape"> + <children xmi:type="notation:DecorationNode" xmi:id="_GhKvQG_GEeiX6ta975XXMg" type="Class_NameLabel"/> + <children xmi:type="notation:DecorationNode" xmi:id="_GhKvQW_GEeiX6ta975XXMg" type="Class_FloatingNameLabel"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_GhKvQm_GEeiX6ta975XXMg" y="15"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_GhKvQ2_GEeiX6ta975XXMg" visible="false" type="Class_AttributeCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_GhKvRG_GEeiX6ta975XXMg"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_GhKvRW_GEeiX6ta975XXMg"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_GhKvRm_GEeiX6ta975XXMg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GhKvR2_GEeiX6ta975XXMg"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_GhKvSG_GEeiX6ta975XXMg" visible="false" type="Class_OperationCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_GhKvSW_GEeiX6ta975XXMg"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_GhKvSm_GEeiX6ta975XXMg"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_GhKvS2_GEeiX6ta975XXMg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GhKvTG_GEeiX6ta975XXMg"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_GhKvTW_GEeiX6ta975XXMg" visible="false" type="Class_NestedClassifierCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_GhKvTm_GEeiX6ta975XXMg"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_GhKvT2_GEeiX6ta975XXMg"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_GhKvUG_GEeiX6ta975XXMg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GhKvUW_GEeiX6ta975XXMg"/> + </children> + <element xmi:type="uml:Class" href="rclcppLibrary.uml#_GhJhIG_GEeiX6ta975XXMg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GhKIMW_GEeiX6ta975XXMg" x="240" y="40" width="121" height="61"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_z3zUUHSPEeispf19VVdJXQ" type="Class_Shape"> + <children xmi:type="notation:DecorationNode" xmi:id="_z37QIHSPEeispf19VVdJXQ" type="Class_NameLabel"/> + <children xmi:type="notation:DecorationNode" xmi:id="_z37QIXSPEeispf19VVdJXQ" type="Class_FloatingNameLabel"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_z37QInSPEeispf19VVdJXQ" y="15"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_z373MHSPEeispf19VVdJXQ" visible="false" type="Class_AttributeCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_z373MXSPEeispf19VVdJXQ"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_z373MnSPEeispf19VVdJXQ"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_z373M3SPEeispf19VVdJXQ"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_z373NHSPEeispf19VVdJXQ"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_z373NXSPEeispf19VVdJXQ" visible="false" type="Class_OperationCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_z373NnSPEeispf19VVdJXQ"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_z373N3SPEeispf19VVdJXQ"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_z373OHSPEeispf19VVdJXQ"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_z373OXSPEeispf19VVdJXQ"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_z373OnSPEeispf19VVdJXQ" visible="false" type="Class_NestedClassifierCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_z373O3SPEeispf19VVdJXQ"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_z373PHSPEeispf19VVdJXQ"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_z373PXSPEeispf19VVdJXQ"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_z373PnSPEeispf19VVdJXQ"/> + </children> + <element xmi:type="uml:Class" href="rclcppLibrary.uml#_z3vp8HSPEeispf19VVdJXQ"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_z3zUUXSPEeispf19VVdJXQ" x="240" y="120" width="121" height="61"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_l6F4YHuXEeiEh8urkKbENw" type="Class_Shape"> + <children xmi:type="notation:DecorationNode" xmi:id="_l6LX8HuXEeiEh8urkKbENw" type="Class_NameLabel"/> + <children xmi:type="notation:DecorationNode" xmi:id="_l6L_AHuXEeiEh8urkKbENw" type="Class_FloatingNameLabel"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_l6L_AXuXEeiEh8urkKbENw" y="15"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_l6MmEHuXEeiEh8urkKbENw" visible="false" type="Class_AttributeCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_l6MmEXuXEeiEh8urkKbENw"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_l6MmEnuXEeiEh8urkKbENw"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_l6MmE3uXEeiEh8urkKbENw"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_l6MmFHuXEeiEh8urkKbENw"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_l6MmFXuXEeiEh8urkKbENw" visible="false" type="Class_OperationCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_l6MmFnuXEeiEh8urkKbENw"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_l6MmF3uXEeiEh8urkKbENw"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_l6MmGHuXEeiEh8urkKbENw"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_l6MmGXuXEeiEh8urkKbENw"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_l6MmGnuXEeiEh8urkKbENw" visible="false" type="Class_NestedClassifierCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_l6MmG3uXEeiEh8urkKbENw"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_l6MmHHuXEeiEh8urkKbENw"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_l6MmHXuXEeiEh8urkKbENw"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_l6MmHnuXEeiEh8urkKbENw"/> + </children> + <element xmi:type="uml:Class" href="rclcppLibrary.uml#_lz5w0HuXEeiEh8urkKbENw"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_l6F4YXuXEeiEh8urkKbENw" x="420" y="40" width="121" height="61"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_nYR4MHuYEein8bPYf9iOdw" type="Class_Shape"> + <children xmi:type="notation:DecorationNode" xmi:id="_nYX-0HuYEein8bPYf9iOdw" type="Class_NameLabel"/> + <children xmi:type="notation:DecorationNode" xmi:id="_nYYl4HuYEein8bPYf9iOdw" type="Class_FloatingNameLabel"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_nYYl4XuYEein8bPYf9iOdw" y="15"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_nYZM8HuYEein8bPYf9iOdw" visible="false" type="Class_AttributeCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_nYZM8XuYEein8bPYf9iOdw"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_nYZM8nuYEein8bPYf9iOdw"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_nYZM83uYEein8bPYf9iOdw"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_nYZM9HuYEein8bPYf9iOdw"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_nYZM9XuYEein8bPYf9iOdw" visible="false" type="Class_OperationCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_nYZM9nuYEein8bPYf9iOdw"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_nYZM93uYEein8bPYf9iOdw"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_nYZM-HuYEein8bPYf9iOdw"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_nYZM-XuYEein8bPYf9iOdw"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_nYZM-nuYEein8bPYf9iOdw" visible="false" type="Class_NestedClassifierCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_nYZM-3uYEein8bPYf9iOdw"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_nYZM_HuYEein8bPYf9iOdw"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_nYZM_XuYEein8bPYf9iOdw"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_nYZM_nuYEein8bPYf9iOdw"/> + </children> + <element xmi:type="uml:Class" href="rclcppLibrary.uml#_nWoSYHuYEein8bPYf9iOdw"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_nYR4MXuYEein8bPYf9iOdw" x="420" y="120" width="121" height="61"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_VgM2YJdbEem38prD3RV14g" type="Class_Shape"> + <children xmi:type="notation:DecorationNode" xmi:id="_VgOEgJdbEem38prD3RV14g" type="Class_NameLabel"/> + <children xmi:type="notation:DecorationNode" xmi:id="_VgOEgZdbEem38prD3RV14g" type="Class_FloatingNameLabel"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_VgOrkJdbEem38prD3RV14g" y="15"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_VgOrkZdbEem38prD3RV14g" visible="false" type="Class_AttributeCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_VgOrkpdbEem38prD3RV14g"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_VgOrk5dbEem38prD3RV14g"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_VgOrlJdbEem38prD3RV14g"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_VgOrlZdbEem38prD3RV14g"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_VgOrlpdbEem38prD3RV14g" visible="false" type="Class_OperationCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_VgOrl5dbEem38prD3RV14g"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_VgOrmJdbEem38prD3RV14g"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_VgOrmZdbEem38prD3RV14g"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_VgOrmpdbEem38prD3RV14g"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_VgOrm5dbEem38prD3RV14g" visible="false" type="Class_NestedClassifierCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_VgOrnJdbEem38prD3RV14g"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_VgOrnZdbEem38prD3RV14g"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_VgOrnpdbEem38prD3RV14g"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_VgOrn5dbEem38prD3RV14g"/> + </children> + <element xmi:type="uml:Class" href="rclcppLibrary.uml#_HGPHMJdbEem38prD3RV14g"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_VgM2YZdbEem38prD3RV14g" x="60" y="200" width="121" height="61"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_PC65YK3iEemKGaIZu1xPYw" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_PC65Ya3iEemKGaIZu1xPYw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="_PC7gcK3iEemKGaIZu1xPYw" name="BASE_ELEMENT"> + <eObjectValue xmi:type="uml:Class" href="rclcppLibrary.uml#_HGPHMJdbEem38prD3RV14g"/> + </styles> + <element xsi:nil="true"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PC65Yq3iEemKGaIZu1xPYw" x="260" y="120"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_OIlyUPVjEemTJIu6MXTrdg" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_OIlyUfVjEemTJIu6MXTrdg"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="_OInAcPVjEemTJIu6MXTrdg" name="BASE_ELEMENT"> + <eObjectValue xmi:type="uml:Class" href="rclcppLibrary.uml#_HGPHMJdbEem38prD3RV14g"/> + </styles> + <element xsi:nil="true"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OIlyUvVjEemTJIu6MXTrdg" x="260" y="120"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_Vnq9kPVkEemTJIu6MXTrdg" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_Vnq9kfVkEemTJIu6MXTrdg"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Vnq9k_VkEemTJIu6MXTrdg" name="BASE_ELEMENT"> + <eObjectValue xmi:type="uml:Class" href="rclcppLibrary.uml#_HGPHMJdbEem38prD3RV14g"/> + </styles> + <element xsi:nil="true"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Vnq9kvVkEemTJIu6MXTrdg" x="260" y="120"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_SN_eAAmGEeq5a7o_53h8zA" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_SN_eAQmGEeq5a7o_53h8zA"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="_SOAsIAmGEeq5a7o_53h8zA" name="BASE_ELEMENT"> + <eObjectValue xmi:type="uml:Class" href="rclcppLibrary.uml#_HGPHMJdbEem38prD3RV14g"/> + </styles> + <element xsi:nil="true"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_SN_eAgmGEeq5a7o_53h8zA" x="260" y="120"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_TfjMgAmGEeq5a7o_53h8zA" type="Class_Shape"> + <children xmi:type="notation:DecorationNode" xmi:id="_TfjzkAmGEeq5a7o_53h8zA" type="Class_NameLabel"/> + <children xmi:type="notation:DecorationNode" xmi:id="_TfkaoAmGEeq5a7o_53h8zA" type="Class_FloatingNameLabel"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_TfkaoQmGEeq5a7o_53h8zA" y="15"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_TflBsAmGEeq5a7o_53h8zA" visible="false" type="Class_AttributeCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_TflBsQmGEeq5a7o_53h8zA"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_TflBsgmGEeq5a7o_53h8zA"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_TflBswmGEeq5a7o_53h8zA"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_TflBtAmGEeq5a7o_53h8zA"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_TflBtQmGEeq5a7o_53h8zA" visible="false" type="Class_OperationCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_TflBtgmGEeq5a7o_53h8zA"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_TflBtwmGEeq5a7o_53h8zA"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_TflBuAmGEeq5a7o_53h8zA"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_TflBuQmGEeq5a7o_53h8zA"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_TflBugmGEeq5a7o_53h8zA" visible="false" type="Class_NestedClassifierCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_TflBuwmGEeq5a7o_53h8zA"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_TflBvAmGEeq5a7o_53h8zA"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_TflBvQmGEeq5a7o_53h8zA"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_TflBvgmGEeq5a7o_53h8zA"/> + </children> + <element xmi:type="uml:Class" href="rclcppLibrary.uml#_TfeUAAmGEeq5a7o_53h8zA"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_TfjMgQmGEeq5a7o_53h8zA" x="60" y="120" width="121" height="61"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_btWaYBCXEeqpC8wzYJkICg" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_btWaYRCXEeqpC8wzYJkICg"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="_btWaYxCXEeqpC8wzYJkICg" name="BASE_ELEMENT"> + <eObjectValue xmi:type="uml:Class" href="rclcppLibrary.uml#_HGPHMJdbEem38prD3RV14g"/> + </styles> + <element xsi:nil="true"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_btWaYhCXEeqpC8wzYJkICg" x="260" y="220"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_pWOE4xI5EeqHr_e6H2jM5Q" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_pWOE5BI5EeqHr_e6H2jM5Q"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="_pWOr8BI5EeqHr_e6H2jM5Q" name="BASE_ELEMENT"> + <eObjectValue xmi:type="uml:Class" href="rclcppLibrary.uml#_HGPHMJdbEem38prD3RV14g"/> + </styles> + <element xsi:nil="true"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_pWOE5RI5EeqHr_e6H2jM5Q" x="260" y="220"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_hb154FCjEeq93fyWhWuZtQ" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_hb154VCjEeq93fyWhWuZtQ"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="_hb1541CjEeq93fyWhWuZtQ" name="BASE_ELEMENT"> + <eObjectValue xmi:type="uml:Class" href="rclcppLibrary.uml#_HGPHMJdbEem38prD3RV14g"/> + </styles> + <element xsi:nil="true"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_hb154lCjEeq93fyWhWuZtQ" x="260" y="220"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_VA-1E3NoEeqPZecp7_XFqQ" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_VA-1FHNoEeqPZecp7_XFqQ"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="_VA_cIHNoEeqPZecp7_XFqQ" name="BASE_ELEMENT"> + <eObjectValue xmi:type="uml:Class" href="rclcppLibrary.uml#_HGPHMJdbEem38prD3RV14g"/> + </styles> + <element xsi:nil="true"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_VA-1FXNoEeqPZecp7_XFqQ" x="260" y="220"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_aAhE0LkJEe2M0K0sOtK1fw" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_aAhE0bkJEe2M0K0sOtK1fw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="_aAhE07kJEe2M0K0sOtK1fw" name="BASE_ELEMENT"> + <eObjectValue xmi:type="uml:Class" href="rclcppLibrary.uml#_HGPHMJdbEem38prD3RV14g"/> + </styles> + <element xsi:nil="true"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_aAhE0rkJEe2M0K0sOtK1fw" x="260" y="220"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_cAmGMLkJEe2M0K0sOtK1fw" type="Class_Shape"> + <children xmi:type="notation:DecorationNode" xmi:id="_cAmGMrkJEe2M0K0sOtK1fw" type="Class_NameLabel"/> + <children xmi:type="notation:DecorationNode" xmi:id="_cAmGM7kJEe2M0K0sOtK1fw" type="Class_FloatingNameLabel"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_cAmGNLkJEe2M0K0sOtK1fw" y="15"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_cAmGNbkJEe2M0K0sOtK1fw" visible="false" type="Class_AttributeCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_cAmGNrkJEe2M0K0sOtK1fw"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_cAmGN7kJEe2M0K0sOtK1fw"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_cAmGOLkJEe2M0K0sOtK1fw"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cAmGObkJEe2M0K0sOtK1fw"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_cAmGOrkJEe2M0K0sOtK1fw" visible="false" type="Class_OperationCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_cAmGO7kJEe2M0K0sOtK1fw"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_cAmGPLkJEe2M0K0sOtK1fw"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_cAmGPbkJEe2M0K0sOtK1fw"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cAmGPrkJEe2M0K0sOtK1fw"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_cAmtQLkJEe2M0K0sOtK1fw" visible="false" type="Class_NestedClassifierCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_cAmtQbkJEe2M0K0sOtK1fw"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_cAmtQrkJEe2M0K0sOtK1fw"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_cAmtQ7kJEe2M0K0sOtK1fw"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cAmtRLkJEe2M0K0sOtK1fw"/> + </children> + <element xmi:type="uml:Class" href="rclcppLibrary.uml#_YxHScLkJEe2M0K0sOtK1fw"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cAmGMbkJEe2M0K0sOtK1fw" x="239" y="199" width="122" height="62"/> + </children> + <styles xmi:type="notation:StringValueStyle" xmi:id="_DtbcUW_GEeiX6ta975XXMg" name="diagram_compatibility_version" stringValue="1.4.0"/> + <styles xmi:type="notation:DiagramStyle" xmi:id="_DtbcUm_GEeiX6ta975XXMg"/> + <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_DtbcU2_GEeiX6ta975XXMg" diagramKindId="org.eclipse.papyrus.uml.diagram.class"> + <owner xmi:type="uml:Package" href="rclcppLibrary.uml#_r1zz0HSPEeispf19VVdJXQ"/> + </styles> + <element xmi:type="uml:Package" href="rclcppLibrary.uml#_r1zz0HSPEeispf19VVdJXQ"/> + <edges xmi:type="notation:Connector" xmi:id="_Vga40JdbEem38prD3RV14g" type="StereotypeCommentLink" source="_VgM2YJdbEem38prD3RV14g"> + <styles xmi:type="notation:FontStyle" xmi:id="_Vga40ZdbEem38prD3RV14g"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Vga41ZdbEem38prD3RV14g" name="BASE_ELEMENT"> + <eObjectValue xmi:type="uml:Class" href="rclcppLibrary.uml#_HGPHMJdbEem38prD3RV14g"/> + </styles> + <element xsi:nil="true"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Vga40pdbEem38prD3RV14g" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Vga405dbEem38prD3RV14g"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Vga41JdbEem38prD3RV14g"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="_PC7gca3iEemKGaIZu1xPYw" type="StereotypeCommentLink" source="_VgM2YJdbEem38prD3RV14g" target="_PC65YK3iEemKGaIZu1xPYw"> + <styles xmi:type="notation:FontStyle" xmi:id="_PC7gcq3iEemKGaIZu1xPYw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="_PC8Hga3iEemKGaIZu1xPYw" name="BASE_ELEMENT"> + <eObjectValue xmi:type="uml:Class" href="rclcppLibrary.uml#_HGPHMJdbEem38prD3RV14g"/> + </styles> + <element xsi:nil="true"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_PC7gc63iEemKGaIZu1xPYw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_PC7gdK3iEemKGaIZu1xPYw"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_PC8HgK3iEemKGaIZu1xPYw"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="_OInngPVjEemTJIu6MXTrdg" type="StereotypeCommentLink" source="_VgM2YJdbEem38prD3RV14g" target="_OIlyUPVjEemTJIu6MXTrdg"> + <styles xmi:type="notation:FontStyle" xmi:id="_OInngfVjEemTJIu6MXTrdg"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="_OInnhfVjEemTJIu6MXTrdg" name="BASE_ELEMENT"> + <eObjectValue xmi:type="uml:Class" href="rclcppLibrary.uml#_HGPHMJdbEem38prD3RV14g"/> + </styles> + <element xsi:nil="true"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_OInngvVjEemTJIu6MXTrdg" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_OInng_VjEemTJIu6MXTrdg"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_OInnhPVjEemTJIu6MXTrdg"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="_Vnq9lPVkEemTJIu6MXTrdg" type="StereotypeCommentLink" source="_VgM2YJdbEem38prD3RV14g" target="_Vnq9kPVkEemTJIu6MXTrdg"> + <styles xmi:type="notation:FontStyle" xmi:id="_Vnq9lfVkEemTJIu6MXTrdg"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Vnq9mfVkEemTJIu6MXTrdg" name="BASE_ELEMENT"> + <eObjectValue xmi:type="uml:Class" href="rclcppLibrary.uml#_HGPHMJdbEem38prD3RV14g"/> + </styles> + <element xsi:nil="true"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Vnq9lvVkEemTJIu6MXTrdg" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Vnq9l_VkEemTJIu6MXTrdg"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Vnq9mPVkEemTJIu6MXTrdg"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="_SOAsIQmGEeq5a7o_53h8zA" type="StereotypeCommentLink" source="_VgM2YJdbEem38prD3RV14g" target="_SN_eAAmGEeq5a7o_53h8zA"> + <styles xmi:type="notation:FontStyle" xmi:id="_SOAsIgmGEeq5a7o_53h8zA"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="_SOBTMQmGEeq5a7o_53h8zA" name="BASE_ELEMENT"> + <eObjectValue xmi:type="uml:Class" href="rclcppLibrary.uml#_HGPHMJdbEem38prD3RV14g"/> + </styles> + <element xsi:nil="true"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_SOAsIwmGEeq5a7o_53h8zA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_SOAsJAmGEeq5a7o_53h8zA"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_SOBTMAmGEeq5a7o_53h8zA"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="_btWaZBCXEeqpC8wzYJkICg" type="StereotypeCommentLink" source="_VgM2YJdbEem38prD3RV14g" target="_btWaYBCXEeqpC8wzYJkICg"> + <styles xmi:type="notation:FontStyle" xmi:id="_btWaZRCXEeqpC8wzYJkICg"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="_btXBchCXEeqpC8wzYJkICg" name="BASE_ELEMENT"> + <eObjectValue xmi:type="uml:Class" href="rclcppLibrary.uml#_HGPHMJdbEem38prD3RV14g"/> + </styles> + <element xsi:nil="true"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_btWaZhCXEeqpC8wzYJkICg" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_btXBcBCXEeqpC8wzYJkICg"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_btXBcRCXEeqpC8wzYJkICg"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="_pWOr8RI5EeqHr_e6H2jM5Q" type="StereotypeCommentLink" source="_VgM2YJdbEem38prD3RV14g" target="_pWOE4xI5EeqHr_e6H2jM5Q"> + <styles xmi:type="notation:FontStyle" xmi:id="_pWOr8hI5EeqHr_e6H2jM5Q"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="_pWOr9hI5EeqHr_e6H2jM5Q" name="BASE_ELEMENT"> + <eObjectValue xmi:type="uml:Class" href="rclcppLibrary.uml#_HGPHMJdbEem38prD3RV14g"/> + </styles> + <element xsi:nil="true"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_pWOr8xI5EeqHr_e6H2jM5Q" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_pWOr9BI5EeqHr_e6H2jM5Q"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_pWOr9RI5EeqHr_e6H2jM5Q"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="_hb155FCjEeq93fyWhWuZtQ" type="StereotypeCommentLink" source="_VgM2YJdbEem38prD3RV14g" target="_hb154FCjEeq93fyWhWuZtQ"> + <styles xmi:type="notation:FontStyle" xmi:id="_hb155VCjEeq93fyWhWuZtQ"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="_hb156VCjEeq93fyWhWuZtQ" name="BASE_ELEMENT"> + <eObjectValue xmi:type="uml:Class" href="rclcppLibrary.uml#_HGPHMJdbEem38prD3RV14g"/> + </styles> + <element xsi:nil="true"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_hb155lCjEeq93fyWhWuZtQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_hb1551CjEeq93fyWhWuZtQ"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_hb156FCjEeq93fyWhWuZtQ"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="_VA_cIXNoEeqPZecp7_XFqQ" type="StereotypeCommentLink" source="_VgM2YJdbEem38prD3RV14g" target="_VA-1E3NoEeqPZecp7_XFqQ"> + <styles xmi:type="notation:FontStyle" xmi:id="_VA_cInNoEeqPZecp7_XFqQ"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="_VA_cJnNoEeqPZecp7_XFqQ" name="BASE_ELEMENT"> + <eObjectValue xmi:type="uml:Class" href="rclcppLibrary.uml#_HGPHMJdbEem38prD3RV14g"/> + </styles> + <element xsi:nil="true"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_VA_cI3NoEeqPZecp7_XFqQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_VA_cJHNoEeqPZecp7_XFqQ"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_VA_cJXNoEeqPZecp7_XFqQ"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="_aAhE1LkJEe2M0K0sOtK1fw" type="StereotypeCommentLink" source="_VgM2YJdbEem38prD3RV14g" target="_aAhE0LkJEe2M0K0sOtK1fw"> + <styles xmi:type="notation:FontStyle" xmi:id="_aAhE1bkJEe2M0K0sOtK1fw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="_aAhE2bkJEe2M0K0sOtK1fw" name="BASE_ELEMENT"> + <eObjectValue xmi:type="uml:Class" href="rclcppLibrary.uml#_HGPHMJdbEem38prD3RV14g"/> + </styles> + <element xsi:nil="true"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_aAhE1rkJEe2M0K0sOtK1fw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_aAhE17kJEe2M0K0sOtK1fw"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_aAhE2LkJEe2M0K0sOtK1fw"/> + </edges> + </notation:Diagram> + <notation:Diagram xmi:id="_-mc9oGkzEeqVn9vWpzOeXg" type="PapyrusUMLClassDiagram" name="C++ std lib" measurementUnit="Pixel"> + <children xmi:type="notation:Shape" xmi:id="_JZb_EGk0EeqVn9vWpzOeXg" type="PrimitiveType_Shape"> + <children xmi:type="notation:DecorationNode" xmi:id="_JZdNMGk0EeqVn9vWpzOeXg" type="PrimitiveType_NameLabel"/> + <children xmi:type="notation:DecorationNode" xmi:id="_JZdNMWk0EeqVn9vWpzOeXg" type="PrimitiveType_FloatingNameLabel"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_JZd0QGk0EeqVn9vWpzOeXg" y="15"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_JZd0QWk0EeqVn9vWpzOeXg" visible="false" type="PrimitiveType_AttributeCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_JZd0Qmk0EeqVn9vWpzOeXg"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_JZd0Q2k0EeqVn9vWpzOeXg"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_JZd0RGk0EeqVn9vWpzOeXg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_JZd0RWk0EeqVn9vWpzOeXg"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_JZebUGk0EeqVn9vWpzOeXg" visible="false" type="PrimitiveType_OperationCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_JZebUWk0EeqVn9vWpzOeXg"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_JZebUmk0EeqVn9vWpzOeXg"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_JZebU2k0EeqVn9vWpzOeXg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_JZebVGk0EeqVn9vWpzOeXg"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_JZvhEGk0EeqVn9vWpzOeXg" type="StereotypeLabel"> + <styles xmi:type="notation:StringValueStyle" xmi:id="_JZvhEWk0EeqVn9vWpzOeXg" name="stereotype" stringValue="C_Cpp::External"/> + <element xmi:type="uml:Stereotype" href="pathmap://PapyrusC_Cpp_PROFILES/C_Cpp.profile.uml#_MyI6IByJEduN1bTiWJ0lyw"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_JZvhEmk0EeqVn9vWpzOeXg"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_JZvhE2k0EeqVn9vWpzOeXg" type="StereotypeBrace"> + <styles xmi:type="notation:TitleStyle" xmi:id="_JZvhFGk0EeqVn9vWpzOeXg"/> + <styles xmi:type="notation:StringValueStyle" xmi:id="_JZvhFWk0EeqVn9vWpzOeXg" name="stereotype" stringValue="C_Cpp::External"/> + <element xmi:type="uml:Stereotype" href="pathmap://PapyrusC_Cpp_PROFILES/C_Cpp.profile.uml#_MyI6IByJEduN1bTiWJ0lyw"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_JZvhFmk0EeqVn9vWpzOeXg"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_JZxWQGk0EeqVn9vWpzOeXg" type="compartment_shape_display"> + <styles xmi:type="notation:TitleStyle" xmi:id="_JZxWQWk0EeqVn9vWpzOeXg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_JZxWQmk0EeqVn9vWpzOeXg"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_JZzLcmk0EeqVn9vWpzOeXg" type="StereotypeCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_JZzLc2k0EeqVn9vWpzOeXg"/> + <styles xmi:type="notation:StringValueStyle" xmi:id="_JZzLdGk0EeqVn9vWpzOeXg" name="stereotype" stringValue="C_Cpp::External"/> + <element xmi:type="uml:Stereotype" href="pathmap://PapyrusC_Cpp_PROFILES/C_Cpp.profile.uml#_MyI6IByJEduN1bTiWJ0lyw"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_JZzLdWk0EeqVn9vWpzOeXg"/> + </children> + <element xmi:type="uml:PrimitiveType" href="rclcppLibrary.uml#_n9guwGkbEeqVn9vWpzOeXg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_JZb_EWk0EeqVn9vWpzOeXg" x="62" y="40" height="81"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_KHYqMGk0EeqVn9vWpzOeXg" type="Class_Shape"> + <children xmi:type="notation:DecorationNode" xmi:id="_KHZRQGk0EeqVn9vWpzOeXg" type="Class_NameLabel"/> + <children xmi:type="notation:DecorationNode" xmi:id="_KHZRQWk0EeqVn9vWpzOeXg" type="Class_FloatingNameLabel"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_KHZRQmk0EeqVn9vWpzOeXg" y="15"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_KHZ4UGk0EeqVn9vWpzOeXg" visible="false" type="Class_AttributeCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_KHZ4UWk0EeqVn9vWpzOeXg"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_KHZ4Umk0EeqVn9vWpzOeXg"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_KHZ4U2k0EeqVn9vWpzOeXg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_KHZ4VGk0EeqVn9vWpzOeXg"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_KHZ4VWk0EeqVn9vWpzOeXg" visible="false" type="Class_OperationCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_KHZ4Vmk0EeqVn9vWpzOeXg"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_KHZ4V2k0EeqVn9vWpzOeXg"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_KHZ4WGk0EeqVn9vWpzOeXg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_KHZ4WWk0EeqVn9vWpzOeXg"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_KHZ4Wmk0EeqVn9vWpzOeXg" visible="false" type="Class_NestedClassifierCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_KHZ4W2k0EeqVn9vWpzOeXg"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_KHZ4XGk0EeqVn9vWpzOeXg"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_KHZ4XWk0EeqVn9vWpzOeXg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_KHZ4Xmk0EeqVn9vWpzOeXg"/> + </children> + <element xmi:type="uml:Class" href="rclcppLibrary.uml#_IijsIHSQEeispf19VVdJXQ"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_KHYqMWk0EeqVn9vWpzOeXg" x="60" y="200" width="121" height="81"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_DTTR0Gk1EeqVn9vWpzOeXg" type="Class_Shape"> + <children xmi:type="notation:DecorationNode" xmi:id="_DTT44Gk1EeqVn9vWpzOeXg" type="Class_NameLabel"/> + <children xmi:type="notation:DecorationNode" xmi:id="_DTT44Wk1EeqVn9vWpzOeXg" type="Class_FloatingNameLabel"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_DTT44mk1EeqVn9vWpzOeXg" y="15"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_DTT442k1EeqVn9vWpzOeXg" visible="false" type="Class_AttributeCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_DTT45Gk1EeqVn9vWpzOeXg"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_DTT45Wk1EeqVn9vWpzOeXg"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_DTT45mk1EeqVn9vWpzOeXg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_DTT452k1EeqVn9vWpzOeXg"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_DTUf8Gk1EeqVn9vWpzOeXg" visible="false" type="Class_OperationCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_DTUf8Wk1EeqVn9vWpzOeXg"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_DTUf8mk1EeqVn9vWpzOeXg"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_DTUf82k1EeqVn9vWpzOeXg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_DTUf9Gk1EeqVn9vWpzOeXg"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_DTUf9Wk1EeqVn9vWpzOeXg" visible="false" type="Class_NestedClassifierCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_DTUf9mk1EeqVn9vWpzOeXg"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_DTUf92k1EeqVn9vWpzOeXg"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_DTUf-Gk1EeqVn9vWpzOeXg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_DTUf-Wk1EeqVn9vWpzOeXg"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_DTgtMGk1EeqVn9vWpzOeXg" type="compartment_shape_display"> + <styles xmi:type="notation:TitleStyle" xmi:id="_DTgtMWk1EeqVn9vWpzOeXg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_DTgtMmk1EeqVn9vWpzOeXg"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_FcM4AGk1EeqVn9vWpzOeXg" type="StereotypeLabel"> + <styles xmi:type="notation:StringValueStyle" xmi:id="_FcM4AWk1EeqVn9vWpzOeXg" name="stereotype" stringValue="C_Cpp::External"/> + <element xmi:type="uml:Stereotype" href="pathmap://PapyrusC_Cpp_PROFILES/C_Cpp.profile.uml#_MyI6IByJEduN1bTiWJ0lyw"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_FcM4Amk1EeqVn9vWpzOeXg"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_FcM4A2k1EeqVn9vWpzOeXg" type="StereotypeBrace"> + <styles xmi:type="notation:TitleStyle" xmi:id="_FcM4BGk1EeqVn9vWpzOeXg"/> + <styles xmi:type="notation:StringValueStyle" xmi:id="_FcM4BWk1EeqVn9vWpzOeXg" name="stereotype" stringValue="C_Cpp::External"/> + <element xmi:type="uml:Stereotype" href="pathmap://PapyrusC_Cpp_PROFILES/C_Cpp.profile.uml#_MyI6IByJEduN1bTiWJ0lyw"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_FcM4Bmk1EeqVn9vWpzOeXg"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_FcOGIGk1EeqVn9vWpzOeXg" type="StereotypeCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_FcOGIWk1EeqVn9vWpzOeXg"/> + <styles xmi:type="notation:StringValueStyle" xmi:id="_FcOGImk1EeqVn9vWpzOeXg" name="stereotype" stringValue="C_Cpp::External"/> + <element xmi:type="uml:Stereotype" href="pathmap://PapyrusC_Cpp_PROFILES/C_Cpp.profile.uml#_MyI6IByJEduN1bTiWJ0lyw"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_FcOGI2k1EeqVn9vWpzOeXg"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_JCAhEGk1EeqVn9vWpzOeXg" type="RedefinableTemplateSignature_Shape"> + <children xmi:type="notation:BasicCompartment" xmi:id="_JCAhEmk1EeqVn9vWpzOeXg" type="RedefinableTemplateSignature_TemplateParameterCompartment"> + <children xmi:type="notation:Shape" xmi:id="_NzZzgGk1EeqVn9vWpzOeXg" type="ClassifierTemplateParameter_TemplateParameterLabel"> + <element xmi:type="uml:ClassifierTemplateParameter" href="rclcppLibrary.uml#_bLdPMGk0EeqVn9vWpzOeXg"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_NzZzgWk1EeqVn9vWpzOeXg"/> + </children> + <styles xmi:type="notation:TitleStyle" xmi:id="_JCAhE2k1EeqVn9vWpzOeXg"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_JCAhFGk1EeqVn9vWpzOeXg"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_JCAhFWk1EeqVn9vWpzOeXg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_JCAhFmk1EeqVn9vWpzOeXg"/> + </children> + <element xmi:type="uml:RedefinableTemplateSignature" href="rclcppLibrary.uml#_JBTWcGk1EeqVn9vWpzOeXg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_JCAhEWk1EeqVn9vWpzOeXg"/> + </children> + <element xmi:type="uml:Class" href="rclcppLibrary.uml#_DTQ1kGk1EeqVn9vWpzOeXg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_DTTR0Wk1EeqVn9vWpzOeXg" x="340" y="40" width="141" height="81"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_OVyvdHNoEeqPZecp7_XFqQ" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_OVyvdXNoEeqPZecp7_XFqQ"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="_OVyvd3NoEeqPZecp7_XFqQ" name="BASE_ELEMENT"> + <eObjectValue xmi:type="uml:PrimitiveType" href="rclcppLibrary.uml#_n9guwGkbEeqVn9vWpzOeXg"/> + </styles> + <element xsi:nil="true"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OVyvdnNoEeqPZecp7_XFqQ" x="262" y="40"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_OV8gcHNoEeqPZecp7_XFqQ" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_OV8gcXNoEeqPZecp7_XFqQ"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="_OV8gc3NoEeqPZecp7_XFqQ" name="BASE_ELEMENT"> + <eObjectValue xmi:type="uml:Class" href="rclcppLibrary.uml#_IijsIHSQEeispf19VVdJXQ"/> + </styles> + <element xsi:nil="true"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OV8gcnNoEeqPZecp7_XFqQ" x="260" y="200"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_OV_jwHNoEeqPZecp7_XFqQ" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_OV_jwXNoEeqPZecp7_XFqQ"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="_OV_jw3NoEeqPZecp7_XFqQ" name="BASE_ELEMENT"> + <eObjectValue xmi:type="uml:Class" href="rclcppLibrary.uml#_DTQ1kGk1EeqVn9vWpzOeXg"/> + </styles> + <element xsi:nil="true"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OV_jwnNoEeqPZecp7_XFqQ" x="540" y="40"/> + </children> + <styles xmi:type="notation:StringValueStyle" xmi:id="_-mc9oWkzEeqVn9vWpzOeXg" name="diagram_compatibility_version" stringValue="1.4.0"/> + <styles xmi:type="notation:DiagramStyle" xmi:id="_-mc9omkzEeqVn9vWpzOeXg"/> + <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_-mc9o2kzEeqVn9vWpzOeXg" diagramKindId="org.eclipse.papyrus.uml.diagram.class"> + <owner xmi:type="uml:Package" href="rclcppLibrary.uml#_bcM2YGkzEeqVn9vWpzOeXg"/> + </styles> + <element xmi:type="uml:Package" href="rclcppLibrary.uml#_bcM2YGkzEeqVn9vWpzOeXg"/> + <edges xmi:type="notation:Connector" xmi:id="_Qzan4Gk1EeqVn9vWpzOeXg" type="TemplateBinding_Edge" source="_JZb_EGk0EeqVn9vWpzOeXg" target="_DTTR0Gk1EeqVn9vWpzOeXg"> + <children xmi:type="notation:DecorationNode" xmi:id="_Qzan42k1EeqVn9vWpzOeXg" type="TemplateBinding_SubstitutionLabel"> + <styles xmi:type="notation:BooleanValueStyle" xmi:id="_SJIdoGk1EeqVn9vWpzOeXg" name="IS_UPDATED_POSITION" booleanValue="true"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_QzbO8Gk1EeqVn9vWpzOeXg" y="40"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_QzbO8Wk1EeqVn9vWpzOeXg" type="TemplateBinding_StereotypeLabel"> + <styles xmi:type="notation:BooleanValueStyle" xmi:id="_SJRnkGk1EeqVn9vWpzOeXg" name="IS_UPDATED_POSITION" booleanValue="true"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="_QzbO8mk1EeqVn9vWpzOeXg" y="20"/> + </children> + <styles xmi:type="notation:FontStyle" xmi:id="_Qzan4Wk1EeqVn9vWpzOeXg"/> + <element xmi:type="uml:TemplateBinding" href="rclcppLibrary.uml#_Qy1ZEGk1EeqVn9vWpzOeXg"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Qzan4mk1EeqVn9vWpzOeXg" points="[186, 80, -643984, -643984]$[440, 80, -643984, -643984]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_QzzCYGk1EeqVn9vWpzOeXg" id="(1.0,0.24691358024691357)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_QzzpcGk1EeqVn9vWpzOeXg" id="(0.0,0.24691358024691357)"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="_OVyveHNoEeqPZecp7_XFqQ" type="StereotypeCommentLink" source="_JZb_EGk0EeqVn9vWpzOeXg" target="_OVyvdHNoEeqPZecp7_XFqQ"> + <styles xmi:type="notation:FontStyle" xmi:id="_OVzWgHNoEeqPZecp7_XFqQ"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="_OVzWhHNoEeqPZecp7_XFqQ" name="BASE_ELEMENT"> + <eObjectValue xmi:type="uml:PrimitiveType" href="rclcppLibrary.uml#_n9guwGkbEeqVn9vWpzOeXg"/> + </styles> + <element xsi:nil="true"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_OVzWgXNoEeqPZecp7_XFqQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_OVzWgnNoEeqPZecp7_XFqQ"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_OVzWg3NoEeqPZecp7_XFqQ"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="_OV8gdHNoEeqPZecp7_XFqQ" type="StereotypeCommentLink" source="_KHYqMGk0EeqVn9vWpzOeXg" target="_OV8gcHNoEeqPZecp7_XFqQ"> + <styles xmi:type="notation:FontStyle" xmi:id="_OV8gdXNoEeqPZecp7_XFqQ"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="_OV8geXNoEeqPZecp7_XFqQ" name="BASE_ELEMENT"> + <eObjectValue xmi:type="uml:Class" href="rclcppLibrary.uml#_IijsIHSQEeispf19VVdJXQ"/> + </styles> + <element xsi:nil="true"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_OV8gdnNoEeqPZecp7_XFqQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_OV8gd3NoEeqPZecp7_XFqQ"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_OV8geHNoEeqPZecp7_XFqQ"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="_OV_jxHNoEeqPZecp7_XFqQ" type="StereotypeCommentLink" source="_DTTR0Gk1EeqVn9vWpzOeXg" target="_OV_jwHNoEeqPZecp7_XFqQ"> + <styles xmi:type="notation:FontStyle" xmi:id="_OV_jxXNoEeqPZecp7_XFqQ"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="_OV_jyXNoEeqPZecp7_XFqQ" name="BASE_ELEMENT"> + <eObjectValue xmi:type="uml:Class" href="rclcppLibrary.uml#_DTQ1kGk1EeqVn9vWpzOeXg"/> + </styles> + <element xsi:nil="true"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_OV_jxnNoEeqPZecp7_XFqQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_OV_jx3NoEeqPZecp7_XFqQ"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_OV_jyHNoEeqPZecp7_XFqQ"/> + </edges> + </notation:Diagram> + <notation:Diagram xmi:id="_ukx7QHNvEeqPZecp7_XFqQ" type="PapyrusUMLStateMachineDiagram" name="ROS states" measurementUnit="Pixel"> + <children xmi:type="notation:Shape" xmi:id="_ukx7QXNvEeqPZecp7_XFqQ" type="StateMachine_Shape"> + <children xmi:type="notation:DecorationNode" xmi:id="_ukx7QnNvEeqPZecp7_XFqQ" type="StateMachine_NameLabel"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ukx7Q3NvEeqPZecp7_XFqQ" width="671" height="20"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_ukx7RHNvEeqPZecp7_XFqQ" type="StateMachine_RegionCompartment"> + <children xmi:type="notation:Shape" xmi:id="_ukx7RXNvEeqPZecp7_XFqQ" type="Region_Shape"> + <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_ukx7RnNvEeqPZecp7_XFqQ" source="RegionAnnotationKey"> + <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_ukx7R3NvEeqPZecp7_XFqQ" key="RegionZoneKey" value=""/> + </eAnnotations> + <children xmi:type="notation:BasicCompartment" xmi:id="_ukx7SHNvEeqPZecp7_XFqQ" type="Region_SubvertexCompartment"> + <children xmi:type="notation:Shape" xmi:id="_ukx7SXNvEeqPZecp7_XFqQ" type="State_Shape"> + <children xmi:type="notation:DecorationNode" xmi:id="_ukx7SnNvEeqPZecp7_XFqQ" type="State_NameLabel"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ukx7S3NvEeqPZecp7_XFqQ" width="121"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_ukx7THNvEeqPZecp7_XFqQ" type="State_FloatingNameLabel"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_ukx7TXNvEeqPZecp7_XFqQ" x="40"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_ukx7TnNvEeqPZecp7_XFqQ" type="State_RegionCompartment"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ukx7T3NvEeqPZecp7_XFqQ" y="-1" width="121"/> + </children> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ukx7UHNvEeqPZecp7_XFqQ" x="269" y="30" width="121" height="61"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_ukx7UXNvEeqPZecp7_XFqQ" type="State_Shape"> + <children xmi:type="notation:DecorationNode" xmi:id="_ukx7UnNvEeqPZecp7_XFqQ" type="State_NameLabel"/> + <children xmi:type="notation:DecorationNode" xmi:id="_ukx7U3NvEeqPZecp7_XFqQ" type="State_FloatingNameLabel"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_ukx7VHNvEeqPZecp7_XFqQ" x="40"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_ukx7VXNvEeqPZecp7_XFqQ" type="State_RegionCompartment"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ukx7VnNvEeqPZecp7_XFqQ"/> + </children> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ukx7V3NvEeqPZecp7_XFqQ" x="29" y="110" width="121" height="61"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_ukx7WHNvEeqPZecp7_XFqQ" type="State_Shape"> + <children xmi:type="notation:DecorationNode" xmi:id="_ukx7WXNvEeqPZecp7_XFqQ" type="State_NameLabel"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ukx7WnNvEeqPZecp7_XFqQ" width="121"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_ukx7W3NvEeqPZecp7_XFqQ" type="State_FloatingNameLabel"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_ukx7XHNvEeqPZecp7_XFqQ" x="40"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_ukx7XXNvEeqPZecp7_XFqQ" type="State_RegionCompartment"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ukx7XnNvEeqPZecp7_XFqQ" y="-1" width="121"/> + </children> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ukx7X3NvEeqPZecp7_XFqQ" x="509" y="110" width="121" height="61"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_ukx7YHNvEeqPZecp7_XFqQ" type="State_Shape"> + <children xmi:type="notation:DecorationNode" xmi:id="_ukx7YXNvEeqPZecp7_XFqQ" type="State_NameLabel"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ukx7YnNvEeqPZecp7_XFqQ" width="121"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="_ukx7Y3NvEeqPZecp7_XFqQ" type="State_FloatingNameLabel"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_ukx7ZHNvEeqPZecp7_XFqQ" x="40"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_ukx7ZXNvEeqPZecp7_XFqQ" type="State_RegionCompartment"> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ukx7ZnNvEeqPZecp7_XFqQ" y="-1" width="121"/> + </children> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ukx7Z3NvEeqPZecp7_XFqQ" x="269" y="190" width="121" height="61"/> + </children> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ukx7aHNvEeqPZecp7_XFqQ"/> + </children> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ukx7aXNvEeqPZecp7_XFqQ" width="671" height="280"/> + </children> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ukx7anNvEeqPZecp7_XFqQ" y="20" width="671" height="280"/> + </children> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ukx7a3NvEeqPZecp7_XFqQ" x="30" y="30" width="671" height="300"/> + </children> + <styles xmi:type="notation:StringValueStyle" xmi:id="_ukx7bHNvEeqPZecp7_XFqQ" name="diagram_compatibility_version" stringValue="1.4.0"/> + <styles xmi:type="notation:DiagramStyle" xmi:id="_ukx7bXNvEeqPZecp7_XFqQ"/> + <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_ukx7bnNvEeqPZecp7_XFqQ" diagramKindId="org.eclipse.papyrus.uml.diagram.stateMachine"/> + </notation:Diagram> + <notation:Diagram xmi:id="_E8NQQHNwEeqPZecp7_XFqQ" type="PapyrusUMLClassDiagram" name="rclcpp_action diagram" measurementUnit="Pixel"> + <children xmi:type="notation:Shape" xmi:id="_F0KL8HNwEeqPZecp7_XFqQ" type="Class_Shape"> + <children xmi:type="notation:DecorationNode" xmi:id="_F0KL8nNwEeqPZecp7_XFqQ" type="Class_NameLabel"/> + <children xmi:type="notation:DecorationNode" xmi:id="_F0KL83NwEeqPZecp7_XFqQ" type="Class_FloatingNameLabel"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_F0KL9HNwEeqPZecp7_XFqQ" y="15"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_F0KzAHNwEeqPZecp7_XFqQ" visible="false" type="Class_AttributeCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_F0KzAXNwEeqPZecp7_XFqQ"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_F0KzAnNwEeqPZecp7_XFqQ"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_F0KzA3NwEeqPZecp7_XFqQ"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_F0KzBHNwEeqPZecp7_XFqQ"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_F0KzBXNwEeqPZecp7_XFqQ" visible="false" type="Class_OperationCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_F0KzBnNwEeqPZecp7_XFqQ"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_F0KzB3NwEeqPZecp7_XFqQ"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_F0KzCHNwEeqPZecp7_XFqQ"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_F0KzCXNwEeqPZecp7_XFqQ"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_F0KzCnNwEeqPZecp7_XFqQ" visible="false" type="Class_NestedClassifierCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_F0KzC3NwEeqPZecp7_XFqQ"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_F0KzDHNwEeqPZecp7_XFqQ"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_F0KzDXNwEeqPZecp7_XFqQ"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_F0KzDnNwEeqPZecp7_XFqQ"/> + </children> + <element xmi:type="uml:Class" href="rclcppLibrary.uml#_uklG_3NvEeqPZecp7_XFqQ"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_F0KL8XNwEeqPZecp7_XFqQ" x="40" y="40" width="141" height="61"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_F0gKMHNwEeqPZecp7_XFqQ" type="Class_Shape"> + <children xmi:type="notation:DecorationNode" xmi:id="_F0gKMnNwEeqPZecp7_XFqQ" type="Class_NameLabel"/> + <children xmi:type="notation:DecorationNode" xmi:id="_F0gKM3NwEeqPZecp7_XFqQ" type="Class_FloatingNameLabel"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_F0gKNHNwEeqPZecp7_XFqQ" y="15"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_F0gKNXNwEeqPZecp7_XFqQ" visible="false" type="Class_AttributeCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_F0gKNnNwEeqPZecp7_XFqQ"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_F0gKN3NwEeqPZecp7_XFqQ"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_F0gKOHNwEeqPZecp7_XFqQ"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_F0gKOXNwEeqPZecp7_XFqQ"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_F0gKOnNwEeqPZecp7_XFqQ" visible="false" type="Class_OperationCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_F0gKO3NwEeqPZecp7_XFqQ"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_F0gKPHNwEeqPZecp7_XFqQ"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_F0gKPXNwEeqPZecp7_XFqQ"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_F0gKPnNwEeqPZecp7_XFqQ"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_F0gKP3NwEeqPZecp7_XFqQ" visible="false" type="Class_NestedClassifierCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_F0gKQHNwEeqPZecp7_XFqQ"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_F0gKQXNwEeqPZecp7_XFqQ"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_F0gKQnNwEeqPZecp7_XFqQ"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_F0gKQ3NwEeqPZecp7_XFqQ"/> + </children> + <element xmi:type="uml:Class" href="rclcppLibrary.uml#_uklHAHNvEeqPZecp7_XFqQ"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_F0gKMXNwEeqPZecp7_XFqQ" x="40" y="140" width="141" height="61"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_Pm8UoHNwEeqPZecp7_XFqQ" type="Comment_Shape"> + <children xmi:type="notation:DecorationNode" xmi:id="_Pm87sHNwEeqPZecp7_XFqQ" type="Comment_BodyLabel"/> + <element xmi:type="uml:Comment" href="rclcppLibrary.uml#_Pm54YHNwEeqPZecp7_XFqQ"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Pm8UoXNwEeqPZecp7_XFqQ" x="400" y="60" width="181" height="101"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_vIar0H_8EeqWy9TAoOxzCg" type="Class_Shape"> + <children xmi:type="notation:DecorationNode" xmi:id="_vIdvIH_8EeqWy9TAoOxzCg" type="Class_NameLabel"/> + <children xmi:type="notation:DecorationNode" xmi:id="_vIdvIX_8EeqWy9TAoOxzCg" type="Class_FloatingNameLabel"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_vIdvIn_8EeqWy9TAoOxzCg" y="15"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_vIeWMH_8EeqWy9TAoOxzCg" visible="false" type="Class_AttributeCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_vIeWMX_8EeqWy9TAoOxzCg"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_vIeWMn_8EeqWy9TAoOxzCg"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_vIeWM3_8EeqWy9TAoOxzCg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_vIeWNH_8EeqWy9TAoOxzCg"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_vIeWNX_8EeqWy9TAoOxzCg" visible="false" type="Class_OperationCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_vIeWNn_8EeqWy9TAoOxzCg"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_vIeWN3_8EeqWy9TAoOxzCg"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_vIeWOH_8EeqWy9TAoOxzCg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_vIeWOX_8EeqWy9TAoOxzCg"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_vIeWOn_8EeqWy9TAoOxzCg" visible="false" type="Class_NestedClassifierCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_vIeWO3_8EeqWy9TAoOxzCg"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_vIeWPH_8EeqWy9TAoOxzCg"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_vIeWPX_8EeqWy9TAoOxzCg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_vIeWPn_8EeqWy9TAoOxzCg"/> + </children> + <element xmi:type="uml:Class" href="rclcppLibrary.uml#_vHAWkH_8EeqWy9TAoOxzCg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_vIar0X_8EeqWy9TAoOxzCg" x="220" y="140" width="141" height="61"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_pJcSgIApEeqWy9TAoOxzCg" type="Class_Shape"> + <children xmi:type="notation:DecorationNode" xmi:id="_pJcSgoApEeqWy9TAoOxzCg" type="Class_NameLabel"/> + <children xmi:type="notation:DecorationNode" xmi:id="_pJcSg4ApEeqWy9TAoOxzCg" type="Class_FloatingNameLabel"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_pJcShIApEeqWy9TAoOxzCg" y="15"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_pJc5kIApEeqWy9TAoOxzCg" visible="false" type="Class_AttributeCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_pJc5kYApEeqWy9TAoOxzCg"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_pJc5koApEeqWy9TAoOxzCg"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_pJc5k4ApEeqWy9TAoOxzCg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_pJc5lIApEeqWy9TAoOxzCg"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_pJc5lYApEeqWy9TAoOxzCg" visible="false" type="Class_OperationCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_pJc5loApEeqWy9TAoOxzCg"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_pJc5l4ApEeqWy9TAoOxzCg"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_pJc5mIApEeqWy9TAoOxzCg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_pJc5mYApEeqWy9TAoOxzCg"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_pJc5moApEeqWy9TAoOxzCg" visible="false" type="Class_NestedClassifierCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_pJc5m4ApEeqWy9TAoOxzCg"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_pJc5nIApEeqWy9TAoOxzCg"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_pJc5nYApEeqWy9TAoOxzCg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_pJc5noApEeqWy9TAoOxzCg"/> + </children> + <element xmi:type="uml:Class" href="rclcppLibrary.uml#_pJTIkIApEeqWy9TAoOxzCg"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_pJcSgYApEeqWy9TAoOxzCg" x="40" y="240" width="141" height="61"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_ITFScIGHEeqBWvhpPyY2CQ" type="Class_Shape"> + <children xmi:type="notation:DecorationNode" xmi:id="_ITI80IGHEeqBWvhpPyY2CQ" type="Class_NameLabel"/> + <children xmi:type="notation:DecorationNode" xmi:id="_ITI80YGHEeqBWvhpPyY2CQ" type="Class_FloatingNameLabel"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_ITI80oGHEeqBWvhpPyY2CQ" y="15"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_ITJj4IGHEeqBWvhpPyY2CQ" visible="false" type="Class_AttributeCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_ITJj4YGHEeqBWvhpPyY2CQ"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_ITJj4oGHEeqBWvhpPyY2CQ"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_ITJj44GHEeqBWvhpPyY2CQ"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ITJj5IGHEeqBWvhpPyY2CQ"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_ITKK8IGHEeqBWvhpPyY2CQ" visible="false" type="Class_OperationCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_ITKK8YGHEeqBWvhpPyY2CQ"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_ITKK8oGHEeqBWvhpPyY2CQ"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_ITKK84GHEeqBWvhpPyY2CQ"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ITKK9IGHEeqBWvhpPyY2CQ"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_ITKK9YGHEeqBWvhpPyY2CQ" visible="false" type="Class_NestedClassifierCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_ITKK9oGHEeqBWvhpPyY2CQ"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_ITKK94GHEeqBWvhpPyY2CQ"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_ITKK-IGHEeqBWvhpPyY2CQ"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ITKK-YGHEeqBWvhpPyY2CQ"/> + </children> + <element xmi:type="uml:Class" href="rclcppLibrary.uml#_IS0MsIGHEeqBWvhpPyY2CQ"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ITFScYGHEeqBWvhpPyY2CQ" x="220" y="240" width="141" height="61"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_PEAMoIGHEeqBWvhpPyY2CQ" type="Class_Shape"> + <children xmi:type="notation:DecorationNode" xmi:id="_PEAzsIGHEeqBWvhpPyY2CQ" type="Class_NameLabel"/> + <children xmi:type="notation:DecorationNode" xmi:id="_PEAzsYGHEeqBWvhpPyY2CQ" type="Class_FloatingNameLabel"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_PEAzsoGHEeqBWvhpPyY2CQ" y="15"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_PEBawIGHEeqBWvhpPyY2CQ" visible="false" type="Class_AttributeCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_PEBawYGHEeqBWvhpPyY2CQ"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_PEBawoGHEeqBWvhpPyY2CQ"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_PEBaw4GHEeqBWvhpPyY2CQ"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PEBaxIGHEeqBWvhpPyY2CQ"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_PEBaxYGHEeqBWvhpPyY2CQ" visible="false" type="Class_OperationCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_PEBaxoGHEeqBWvhpPyY2CQ"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_PEBax4GHEeqBWvhpPyY2CQ"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_PEBayIGHEeqBWvhpPyY2CQ"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PEBayYGHEeqBWvhpPyY2CQ"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_PEBayoGHEeqBWvhpPyY2CQ" visible="false" type="Class_NestedClassifierCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_PEBay4GHEeqBWvhpPyY2CQ"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_PEBazIGHEeqBWvhpPyY2CQ"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_PEBazYGHEeqBWvhpPyY2CQ"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PEBazoGHEeqBWvhpPyY2CQ"/> + </children> + <element xmi:type="uml:Class" href="rclcppLibrary.uml#_PD2boIGHEeqBWvhpPyY2CQ"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PEAMoYGHEeqBWvhpPyY2CQ" x="220" y="40" width="141" height="61"/> + </children> + <styles xmi:type="notation:StringValueStyle" xmi:id="_E8NQQXNwEeqPZecp7_XFqQ" name="diagram_compatibility_version" stringValue="1.4.0"/> + <styles xmi:type="notation:DiagramStyle" xmi:id="_E8NQQnNwEeqPZecp7_XFqQ"/> + <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_E8NQQ3NwEeqPZecp7_XFqQ" diagramKindId="org.eclipse.papyrus.uml.diagram.class"> + <owner xmi:type="uml:Package" href="rclcppLibrary.uml#_uklG8HNvEeqPZecp7_XFqQ"/> + </styles> + <element xmi:type="uml:Package" href="rclcppLibrary.uml#_uklG8HNvEeqPZecp7_XFqQ"/> + </notation:Diagram> +</xmi:XMI>
diff --git a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui/models/library/rclcppLibrary.uml b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui/models/library/rclcppLibrary.uml new file mode 100644 index 0000000..a48fa65 --- /dev/null +++ b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui/models/library/rclcppLibrary.uml
@@ -0,0 +1,172 @@ +<?xml version="1.0" encoding="UTF-8"?> +<xmi:XMI xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:C_Cpp="http://www.eclipse.org/papyrus/C_Cpp/1" xmlns:SW_Concurrency="http://www.eclipse.org/papyrus/SW_Concurrency/1" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML" xsi:schemaLocation="http://www.eclipse.org/papyrus/SW_Concurrency/1 http://www.eclipse.org/papyrus/MARTE/1#//MARTE_DesignModel/SRM/SW_Concurrency"> + <uml:Model xmi:id="_T7frkG-0EeiX6ta975XXMg" name="ros2Library"> + <packageImport xmi:type="uml:PackageImport" xmi:id="_UBsaMG-0EeiX6ta975XXMg"> + <importedPackage xmi:type="uml:Model" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#_0"/> + </packageImport> + <packageImport xmi:type="uml:PackageImport" xmi:id="_xLOK0K7nEemGAs1AuXY9aw"> + <importedPackage xmi:type="uml:Model" href="pathmap://ROBOTICS_LIBRARIES/robotics.library.uml#_LaOOAJcvEeeV0-Lu2yLOjA"/> + </packageImport> + <packagedElement xmi:type="uml:Package" xmi:id="_r1zz0HSPEeispf19VVdJXQ" name="rclcpp"> + <packagedElement xmi:type="uml:Class" xmi:id="_E8zZgG_GEeiX6ta975XXMg" name="Node"/> + <packagedElement xmi:type="uml:Class" xmi:id="_GhJhIG_GEeiX6ta975XXMg" name="Publisher"/> + <packagedElement xmi:type="uml:Class" xmi:id="_z3vp8HSPEeispf19VVdJXQ" name="Subscription"/> + <packagedElement xmi:type="uml:Class" xmi:id="_lz5w0HuXEeiEh8urkKbENw" name="Service"/> + <packagedElement xmi:type="uml:Class" xmi:id="_nWoSYHuYEein8bPYf9iOdw" name="Client"/> + <packagedElement xmi:type="uml:Package" xmi:id="_XqVRoIEgEemfpqUZp4ZD7w" name="timer"> + <packagedElement xmi:type="uml:Class" xmi:id="_Y2-D4IEgEemfpqUZp4ZD7w" name="TimerBase"/> + </packagedElement> + <packagedElement xmi:type="uml:Class" xmi:id="_TfeUAAmGEeq5a7o_53h8zA" name="NodeOptions"/> + <packagedElement xmi:type="uml:Class" xmi:id="_YxHScLkJEe2M0K0sOtK1fw" name="CallbackGroup"/> + </packagedElement> + <packagedElement xmi:type="uml:Package" xmi:id="_uUivMJdaEem38prD3RV14g" name="rclcpp_lifecycle"> + <packagedElement xmi:type="uml:Class" xmi:id="_HGPHMJdbEem38prD3RV14g" name="LifecycleNode"/> + <packagedElement xmi:type="uml:Class" xmi:id="_hpl8IP7MEemW86Fq7AkVug" name="LifecyclePublisher"/> + </packagedElement> + <packagedElement xmi:type="uml:Package" xmi:id="_G7mukPVgEemTJIu6MXTrdg" name="composites"> + <ownedComment xmi:type="uml:Comment" xmi:id="_G7mukfVgEemTJIu6MXTrdg" annotatedElement="_G7muk_VgEemTJIu6MXTrdg"> + <body>A thread service supporting the LifeCycle port. Once started, it calls the activate operation (via the required port rLC) of a connected component in a new thread of a specific priority (a configuration attribute). This C++ implementation is based on the POSIX pthread library. It will further assume that the execution is done with root privileges, since these are required to set the thread priority. The thread properties assume round-robin (SCHED_RR) scheduling. +</body> + </ownedComment> + <ownedComment xmi:type="uml:Comment" xmi:id="_G7mukvVgEemTJIu6MXTrdg"> + <body> Interceptor variant of thread (inherits all, only difference to Thread superclass: tagged as connector)</body> + </ownedComment> + <packagedElement xmi:type="uml:Class" xmi:id="_G7muk_VgEemTJIu6MXTrdg" name="Thread"> + <ownedComment xmi:type="uml:Comment" xmi:id="_G7mulPVgEemTJIu6MXTrdg" annotatedElement="_G7mulvVgEemTJIu6MXTrdg"> + <body>Priority of the thread. The interpretation of the value is OS specific. In case of POSIX; priorities are only taken into account for threads with a FIFO and round-robin scheduliung policy.</body> + </ownedComment> + <ownedAttribute xmi:type="uml:Port" xmi:id="_G7mulfVgEemTJIu6MXTrdg" name="rRun" aggregation="composite"/> + <ownedAttribute xmi:type="uml:Property" xmi:id="_G7mulvVgEemTJIu6MXTrdg" name="priority" visibility="public"> + <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/> + <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_G7mul_VgEemTJIu6MXTrdg" value="1"/> + <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_G7mumPVgEemTJIu6MXTrdg" value="1"/> + </ownedAttribute> + <interfaceRealization xmi:type="uml:InterfaceRealization" xmi:id="_G7mumfVgEemTJIu6MXTrdg" name="derived realization of ILifeCycle" client="_G7muk_VgEemTJIu6MXTrdg"> + <supplier xmi:type="uml:Interface" href="pathmap://DML_TRAFO/sysinterfaces.uml#_T3li0Dz6Ed-v9PxuTj6Elw"/> + <contract xmi:type="uml:Interface" href="pathmap://DML_TRAFO/sysinterfaces.uml#_T3li0Dz6Ed-v9PxuTj6Elw"/> + </interfaceRealization> + <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_G7mumvVgEemTJIu6MXTrdg" name="staticAct" specification="_G7mupPVgEemTJIu6MXTrdg"> + <ownedParameter xmi:type="uml:Parameter" xmi:id="_G7mum_VgEemTJIu6MXTrdg" name="arg"> + <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_8I6RgBydEduyofBvg4RL2w"/> + <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_G7munPVgEemTJIu6MXTrdg" value="1"/> + <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_G7munfVgEemTJIu6MXTrdg" value="1"/> + </ownedParameter> + <ownedParameter xmi:type="uml:Parameter" xmi:id="_G7munvVgEemTJIu6MXTrdg" name="ret" direction="return"> + <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_8I6RgBydEduyofBvg4RL2w"/> + <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_G7mun_VgEemTJIu6MXTrdg" value="1"/> + <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_G7muoPVgEemTJIu6MXTrdg" value="1"/> + </ownedParameter> + <language>C/C++</language> + <body>((Thread*) arg)->rRun->run(); +return NULL; +</body> + </ownedBehavior> + <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_G7muofVgEemTJIu6MXTrdg" name="activate" specification="_G7muqfVgEemTJIu6MXTrdg"> + <language>C/C++</language> + <body>// create thread +pthread_t pt; +pthread_create (&pt, NULL, staticAct, (void *) this); + +// set priority of thread +struct sched_param schedParam; +schedParam.sched_priority = priority; +pthread_setschedparam (pt, SCHED_RR, &schedParam); +// TODO: check return code (in particular, SCHED_RR only works for root) +</body> + </ownedBehavior> + <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_G7muovVgEemTJIu6MXTrdg" name="configuration_complete" specification="_G7muq_VgEemTJIu6MXTrdg"> + <language>C/C++</language> + <body></body> + </ownedBehavior> + <ownedBehavior xmi:type="uml:OpaqueBehavior" xmi:id="_G7muo_VgEemTJIu6MXTrdg" name="deactivate" specification="_G7muqvVgEemTJIu6MXTrdg"> + <language>C/C++</language> + <body></body> + </ownedBehavior> + <ownedOperation xmi:type="uml:Operation" xmi:id="_G7mupPVgEemTJIu6MXTrdg" name="staticAct" isStatic="true" method="_G7mumvVgEemTJIu6MXTrdg"> + <ownedParameter xmi:type="uml:Parameter" xmi:id="_G7mupfVgEemTJIu6MXTrdg" name="arg"> + <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_8I6RgBydEduyofBvg4RL2w"/> + <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_G7mupvVgEemTJIu6MXTrdg" value="1"/> + <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_G7mup_VgEemTJIu6MXTrdg" value="1"/> + </ownedParameter> + <ownedParameter xmi:type="uml:Parameter" xmi:id="_G7muqPVgEemTJIu6MXTrdg" name="ret" direction="return"> + <type xmi:type="uml:PrimitiveType" href="pathmap://PapyrusC_Cpp_LIBRARIES/AnsiCLibrary.uml#_8I6RgBydEduyofBvg4RL2w"/> + </ownedParameter> + </ownedOperation> + <ownedOperation xmi:type="uml:Operation" xmi:id="_G7muqfVgEemTJIu6MXTrdg" name="activate" method="_G7muofVgEemTJIu6MXTrdg"/> + <ownedOperation xmi:type="uml:Operation" xmi:id="_G7muqvVgEemTJIu6MXTrdg" name="deactivate" method="_G7muo_VgEemTJIu6MXTrdg"/> + <ownedOperation xmi:type="uml:Operation" xmi:id="_G7muq_VgEemTJIu6MXTrdg" name="configuration_complete" method="_G7muovVgEemTJIu6MXTrdg"/> + </packagedElement> + <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_oMdrQPVgEemTJIu6MXTrdg"> + <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_oMe5YPVgEemTJIu6MXTrdg" source="http://www.eclipse.org/uml2/2.0.0/UML"> + <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/MARTE/1#//MARTE_DesignModel/SRM"/> + </eAnnotations> + <appliedProfile xmi:type="uml:Profile" href="pathmap://Papyrus_PROFILES/MARTE.profile.uml#_3VS0wAPMEdyuUt-4qHuVvQ"/> + </profileApplication> + <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_oMgHgfVgEemTJIu6MXTrdg"> + <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_oMgukPVgEemTJIu6MXTrdg" source="http://www.eclipse.org/uml2/2.0.0/UML"> + <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/MARTE/1#//MARTE_DesignModel/SRM/SW_Concurrency"/> + </eAnnotations> + <appliedProfile xmi:type="uml:Profile" href="pathmap://Papyrus_PROFILES/MARTE.profile.uml#_A_vtYBJeEdy3Td9UhuLFPg"/> + </profileApplication> + </packagedElement> + <packagedElement xmi:type="uml:Package" xmi:id="_bcM2YGkzEeqVn9vWpzOeXg" name="stdlib"> + <packagedElement xmi:type="uml:PrimitiveType" xmi:id="_n9guwGkbEeqVn9vWpzOeXg" name="vector<std::string>"> + <templateBinding xmi:type="uml:TemplateBinding" xmi:id="_Qy1ZEGk1EeqVn9vWpzOeXg" signature="_JBTWcGk1EeqVn9vWpzOeXg"> + <parameterSubstitution xmi:type="uml:TemplateParameterSubstitution" xmi:id="_bo0EIGk1EeqVn9vWpzOeXg" actual="_IijsIHSQEeispf19VVdJXQ" formal="_bLdPMGk0EeqVn9vWpzOeXg"/> + </templateBinding> + </packagedElement> + <packagedElement xmi:type="uml:Class" xmi:id="_IijsIHSQEeispf19VVdJXQ" name="string"/> + <packagedElement xmi:type="uml:Class" xmi:id="_DTQ1kGk1EeqVn9vWpzOeXg" name="vector"> + <ownedTemplateSignature xmi:type="uml:RedefinableTemplateSignature" xmi:id="_JBTWcGk1EeqVn9vWpzOeXg" name="RedefinableTemplateSignature1" parameter="_bLdPMGk0EeqVn9vWpzOeXg"> + <ownedParameter xmi:type="uml:ClassifierTemplateParameter" xmi:id="_bLdPMGk0EeqVn9vWpzOeXg" parameteredElement="_e9BcUGk0EeqVn9vWpzOeXg"> + <ownedParameteredElement xmi:type="uml:Class" xmi:id="_e9BcUGk0EeqVn9vWpzOeXg" name="T" templateParameter="_bLdPMGk0EeqVn9vWpzOeXg"/> + </ownedParameter> + </ownedTemplateSignature> + </packagedElement> + </packagedElement> + <packagedElement xmi:type="uml:Package" xmi:id="_uklG8HNvEeqPZecp7_XFqQ" name="rclcpp_action"> + <ownedComment xmi:type="uml:Comment" xmi:id="_Pm54YHNwEeqPZecp7_XFqQ"> + <body>Action client and server are defined in their own namespace</body> + </ownedComment> + <packagedElement xmi:type="uml:Class" xmi:id="_uklG_3NvEeqPZecp7_XFqQ" name="Server"/> + <packagedElement xmi:type="uml:Class" xmi:id="_uklHAHNvEeqPZecp7_XFqQ" name="Client"/> + <packagedElement xmi:type="uml:Class" xmi:id="_vHAWkH_8EeqWy9TAoOxzCg" name="ClientGoalHandle"/> + <packagedElement xmi:type="uml:Class" xmi:id="_pJTIkIApEeqWy9TAoOxzCg" name="GoalUUID"/> + <packagedElement xmi:type="uml:Class" xmi:id="_IS0MsIGHEeqBWvhpPyY2CQ" name="GoalResponse"/> + <packagedElement xmi:type="uml:Class" xmi:id="_PD2boIGHEeqBWvhpPyY2CQ" name="CancelResponse"/> + </packagedElement> + <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_3nqkYG_FEeiX6ta975XXMg"> + <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_3nrygG_FEeiX6ta975XXMg" 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="_XkBn0K7fEemxGIY1-rj1kw"> + <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_XkDdAK7fEemxGIY1-rj1kw" source="http://www.eclipse.org/uml2/2.0.0/UML"> + <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/robotics/1#//commobject"/> + </eAnnotations> + <appliedProfile xmi:type="uml:Profile" href="pathmap://ROBOTICS_PROFILES/robotics.profile.uml#_bz5AcPCaEeee6ab5J_C5Dg"/> + </profileApplication> + <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_HiMM0K7oEemGAs1AuXY9aw"> + <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_HiOCAK7oEemGAs1AuXY9aw" source="http://www.eclipse.org/uml2/2.0.0/UML"> + <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/robotics/1#//services"/> + </eAnnotations> + <appliedProfile xmi:type="uml:Profile" href="pathmap://ROBOTICS_PROFILES/robotics.profile.uml#_SlbOAJe_EeeiCOWsEr9OuA"/> + </profileApplication> + </uml:Model> + <C_Cpp:ExternLibrary xmi:id="_xkRygHSPEeispf19VVdJXQ" base_package="_r1zz0HSPEeispf19VVdJXQ" prefix="rclcpp::"> + <includes>rclcpp/rclcpp.hpp</includes> + </C_Cpp:ExternLibrary> + <C_Cpp:ExternLibrary xmi:id="_6GsHkJdaEem38prD3RV14g" base_package="_uUivMJdaEem38prD3RV14g" prefix="rclcpp_lifecycle::"/> + <C_Cpp:External xmi:id="_LQzDIJdbEem38prD3RV14g" incPath="rclcpp_lifecycle/lifecycle_node.hpp" base_Classifier="_HGPHMJdbEem38prD3RV14g"/> + <C_Cpp:Include xmi:id="_-JQSsPVgEemTJIu6MXTrdg" body="#include <pthread.h>" base_class="_G7muk_VgEemTJIu6MXTrdg" base_Classifier="_G7muk_VgEemTJIu6MXTrdg"/> + <SW_Concurrency:SwSchedulableResource xmi:id="_nS96oPVkEemTJIu6MXTrdg" base_Classifier="_G7muk_VgEemTJIu6MXTrdg" priorityElements="_G7mulvVgEemTJIu6MXTrdg"/> + <C_Cpp:External xmi:id="_lOMrUP7MEemW86Fq7AkVug" incPath="rclcpp_lifecycle/lifecycle_node.hpp" base_Classifier="_hpl8IP7MEemW86Fq7AkVug"/> + <C_Cpp:External xmi:id="_vLWOcGkbEeqVn9vWpzOeXg" name="" incPath="vector" base_Classifier="_n9guwGkbEeqVn9vWpzOeXg"/> + <C_Cpp:ExternLibrary xmi:id="_lCNuYGkzEeqVn9vWpzOeXg" base_package="_bcM2YGkzEeqVn9vWpzOeXg" prefix="std::"/> + <C_Cpp:External xmi:id="_5JMqwGkzEeqVn9vWpzOeXg" name="" incPath="string" base_Classifier="_IijsIHSQEeispf19VVdJXQ"/> + <C_Cpp:External xmi:id="_Fb0dgGk1EeqVn9vWpzOeXg" name="" incPath="vector" base_Classifier="_DTQ1kGk1EeqVn9vWpzOeXg"/> + <C_Cpp:ExternLibrary xmi:id="_UUjTQHNwEeqPZecp7_XFqQ" base_package="_uklG8HNvEeqPZecp7_XFqQ" prefix="rclcpp_action::"> + <includes>rclcpp_action/rclcpp_action.hpp</includes> + </C_Cpp:ExternLibrary> +</xmi:XMI>
diff --git a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui/plugin.properties b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui/plugin.properties new file mode 100644 index 0000000..23b3168 --- /dev/null +++ b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui/plugin.properties
@@ -0,0 +1,11 @@ +# Copyright (c) CEA LIST. +# +# This program and the accompanying materials are made +# available under the terms of the Eclipse Public License 2.0 +# which is available at https://www.eclipse.org/legal/epl-2.0/ +# +# SPDX-License-Identifier: EPL-2.0 +# + +pluginName=Papyrus for Robotics: generate ROS 2 code, UI part (Incubation) +providerName=Eclipse Modeling Project
diff --git a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui/plugin.xml b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui/plugin.xml new file mode 100644 index 0000000..49224e3 --- /dev/null +++ b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui/plugin.xml
@@ -0,0 +1,56 @@ +<?xml version="1.0" encoding="UTF-8"?> +<?eclipse version="3.2"?> +<plugin> + <extension point="org.eclipse.ui.commands"> + <command + categoryId="org.eclipse.papyrus.editor.category" + defaultHandler="org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui.handlers.GenerateCodeHandler" + id="org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui.GenerateCodeCmd" + name="Generate ROS 2/C++ code"/> + <command + categoryId="org.eclipse.papyrus.editor.category" + defaultHandler="org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui.handlers.RewriteCDTHandler" + id="org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui.RewriteCDTCmd" + name="Generate ROS 2/C++ code and rewrite CDT settings"/> + </extension> + <extension point="org.eclipse.ui.menus"> + <menuContribution + allPopups="false" + locationURI="popup:org.eclipse.papyrus.robotics.simplifiedui.ui.menu"> + <command + commandId="org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui.GenerateCodeCmd" + icon="platform:/plugin/org.eclipse.papyrus.robotics.ros2.codegen.common/icons/ros-16x16.png"> + <visibleWhen checkEnabled="false"> + <iterate> + <adapt type="org.eclipse.emf.ecore.EObject"> + <or> + <test property="org.eclipse.papyrus.uml.stereotype" value="robotics::components::ComponentDefinition"/> + <test property="org.eclipse.papyrus.uml.stereotype" value="robotics::components::System"/> + <test property="org.eclipse.papyrus.uml.stereotype" value="robotics::services::ServiceDefinition"/> + <test property="org.eclipse.papyrus.uml.stereotype" value="robotics::commobject::DataType"/> + <test property="org.eclipse.papyrus.uml.stereotype" value="robotics::commobject::CommunicationObject"/> + </or> + </adapt> + </iterate> + </visibleWhen> + </command> + <command + commandId="org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui.RewriteCDTCmd" + icon="platform:/plugin/org.eclipse.papyrus.robotics.ros2.codegen.common/icons/ros-16x16.png"> + <visibleWhen checkEnabled="false"> + <iterate> + <adapt type="org.eclipse.emf.ecore.EObject"> + <or> + <test property="org.eclipse.papyrus.uml.stereotype" value="robotics::components::ComponentDefinition"/> + <test property="org.eclipse.papyrus.uml.stereotype" value="robotics::components::System"/> + <test property="org.eclipse.papyrus.uml.stereotype" value="robotics::services::ServiceDefinition"/> + <test property="org.eclipse.papyrus.uml.stereotype" value="robotics::commobject::DataType"/> + <test property="org.eclipse.papyrus.uml.stereotype" value="robotics::commobject::CommunicationObject"/> + </or> + </adapt> + </iterate> + </visibleWhen> + </command> + </menuContribution> + </extension> +</plugin>
diff --git a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui/pom.xml b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui/pom.xml new file mode 100644 index 0000000..80813bb --- /dev/null +++ b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui/pom.xml
@@ -0,0 +1,13 @@ +<?xml version="1.0" encoding="UTF-8"?> +<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.robotics</groupId> + <artifactId>org.eclipse.papyrus.robotics.ros2</artifactId> + <version>0.8.0-SNAPSHOT</version> + </parent> + <artifactId>org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui</artifactId> + <packaging>eclipse-plugin</packaging> + <description>This module contains UI part of code generation for ROS 2/C++</description> +</project>
diff --git a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui/src/org/eclipse/papyrus/robotics/ros2/codegen/cpp/ui/Activator.java b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui/src/org/eclipse/papyrus/robotics/ros2/codegen/cpp/ui/Activator.java new file mode 100644 index 0000000..cd2fd65 --- /dev/null +++ b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui/src/org/eclipse/papyrus/robotics/ros2/codegen/cpp/ui/Activator.java
@@ -0,0 +1,67 @@ +/***************************************************************************** + * 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 v2.0 + * which accompanies this distribution, and is available at + * https://www.eclipse.org/legal/epl-2.0/ + * + * Contributors: + * Ansgar Radermacher ansgar.radermacher@cea.fr + * + *****************************************************************************/ +package org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui; + +import org.eclipse.ui.plugin.AbstractUIPlugin; +import org.osgi.framework.BundleContext; + +/** + * The activator class controls the plug-in life cycle + */ +public class Activator extends AbstractUIPlugin { + + // The plug-in ID + public static final String PLUGIN_ID = "org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui"; //$NON-NLS-1$ + + // The shared instance + private static Activator plugin; + + /** + * The constructor + */ + public Activator() { + } + + /* + * (non-Javadoc) + * + * @see org.eclipse.ui.plugin.AbstractUIPlugin#start(org.osgi.framework.BundleContext) + */ + @Override + public void start(BundleContext context) throws Exception { + super.start(context); + plugin = this; + } + + /* + * (non-Javadoc) + * + * @see org.eclipse.ui.plugin.AbstractUIPlugin#stop(org.osgi.framework.BundleContext) + */ + @Override + public void stop(BundleContext context) throws Exception { + plugin = null; + super.stop(context); + } + + /** + * Returns the shared instance + * + * @return the shared instance + */ + public static Activator getDefault() { + return plugin; + } + +}
diff --git a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp/src/org/eclipse/papyrus/robotics/ros2/codegen/cpp/handlers/GenerateCodeHandler.java b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui/src/org/eclipse/papyrus/robotics/ros2/codegen/cpp/ui/handlers/GenerateCodeHandler.java similarity index 88% rename from plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp/src/org/eclipse/papyrus/robotics/ros2/codegen/cpp/handlers/GenerateCodeHandler.java rename to plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui/src/org/eclipse/papyrus/robotics/ros2/codegen/cpp/ui/handlers/GenerateCodeHandler.java index d26dbd1..732716b 100644 --- a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp/src/org/eclipse/papyrus/robotics/ros2/codegen/cpp/handlers/GenerateCodeHandler.java +++ b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui/src/org/eclipse/papyrus/robotics/ros2/codegen/cpp/ui/handlers/GenerateCodeHandler.java
@@ -14,18 +14,18 @@ * *****************************************************************************/ -package org.eclipse.papyrus.robotics.ros2.codegen.cpp.handlers; +package org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui.handlers; import org.eclipse.core.commands.ExecutionEvent; import org.eclipse.core.commands.ExecutionException; import org.eclipse.core.runtime.jobs.Job; import org.eclipse.jface.dialogs.MessageDialog; -import org.eclipse.papyrus.designer.transformation.base.utils.ProjectManagement; +import org.eclipse.papyrus.designer.infra.ui.UIProjectManagement; import org.eclipse.papyrus.designer.transformation.core.transformations.TransformationContext; import org.eclipse.papyrus.designer.transformation.profile.Transformation.ExecuteTrafoChain; +import org.eclipse.papyrus.designer.uml.tools.utils.PackageUtil; import org.eclipse.papyrus.robotics.ros2.codegen.cpp.jobs.CppGenJob; import org.eclipse.papyrus.uml.diagram.common.handlers.CmdHandler; -import org.eclipse.papyrus.uml.tools.utils.PackageUtil; import org.eclipse.swt.widgets.Display; import org.eclipse.uml2.uml.Classifier; @@ -43,7 +43,7 @@ Job job = new CppGenJob( PackageUtil.getRootPackage((Classifier) selectedEObject), - ProjectManagement.getCurrentProject()); + UIProjectManagement.getCurrentProject()); job.setUser(true); job.schedule();
diff --git a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp/src/org/eclipse/papyrus/robotics/ros2/codegen/cpp/handlers/RewriteCDTHandler.java b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui/src/org/eclipse/papyrus/robotics/ros2/codegen/cpp/ui/handlers/RewriteCDTHandler.java similarity index 70% rename from plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp/src/org/eclipse/papyrus/robotics/ros2/codegen/cpp/handlers/RewriteCDTHandler.java rename to plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui/src/org/eclipse/papyrus/robotics/ros2/codegen/cpp/ui/handlers/RewriteCDTHandler.java index dfe40ce..dd92281 100644 --- a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp/src/org/eclipse/papyrus/robotics/ros2/codegen/cpp/handlers/RewriteCDTHandler.java +++ b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui/src/org/eclipse/papyrus/robotics/ros2/codegen/cpp/ui/handlers/RewriteCDTHandler.java
@@ -14,20 +14,18 @@ * *****************************************************************************/ -package org.eclipse.papyrus.robotics.ros2.codegen.cpp.handlers; +package org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui.handlers; import java.util.HashMap; -import java.util.Map; import org.eclipse.core.commands.ExecutionEvent; import org.eclipse.core.commands.ExecutionException; import org.eclipse.core.runtime.jobs.Job; -import org.eclipse.papyrus.designer.transformation.base.utils.ProjectManagement; +import org.eclipse.papyrus.designer.infra.ui.UIProjectManagement; import org.eclipse.papyrus.designer.transformation.profile.Transformation.ExecuteTrafoChain; -import org.eclipse.papyrus.robotics.ros2.codegen.common.RoboticsTContext; +import org.eclipse.papyrus.designer.uml.tools.utils.PackageUtil; import org.eclipse.papyrus.robotics.ros2.codegen.cpp.jobs.CppGenJob; import org.eclipse.papyrus.uml.diagram.common.handlers.CmdHandler; -import org.eclipse.papyrus.uml.tools.utils.PackageUtil; import org.eclipse.uml2.uml.Classifier; public class RewriteCDTHandler extends CmdHandler { @@ -43,22 +41,11 @@ Job job = new CppGenJob( PackageUtil.getRootPackage((Classifier) selectedEObject), - ProjectManagement.getCurrentProject(), + UIProjectManagement.getCurrentProject(), new HashMap<String, Boolean>()); job.setUser(true); job.schedule(); return null; } - - public static boolean rewriteProject(String projectName) { - Map<String, Boolean> rewriteMap = RoboticsTContext.current.rewriteMap; - if (rewriteMap != null) { - if (!rewriteMap.containsKey(projectName)) { - rewriteMap.put(projectName, true); - return true; - } - } - return false; - } }
diff --git a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp/META-INF/MANIFEST.MF b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp/META-INF/MANIFEST.MF index 366c9c1..4e1df81 100644 --- a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp/META-INF/MANIFEST.MF +++ b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp/META-INF/MANIFEST.MF
@@ -2,8 +2,7 @@ Export-Package: org.eclipse.papyrus.robotics.ros2.codegen.cpp, org.eclipse.papyrus.robotics.ros2.codegen.cpp.jobs, org.eclipse.papyrus.robotics.ros2.codegen.cpp.utils -Require-Bundle: org.eclipse.ui, - org.eclipse.papyrus.designer.transformation.core;bundle-version="0.7.0", +Require-Bundle: org.eclipse.papyrus.designer.transformation.core;bundle-version="0.7.0", org.eclipse.uml2.uml;bundle-version="4.0.0", org.eclipse.papyrus.uml.tools.utils;bundle-version="[3.4.0,5.0.0)", org.eclipse.papyrus.infra.core.log;bundle-version="[1.2.0,3.0.0)", @@ -20,11 +19,9 @@ org.eclipse.papyrus.designer.deployment.tools;bundle-version="0.7.0", org.eclipse.papyrus.designer.languages.cpp.codegen;bundle-version="1.1.0", org.eclipse.papyrus.designer.transformation.extensions;bundle-version="0.7.0", - org.eclipse.papyrus.designer.deployment.profile;bundle-version="0.7.0", org.eclipse.papyrus.designer.languages.common.extensionpoints;bundle-version="1.1.0", org.eclipse.papyrus.designer.infra.base;bundle-version="1.1.0", org.eclipse.papyrus.designer.languages.common.profile, - org.eclipse.papyrus.designer.infra.ui;bundle-version="1.1.0", org.eclipse.papyrus.robotics.profile;bundle-version="0.7.0", org.eclipse.papyrus.designer.transformation.library;bundle-version="0.7.0", org.eclipse.papyrus.robotics.core;bundle-version="0.7.0", @@ -49,4 +46,4 @@ Bundle-ManifestVersion: 2 Bundle-SymbolicName: org.eclipse.papyrus.robotics.ros2.codegen.cpp;singleton:=true Bundle-RequiredExecutionEnvironment: JavaSE-11 -Automatic-Module-Name: org.eclipse.papyrus.robotics.transformation.ros.library +Automatic-Module-Name: org.eclipse.papyrus.robotics.ros2.codegen.cpp
diff --git a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp/plugin.xml b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp/plugin.xml index f5d862a..3626982 100644 --- a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp/plugin.xml +++ b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp/plugin.xml
@@ -1,58 +1,6 @@ <?xml version="1.0" encoding="UTF-8"?> <?eclipse version="3.2"?> <plugin> - <extension point="org.eclipse.ui.commands"> - <command - categoryId="org.eclipse.papyrus.editor.category" - defaultHandler="org.eclipse.papyrus.robotics.ros2.codegen.cpp.handlers.GenerateCodeHandler" - id="org.eclipse.papyrus.robotics.ros2.codegen.cpp.GenerateCodeCmd" - name="Generate ROS 2/C++ code"/> - <command - categoryId="org.eclipse.papyrus.editor.category" - defaultHandler="org.eclipse.papyrus.robotics.ros2.codegen.cpp.handlers.RewriteCDTHandler" - id="org.eclipse.papyrus.robotics.ros2.codegen.cpp.RewriteCDTCmd" - name="Generate ROS 2/C++ code and rewrite CDT settings"/> - </extension> - <extension point="org.eclipse.ui.menus"> - <menuContribution - allPopups="false" - locationURI="popup:org.eclipse.papyrus.robotics.simplifiedui.ui.menu"> - <command - commandId="org.eclipse.papyrus.robotics.ros2.codegen.cpp.GenerateCodeCmd" - icon="platform:/plugin/org.eclipse.papyrus.robotics.ros2.codegen.common/icons/ros-16x16.png"> - <visibleWhen checkEnabled="false"> - <iterate> - <adapt type="org.eclipse.emf.ecore.EObject"> - <or> - <test property="org.eclipse.papyrus.uml.stereotype" value="robotics::components::ComponentDefinition"/> - <test property="org.eclipse.papyrus.uml.stereotype" value="robotics::components::System"/> - <test property="org.eclipse.papyrus.uml.stereotype" value="robotics::services::ServiceDefinition"/> - <test property="org.eclipse.papyrus.uml.stereotype" value="robotics::commobject::DataType"/> - <test property="org.eclipse.papyrus.uml.stereotype" value="robotics::commobject::CommunicationObject"/> - </or> - </adapt> - </iterate> - </visibleWhen> - </command> - <command - commandId="org.eclipse.papyrus.robotics.ros2.codegen.cpp.RewriteCDTCmd" - icon="platform:/plugin/org.eclipse.papyrus.robotics.ros2.codegen.common/icons/ros-16x16.png"> - <visibleWhen checkEnabled="false"> - <iterate> - <adapt type="org.eclipse.emf.ecore.EObject"> - <or> - <test property="org.eclipse.papyrus.uml.stereotype" value="robotics::components::ComponentDefinition"/> - <test property="org.eclipse.papyrus.uml.stereotype" value="robotics::components::System"/> - <test property="org.eclipse.papyrus.uml.stereotype" value="robotics::services::ServiceDefinition"/> - <test property="org.eclipse.papyrus.uml.stereotype" value="robotics::commobject::DataType"/> - <test property="org.eclipse.papyrus.uml.stereotype" value="robotics::commobject::CommunicationObject"/> - </or> - </adapt> - </iterate> - </visibleWhen> - </command> - </menuContribution> - </extension> <extension point="org.eclipse.emf.ecore.uri_mapping"> <mapping source="pathmap://ROS2_CPP_LIBRARY/" target="platform:/plugin/org.eclipse.papyrus.robotics.ros2.codegen.cpp/models/library/">
diff --git a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp/src/org/eclipse/papyrus/robotics/ros2/codegen/cpp/Activator.java b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp/src/org/eclipse/papyrus/robotics/ros2/codegen/cpp/Activator.java index 53d0589..ddf2656 100644 --- a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp/src/org/eclipse/papyrus/robotics/ros2/codegen/cpp/Activator.java +++ b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp/src/org/eclipse/papyrus/robotics/ros2/codegen/cpp/Activator.java
@@ -13,14 +13,14 @@ *****************************************************************************/ package org.eclipse.papyrus.robotics.ros2.codegen.cpp; +import org.eclipse.core.runtime.Plugin; import org.eclipse.papyrus.infra.core.log.LogHelper; -import org.eclipse.ui.plugin.AbstractUIPlugin; import org.osgi.framework.BundleContext; /** * The activator class controls the plug-in life cycle */ -public class Activator extends AbstractUIPlugin { +public class Activator extends Plugin { // The plug-in ID public static final String PLUGIN_ID = "org.eclipse.papyrus.robotics.ros2.codegen.cpp"; //$NON-NLS-1$
diff --git a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp/src/org/eclipse/papyrus/robotics/ros2/codegen/cpp/utils/ProjectTools.xtend b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp/src/org/eclipse/papyrus/robotics/ros2/codegen/cpp/utils/ProjectTools.xtend index 3bdcef6..f30c731 100644 --- a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp/src/org/eclipse/papyrus/robotics/ros2/codegen/cpp/utils/ProjectTools.xtend +++ b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.cpp/src/org/eclipse/papyrus/robotics/ros2/codegen/cpp/utils/ProjectTools.xtend
@@ -42,13 +42,13 @@ import org.eclipse.papyrus.robotics.ros2.base.EnvironmentUtils import org.eclipse.papyrus.robotics.ros2.base.Ros2Constants import org.eclipse.papyrus.robotics.ros2.codegen.cpp.component.RoboticsCppCreator -import org.eclipse.papyrus.robotics.ros2.codegen.cpp.handlers.RewriteCDTHandler import org.eclipse.papyrus.robotics.ros2.preferences.Ros2PreferenceUtils import org.eclipse.papyrus.uml.tools.utils.StereotypeUtil import org.eclipse.uml2.uml.Class import org.eclipse.uml2.uml.Package import org.eclipse.core.resources.ProjectScope import org.eclipse.cdt.core.formatter.DefaultCodeFormatterConstants +import org.eclipse.papyrus.robotics.ros2.codegen.common.RoboticsTContext /** * get or create a CDT project with a given name @@ -64,7 +64,7 @@ var genProject = ProjectManagement.getNamedProject(projectName) if ((genProject !== null && genProject.exists() && genProject.getNature(CCProjectNature.CC_NATURE_ID) === null) || - RewriteCDTHandler.rewriteProject(projectName)) { + RoboticsTContext.rewriteProject(projectName)) { // not a CDT project (or forced rewrite), force conversion into C++ genProject = null }
diff --git a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python.ui/.classpath b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python.ui/.classpath new file mode 100644 index 0000000..bc57d23 --- /dev/null +++ b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python.ui/.classpath
@@ -0,0 +1,7 @@ +<?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-11"/> + <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/> + <classpathentry kind="src" path="src/"/> + <classpathentry kind="output" path="target/classes"/> +</classpath>
diff --git a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python.ui/.gitignore b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python.ui/.gitignore new file mode 100644 index 0000000..5500bf7 --- /dev/null +++ b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python.ui/.gitignore
@@ -0,0 +1 @@ +tmpModel
diff --git a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python.ui/.project b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python.ui/.project new file mode 100644 index 0000000..69d6748 --- /dev/null +++ b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python.ui/.project
@@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>org.eclipse.papyrus.robotics.ros2.codegen.python.ui</name> + <comment></comment> + <projects> + </projects> + <buildSpec> + <buildCommand> + <name>org.eclipse.jdt.core.javabuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.pde.ManifestBuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.pde.SchemaBuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.m2e.core.maven2Builder</name> + <arguments> + </arguments> + </buildCommand> + </buildSpec> + <natures> + <nature>org.eclipse.m2e.core.maven2Nature</nature> + <nature>org.eclipse.pde.PluginNature</nature> + <nature>org.eclipse.jdt.core.javanature</nature> + </natures> +</projectDescription>
diff --git a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python.ui/.settings/org.eclipse.core.resources.prefs b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python.ui/.settings/org.eclipse.core.resources.prefs new file mode 100644 index 0000000..99f26c0 --- /dev/null +++ b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python.ui/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,2 @@ +eclipse.preferences.version=1 +encoding/<project>=UTF-8
diff --git a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python.ui/.settings/org.eclipse.core.runtime.prefs b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python.ui/.settings/org.eclipse.core.runtime.prefs new file mode 100644 index 0000000..5a0ad22 --- /dev/null +++ b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python.ui/.settings/org.eclipse.core.runtime.prefs
@@ -0,0 +1,2 @@ +eclipse.preferences.version=1 +line.separator=\n
diff --git a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python.ui/.settings/org.eclipse.jdt.core.prefs b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python.ui/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 0000000..f4d933e --- /dev/null +++ b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python.ui/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,7 @@ +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled +org.eclipse.jdt.core.compiler.codegen.targetPlatform=11 +org.eclipse.jdt.core.compiler.compliance=11 +org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.enumIdentifier=error +org.eclipse.jdt.core.compiler.source=11
diff --git a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python.ui/.settings/org.eclipse.m2e.core.prefs b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python.ui/.settings/org.eclipse.m2e.core.prefs new file mode 100644 index 0000000..f897a7f --- /dev/null +++ b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python.ui/.settings/org.eclipse.m2e.core.prefs
@@ -0,0 +1,4 @@ +activeProfiles= +eclipse.preferences.version=1 +resolveWorkspaceProjects=true +version=1
diff --git a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python.ui/.settings/org.eclipse.xtend.core.Xtend.prefs b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python.ui/.settings/org.eclipse.xtend.core.Xtend.prefs new file mode 100644 index 0000000..df3c3c4 --- /dev/null +++ b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python.ui/.settings/org.eclipse.xtend.core.Xtend.prefs
@@ -0,0 +1,6 @@ +//outlet.DEFAULT_OUTPUT.sourceFolder.src/main/java.directory=xtend-gen +BuilderConfiguration.is_project_specific=true +eclipse.preferences.version=1 +outlet.DEFAULT_OUTPUT.hideLocalSyntheticVariables=true +outlet.DEFAULT_OUTPUT.installDslAsPrimarySource=false +outlet.DEFAULT_OUTPUT.userOutputPerSourceFolder=true
diff --git a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python.ui/META-INF/MANIFEST.MF b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python.ui/META-INF/MANIFEST.MF new file mode 100644 index 0000000..87d7184 --- /dev/null +++ b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python.ui/META-INF/MANIFEST.MF
@@ -0,0 +1,20 @@ +Manifest-Version: 1.0 +Require-Bundle: org.eclipse.ui;bundle-version="3.0.0", + org.eclipse.core.runtime;bundle-version="3.0.0", + org.eclipse.papyrus.robotics.ros2.codegen.python;bundle-version="0.8.0", + org.eclipse.papyrus.designer.infra.ui, + org.eclipse.papyrus.designer.transformation.core, + org.eclipse.papyrus.designer.transformation.profile, + org.eclipse.papyrus.designer.uml.tools.utils, + org.eclipse.papyrus.uml.diagram.common, + org.eclipse.core.resources;bundle-version="3.0.0" +Bundle-Vendor: %providerName +Bundle-ActivationPolicy: lazy +Bundle-Version: 0.8.0.qualifier +Bundle-Localization: plugin +Bundle-Name: %pluginName +Bundle-Activator: org.eclipse.papyrus.robotics.ros2.codegen.python.ui.Activator +Bundle-ManifestVersion: 2 +Bundle-SymbolicName: org.eclipse.papyrus.robotics.ros2.codegen.python.ui;singleton:=true +Bundle-RequiredExecutionEnvironment: JavaSE-11 +Automatic-Module-Name: org.eclipse.papyrus.robotics.ros2.codegen.python.ui
diff --git a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python.ui/about.html b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python.ui/about.html new file mode 100644 index 0000000..778e1ba --- /dev/null +++ b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python.ui/about.html
@@ -0,0 +1,27 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" + "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> +<html xmlns="http://www.w3.org/1999/xhtml"> +<head> +<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/> +<title>About</title> +</head> +<body lang="EN-US"> +<h2>About This Content</h2> + +<h3>License</h3> + +<p>The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise +indicated below, the Content is provided to you under the terms and conditions of the +Eclipse Public License Version 2.0 ("EPL"). A copy of the EPL is available +at <a href="https://www.eclipse.org/legal/epl-2.0/">https://www.eclipse.org/legal/epl-2.0/</a>. +For purposes of the EPL, "Program" will mean the Content.</p> + +<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is +being redistributed by another party ("Redistributor") and different terms and conditions may +apply to your use of any object code in the Content. Check the Redistributor's license that was +provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise +indicated below, the terms and conditions of the EPL still apply to any source code in the Content +and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p> + +</body> +</html>
diff --git a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python.ui/build.properties b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python.ui/build.properties new file mode 100644 index 0000000..cf8677c --- /dev/null +++ b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python.ui/build.properties
@@ -0,0 +1,13 @@ +# +#Thu Jun 28 15:46:18 CEST 2012 +bin.includes = META-INF/,\ + .,\ + models/,\ + plugin.xml,\ + .classpath,\ + .project,\ + about.html,\ + plugin.properties +src.includes = models/,\ + about.html +source.. = src/
diff --git a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python.ui/models/library/rclpy.di b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python.ui/models/library/rclpy.di new file mode 100644 index 0000000..8c549ee --- /dev/null +++ b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python.ui/models/library/rclpy.di
@@ -0,0 +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"/>
diff --git a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python.ui/models/library/rclpy.notation b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python.ui/models/library/rclpy.notation new file mode 100644 index 0000000..ac35126 --- /dev/null +++ b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python.ui/models/library/rclpy.notation
@@ -0,0 +1,1855 @@ +<?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.3/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="_4wGCEO4aEey3buyMmxEJ_w" type="PapyrusUMLClassDiagram" name="node_module" measurementUnit="Pixel"> + <children xmi:type="notation:Shape" xmi:id="_hq5Loe4bEey3buyMmxEJ_w" type="Package_Shape"> + <children xmi:type="notation:DecorationNode" xmi:id="_hq5Lo-4bEey3buyMmxEJ_w" type="Package_NameLabel"/> + <children xmi:type="notation:BasicCompartment" xmi:id="_hq5LpO4bEey3buyMmxEJ_w" type="Package_PackagedElementCompartment"> + <children xmi:type="notation:Shape" xmi:id="_eEr58e4bEey3buyMmxEJ_w" type="Class_Shape"> + <children xmi:type="notation:DecorationNode" xmi:id="_eEr58-4bEey3buyMmxEJ_w" type="Class_NameLabel"/> + <children xmi:type="notation:DecorationNode" xmi:id="_eEr59O4bEey3buyMmxEJ_w" type="Class_FloatingNameLabel"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_eEr59e4bEey3buyMmxEJ_w" y="15"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_eEr59u4bEey3buyMmxEJ_w" type="Class_AttributeCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_eEr59-4bEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_eEr5-O4bEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_eEr5-e4bEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_eEr5-u4bEey3buyMmxEJ_w"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_eEr5--4bEey3buyMmxEJ_w" type="Class_OperationCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_eEr5_O4bEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_eEr5_e4bEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_eEr5_u4bEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_eEr5_-4bEey3buyMmxEJ_w"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_eEr6AO4bEey3buyMmxEJ_w" type="Class_NestedClassifierCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_eEr6Ae4bEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_eEr6Au4bEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_eEr6A-4bEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_eEr6BO4bEey3buyMmxEJ_w"/> + </children> + <element xmi:type="uml:Class" href="rclpy.uml#_eEr58O4bEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_eEr58u4bEey3buyMmxEJ_w" x="34" y="23"/> + </children> + <styles xmi:type="notation:TitleStyle" xmi:id="_hq5Lpe4bEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_hq5Lpu4bEey3buyMmxEJ_w"/> + </children> + <element xmi:type="uml:Package" href="rclpy.uml#_hq5LoO4bEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_hq5Lou4bEey3buyMmxEJ_w" x="220" y="220" width="181" height="221"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_yQNPQLlGEe27HeoHLJk0Yw" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_yQNPQblGEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="_yQNPQ7lGEe27HeoHLJk0Yw" name="BASE_ELEMENT"> + <eObjectValue xmi:type="uml:Package" href="rclpy.uml#_hq5LoO4bEey3buyMmxEJ_w"/> + </styles> + <element xsi:nil="true"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_yQNPQrlGEe27HeoHLJk0Yw" x="420" y="220"/> + </children> + <styles xmi:type="notation:StringValueStyle" xmi:id="_4wGCEe4aEey3buyMmxEJ_w" name="diagram_compatibility_version" stringValue="1.4.0"/> + <styles xmi:type="notation:DiagramStyle" xmi:id="_4wGCEu4aEey3buyMmxEJ_w"/> + <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_4wGCE-4aEey3buyMmxEJ_w" diagramKindId="org.eclipse.papyrus.uml.diagram.class"> + <owner xmi:type="uml:Model" href="rclpy.uml#_21YB0O4aEey3buyMmxEJ_w"/> + </styles> + <element xmi:type="uml:Model" href="rclpy.uml#_21YB0O4aEey3buyMmxEJ_w"/> + <edges xmi:type="notation:Connector" xmi:id="_yQNPRLlGEe27HeoHLJk0Yw" type="StereotypeCommentLink" source="_hq5Loe4bEey3buyMmxEJ_w" target="_yQNPQLlGEe27HeoHLJk0Yw"> + <styles xmi:type="notation:FontStyle" xmi:id="_yQNPRblGEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="_yQNPSblGEe27HeoHLJk0Yw" name="BASE_ELEMENT"> + <eObjectValue xmi:type="uml:Package" href="rclpy.uml#_hq5LoO4bEey3buyMmxEJ_w"/> + </styles> + <element xsi:nil="true"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_yQNPRrlGEe27HeoHLJk0Yw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_yQNPR7lGEe27HeoHLJk0Yw"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_yQNPSLlGEe27HeoHLJk0Yw"/> + </edges> + </notation:Diagram> + <notation:Diagram xmi:id="_8NhyQO4aEey3buyMmxEJ_w" type="PapyrusUMLClassDiagram" name="lifecycle_module" measurementUnit="Pixel"> + <children xmi:type="notation:Shape" xmi:id="_uqkHEe4bEey3buyMmxEJ_w" type="Package_Shape"> + <children xmi:type="notation:DecorationNode" xmi:id="_uqkHE-4bEey3buyMmxEJ_w" type="Package_NameLabel"/> + <children xmi:type="notation:BasicCompartment" xmi:id="_uqkHFO4bEey3buyMmxEJ_w" type="Package_PackagedElementCompartment"> + <children xmi:type="notation:Shape" xmi:id="_xe6eAe4bEey3buyMmxEJ_w" type="Class_Shape"> + <children xmi:type="notation:DecorationNode" xmi:id="_xe6eA-4bEey3buyMmxEJ_w" type="Class_NameLabel"/> + <children xmi:type="notation:DecorationNode" xmi:id="_xe6eBO4bEey3buyMmxEJ_w" type="Class_FloatingNameLabel"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_xe6eBe4bEey3buyMmxEJ_w" y="15"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_xe6eBu4bEey3buyMmxEJ_w" type="Class_AttributeCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_xe6eB-4bEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_xe6eCO4bEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_xe6eCe4bEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_xe6eCu4bEey3buyMmxEJ_w"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_xe6eC-4bEey3buyMmxEJ_w" type="Class_OperationCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_xe6eDO4bEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_xe6eDe4bEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_xe6eDu4bEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_xe6eD-4bEey3buyMmxEJ_w"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_xe6eEO4bEey3buyMmxEJ_w" type="Class_NestedClassifierCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_xe6eEe4bEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_xe6eEu4bEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_xe6eE-4bEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_xe6eFO4bEey3buyMmxEJ_w"/> + </children> + <element xmi:type="uml:Class" href="rclpy.uml#_xe6eAO4bEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_xe6eAu4bEey3buyMmxEJ_w" x="14" y="17"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_y3RYEe4bEey3buyMmxEJ_w" type="Class_Shape"> + <children xmi:type="notation:DecorationNode" xmi:id="_y3RYE-4bEey3buyMmxEJ_w" type="Class_NameLabel"/> + <children xmi:type="notation:DecorationNode" xmi:id="_y3RYFO4bEey3buyMmxEJ_w" type="Class_FloatingNameLabel"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_y3RYFe4bEey3buyMmxEJ_w" y="15"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_y3RYFu4bEey3buyMmxEJ_w" type="Class_AttributeCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_y3RYF-4bEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_y3RYGO4bEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_y3RYGe4bEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_y3RYGu4bEey3buyMmxEJ_w"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_y3RYG-4bEey3buyMmxEJ_w" type="Class_OperationCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_y3RYHO4bEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_y3RYHe4bEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_y3RYHu4bEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_y3RYH-4bEey3buyMmxEJ_w"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_y3RYIO4bEey3buyMmxEJ_w" type="Class_NestedClassifierCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_y3RYIe4bEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_y3RYIu4bEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_y3RYI-4bEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_y3RYJO4bEey3buyMmxEJ_w"/> + </children> + <element xmi:type="uml:Class" href="rclpy.uml#_y3RYEO4bEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_y3RYEu4bEey3buyMmxEJ_w" x="134" y="17"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_1TWY8e4bEey3buyMmxEJ_w" type="Class_Shape"> + <children xmi:type="notation:DecorationNode" xmi:id="_1TWY8-4bEey3buyMmxEJ_w" type="Class_NameLabel"/> + <children xmi:type="notation:DecorationNode" xmi:id="_1TWY9O4bEey3buyMmxEJ_w" type="Class_FloatingNameLabel"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_1TWY9e4bEey3buyMmxEJ_w" y="15"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_1TWY9u4bEey3buyMmxEJ_w" type="Class_AttributeCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_1TWY9-4bEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_1TWY-O4bEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_1TWY-e4bEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_1TWY-u4bEey3buyMmxEJ_w"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_1TWY--4bEey3buyMmxEJ_w" type="Class_OperationCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_1TWY_O4bEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_1TWY_e4bEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_1TWY_u4bEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_1TWY_-4bEey3buyMmxEJ_w"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_1TWZAO4bEey3buyMmxEJ_w" type="Class_NestedClassifierCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_1TWZAe4bEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_1TWZAu4bEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_1TWZA-4bEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_1TWZBO4bEey3buyMmxEJ_w"/> + </children> + <element xmi:type="uml:Class" href="rclpy.uml#_1TWY8O4bEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_1TWY8u4bEey3buyMmxEJ_w" x="254" y="17"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_z5WgIe4bEey3buyMmxEJ_w" type="Class_Shape"> + <children xmi:type="notation:DecorationNode" xmi:id="_z5WgI-4bEey3buyMmxEJ_w" type="Class_NameLabel"/> + <children xmi:type="notation:DecorationNode" xmi:id="_z5WgJO4bEey3buyMmxEJ_w" type="Class_FloatingNameLabel"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_z5WgJe4bEey3buyMmxEJ_w" y="15"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_z5WgJu4bEey3buyMmxEJ_w" type="Class_AttributeCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_z5WgJ-4bEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_z5WgKO4bEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_z5WgKe4bEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_z5WgKu4bEey3buyMmxEJ_w"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_z5WgK-4bEey3buyMmxEJ_w" type="Class_OperationCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_z5WgLO4bEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_z5WgLe4bEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_z5WgLu4bEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_z5WgL-4bEey3buyMmxEJ_w"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_z5WgMO4bEey3buyMmxEJ_w" type="Class_NestedClassifierCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_z5WgMe4bEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_z5WgMu4bEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_z5WgM-4bEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_z5WgNO4bEey3buyMmxEJ_w"/> + </children> + <element xmi:type="uml:Class" href="rclpy.uml#_z5WgIO4bEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_z5WgIu4bEey3buyMmxEJ_w" x="374" y="17" width="100"/> + </children> + <styles xmi:type="notation:TitleStyle" xmi:id="_uqkHFe4bEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_uqkHFu4bEey3buyMmxEJ_w"/> + </children> + <element xmi:type="uml:Package" href="rclpy.uml#_uqkHEO4bEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_uqkHEu4bEey3buyMmxEJ_w" x="100" y="160" width="501" height="201"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_VKjo0Aj8Ee2-xOjQ3SYv9w" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_VKjo0Qj8Ee2-xOjQ3SYv9w"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="_VKjo0wj8Ee2-xOjQ3SYv9w" name="BASE_ELEMENT"> + <eObjectValue xmi:type="uml:Package" href="rclpy.uml#_uqkHEO4bEey3buyMmxEJ_w"/> + </styles> + <element xsi:nil="true"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_VKjo0gj8Ee2-xOjQ3SYv9w" x="300" y="160"/> + </children> + <styles xmi:type="notation:StringValueStyle" xmi:id="_8NhyQe4aEey3buyMmxEJ_w" name="diagram_compatibility_version" stringValue="1.4.0"/> + <styles xmi:type="notation:DiagramStyle" xmi:id="_8NhyQu4aEey3buyMmxEJ_w"/> + <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_8NhyQ-4aEey3buyMmxEJ_w" diagramKindId="org.eclipse.papyrus.uml.diagram.class"> + <owner xmi:type="uml:Model" href="rclpy.uml#_21YB0O4aEey3buyMmxEJ_w"/> + </styles> + <element xmi:type="uml:Model" href="rclpy.uml#_21YB0O4aEey3buyMmxEJ_w"/> + <edges xmi:type="notation:Connector" xmi:id="_VKjo1Aj8Ee2-xOjQ3SYv9w" type="StereotypeCommentLink" source="_uqkHEe4bEey3buyMmxEJ_w" target="_VKjo0Aj8Ee2-xOjQ3SYv9w"> + <styles xmi:type="notation:FontStyle" xmi:id="_VKjo1Qj8Ee2-xOjQ3SYv9w"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="_VKjo2Qj8Ee2-xOjQ3SYv9w" name="BASE_ELEMENT"> + <eObjectValue xmi:type="uml:Package" href="rclpy.uml#_uqkHEO4bEey3buyMmxEJ_w"/> + </styles> + <element xsi:nil="true"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_VKjo1gj8Ee2-xOjQ3SYv9w" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_VKjo1wj8Ee2-xOjQ3SYv9w"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_VKjo2Aj8Ee2-xOjQ3SYv9w"/> + </edges> + </notation:Diagram> + <notation:Diagram xmi:id="_A7xDAO4bEey3buyMmxEJ_w" type="PapyrusUMLClassDiagram" name="publisher_module" measurementUnit="Pixel"> + <children xmi:type="notation:Shape" xmi:id="_nL59Ie4bEey3buyMmxEJ_w" type="Package_Shape"> + <children xmi:type="notation:DecorationNode" xmi:id="_nL59I-4bEey3buyMmxEJ_w" type="Package_NameLabel"/> + <children xmi:type="notation:BasicCompartment" xmi:id="_nL59JO4bEey3buyMmxEJ_w" type="Package_PackagedElementCompartment"> + <children xmi:type="notation:Shape" xmi:id="_mDUkcO4bEey3buyMmxEJ_w" type="Class_Shape"> + <children xmi:type="notation:DecorationNode" xmi:id="_mDUkcu4bEey3buyMmxEJ_w" type="Class_NameLabel"/> + <children xmi:type="notation:DecorationNode" xmi:id="_mDUkc-4bEey3buyMmxEJ_w" type="Class_FloatingNameLabel"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_mDUkdO4bEey3buyMmxEJ_w" y="15"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_mDUkde4bEey3buyMmxEJ_w" type="Class_AttributeCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_mDUkdu4bEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_mDUkd-4bEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_mDUkeO4bEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_mDUkee4bEey3buyMmxEJ_w"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_mDUkeu4bEey3buyMmxEJ_w" type="Class_OperationCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_mDUke-4bEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_mDUkfO4bEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_mDUkfe4bEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_mDUkfu4bEey3buyMmxEJ_w"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_mDUkf-4bEey3buyMmxEJ_w" type="Class_NestedClassifierCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_mDUkgO4bEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_mDUkge4bEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_mDUkgu4bEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_mDUkg-4bEey3buyMmxEJ_w"/> + </children> + <element xmi:type="uml:Class" href="rclpy.uml#_mDLagO4bEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_mDUkce4bEey3buyMmxEJ_w" x="34" y="23"/> + </children> + <styles xmi:type="notation:TitleStyle" xmi:id="_nL59Je4bEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_nL59Ju4bEey3buyMmxEJ_w"/> + </children> + <element xmi:type="uml:Package" href="rclpy.uml#_nL59IO4bEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_nL59Iu4bEey3buyMmxEJ_w" x="160" y="180" width="201" height="201"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_KiobWu42EeyXmJbnrjBfXQ" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_KiobW-42EeyXmJbnrjBfXQ"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="_KiobXe42EeyXmJbnrjBfXQ" name="BASE_ELEMENT"> + <eObjectValue xmi:type="uml:Package" href="rclpy.uml#_nL59IO4bEey3buyMmxEJ_w"/> + </styles> + <element xsi:nil="true"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_KiobXO42EeyXmJbnrjBfXQ" x="360" y="180"/> + </children> + <styles xmi:type="notation:StringValueStyle" xmi:id="_A7xDAe4bEey3buyMmxEJ_w" name="diagram_compatibility_version" stringValue="1.4.0"/> + <styles xmi:type="notation:DiagramStyle" xmi:id="_A7xDAu4bEey3buyMmxEJ_w"/> + <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_A7xDA-4bEey3buyMmxEJ_w" diagramKindId="org.eclipse.papyrus.uml.diagram.class"> + <owner xmi:type="uml:Model" href="rclpy.uml#_21YB0O4aEey3buyMmxEJ_w"/> + </styles> + <element xmi:type="uml:Model" href="rclpy.uml#_21YB0O4aEey3buyMmxEJ_w"/> + <edges xmi:type="notation:Connector" xmi:id="_KiobXu42EeyXmJbnrjBfXQ" type="StereotypeCommentLink" source="_nL59Ie4bEey3buyMmxEJ_w" target="_KiobWu42EeyXmJbnrjBfXQ"> + <styles xmi:type="notation:FontStyle" xmi:id="_KiobX-42EeyXmJbnrjBfXQ"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="_KiobY-42EeyXmJbnrjBfXQ" name="BASE_ELEMENT"> + <eObjectValue xmi:type="uml:Package" href="rclpy.uml#_nL59IO4bEey3buyMmxEJ_w"/> + </styles> + <element xsi:nil="true"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_KiobYO42EeyXmJbnrjBfXQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_KiobYe42EeyXmJbnrjBfXQ"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_KiobYu42EeyXmJbnrjBfXQ"/> + </edges> + </notation:Diagram> + <notation:Diagram xmi:id="_EDH1gO4bEey3buyMmxEJ_w" type="PapyrusUMLClassDiagram" name="executors_module" measurementUnit="Pixel"> + <children xmi:type="notation:Shape" xmi:id="_YOa0se4cEey3buyMmxEJ_w" type="Package_Shape"> + <children xmi:type="notation:DecorationNode" xmi:id="_YOa0s-4cEey3buyMmxEJ_w" type="Package_NameLabel"/> + <children xmi:type="notation:BasicCompartment" xmi:id="_YOa0tO4cEey3buyMmxEJ_w" type="Package_PackagedElementCompartment"> + <children xmi:type="notation:Shape" xmi:id="_cQYOQe4cEey3buyMmxEJ_w" type="Class_Shape"> + <children xmi:type="notation:DecorationNode" xmi:id="_cQYOQ-4cEey3buyMmxEJ_w" type="Class_NameLabel"/> + <children xmi:type="notation:DecorationNode" xmi:id="_cQYORO4cEey3buyMmxEJ_w" type="Class_FloatingNameLabel"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_cQYORe4cEey3buyMmxEJ_w" y="15"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_cQYORu4cEey3buyMmxEJ_w" type="Class_AttributeCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_cQYOR-4cEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_cQYOSO4cEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_cQYOSe4cEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cQYOSu4cEey3buyMmxEJ_w"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_cQYOS-4cEey3buyMmxEJ_w" type="Class_OperationCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_cQYOTO4cEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_cQYOTe4cEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_cQYOTu4cEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cQYOT-4cEey3buyMmxEJ_w"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_cQYOUO4cEey3buyMmxEJ_w" type="Class_NestedClassifierCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_cQYOUe4cEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_cQYOUu4cEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_cQYOU-4cEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cQYOVO4cEey3buyMmxEJ_w"/> + </children> + <element xmi:type="uml:Class" href="rclpy.uml#_cQYOQO4cEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cQYOQu4cEey3buyMmxEJ_w" x="14" y="17"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_if4dcO4cEey3buyMmxEJ_w" type="Class_Shape_CN"> + <children xmi:type="notation:DecorationNode" xmi:id="_if4dcu4cEey3buyMmxEJ_w" type="Class_NameLabel_CN"/> + <children xmi:type="notation:DecorationNode" xmi:id="_if4dc-4cEey3buyMmxEJ_w" type="Class_FloatingNameLabel_CN"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_if4ddO4cEey3buyMmxEJ_w" y="15"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_if4dde4cEey3buyMmxEJ_w" type="Class_AttributeCompartment_CN"> + <styles xmi:type="notation:TitleStyle" xmi:id="_if4ddu4cEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_if4dd-4cEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_if4deO4cEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_if4dee4cEey3buyMmxEJ_w"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_if4deu4cEey3buyMmxEJ_w" type="Class_OperationCompartment_CN"> + <styles xmi:type="notation:TitleStyle" xmi:id="_if4de-4cEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_if4dfO4cEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_if4dfe4cEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_if4dfu4cEey3buyMmxEJ_w"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_if4df-4cEey3buyMmxEJ_w" type="Class_NestedClassifierCompartment_CN"> + <styles xmi:type="notation:TitleStyle" xmi:id="_if4dgO4cEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_if4dge4cEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_if4dgu4cEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_if4dg-4cEey3buyMmxEJ_w"/> + </children> + <element xmi:type="uml:Class" href="rclpy.uml#_ifvTgO4cEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_if4dce4cEey3buyMmxEJ_w" x="14" y="137" width="101"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_jxM7YO4cEey3buyMmxEJ_w" type="Class_Shape_CN"> + <children xmi:type="notation:DecorationNode" xmi:id="_jxM7Yu4cEey3buyMmxEJ_w" type="Class_NameLabel_CN"/> + <children xmi:type="notation:DecorationNode" xmi:id="_jxM7Y-4cEey3buyMmxEJ_w" type="Class_FloatingNameLabel_CN"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_jxM7ZO4cEey3buyMmxEJ_w" y="15"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_jxM7Ze4cEey3buyMmxEJ_w" type="Class_AttributeCompartment_CN"> + <styles xmi:type="notation:TitleStyle" xmi:id="_jxM7Zu4cEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_jxM7Z-4cEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_jxM7aO4cEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_jxM7ae4cEey3buyMmxEJ_w"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_jxM7au4cEey3buyMmxEJ_w" type="Class_OperationCompartment_CN"> + <styles xmi:type="notation:TitleStyle" xmi:id="_jxM7a-4cEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_jxM7bO4cEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_jxM7be4cEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_jxM7bu4cEey3buyMmxEJ_w"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_jxM7b-4cEey3buyMmxEJ_w" type="Class_NestedClassifierCompartment_CN"> + <styles xmi:type="notation:TitleStyle" xmi:id="_jxM7cO4cEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_jxM7ce4cEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_jxM7cu4cEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_jxM7c-4cEey3buyMmxEJ_w"/> + </children> + <element xmi:type="uml:Class" href="rclpy.uml#_jxDxcO4cEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_jxM7Ye4cEey3buyMmxEJ_w" x="134" y="137" width="101"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_lsKzQO4cEey3buyMmxEJ_w" type="Class_Shape_CN"> + <children xmi:type="notation:DecorationNode" xmi:id="_lsKzQu4cEey3buyMmxEJ_w" type="Class_NameLabel_CN"/> + <children xmi:type="notation:DecorationNode" xmi:id="_lsKzQ-4cEey3buyMmxEJ_w" type="Class_FloatingNameLabel_CN"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_lsKzRO4cEey3buyMmxEJ_w" y="15"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_lsKzRe4cEey3buyMmxEJ_w" type="Class_AttributeCompartment_CN"> + <styles xmi:type="notation:TitleStyle" xmi:id="_lsKzRu4cEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_lsKzR-4cEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_lsKzSO4cEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_lsKzSe4cEey3buyMmxEJ_w"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_lsKzSu4cEey3buyMmxEJ_w" type="Class_OperationCompartment_CN"> + <styles xmi:type="notation:TitleStyle" xmi:id="_lsKzS-4cEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_lsKzTO4cEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_lsKzTe4cEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_lsKzTu4cEey3buyMmxEJ_w"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_lsKzT-4cEey3buyMmxEJ_w" type="Class_NestedClassifierCompartment_CN"> + <styles xmi:type="notation:TitleStyle" xmi:id="_lsKzUO4cEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_lsKzUe4cEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_lsKzUu4cEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_lsKzU-4cEey3buyMmxEJ_w"/> + </children> + <element xmi:type="uml:Class" href="rclpy.uml#_lsBpUO4cEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_lsKzQe4cEey3buyMmxEJ_w" x="254" y="137" width="101"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_tDm64O4cEey3buyMmxEJ_w" type="Class_Shape_CN"> + <children xmi:type="notation:DecorationNode" xmi:id="_tDm64u4cEey3buyMmxEJ_w" type="Class_NameLabel_CN"/> + <children xmi:type="notation:DecorationNode" xmi:id="_tDm64-4cEey3buyMmxEJ_w" type="Class_FloatingNameLabel_CN"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_tDm65O4cEey3buyMmxEJ_w" y="15"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_tDm65e4cEey3buyMmxEJ_w" type="Class_AttributeCompartment_CN"> + <styles xmi:type="notation:TitleStyle" xmi:id="_tDm65u4cEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_tDm65-4cEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_tDm66O4cEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_tDm66e4cEey3buyMmxEJ_w"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_tDm66u4cEey3buyMmxEJ_w" type="Class_OperationCompartment_CN"> + <styles xmi:type="notation:TitleStyle" xmi:id="_tDm66-4cEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_tDm67O4cEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_tDm67e4cEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_tDm67u4cEey3buyMmxEJ_w"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_tDm67-4cEey3buyMmxEJ_w" type="Class_NestedClassifierCompartment_CN"> + <styles xmi:type="notation:TitleStyle" xmi:id="_tDm68O4cEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_tDm68e4cEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_tDm68u4cEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_tDm68-4cEey3buyMmxEJ_w"/> + </children> + <element xmi:type="uml:Class" href="rclpy.uml#_tDdJ4O4cEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_tDm64e4cEey3buyMmxEJ_w" x="134" y="17" width="101"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_ucR-AO4cEey3buyMmxEJ_w" type="Class_Shape_CN"> + <children xmi:type="notation:DecorationNode" xmi:id="_ucR-Au4cEey3buyMmxEJ_w" type="Class_NameLabel_CN"/> + <children xmi:type="notation:DecorationNode" xmi:id="_ucR-A-4cEey3buyMmxEJ_w" type="Class_FloatingNameLabel_CN"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_ucR-BO4cEey3buyMmxEJ_w" y="15"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_ucR-Be4cEey3buyMmxEJ_w" type="Class_AttributeCompartment_CN"> + <styles xmi:type="notation:TitleStyle" xmi:id="_ucR-Bu4cEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_ucR-B-4cEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_ucR-CO4cEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ucR-Ce4cEey3buyMmxEJ_w"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_ucR-Cu4cEey3buyMmxEJ_w" type="Class_OperationCompartment_CN"> + <styles xmi:type="notation:TitleStyle" xmi:id="_ucR-C-4cEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_ucR-DO4cEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_ucR-De4cEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ucR-Du4cEey3buyMmxEJ_w"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_ucR-D-4cEey3buyMmxEJ_w" type="Class_NestedClassifierCompartment_CN"> + <styles xmi:type="notation:TitleStyle" xmi:id="_ucR-EO4cEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_ucR-Ee4cEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_ucR-Eu4cEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ucR-E-4cEey3buyMmxEJ_w"/> + </children> + <element xmi:type="uml:Class" href="rclpy.uml#_ucINAO4cEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ucR-Ae4cEey3buyMmxEJ_w" x="254" y="17" width="101"/> + </children> + <styles xmi:type="notation:TitleStyle" xmi:id="_YOa0te4cEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_YOa0tu4cEey3buyMmxEJ_w"/> + </children> + <element xmi:type="uml:Package" href="rclpy.uml#_YOa0sO4cEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_YOa0su4cEey3buyMmxEJ_w" x="220" y="220" width="381" height="321"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_KQbRCu42EeyXmJbnrjBfXQ" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_KQbRC-42EeyXmJbnrjBfXQ"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="_KQbRDe42EeyXmJbnrjBfXQ" name="BASE_ELEMENT"> + <eObjectValue xmi:type="uml:Package" href="rclpy.uml#_YOa0sO4cEey3buyMmxEJ_w"/> + </styles> + <element xsi:nil="true"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_KQbRDO42EeyXmJbnrjBfXQ" x="420" y="220"/> + </children> + <styles xmi:type="notation:StringValueStyle" xmi:id="_EDH1ge4bEey3buyMmxEJ_w" name="diagram_compatibility_version" stringValue="1.4.0"/> + <styles xmi:type="notation:DiagramStyle" xmi:id="_EDH1gu4bEey3buyMmxEJ_w"/> + <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_EDH1g-4bEey3buyMmxEJ_w" diagramKindId="org.eclipse.papyrus.uml.diagram.class"> + <owner xmi:type="uml:Model" href="rclpy.uml#_21YB0O4aEey3buyMmxEJ_w"/> + </styles> + <element xmi:type="uml:Model" href="rclpy.uml#_21YB0O4aEey3buyMmxEJ_w"/> + <edges xmi:type="notation:Connector" xmi:id="_KQbRDu42EeyXmJbnrjBfXQ" type="StereotypeCommentLink" source="_YOa0se4cEey3buyMmxEJ_w" target="_KQbRCu42EeyXmJbnrjBfXQ"> + <styles xmi:type="notation:FontStyle" xmi:id="_KQbRD-42EeyXmJbnrjBfXQ"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="_KQbRE-42EeyXmJbnrjBfXQ" name="BASE_ELEMENT"> + <eObjectValue xmi:type="uml:Package" href="rclpy.uml#_YOa0sO4cEey3buyMmxEJ_w"/> + </styles> + <element xsi:nil="true"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_KQbREO42EeyXmJbnrjBfXQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_KQbREe42EeyXmJbnrjBfXQ"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_KQbREu42EeyXmJbnrjBfXQ"/> + </edges> + </notation:Diagram> + <notation:Diagram xmi:id="_KifFoO4bEey3buyMmxEJ_w" type="PapyrusUMLClassDiagram" name="rclpy_types" measurementUnit="Pixel"> + <styles xmi:type="notation:StringValueStyle" xmi:id="_KifFoe4bEey3buyMmxEJ_w" name="diagram_compatibility_version" stringValue="1.4.0"/> + <styles xmi:type="notation:DiagramStyle" xmi:id="_KifFou4bEey3buyMmxEJ_w"/> + <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_KifFo-4bEey3buyMmxEJ_w" diagramKindId="org.eclipse.papyrus.uml.diagram.class"> + <owner xmi:type="uml:Model" href="rclpy.uml#_21YB0O4aEey3buyMmxEJ_w"/> + </styles> + <element xmi:type="uml:Model" href="rclpy.uml#_21YB0O4aEey3buyMmxEJ_w"/> + </notation:Diagram> + <notation:Diagram xmi:id="_WqW2YO4bEey3buyMmxEJ_w" type="PapyrusUMLClassDiagram" name="action_module" measurementUnit="Pixel"> + <children xmi:type="notation:Shape" xmi:id="_8JMZ8e4cEey3buyMmxEJ_w" type="Package_Shape"> + <children xmi:type="notation:DecorationNode" xmi:id="_8JMZ8-4cEey3buyMmxEJ_w" type="Package_NameLabel"/> + <children xmi:type="notation:BasicCompartment" xmi:id="_8JMZ9O4cEey3buyMmxEJ_w" type="Package_PackagedElementCompartment"> + <children xmi:type="notation:Shape" xmi:id="_Axv5ce4dEey3buyMmxEJ_w" type="Class_Shape_CN"> + <children xmi:type="notation:DecorationNode" xmi:id="_Axv5c-4dEey3buyMmxEJ_w" type="Class_NameLabel_CN"/> + <children xmi:type="notation:DecorationNode" xmi:id="_Axv5dO4dEey3buyMmxEJ_w" type="Class_FloatingNameLabel_CN"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_Axv5de4dEey3buyMmxEJ_w" y="15"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_Axv5du4dEey3buyMmxEJ_w" type="Class_AttributeCompartment_CN"> + <styles xmi:type="notation:TitleStyle" xmi:id="_Axv5d-4dEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_Axv5eO4dEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_Axv5ee4dEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Axv5eu4dEey3buyMmxEJ_w"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_Axv5e-4dEey3buyMmxEJ_w" type="Class_OperationCompartment_CN"> + <styles xmi:type="notation:TitleStyle" xmi:id="_Axv5fO4dEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_Axv5fe4dEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_Axv5fu4dEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Axv5f-4dEey3buyMmxEJ_w"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_Axv5gO4dEey3buyMmxEJ_w" type="Class_NestedClassifierCompartment_CN"> + <styles xmi:type="notation:TitleStyle" xmi:id="_Axv5ge4dEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_Axv5gu4dEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_Axv5g-4dEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Axv5hO4dEey3buyMmxEJ_w"/> + </children> + <element xmi:type="uml:Class" href="rclpy.uml#_Axv5cO4dEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Axv5cu4dEey3buyMmxEJ_w" x="14" y="23"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_FZ5wUO4dEey3buyMmxEJ_w" type="Class_Shape_CN"> + <children xmi:type="notation:DecorationNode" xmi:id="_FZ5wUu4dEey3buyMmxEJ_w" type="Class_NameLabel_CN"/> + <children xmi:type="notation:DecorationNode" xmi:id="_FZ5wU-4dEey3buyMmxEJ_w" type="Class_FloatingNameLabel_CN"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_FZ5wVO4dEey3buyMmxEJ_w" y="15"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_FZ5wVe4dEey3buyMmxEJ_w" type="Class_AttributeCompartment_CN"> + <styles xmi:type="notation:TitleStyle" xmi:id="_FZ5wVu4dEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_FZ5wV-4dEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_FZ5wWO4dEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_FZ5wWe4dEey3buyMmxEJ_w"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_FZ5wWu4dEey3buyMmxEJ_w" type="Class_OperationCompartment_CN"> + <styles xmi:type="notation:TitleStyle" xmi:id="_FZ5wW-4dEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_FZ5wXO4dEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_FZ5wXe4dEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_FZ5wXu4dEey3buyMmxEJ_w"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_FZ5wX-4dEey3buyMmxEJ_w" type="Class_NestedClassifierCompartment_CN"> + <styles xmi:type="notation:TitleStyle" xmi:id="_FZ5wYO4dEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_FZ5wYe4dEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_FZ5wYu4dEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_FZ5wY-4dEey3buyMmxEJ_w"/> + </children> + <element xmi:type="uml:Class" href="rclpy.uml#_FZwmYO4dEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_FZ5wUe4dEey3buyMmxEJ_w" x="194" y="23"/> + </children> + <styles xmi:type="notation:TitleStyle" xmi:id="_8JMZ9e4cEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8JMZ9u4cEey3buyMmxEJ_w"/> + </children> + <element xmi:type="uml:Package" href="rclpy.uml#_8JMZ8O4cEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8JMZ8u4cEey3buyMmxEJ_w" x="120" y="140" width="381" height="221"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_-RBsUAj7Ee2-xOjQ3SYv9w" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_-RBsUQj7Ee2-xOjQ3SYv9w"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="_-RBsUwj7Ee2-xOjQ3SYv9w" name="BASE_ELEMENT"> + <eObjectValue xmi:type="uml:Package" href="rclpy.uml#_8JMZ8O4cEey3buyMmxEJ_w"/> + </styles> + <element xsi:nil="true"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_-RBsUgj7Ee2-xOjQ3SYv9w" x="320" y="140"/> + </children> + <styles xmi:type="notation:StringValueStyle" xmi:id="_WqW2Ye4bEey3buyMmxEJ_w" name="diagram_compatibility_version" stringValue="1.4.0"/> + <styles xmi:type="notation:DiagramStyle" xmi:id="_WqW2Yu4bEey3buyMmxEJ_w"/> + <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_WqW2Y-4bEey3buyMmxEJ_w" diagramKindId="org.eclipse.papyrus.uml.diagram.class"> + <owner xmi:type="uml:Model" href="rclpy.uml#_21YB0O4aEey3buyMmxEJ_w"/> + </styles> + <element xmi:type="uml:Model" href="rclpy.uml#_21YB0O4aEey3buyMmxEJ_w"/> + <edges xmi:type="notation:Connector" xmi:id="_-RCTYAj7Ee2-xOjQ3SYv9w" type="StereotypeCommentLink" source="_8JMZ8e4cEey3buyMmxEJ_w" target="_-RBsUAj7Ee2-xOjQ3SYv9w"> + <styles xmi:type="notation:FontStyle" xmi:id="_-RCTYQj7Ee2-xOjQ3SYv9w"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="_-RCTZQj7Ee2-xOjQ3SYv9w" name="BASE_ELEMENT"> + <eObjectValue xmi:type="uml:Package" href="rclpy.uml#_8JMZ8O4cEey3buyMmxEJ_w"/> + </styles> + <element xsi:nil="true"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_-RCTYgj7Ee2-xOjQ3SYv9w" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_-RCTYwj7Ee2-xOjQ3SYv9w"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_-RCTZAj7Ee2-xOjQ3SYv9w"/> + </edges> + </notation:Diagram> + <notation:Diagram xmi:id="_YzA6EO4dEey3buyMmxEJ_w" type="PapyrusUMLClassDiagram" name="qos_module" measurementUnit="Pixel"> + <children xmi:type="notation:Shape" xmi:id="_jLw2kO4dEey3buyMmxEJ_w" type="Package_Shape"> + <children xmi:type="notation:DecorationNode" xmi:id="_jLw2ku4dEey3buyMmxEJ_w" type="Package_NameLabel"/> + <children xmi:type="notation:BasicCompartment" xmi:id="_jLw2k-4dEey3buyMmxEJ_w" type="Package_PackagedElementCompartment"> + <children xmi:type="notation:Shape" xmi:id="_kwfYsO4dEey3buyMmxEJ_w" type="Class_Shape_CN"> + <children xmi:type="notation:DecorationNode" xmi:id="_kwfYsu4dEey3buyMmxEJ_w" type="Class_NameLabel_CN"/> + <children xmi:type="notation:DecorationNode" xmi:id="_kwfYs-4dEey3buyMmxEJ_w" type="Class_FloatingNameLabel_CN"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_kwfYtO4dEey3buyMmxEJ_w" y="15"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_kwfYte4dEey3buyMmxEJ_w" visible="false" type="Class_AttributeCompartment_CN"> + <styles xmi:type="notation:TitleStyle" xmi:id="_kwfYtu4dEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_kwfYt-4dEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_kwfYuO4dEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kwfYue4dEey3buyMmxEJ_w"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_kwfYuu4dEey3buyMmxEJ_w" visible="false" type="Class_OperationCompartment_CN"> + <styles xmi:type="notation:TitleStyle" xmi:id="_kwfYu-4dEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_kwfYvO4dEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_kwfYve4dEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kwfYvu4dEey3buyMmxEJ_w"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_kwfYv-4dEey3buyMmxEJ_w" visible="false" type="Class_NestedClassifierCompartment_CN"> + <styles xmi:type="notation:TitleStyle" xmi:id="_kwfYwO4dEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_kwfYwe4dEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_kwfYwu4dEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kwfYw-4dEey3buyMmxEJ_w"/> + </children> + <element xmi:type="uml:Class" href="rclpy.uml#_kwVnsO4dEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kwfYse4dEey3buyMmxEJ_w" x="34" y="23" width="121" height="54"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_uh-g4e4dEey3buyMmxEJ_w" type="Class_Shape"> + <children xmi:type="notation:DecorationNode" xmi:id="_uh-g4-4dEey3buyMmxEJ_w" type="Class_NameLabel"/> + <children xmi:type="notation:DecorationNode" xmi:id="_uiIR4O4dEey3buyMmxEJ_w" type="Class_FloatingNameLabel"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_uiIR4e4dEey3buyMmxEJ_w" y="15"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_uiIR4u4dEey3buyMmxEJ_w" visible="false" type="Class_AttributeCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_uiIR4-4dEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_uiIR5O4dEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_uiIR5e4dEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_uiIR5u4dEey3buyMmxEJ_w"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_uiIR5-4dEey3buyMmxEJ_w" visible="false" type="Class_OperationCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_uiIR6O4dEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_uiIR6e4dEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_uiIR6u4dEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_uiIR6-4dEey3buyMmxEJ_w"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_uiIR7O4dEey3buyMmxEJ_w" visible="false" type="Class_NestedClassifierCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_uiIR7e4dEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_uiIR7u4dEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_uiIR7-4dEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_uiIR8O4dEey3buyMmxEJ_w"/> + </children> + <element xmi:type="uml:Class" href="rclpy.uml#_uh-g4O4dEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_uh-g4u4dEey3buyMmxEJ_w" x="174" y="23" width="121" height="54"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_xeO2oO4dEey3buyMmxEJ_w" type="Enumeration_Shape_CN"> + <children xmi:type="notation:DecorationNode" xmi:id="_xeO2ou4dEey3buyMmxEJ_w" type="Enumeration_NameLabel_CN"/> + <children xmi:type="notation:DecorationNode" xmi:id="_xeO2o-4dEey3buyMmxEJ_w" type="Enumeration_FloatingNameLabel_CN"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_xeO2pO4dEey3buyMmxEJ_w" y="15"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_xeO2pe4dEey3buyMmxEJ_w" type="Enumeration_LiteralCompartment_CN"> + <styles xmi:type="notation:TitleStyle" xmi:id="_xeO2pu4dEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_xeO2p-4dEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_xeO2qO4dEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_xeO2qe4dEey3buyMmxEJ_w"/> + </children> + <element xmi:type="uml:Enumeration" href="rclpy.uml#_xeFFoO4dEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_xeO2oe4dEey3buyMmxEJ_w" x="314" y="23" width="121" height="54"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_3av4YO4dEey3buyMmxEJ_w" type="Enumeration_Shape_CN"> + <children xmi:type="notation:DecorationNode" xmi:id="_3av4Yu4dEey3buyMmxEJ_w" type="Enumeration_NameLabel_CN"/> + <children xmi:type="notation:DecorationNode" xmi:id="_3av4Y-4dEey3buyMmxEJ_w" type="Enumeration_FloatingNameLabel_CN"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_3av4ZO4dEey3buyMmxEJ_w" y="15"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_3av4Ze4dEey3buyMmxEJ_w" type="Enumeration_LiteralCompartment_CN"> + <styles xmi:type="notation:TitleStyle" xmi:id="_3av4Zu4dEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_3av4Z-4dEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_3av4aO4dEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_3av4ae4dEey3buyMmxEJ_w"/> + </children> + <element xmi:type="uml:Enumeration" href="rclpy.uml#_3amHYO4dEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_3av4Ye4dEey3buyMmxEJ_w" x="314" y="176" width="121" height="61"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_FRaGMO4eEey3buyMmxEJ_w" type="Enumeration_Shape_CN"> + <children xmi:type="notation:DecorationNode" xmi:id="_FRaGMu4eEey3buyMmxEJ_w" type="Enumeration_NameLabel_CN"/> + <children xmi:type="notation:DecorationNode" xmi:id="_FRaGM-4eEey3buyMmxEJ_w" type="Enumeration_FloatingNameLabel_CN"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_FRaGNO4eEey3buyMmxEJ_w" y="15"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_FRaGNe4eEey3buyMmxEJ_w" type="Enumeration_LiteralCompartment_CN"> + <styles xmi:type="notation:TitleStyle" xmi:id="_FRaGNu4eEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_FRaGN-4eEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_FRaGOO4eEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_FRaGOe4eEey3buyMmxEJ_w"/> + </children> + <element xmi:type="uml:Enumeration" href="rclpy.uml#_FRQ8QO4eEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_FRaGMe4eEey3buyMmxEJ_w" x="34" y="96" width="121" height="61"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_G8-QIO4eEey3buyMmxEJ_w" type="Enumeration_Shape_CN"> + <children xmi:type="notation:DecorationNode" xmi:id="_G8-QIu4eEey3buyMmxEJ_w" type="Enumeration_NameLabel_CN"/> + <children xmi:type="notation:DecorationNode" xmi:id="_G8-QI-4eEey3buyMmxEJ_w" type="Enumeration_FloatingNameLabel_CN"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_G8-QJO4eEey3buyMmxEJ_w" y="15"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_G8-QJe4eEey3buyMmxEJ_w" type="Enumeration_LiteralCompartment_CN"> + <styles xmi:type="notation:TitleStyle" xmi:id="_G8-QJu4eEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_G8-QJ-4eEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_G8-QKO4eEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_G8-QKe4eEey3buyMmxEJ_w"/> + </children> + <element xmi:type="uml:Enumeration" href="rclpy.uml#_G81GMO4eEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_G8-QIe4eEey3buyMmxEJ_w" x="34" y="176" width="121" height="61"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_IroKUO4eEey3buyMmxEJ_w" type="Enumeration_Shape_CN"> + <children xmi:type="notation:DecorationNode" xmi:id="_IroKUu4eEey3buyMmxEJ_w" type="Enumeration_NameLabel_CN"/> + <children xmi:type="notation:DecorationNode" xmi:id="_IroKU-4eEey3buyMmxEJ_w" type="Enumeration_FloatingNameLabel_CN"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_IroKVO4eEey3buyMmxEJ_w" y="15"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_IroKVe4eEey3buyMmxEJ_w" type="Enumeration_LiteralCompartment_CN"> + <styles xmi:type="notation:TitleStyle" xmi:id="_IroKVu4eEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_IroKV-4eEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_IroKWO4eEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_IroKWe4eEey3buyMmxEJ_w"/> + </children> + <element xmi:type="uml:Enumeration" href="rclpy.uml#_IrfAYO4eEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_IroKUe4eEey3buyMmxEJ_w" x="174" y="176" width="121" height="61"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_KR6LoO4eEey3buyMmxEJ_w" type="Enumeration_Shape_CN"> + <children xmi:type="notation:DecorationNode" xmi:id="_KR6Lou4eEey3buyMmxEJ_w" type="Enumeration_NameLabel_CN"/> + <children xmi:type="notation:DecorationNode" xmi:id="_KR6Lo-4eEey3buyMmxEJ_w" type="Enumeration_FloatingNameLabel_CN"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_KR6LpO4eEey3buyMmxEJ_w" y="15"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_KR6Lpe4eEey3buyMmxEJ_w" type="Enumeration_LiteralCompartment_CN"> + <styles xmi:type="notation:TitleStyle" xmi:id="_KR6Lpu4eEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_KR6Lp-4eEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_KR6LqO4eEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_KR6Lqe4eEey3buyMmxEJ_w"/> + </children> + <element xmi:type="uml:Enumeration" href="rclpy.uml#_KRwaoO4eEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_KR6Loe4eEey3buyMmxEJ_w" x="314" y="96" width="121" height="61"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_NHTEYO4eEey3buyMmxEJ_w" type="Enumeration_Shape_CN"> + <children xmi:type="notation:DecorationNode" xmi:id="_NHTEYu4eEey3buyMmxEJ_w" type="Enumeration_NameLabel_CN"/> + <children xmi:type="notation:DecorationNode" xmi:id="_NHTEY-4eEey3buyMmxEJ_w" type="Enumeration_FloatingNameLabel_CN"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_NHTEZO4eEey3buyMmxEJ_w" y="15"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_NHTEZe4eEey3buyMmxEJ_w" type="Enumeration_LiteralCompartment_CN"> + <styles xmi:type="notation:TitleStyle" xmi:id="_NHTEZu4eEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_NHTEZ-4eEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_NHTEaO4eEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_NHTEae4eEey3buyMmxEJ_w"/> + </children> + <element xmi:type="uml:Enumeration" href="rclpy.uml#_NHJTYO4eEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_NHTEYe4eEey3buyMmxEJ_w" x="174" y="96" width="121" height="61"/> + </children> + <styles xmi:type="notation:TitleStyle" xmi:id="_jLw2lO4dEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_jLw2le4dEey3buyMmxEJ_w"/> + </children> + <element xmi:type="uml:Package" href="rclpy.uml#_jLnsoO4dEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_jLw2ke4dEey3buyMmxEJ_w" x="60" y="40" width="501" height="321"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_9ws_0KlUEe2LQoLntInr8Q" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_9ws_0alUEe2LQoLntInr8Q"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="_9ws_06lUEe2LQoLntInr8Q" name="BASE_ELEMENT"> + <eObjectValue xmi:type="uml:Package" href="rclpy.uml#_jLnsoO4dEey3buyMmxEJ_w"/> + </styles> + <element xsi:nil="true"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_9ws_0qlUEe2LQoLntInr8Q" x="440" y="280"/> + </children> + <styles xmi:type="notation:StringValueStyle" xmi:id="_YzA6Ee4dEey3buyMmxEJ_w" name="diagram_compatibility_version" stringValue="1.4.0"/> + <styles xmi:type="notation:DiagramStyle" xmi:id="_YzA6Eu4dEey3buyMmxEJ_w"/> + <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_YzA6E-4dEey3buyMmxEJ_w" diagramKindId="org.eclipse.papyrus.uml.diagram.class"> + <owner xmi:type="uml:Model" href="rclpy.uml#_21YB0O4aEey3buyMmxEJ_w"/> + </styles> + <element xmi:type="uml:Model" href="rclpy.uml#_21YB0O4aEey3buyMmxEJ_w"/> + <edges xmi:type="notation:Connector" xmi:id="_9ws_1KlUEe2LQoLntInr8Q" type="StereotypeCommentLink" source="_jLw2kO4dEey3buyMmxEJ_w" target="_9ws_0KlUEe2LQoLntInr8Q"> + <styles xmi:type="notation:FontStyle" xmi:id="_9ws_1alUEe2LQoLntInr8Q"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="_9wtm4qlUEe2LQoLntInr8Q" name="BASE_ELEMENT"> + <eObjectValue xmi:type="uml:Package" href="rclpy.uml#_jLnsoO4dEey3buyMmxEJ_w"/> + </styles> + <element xsi:nil="true"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_9ws_1qlUEe2LQoLntInr8Q" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_9wtm4KlUEe2LQoLntInr8Q"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_9wtm4alUEe2LQoLntInr8Q"/> + </edges> + </notation:Diagram> + <notation:Diagram xmi:id="_mrsrsO4eEey3buyMmxEJ_w" type="PapyrusUMLClassDiagram" name="time_module" measurementUnit="Pixel"> + <children xmi:type="notation:Shape" xmi:id="_0SvwMO4eEey3buyMmxEJ_w" type="Package_Shape"> + <children xmi:type="notation:DecorationNode" xmi:id="_0SvwMu4eEey3buyMmxEJ_w" type="Package_NameLabel"/> + <children xmi:type="notation:BasicCompartment" xmi:id="_0SvwM-4eEey3buyMmxEJ_w" type="Package_PackagedElementCompartment"> + <children xmi:type="notation:Shape" xmi:id="_1p1e8O4eEey3buyMmxEJ_w" type="Class_Shape_CN"> + <children xmi:type="notation:DecorationNode" xmi:id="_1p1e8u4eEey3buyMmxEJ_w" type="Class_NameLabel_CN"/> + <children xmi:type="notation:DecorationNode" xmi:id="_1p1e8-4eEey3buyMmxEJ_w" type="Class_FloatingNameLabel_CN"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_1p1e9O4eEey3buyMmxEJ_w" y="15"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_1p1e9e4eEey3buyMmxEJ_w" type="Class_AttributeCompartment_CN"> + <styles xmi:type="notation:TitleStyle" xmi:id="_1p1e9u4eEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_1p1e9-4eEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_1p1e-O4eEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_1p1e-e4eEey3buyMmxEJ_w"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_1p1e-u4eEey3buyMmxEJ_w" type="Class_OperationCompartment_CN"> + <styles xmi:type="notation:TitleStyle" xmi:id="_1p1e--4eEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_1p1e_O4eEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_1p1e_e4eEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_1p1e_u4eEey3buyMmxEJ_w"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_1p1e_-4eEey3buyMmxEJ_w" type="Class_NestedClassifierCompartment_CN"> + <styles xmi:type="notation:TitleStyle" xmi:id="_1p1fAO4eEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_1p1fAe4eEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_1p1fAu4eEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_1p1fA-4eEey3buyMmxEJ_w"/> + </children> + <element xmi:type="uml:Class" href="rclpy.uml#_1prt8O4eEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_1p1e8e4eEey3buyMmxEJ_w" x="14" y="3"/> + </children> + <styles xmi:type="notation:TitleStyle" xmi:id="_0SvwNO4eEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0SvwNe4eEey3buyMmxEJ_w"/> + </children> + <element xmi:type="uml:Package" href="rclpy.uml#_0Sl_MO4eEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0SvwMe4eEey3buyMmxEJ_w" x="280" y="260" width="141" height="161"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_-t2yQAj7Ee2-xOjQ3SYv9w" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_-t2yQQj7Ee2-xOjQ3SYv9w"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="_-t2yQwj7Ee2-xOjQ3SYv9w" name="BASE_ELEMENT"> + <eObjectValue xmi:type="uml:Package" href="rclpy.uml#_0Sl_MO4eEey3buyMmxEJ_w"/> + </styles> + <element xsi:nil="true"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_-t2yQgj7Ee2-xOjQ3SYv9w" x="480" y="260"/> + </children> + <styles xmi:type="notation:StringValueStyle" xmi:id="_mrsrse4eEey3buyMmxEJ_w" name="diagram_compatibility_version" stringValue="1.4.0"/> + <styles xmi:type="notation:DiagramStyle" xmi:id="_mrsrsu4eEey3buyMmxEJ_w"/> + <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_mrsrs-4eEey3buyMmxEJ_w" diagramKindId="org.eclipse.papyrus.uml.diagram.class"> + <owner xmi:type="uml:Model" href="rclpy.uml#_21YB0O4aEey3buyMmxEJ_w"/> + </styles> + <element xmi:type="uml:Model" href="rclpy.uml#_21YB0O4aEey3buyMmxEJ_w"/> + <edges xmi:type="notation:Connector" xmi:id="_-t2yRAj7Ee2-xOjQ3SYv9w" type="StereotypeCommentLink" source="_0SvwMO4eEey3buyMmxEJ_w" target="_-t2yQAj7Ee2-xOjQ3SYv9w"> + <styles xmi:type="notation:FontStyle" xmi:id="_-t2yRQj7Ee2-xOjQ3SYv9w"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="_-t3ZUgj7Ee2-xOjQ3SYv9w" name="BASE_ELEMENT"> + <eObjectValue xmi:type="uml:Package" href="rclpy.uml#_0Sl_MO4eEey3buyMmxEJ_w"/> + </styles> + <element xsi:nil="true"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_-t2yRgj7Ee2-xOjQ3SYv9w" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_-t3ZUAj7Ee2-xOjQ3SYv9w"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_-t3ZUQj7Ee2-xOjQ3SYv9w"/> + </edges> + </notation:Diagram> + <notation:Diagram xmi:id="_HbgJwO4fEey3buyMmxEJ_w" type="PapyrusUMLClassDiagram" name="timer_module" measurementUnit="Pixel"> + <children xmi:type="notation:Shape" xmi:id="_LDGike4fEey3buyMmxEJ_w" type="Package_Shape"> + <children xmi:type="notation:DecorationNode" xmi:id="_LDGik-4fEey3buyMmxEJ_w" type="Package_NameLabel"/> + <children xmi:type="notation:BasicCompartment" xmi:id="_LDGilO4fEey3buyMmxEJ_w" type="Package_PackagedElementCompartment"> + <children xmi:type="notation:Shape" xmi:id="_NRiwEe4fEey3buyMmxEJ_w" type="Class_Shape_CN"> + <children xmi:type="notation:DecorationNode" xmi:id="_NRiwE-4fEey3buyMmxEJ_w" type="Class_NameLabel_CN"/> + <children xmi:type="notation:DecorationNode" xmi:id="_NRiwFO4fEey3buyMmxEJ_w" type="Class_FloatingNameLabel_CN"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_NRiwFe4fEey3buyMmxEJ_w" y="15"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_NRiwFu4fEey3buyMmxEJ_w" visible="false" type="Class_AttributeCompartment_CN"> + <styles xmi:type="notation:TitleStyle" xmi:id="_NRiwF-4fEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_NRiwGO4fEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_NRiwGe4fEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_NRiwGu4fEey3buyMmxEJ_w"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_NRiwG-4fEey3buyMmxEJ_w" visible="false" type="Class_OperationCompartment_CN"> + <styles xmi:type="notation:TitleStyle" xmi:id="_NRiwHO4fEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_NRiwHe4fEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_NRiwHu4fEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_NRiwH-4fEey3buyMmxEJ_w"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_NRiwIO4fEey3buyMmxEJ_w" visible="false" type="Class_NestedClassifierCompartment_CN"> + <styles xmi:type="notation:TitleStyle" xmi:id="_NRiwIe4fEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_NRiwIu4fEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_NRiwI-4fEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_NRiwJO4fEey3buyMmxEJ_w"/> + </children> + <element xmi:type="uml:Class" href="rclpy.uml#_NRiwEO4fEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_NRiwEu4fEey3buyMmxEJ_w" x="34" y="17" height="60"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_N42Aoe4fEey3buyMmxEJ_w" type="Class_Shape_CN"> + <children xmi:type="notation:DecorationNode" xmi:id="_N42Ao-4fEey3buyMmxEJ_w" type="Class_NameLabel_CN"/> + <children xmi:type="notation:DecorationNode" xmi:id="_N42ApO4fEey3buyMmxEJ_w" type="Class_FloatingNameLabel_CN"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_N42Ape4fEey3buyMmxEJ_w" y="15"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_N42Apu4fEey3buyMmxEJ_w" visible="false" type="Class_AttributeCompartment_CN"> + <styles xmi:type="notation:TitleStyle" xmi:id="_N42Ap-4fEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_N42AqO4fEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_N42Aqe4fEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_N42Aqu4fEey3buyMmxEJ_w"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_N42Aq-4fEey3buyMmxEJ_w" visible="false" type="Class_OperationCompartment_CN"> + <styles xmi:type="notation:TitleStyle" xmi:id="_N42ArO4fEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_N42Are4fEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_N42Aru4fEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_N42Ar-4fEey3buyMmxEJ_w"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_N42AsO4fEey3buyMmxEJ_w" visible="false" type="Class_NestedClassifierCompartment_CN"> + <styles xmi:type="notation:TitleStyle" xmi:id="_N42Ase4fEey3buyMmxEJ_w"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_N42Asu4fEey3buyMmxEJ_w"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_N42As-4fEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_N42AtO4fEey3buyMmxEJ_w"/> + </children> + <element xmi:type="uml:Class" href="rclpy.uml#_N42AoO4fEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_N42Aou4fEey3buyMmxEJ_w" x="174" y="17" height="60"/> + </children> + <styles xmi:type="notation:TitleStyle" xmi:id="_LDGile4fEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LDGilu4fEey3buyMmxEJ_w"/> + </children> + <element xmi:type="uml:Package" href="rclpy.uml#_LDGikO4fEey3buyMmxEJ_w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LDGiku4fEey3buyMmxEJ_w" x="80" y="80" width="321" height="161"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_wVX6QLlGEe27HeoHLJk0Yw" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_wVX6QblGEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="_wVX6Q7lGEe27HeoHLJk0Yw" name="BASE_ELEMENT"> + <eObjectValue xmi:type="uml:Package" href="rclpy.uml#_LDGikO4fEey3buyMmxEJ_w"/> + </styles> + <element xsi:nil="true"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_wVX6QrlGEe27HeoHLJk0Yw" x="280" y="80"/> + </children> + <styles xmi:type="notation:StringValueStyle" xmi:id="_HbgJwe4fEey3buyMmxEJ_w" name="diagram_compatibility_version" stringValue="1.4.0"/> + <styles xmi:type="notation:DiagramStyle" xmi:id="_HbgJwu4fEey3buyMmxEJ_w"/> + <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_HbgJw-4fEey3buyMmxEJ_w" diagramKindId="org.eclipse.papyrus.uml.diagram.class"> + <owner xmi:type="uml:Model" href="rclpy.uml#_21YB0O4aEey3buyMmxEJ_w"/> + </styles> + <element xmi:type="uml:Model" href="rclpy.uml#_21YB0O4aEey3buyMmxEJ_w"/> + <edges xmi:type="notation:Connector" xmi:id="_wVX6RLlGEe27HeoHLJk0Yw" type="StereotypeCommentLink" source="_LDGike4fEey3buyMmxEJ_w" target="_wVX6QLlGEe27HeoHLJk0Yw"> + <styles xmi:type="notation:FontStyle" xmi:id="_wVX6RblGEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="_wVYhUrlGEe27HeoHLJk0Yw" name="BASE_ELEMENT"> + <eObjectValue xmi:type="uml:Package" href="rclpy.uml#_LDGikO4fEey3buyMmxEJ_w"/> + </styles> + <element xsi:nil="true"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_wVX6RrlGEe27HeoHLJk0Yw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_wVYhULlGEe27HeoHLJk0Yw"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_wVYhUblGEe27HeoHLJk0Yw"/> + </edges> + </notation:Diagram> + <notation:Diagram xmi:id="_iy4woO4qEeyyq6rTvdmD_g" type="PapyrusUMLClassDiagram" name="subscription_module" measurementUnit="Pixel"> + <children xmi:type="notation:Shape" xmi:id="_jzhHMO4qEeyyq6rTvdmD_g" type="Package_Shape"> + <children xmi:type="notation:DecorationNode" xmi:id="_jzhHMu4qEeyyq6rTvdmD_g" type="Package_NameLabel"/> + <children xmi:type="notation:BasicCompartment" xmi:id="_jzhHM-4qEeyyq6rTvdmD_g" type="Package_PackagedElementCompartment"> + <children xmi:type="notation:Shape" xmi:id="_mSqDIO4qEeyyq6rTvdmD_g" type="Class_Shape_CN"> + <children xmi:type="notation:DecorationNode" xmi:id="_mSqDIu4qEeyyq6rTvdmD_g" type="Class_NameLabel_CN"/> + <children xmi:type="notation:DecorationNode" xmi:id="_mSqDI-4qEeyyq6rTvdmD_g" type="Class_FloatingNameLabel_CN"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_mSqDJO4qEeyyq6rTvdmD_g" y="15"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_mSqDJe4qEeyyq6rTvdmD_g" type="Class_AttributeCompartment_CN"> + <styles xmi:type="notation:TitleStyle" xmi:id="_mSqDJu4qEeyyq6rTvdmD_g"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_mSqDJ-4qEeyyq6rTvdmD_g"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_mSqDKO4qEeyyq6rTvdmD_g"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_mSqDKe4qEeyyq6rTvdmD_g"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_mSqDKu4qEeyyq6rTvdmD_g" type="Class_OperationCompartment_CN"> + <styles xmi:type="notation:TitleStyle" xmi:id="_mSqDK-4qEeyyq6rTvdmD_g"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_mSqDLO4qEeyyq6rTvdmD_g"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_mSqDLe4qEeyyq6rTvdmD_g"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_mSqDLu4qEeyyq6rTvdmD_g"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_mSqDL-4qEeyyq6rTvdmD_g" type="Class_NestedClassifierCompartment_CN"> + <styles xmi:type="notation:TitleStyle" xmi:id="_mSqDMO4qEeyyq6rTvdmD_g"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_mSqDMe4qEeyyq6rTvdmD_g"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_mSqDMu4qEeyyq6rTvdmD_g"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_mSqDM-4qEeyyq6rTvdmD_g"/> + </children> + <element xmi:type="uml:Class" href="rclpy.uml#_mSgSIO4qEeyyq6rTvdmD_g"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_mSqDIe4qEeyyq6rTvdmD_g" x="14" y="3"/> + </children> + <styles xmi:type="notation:TitleStyle" xmi:id="_jzhHNO4qEeyyq6rTvdmD_g"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_jzhHNe4qEeyyq6rTvdmD_g"/> + </children> + <element xmi:type="uml:Package" href="rclpy.uml#_jzOMQO4qEeyyq6rTvdmD_g"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_jzhHMe4qEeyyq6rTvdmD_g" x="120" y="100" width="181" height="161"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_zLnHl7lGEe27HeoHLJk0Yw" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_zLnHmLlGEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="_zLnHmrlGEe27HeoHLJk0Yw" name="BASE_ELEMENT"> + <eObjectValue xmi:type="uml:Package" href="rclpy.uml#_jzOMQO4qEeyyq6rTvdmD_g"/> + </styles> + <element xsi:nil="true"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_zLnHmblGEe27HeoHLJk0Yw" x="320" y="100"/> + </children> + <styles xmi:type="notation:StringValueStyle" xmi:id="_iy4woe4qEeyyq6rTvdmD_g" name="diagram_compatibility_version" stringValue="1.4.0"/> + <styles xmi:type="notation:DiagramStyle" xmi:id="_iy4wou4qEeyyq6rTvdmD_g"/> + <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_iy4wo-4qEeyyq6rTvdmD_g" diagramKindId="org.eclipse.papyrus.uml.diagram.class"> + <owner xmi:type="uml:Model" href="rclpy.uml#_21YB0O4aEey3buyMmxEJ_w"/> + </styles> + <element xmi:type="uml:Model" href="rclpy.uml#_21YB0O4aEey3buyMmxEJ_w"/> + <edges xmi:type="notation:Connector" xmi:id="_zLnHm7lGEe27HeoHLJk0Yw" type="StereotypeCommentLink" source="_jzhHMO4qEeyyq6rTvdmD_g" target="_zLnHl7lGEe27HeoHLJk0Yw"> + <styles xmi:type="notation:FontStyle" xmi:id="_zLnHnLlGEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="_zLnuorlGEe27HeoHLJk0Yw" name="BASE_ELEMENT"> + <eObjectValue xmi:type="uml:Package" href="rclpy.uml#_jzOMQO4qEeyyq6rTvdmD_g"/> + </styles> + <element xsi:nil="true"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_zLnHnblGEe27HeoHLJk0Yw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_zLnuoLlGEe27HeoHLJk0Yw"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_zLnuoblGEe27HeoHLJk0Yw"/> + </edges> + </notation:Diagram> + <notation:Diagram xmi:id="_Lc-ksO4rEeyyq6rTvdmD_g" type="PapyrusUMLClassDiagram" name="client_module" measurementUnit="Pixel"> + <children xmi:type="notation:Shape" xmi:id="_MtPSse4rEeyyq6rTvdmD_g" type="Package_Shape"> + <children xmi:type="notation:DecorationNode" xmi:id="_MtPSs-4rEeyyq6rTvdmD_g" type="Package_NameLabel"/> + <children xmi:type="notation:BasicCompartment" xmi:id="_MtPStO4rEeyyq6rTvdmD_g" type="Package_PackagedElementCompartment"> + <children xmi:type="notation:Shape" xmi:id="_QP3E4O4rEeyyq6rTvdmD_g" type="Class_Shape_CN"> + <children xmi:type="notation:DecorationNode" xmi:id="_QP3E4u4rEeyyq6rTvdmD_g" type="Class_NameLabel_CN"/> + <children xmi:type="notation:DecorationNode" xmi:id="_QP3E4-4rEeyyq6rTvdmD_g" type="Class_FloatingNameLabel_CN"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_QP3E5O4rEeyyq6rTvdmD_g" y="15"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_QP3E5e4rEeyyq6rTvdmD_g" type="Class_AttributeCompartment_CN"> + <styles xmi:type="notation:TitleStyle" xmi:id="_QP3E5u4rEeyyq6rTvdmD_g"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_QP3E5-4rEeyyq6rTvdmD_g"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_QP3E6O4rEeyyq6rTvdmD_g"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QP3E6e4rEeyyq6rTvdmD_g"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_QP3E6u4rEeyyq6rTvdmD_g" type="Class_OperationCompartment_CN"> + <styles xmi:type="notation:TitleStyle" xmi:id="_QP3E6-4rEeyyq6rTvdmD_g"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_QP3E7O4rEeyyq6rTvdmD_g"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_QP3E7e4rEeyyq6rTvdmD_g"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QP3E7u4rEeyyq6rTvdmD_g"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_QP3E7-4rEeyyq6rTvdmD_g" type="Class_NestedClassifierCompartment_CN"> + <styles xmi:type="notation:TitleStyle" xmi:id="_QP3E8O4rEeyyq6rTvdmD_g"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_QP3E8e4rEeyyq6rTvdmD_g"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_QP3E8u4rEeyyq6rTvdmD_g"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QP3E8-4rEeyyq6rTvdmD_g"/> + </children> + <element xmi:type="uml:Class" href="rclpy.uml#_QPtT4O4rEeyyq6rTvdmD_g"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QP3E4e4rEeyyq6rTvdmD_g" x="14" y="17"/> + </children> + <styles xmi:type="notation:TitleStyle" xmi:id="_MtPSte4rEeyyq6rTvdmD_g"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MtPStu4rEeyyq6rTvdmD_g"/> + </children> + <element xmi:type="uml:Package" href="rclpy.uml#_MtPSsO4rEeyyq6rTvdmD_g"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MtPSsu4rEeyyq6rTvdmD_g" x="280" y="280" width="141" height="201"/> + </children> + <children xmi:type="notation:Shape" xmi:id="_9Gi2MAj7Ee2-xOjQ3SYv9w" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_9Gi2MQj7Ee2-xOjQ3SYv9w"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="_9GjdQAj7Ee2-xOjQ3SYv9w" name="BASE_ELEMENT"> + <eObjectValue xmi:type="uml:Package" href="rclpy.uml#_MtPSsO4rEeyyq6rTvdmD_g"/> + </styles> + <element xsi:nil="true"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_9Gi2Mgj7Ee2-xOjQ3SYv9w" x="480" y="280"/> + </children> + <styles xmi:type="notation:StringValueStyle" xmi:id="_Lc-kse4rEeyyq6rTvdmD_g" name="diagram_compatibility_version" stringValue="1.4.0"/> + <styles xmi:type="notation:DiagramStyle" xmi:id="_Lc-ksu4rEeyyq6rTvdmD_g"/> + <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_Lc-ks-4rEeyyq6rTvdmD_g" diagramKindId="org.eclipse.papyrus.uml.diagram.class"> + <owner xmi:type="uml:Model" href="rclpy.uml#_21YB0O4aEey3buyMmxEJ_w"/> + </styles> + <element xmi:type="uml:Model" href="rclpy.uml#_21YB0O4aEey3buyMmxEJ_w"/> + <edges xmi:type="notation:Connector" xmi:id="_9GkEUAj7Ee2-xOjQ3SYv9w" type="StereotypeCommentLink" source="_MtPSse4rEeyyq6rTvdmD_g" target="_9Gi2MAj7Ee2-xOjQ3SYv9w"> + <styles xmi:type="notation:FontStyle" xmi:id="_9GkrYAj7Ee2-xOjQ3SYv9w"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="_9GkrZAj7Ee2-xOjQ3SYv9w" name="BASE_ELEMENT"> + <eObjectValue xmi:type="uml:Package" href="rclpy.uml#_MtPSsO4rEeyyq6rTvdmD_g"/> + </styles> + <element xsi:nil="true"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_9GkrYQj7Ee2-xOjQ3SYv9w" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_9GkrYgj7Ee2-xOjQ3SYv9w"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_9GkrYwj7Ee2-xOjQ3SYv9w"/> + </edges> + </notation:Diagram> + <notation:Diagram xmi:id="_e0OGMO4rEeyyq6rTvdmD_g" type="PapyrusUMLClassDiagram" name="service_module" measurementUnit="Pixel"> + <children xmi:type="notation:Shape" xmi:id="_f61wAe4rEeyyq6rTvdmD_g" type="Package_Shape"> + <children xmi:type="notation:DecorationNode" xmi:id="_f61wA-4rEeyyq6rTvdmD_g" type="Package_NameLabel"/> + <children xmi:type="notation:BasicCompartment" xmi:id="_f61wBO4rEeyyq6rTvdmD_g" type="Package_PackagedElementCompartment"> + <children xmi:type="notation:Shape" xmi:id="_ji1xce4rEeyyq6rTvdmD_g" type="Class_Shape_CN"> + <children xmi:type="notation:DecorationNode" xmi:id="_ji1xc-4rEeyyq6rTvdmD_g" type="Class_NameLabel_CN"/> + <children xmi:type="notation:DecorationNode" xmi:id="_ji1xdO4rEeyyq6rTvdmD_g" type="Class_FloatingNameLabel_CN"> + <layoutConstraint xmi:type="notation:Location" xmi:id="_ji1xde4rEeyyq6rTvdmD_g" y="15"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_ji1xdu4rEeyyq6rTvdmD_g" type="Class_AttributeCompartment_CN"> + <styles xmi:type="notation:TitleStyle" xmi:id="_ji1xd-4rEeyyq6rTvdmD_g"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_ji1xeO4rEeyyq6rTvdmD_g"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_ji1xee4rEeyyq6rTvdmD_g"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ji1xeu4rEeyyq6rTvdmD_g"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_ji1xe-4rEeyyq6rTvdmD_g" type="Class_OperationCompartment_CN"> + <styles xmi:type="notation:TitleStyle" xmi:id="_ji1xfO4rEeyyq6rTvdmD_g"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_ji1xfe4rEeyyq6rTvdmD_g"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_ji1xfu4rEeyyq6rTvdmD_g"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ji1xf-4rEeyyq6rTvdmD_g"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="_ji1xgO4rEeyyq6rTvdmD_g" type="Class_NestedClassifierCompartment_CN"> + <styles xmi:type="notation:TitleStyle" xmi:id="_ji1xge4rEeyyq6rTvdmD_g"/> + <styles xmi:type="notation:SortingStyle" xmi:id="_ji1xgu4rEeyyq6rTvdmD_g"/> + <styles xmi:type="notation:FilteringStyle" xmi:id="_ji1xg-4rEeyyq6rTvdmD_g"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ji1xhO4rEeyyq6rTvdmD_g"/> + </children> + <element xmi:type="uml:Class" href="rclpy.uml#_ji1xcO4rEeyyq6rTvdmD_g"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ji1xcu4rEeyyq6rTvdmD_g" x="14" y="23"/> + </children> + <styles xmi:type="notation:TitleStyle" xmi:id="_f61wBe4rEeyyq6rTvdmD_g"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_f61wBu4rEeyyq6rTvdmD_g"/> + </children> + <element xmi:type="uml:Package" href="rclpy.uml#_f61wAO4rEeyyq6rTvdmD_g"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_f61wAu4rEeyyq6rTvdmD_g" x="120" y="160" width="141" height="181"/> + </children> + <styles xmi:type="notation:StringValueStyle" xmi:id="_e0OGMe4rEeyyq6rTvdmD_g" name="diagram_compatibility_version" stringValue="1.4.0"/> + <styles xmi:type="notation:DiagramStyle" xmi:id="_e0OGMu4rEeyyq6rTvdmD_g"/> + <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_e0OGM-4rEeyyq6rTvdmD_g" diagramKindId="org.eclipse.papyrus.uml.diagram.class"> + <owner xmi:type="uml:Model" href="rclpy.uml#_21YB0O4aEey3buyMmxEJ_w"/> + </styles> + <element xmi:type="uml:Model" href="rclpy.uml#_21YB0O4aEey3buyMmxEJ_w"/> + </notation:Diagram> + <notation:Diagram xmi:id="_JcGBIAj9Ee2-xOjQ3SYv9w" type="PapyrusUMLClassDiagram" name="rclpy_pkg" measurementUnit="Pixel"> + <children xmi:type="notation:Shape" xmi:id="_Lf_ykAj9Ee2-xOjQ3SYv9w" type="Package_Shape"> + <children xmi:type="notation:DecorationNode" xmi:id="_LgCO0Aj9Ee2-xOjQ3SYv9w" type="Package_NameLabel"/> + <children xmi:type="notation:BasicCompartment" xmi:id="_LgCO0Qj9Ee2-xOjQ3SYv9w" type="Package_PackagedElementCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="_LgCO0gj9Ee2-xOjQ3SYv9w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LgCO0wj9Ee2-xOjQ3SYv9w"/> + </children> + <element xmi:type="uml:Package" href="rclpy.uml#_LfjtsAj9Ee2-xOjQ3SYv9w"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Lf_ykQj9Ee2-xOjQ3SYv9w" x="300" y="120"/> + </children> + <styles xmi:type="notation:StringValueStyle" xmi:id="_JcGBIQj9Ee2-xOjQ3SYv9w" name="diagram_compatibility_version" stringValue="1.4.0"/> + <styles xmi:type="notation:DiagramStyle" xmi:id="_JcGBIgj9Ee2-xOjQ3SYv9w"/> + <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_JcGBIwj9Ee2-xOjQ3SYv9w" diagramKindId="org.eclipse.papyrus.uml.diagram.class"> + <owner xmi:type="uml:Model" href="rclpy.uml#_21YB0O4aEey3buyMmxEJ_w"/> + </styles> + <element xmi:type="uml:Model" href="rclpy.uml#_21YB0O4aEey3buyMmxEJ_w"/> + </notation:Diagram> + <notation:Diagram xmi:id="__YTRcLlHEe27HeoHLJk0Yw" type="CompositeStructure" name="PublishSubscribe diagram" measurementUnit="Pixel"> + <children xmi:type="notation:Shape" xmi:id="__YTRcblHEe27HeoHLJk0Yw" type="Class_Shape"> + <children xmi:type="notation:DecorationNode" xmi:id="__YTRcrlHEe27HeoHLJk0Yw" type="Class_NameLabel"/> + <children xmi:type="notation:DecorationNode" xmi:id="__YTRc7lHEe27HeoHLJk0Yw" type="Class_FloatingNameLabel"> + <layoutConstraint xmi:type="notation:Location" xmi:id="__YTRdLlHEe27HeoHLJk0Yw" y="15"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="__YTRdblHEe27HeoHLJk0Yw" type="Class_StructureCompartment"> + <children xmi:type="notation:Shape" xmi:id="__YTRdrlHEe27HeoHLJk0Yw" type="Property_Shape"> + <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="__YTRd7lHEe27HeoHLJk0Yw" source="PapyrusCSSForceValue"> + <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="__YTReLlHEe27HeoHLJk0Yw" key="mutable" value="true"/> + </eAnnotations> + <children xmi:type="notation:DecorationNode" xmi:id="__YTReblHEe27HeoHLJk0Yw" type="Property_NameLabel"/> + <children xmi:type="notation:DecorationNode" xmi:id="__YTRerlHEe27HeoHLJk0Yw" type="Property_FloatingNameLabel"> + <layoutConstraint xmi:type="notation:Location" xmi:id="__YTRe7lHEe27HeoHLJk0Yw" y="15"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="__YTRfLlHEe27HeoHLJk0Yw" type="Property_StructureCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="__YTRfblHEe27HeoHLJk0Yw"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YTRfrlHEe27HeoHLJk0Yw"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="__YTRf7lHEe27HeoHLJk0Yw" type="StereotypeLabel"> + <styles xmi:type="notation:StringValueStyle" xmi:id="__YTRgLlHEe27HeoHLJk0Yw" name="stereotype" stringValue="robotics::components::ComponentInstance"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YTRgblHEe27HeoHLJk0Yw"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="__YTRgrlHEe27HeoHLJk0Yw" type="StereotypeBrace"> + <styles xmi:type="notation:TitleStyle" xmi:id="__YTRg7lHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:StringValueStyle" xmi:id="__YTRhLlHEe27HeoHLJk0Yw" name="stereotype" stringValue="robotics::components::ComponentInstance"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YTRmblHEe27HeoHLJk0Yw"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="__YTRmrlHEe27HeoHLJk0Yw" type="compartment_shape_display"> + <styles xmi:type="notation:TitleStyle" xmi:id="__YTRm7lHEe27HeoHLJk0Yw"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YTRnLlHEe27HeoHLJk0Yw"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="__YTRnblHEe27HeoHLJk0Yw" type="StereotypeCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="__YTRnrlHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:StringValueStyle" xmi:id="__YTRn7lHEe27HeoHLJk0Yw" name="stereotype" stringValue="robotics::components::ComponentInstance"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YTRtLlHEe27HeoHLJk0Yw"/> + </children> + <children xmi:type="notation:Shape" xmi:id="__YTRtblHEe27HeoHLJk0Yw" type="Port_Shape"> + <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="__YTRtrlHEe27HeoHLJk0Yw" source="PapyrusCSSForceValue"> + <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="__YTRt7lHEe27HeoHLJk0Yw" key="mutable" value="true"/> + </eAnnotations> + <children xmi:type="notation:DecorationNode" xmi:id="__YTRuLlHEe27HeoHLJk0Yw" type="Port_NameLabel"> + <layoutConstraint xmi:type="notation:Location" xmi:id="__YTRublHEe27HeoHLJk0Yw" x="15" y="30"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="__YTRurlHEe27HeoHLJk0Yw" type="Port_StereotypeLabel"> + <layoutConstraint xmi:type="notation:Location" xmi:id="__YTR2LlHEe27HeoHLJk0Yw" x="25" y="-10"/> + </children> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YTR-blHEe27HeoHLJk0Yw" x="185" y="30"/> + </children> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YTR-rlHEe27HeoHLJk0Yw" x="54" y="40" width="195" height="60"/> + </children> + <children xmi:type="notation:Shape" xmi:id="__YTR-7lHEe27HeoHLJk0Yw" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="__YTR_LlHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YTR_blHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YTR_rlHEe27HeoHLJk0Yw" x="254" y="40"/> + </children> + <children xmi:type="notation:Shape" xmi:id="__YTR_7lHEe27HeoHLJk0Yw" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="__YTSALlHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YTSAblHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YTSArlHEe27HeoHLJk0Yw" x="385" y="30"/> + </children> + <children xmi:type="notation:Shape" xmi:id="__YTSA7lHEe27HeoHLJk0Yw" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="__YTSBLlHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YTSBblHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YTSBrlHEe27HeoHLJk0Yw" x="614" y="40"/> + </children> + <children xmi:type="notation:Shape" xmi:id="__YTSB7lHEe27HeoHLJk0Yw" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="__YTSCLlHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YTSCblHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YTSCrlHEe27HeoHLJk0Yw" x="190" y="30"/> + </children> + <children xmi:type="notation:Shape" xmi:id="__YTSC7lHEe27HeoHLJk0Yw" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="__YTSDLlHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YTSDblHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YTSDrlHEe27HeoHLJk0Yw" x="254" y="40"/> + </children> + <children xmi:type="notation:Shape" xmi:id="__YTSD7lHEe27HeoHLJk0Yw" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="__YTSELlHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YTSEblHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YTSErlHEe27HeoHLJk0Yw" x="385" y="30"/> + </children> + <children xmi:type="notation:Shape" xmi:id="__YTSE7lHEe27HeoHLJk0Yw" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="__YTSFLlHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YTSFblHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YTSFrlHEe27HeoHLJk0Yw" x="614" y="40"/> + </children> + <children xmi:type="notation:Shape" xmi:id="__YTSF7lHEe27HeoHLJk0Yw" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="__YTSGLlHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YTSGblHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YTSGrlHEe27HeoHLJk0Yw" x="190" y="30"/> + </children> + <children xmi:type="notation:Shape" xmi:id="__YTSG7lHEe27HeoHLJk0Yw" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="__YTSHLlHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YTSHblHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YTSHrlHEe27HeoHLJk0Yw" x="254" y="40"/> + </children> + <children xmi:type="notation:Shape" xmi:id="__YTSH7lHEe27HeoHLJk0Yw" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="__YTSILlHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YTSIblHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YTSIrlHEe27HeoHLJk0Yw" x="614" y="40"/> + </children> + <children xmi:type="notation:Shape" xmi:id="__YTSI7lHEe27HeoHLJk0Yw" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="__YTSJLlHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YTSJblHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YTSJrlHEe27HeoHLJk0Yw" x="254" y="40"/> + </children> + <children xmi:type="notation:Shape" xmi:id="__YTSJ7lHEe27HeoHLJk0Yw" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="__YTSKLlHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YTSKblHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YTSKrlHEe27HeoHLJk0Yw" x="614" y="40"/> + </children> + <children xmi:type="notation:Shape" xmi:id="__YTSK7lHEe27HeoHLJk0Yw" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="__YTSLLlHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YTSLblHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YTSLrlHEe27HeoHLJk0Yw" x="254" y="40"/> + </children> + <children xmi:type="notation:Shape" xmi:id="__YTSL7lHEe27HeoHLJk0Yw" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="__YTSMLlHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YTSMblHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YTSMrlHEe27HeoHLJk0Yw" x="614" y="40"/> + </children> + <children xmi:type="notation:Shape" xmi:id="__YTSM7lHEe27HeoHLJk0Yw" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="__YTSNLlHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YTSNblHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YTSNrlHEe27HeoHLJk0Yw" x="254" y="40"/> + </children> + <children xmi:type="notation:Shape" xmi:id="__YTSN7lHEe27HeoHLJk0Yw" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="__YTSOLlHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YTSOblHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YTSOrlHEe27HeoHLJk0Yw" x="614" y="40"/> + </children> + <children xmi:type="notation:Shape" xmi:id="__YTSO7lHEe27HeoHLJk0Yw" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="__YTSPLlHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YTSPblHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YTSPrlHEe27HeoHLJk0Yw" x="254" y="40"/> + </children> + <children xmi:type="notation:Shape" xmi:id="__YTSP7lHEe27HeoHLJk0Yw" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="__YTSQLlHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YTSQblHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YTSQrlHEe27HeoHLJk0Yw" x="385" y="30"/> + </children> + <children xmi:type="notation:Shape" xmi:id="__YTSQ7lHEe27HeoHLJk0Yw" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="__YTSRLlHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YTSRblHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YTSRrlHEe27HeoHLJk0Yw" x="100" y="100"/> + </children> + <children xmi:type="notation:Shape" xmi:id="__YTSR7lHEe27HeoHLJk0Yw" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="__YTSSLlHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YTSSblHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YTSSrlHEe27HeoHLJk0Yw" x="190" y="30"/> + </children> + <children xmi:type="notation:Shape" xmi:id="__YTSS7lHEe27HeoHLJk0Yw" type="Property_Shape"> + <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="__YTSTLlHEe27HeoHLJk0Yw" source="PapyrusCSSForceValue"> + <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="__YTSTblHEe27HeoHLJk0Yw" key="mutable" value="true"/> + </eAnnotations> + <children xmi:type="notation:DecorationNode" xmi:id="__YTSTrlHEe27HeoHLJk0Yw" type="Property_NameLabel"/> + <children xmi:type="notation:DecorationNode" xmi:id="__YTST7lHEe27HeoHLJk0Yw" type="Property_FloatingNameLabel"> + <layoutConstraint xmi:type="notation:Location" xmi:id="__YTSULlHEe27HeoHLJk0Yw" y="15"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="__YTSUblHEe27HeoHLJk0Yw" type="Property_StructureCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="__YTSUrlHEe27HeoHLJk0Yw"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YTSU7lHEe27HeoHLJk0Yw"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="__YTSVLlHEe27HeoHLJk0Yw" type="StereotypeLabel"> + <styles xmi:type="notation:StringValueStyle" xmi:id="__YTSVblHEe27HeoHLJk0Yw" name="stereotype" stringValue="robotics::components::ComponentInstance"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YTSVrlHEe27HeoHLJk0Yw"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="__YTSV7lHEe27HeoHLJk0Yw" type="StereotypeBrace"> + <styles xmi:type="notation:TitleStyle" xmi:id="__YTSWLlHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:StringValueStyle" xmi:id="__YTSWblHEe27HeoHLJk0Yw" name="stereotype" stringValue="robotics::components::ComponentInstance"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YTSbrlHEe27HeoHLJk0Yw"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="__YTSb7lHEe27HeoHLJk0Yw" type="compartment_shape_display"> + <styles xmi:type="notation:TitleStyle" xmi:id="__YTScLlHEe27HeoHLJk0Yw"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YTScblHEe27HeoHLJk0Yw"/> + </children> + <children xmi:type="notation:BasicCompartment" xmi:id="__YTScrlHEe27HeoHLJk0Yw" type="StereotypeCompartment"> + <styles xmi:type="notation:TitleStyle" xmi:id="__YTSc7lHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:StringValueStyle" xmi:id="__YTSdLlHEe27HeoHLJk0Yw" name="stereotype" stringValue="robotics::components::ComponentInstance"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YTSiblHEe27HeoHLJk0Yw"/> + </children> + <children xmi:type="notation:Shape" xmi:id="__YTSirlHEe27HeoHLJk0Yw" type="Port_Shape"> + <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="__YTSi7lHEe27HeoHLJk0Yw" source="PapyrusCSSForceValue"> + <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="__YTSjLlHEe27HeoHLJk0Yw" key="mutable" value="true"/> + </eAnnotations> + <children xmi:type="notation:DecorationNode" xmi:id="__YTSjblHEe27HeoHLJk0Yw" type="Port_NameLabel"> + <layoutConstraint xmi:type="notation:Location" xmi:id="__YTSjrlHEe27HeoHLJk0Yw" x="25" y="3"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="__YTSj7lHEe27HeoHLJk0Yw" type="Port_StereotypeLabel"> + <layoutConstraint xmi:type="notation:Location" xmi:id="__YTSrblHEe27HeoHLJk0Yw" x="25" y="-10"/> + </children> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YTSzrlHEe27HeoHLJk0Yw" x="-10" y="30"/> + </children> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YTSz7lHEe27HeoHLJk0Yw" x="414" y="40" width="210" height="61"/> + </children> + <children xmi:type="notation:Shape" xmi:id="__YTS0LlHEe27HeoHLJk0Yw" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="__YTS0blHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YTS0rlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YTS07lHEe27HeoHLJk0Yw" x="254" y="40"/> + </children> + <children xmi:type="notation:Shape" xmi:id="__YTS1LlHEe27HeoHLJk0Yw" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="__YTS1blHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YTS1rlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YTS17lHEe27HeoHLJk0Yw" x="385" y="30"/> + </children> + <children xmi:type="notation:Shape" xmi:id="__YTS2LlHEe27HeoHLJk0Yw" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="__YTS2blHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YTS2rlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YTS27lHEe27HeoHLJk0Yw" x="100" y="100"/> + </children> + <children xmi:type="notation:Shape" xmi:id="__YTS3LlHEe27HeoHLJk0Yw" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="__YTS3blHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YTS3rlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YTS37lHEe27HeoHLJk0Yw" x="254" y="40"/> + </children> + <children xmi:type="notation:Shape" xmi:id="__YTS4LlHEe27HeoHLJk0Yw" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="__YTS4blHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YTS4rlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YTS47lHEe27HeoHLJk0Yw" x="385" y="30"/> + </children> + <children xmi:type="notation:Shape" xmi:id="__YTS5LlHEe27HeoHLJk0Yw" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="__YTS5blHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YTS5rlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YTS57lHEe27HeoHLJk0Yw" x="100" y="100"/> + </children> + <children xmi:type="notation:Shape" xmi:id="__YTS6LlHEe27HeoHLJk0Yw" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="__YTS6blHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YTS6rlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YTS67lHEe27HeoHLJk0Yw" x="254" y="40"/> + </children> + <children xmi:type="notation:Shape" xmi:id="__YTS7LlHEe27HeoHLJk0Yw" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="__YTS7blHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YTS7rlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YTS77lHEe27HeoHLJk0Yw" x="385" y="30"/> + </children> + <children xmi:type="notation:Shape" xmi:id="__YTS8LlHEe27HeoHLJk0Yw" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="__YTS8blHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YTS8rlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YTS87lHEe27HeoHLJk0Yw" x="100" y="100"/> + </children> + <children xmi:type="notation:Shape" xmi:id="__YTS9LlHEe27HeoHLJk0Yw" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="__YTS9blHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YTS9rlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YTS97lHEe27HeoHLJk0Yw" x="254" y="40"/> + </children> + <children xmi:type="notation:Shape" xmi:id="__YTS-LlHEe27HeoHLJk0Yw" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="__YTS-blHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YTS-rlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YTS-7lHEe27HeoHLJk0Yw" x="385" y="30"/> + </children> + <children xmi:type="notation:Shape" xmi:id="__YTS_LlHEe27HeoHLJk0Yw" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="__YTS_blHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YTS_rlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YTS_7lHEe27HeoHLJk0Yw" x="100" y="100"/> + </children> + <children xmi:type="notation:Shape" xmi:id="__YTTALlHEe27HeoHLJk0Yw" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="__YTTAblHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YTTArlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YTTG7lHEe27HeoHLJk0Yw" x="614" y="40"/> + </children> + <children xmi:type="notation:Shape" xmi:id="__YTTHLlHEe27HeoHLJk0Yw" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="__YTTHblHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YTTHrlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YTTOblHEe27HeoHLJk0Yw" x="190" y="30"/> + </children> + <styles xmi:type="notation:TitleStyle" xmi:id="__YTTOrlHEe27HeoHLJk0Yw"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YTTO7lHEe27HeoHLJk0Yw"/> + </children> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YT4wblHEe27HeoHLJk0Yw" x="40" y="40" width="681" height="201"/> + </children> + <children xmi:type="notation:Shape" xmi:id="__YT4wrlHEe27HeoHLJk0Yw" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="__YT4w7lHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT4xLlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YT4xblHEe27HeoHLJk0Yw" x="240" y="40"/> + </children> + <children xmi:type="notation:Shape" xmi:id="__YT4xrlHEe27HeoHLJk0Yw" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="__YT4x7lHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT4yLlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YT4yblHEe27HeoHLJk0Yw" x="240" y="40"/> + </children> + <children xmi:type="notation:Shape" xmi:id="__YT4yrlHEe27HeoHLJk0Yw" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="__YT4y7lHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT4zLlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YT4zblHEe27HeoHLJk0Yw" x="240" y="40"/> + </children> + <children xmi:type="notation:Shape" xmi:id="__YT4zrlHEe27HeoHLJk0Yw" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="__YT4z7lHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT40LlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YT40blHEe27HeoHLJk0Yw" x="240" y="40"/> + </children> + <children xmi:type="notation:Shape" xmi:id="__YT40rlHEe27HeoHLJk0Yw" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="__YT407lHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT41LlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YT41blHEe27HeoHLJk0Yw" x="240" y="40"/> + </children> + <children xmi:type="notation:Shape" xmi:id="__YT41rlHEe27HeoHLJk0Yw" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="__YT417lHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT42LlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YT42blHEe27HeoHLJk0Yw" x="240" y="40"/> + </children> + <children xmi:type="notation:Shape" xmi:id="__YT42rlHEe27HeoHLJk0Yw" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="__YT427lHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT43LlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YT43blHEe27HeoHLJk0Yw" x="240" y="40"/> + </children> + <children xmi:type="notation:Shape" xmi:id="__YT43rlHEe27HeoHLJk0Yw" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="__YT437lHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT44LlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YT44blHEe27HeoHLJk0Yw" x="240" y="40"/> + </children> + <children xmi:type="notation:Shape" xmi:id="__YT44rlHEe27HeoHLJk0Yw" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="__YT447lHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT45LlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YT45blHEe27HeoHLJk0Yw" x="240" y="40"/> + </children> + <children xmi:type="notation:Shape" xmi:id="__YT45rlHEe27HeoHLJk0Yw" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="__YT457lHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT46LlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YT46blHEe27HeoHLJk0Yw" x="240" y="40"/> + </children> + <children xmi:type="notation:Shape" xmi:id="__YT46rlHEe27HeoHLJk0Yw" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="__YT467lHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT47LlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YT47blHEe27HeoHLJk0Yw" x="240" y="40"/> + </children> + <children xmi:type="notation:Shape" xmi:id="__YT47rlHEe27HeoHLJk0Yw" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="__YT477lHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT48LlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YT48blHEe27HeoHLJk0Yw" x="240" y="40"/> + </children> + <children xmi:type="notation:Shape" xmi:id="__YT48rlHEe27HeoHLJk0Yw" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="__YT487lHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT49LlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YT49blHEe27HeoHLJk0Yw" x="240" y="40"/> + </children> + <children xmi:type="notation:Shape" xmi:id="__YT49rlHEe27HeoHLJk0Yw" type="Comment_Shape"> + <children xmi:type="notation:DecorationNode" xmi:id="__YT497lHEe27HeoHLJk0Yw" type="Comment_BodyLabel"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YT4-LlHEe27HeoHLJk0Yw" x="40" y="300" width="681" height="177"/> + </children> + <children xmi:type="notation:Shape" xmi:id="__YT4-blHEe27HeoHLJk0Yw" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="__YT4-rlHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT4-7lHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YT4_LlHEe27HeoHLJk0Yw" x="240" y="40"/> + </children> + <children xmi:type="notation:Shape" xmi:id="__YT4_blHEe27HeoHLJk0Yw" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="__YT4_rlHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT4_7lHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YT5ALlHEe27HeoHLJk0Yw" x="240" y="40"/> + </children> + <children xmi:type="notation:Shape" xmi:id="__YT5AblHEe27HeoHLJk0Yw" type="StereotypeComment"> + <styles xmi:type="notation:TitleStyle" xmi:id="__YT5ArlHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT5A7lHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <layoutConstraint xmi:type="notation:Bounds" xmi:id="__YT5BLlHEe27HeoHLJk0Yw" x="240" y="40"/> + </children> + <styles xmi:type="notation:StringValueStyle" xmi:id="__YT5BblHEe27HeoHLJk0Yw" name="diagram_compatibility_version" stringValue="1.4.0"/> + <styles xmi:type="notation:DiagramStyle" xmi:id="__YT5BrlHEe27HeoHLJk0Yw"/> + <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="__YT5B7lHEe27HeoHLJk0Yw" diagramKindId="org.eclipse.papyrus.robotics.diagram.assembly"/> + <edges xmi:type="notation:Connector" xmi:id="__YT5CLlHEe27HeoHLJk0Yw" type="StereotypeCommentLink"> + <styles xmi:type="notation:FontStyle" xmi:id="__YT5CblHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT5CrlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__YT5C7lHEe27HeoHLJk0Yw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT5DLlHEe27HeoHLJk0Yw"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT5DblHEe27HeoHLJk0Yw"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="__YT5DrlHEe27HeoHLJk0Yw" type="StereotypeCommentLink"> + <styles xmi:type="notation:FontStyle" xmi:id="__YT5D7lHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT5ELlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__YT5EblHEe27HeoHLJk0Yw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT5ErlHEe27HeoHLJk0Yw"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT5E7lHEe27HeoHLJk0Yw"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="__YT5FLlHEe27HeoHLJk0Yw" type="StereotypeCommentLink"> + <styles xmi:type="notation:FontStyle" xmi:id="__YT5FblHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT5FrlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__YT5F7lHEe27HeoHLJk0Yw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT5GLlHEe27HeoHLJk0Yw"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT5GblHEe27HeoHLJk0Yw"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="__YT5GrlHEe27HeoHLJk0Yw" type="StereotypeCommentLink"> + <styles xmi:type="notation:FontStyle" xmi:id="__YT5G7lHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT5HLlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__YT5HblHEe27HeoHLJk0Yw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT5HrlHEe27HeoHLJk0Yw"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT5H7lHEe27HeoHLJk0Yw"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="__YT5ILlHEe27HeoHLJk0Yw" type="StereotypeCommentLink"> + <styles xmi:type="notation:FontStyle" xmi:id="__YT5IblHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT5IrlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__YT5I7lHEe27HeoHLJk0Yw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT5JLlHEe27HeoHLJk0Yw"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT5JblHEe27HeoHLJk0Yw"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="__YT5JrlHEe27HeoHLJk0Yw" type="StereotypeCommentLink"> + <styles xmi:type="notation:FontStyle" xmi:id="__YT5J7lHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT5KLlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__YT5KblHEe27HeoHLJk0Yw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT5KrlHEe27HeoHLJk0Yw"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT5K7lHEe27HeoHLJk0Yw"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="__YT5LLlHEe27HeoHLJk0Yw" type="StereotypeCommentLink"> + <styles xmi:type="notation:FontStyle" xmi:id="__YT5LblHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT5LrlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__YT5L7lHEe27HeoHLJk0Yw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT5MLlHEe27HeoHLJk0Yw"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT5MblHEe27HeoHLJk0Yw"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="__YT5MrlHEe27HeoHLJk0Yw" type="StereotypeCommentLink"> + <styles xmi:type="notation:FontStyle" xmi:id="__YT5M7lHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT5NLlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__YT5NblHEe27HeoHLJk0Yw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT5NrlHEe27HeoHLJk0Yw"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT5N7lHEe27HeoHLJk0Yw"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="__YT5OLlHEe27HeoHLJk0Yw" type="StereotypeCommentLink"> + <styles xmi:type="notation:FontStyle" xmi:id="__YT5OblHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT5OrlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__YT5O7lHEe27HeoHLJk0Yw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT5PLlHEe27HeoHLJk0Yw"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT5PblHEe27HeoHLJk0Yw"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="__YT5PrlHEe27HeoHLJk0Yw" type="StereotypeCommentLink"> + <styles xmi:type="notation:FontStyle" xmi:id="__YT5P7lHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT5QLlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__YT5QblHEe27HeoHLJk0Yw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT5QrlHEe27HeoHLJk0Yw"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT5Q7lHEe27HeoHLJk0Yw"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="__YT5RLlHEe27HeoHLJk0Yw" type="StereotypeCommentLink"> + <styles xmi:type="notation:FontStyle" xmi:id="__YT5RblHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT5RrlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__YT5R7lHEe27HeoHLJk0Yw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT5SLlHEe27HeoHLJk0Yw"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT5SblHEe27HeoHLJk0Yw"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="__YT5SrlHEe27HeoHLJk0Yw" type="StereotypeCommentLink"> + <styles xmi:type="notation:FontStyle" xmi:id="__YT5S7lHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT5TLlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__YT5TblHEe27HeoHLJk0Yw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT5TrlHEe27HeoHLJk0Yw"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT5T7lHEe27HeoHLJk0Yw"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="__YT5ULlHEe27HeoHLJk0Yw" type="StereotypeCommentLink"> + <styles xmi:type="notation:FontStyle" xmi:id="__YT5UblHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT5UrlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__YT5U7lHEe27HeoHLJk0Yw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT5VLlHEe27HeoHLJk0Yw"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT5VblHEe27HeoHLJk0Yw"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="__YT5VrlHEe27HeoHLJk0Yw" type="Connector_Edge"> + <children xmi:type="notation:DecorationNode" xmi:id="__YT5V7lHEe27HeoHLJk0Yw" type="Connector_StereotypeLabel"> + <layoutConstraint xmi:type="notation:Location" xmi:id="__YT5WLlHEe27HeoHLJk0Yw" y="60"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="__YT5WblHEe27HeoHLJk0Yw" type="Connector_NameLabel"> + <layoutConstraint xmi:type="notation:Location" xmi:id="__YT5WrlHEe27HeoHLJk0Yw" y="-20"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="__YT5W7lHEe27HeoHLJk0Yw" type="Connector_SourceMultiplicityLabel"> + <layoutConstraint xmi:type="notation:Location" xmi:id="__YT5XLlHEe27HeoHLJk0Yw" y="20"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="__YT5XblHEe27HeoHLJk0Yw" type="Connector_TargetMultiplicityLabel"> + <layoutConstraint xmi:type="notation:Location" xmi:id="__YT5XrlHEe27HeoHLJk0Yw" y="20"/> + </children> + <styles xmi:type="notation:FontStyle" xmi:id="__YT5X7lHEe27HeoHLJk0Yw"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__YT5YLlHEe27HeoHLJk0Yw" points="[305, 161, -643984, -643984]$[458, 170, -643984, -643984]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT5YblHEe27HeoHLJk0Yw" id="(0.8,0.4)"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="__YT5YrlHEe27HeoHLJk0Yw" type="StereotypeCommentLink"> + <styles xmi:type="notation:FontStyle" xmi:id="__YT5Y7lHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT5ZLlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__YT5ZblHEe27HeoHLJk0Yw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT5ZrlHEe27HeoHLJk0Yw"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT5Z7lHEe27HeoHLJk0Yw"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="__YT5aLlHEe27HeoHLJk0Yw" type="StereotypeCommentLink"> + <styles xmi:type="notation:FontStyle" xmi:id="__YT5ablHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT5arlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__YT5a7lHEe27HeoHLJk0Yw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT5bLlHEe27HeoHLJk0Yw"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT5bblHEe27HeoHLJk0Yw"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="__YT5brlHEe27HeoHLJk0Yw" type="StereotypeCommentLink"> + <styles xmi:type="notation:FontStyle" xmi:id="__YT5b7lHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT5cLlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__YT5cblHEe27HeoHLJk0Yw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT5crlHEe27HeoHLJk0Yw"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT5c7lHEe27HeoHLJk0Yw"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="__YT5dLlHEe27HeoHLJk0Yw" type="StereotypeCommentLink"> + <styles xmi:type="notation:FontStyle" xmi:id="__YT5dblHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT5drlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__YT5d7lHEe27HeoHLJk0Yw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT5eLlHEe27HeoHLJk0Yw"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT5eblHEe27HeoHLJk0Yw"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="__YT5erlHEe27HeoHLJk0Yw" type="StereotypeCommentLink"> + <styles xmi:type="notation:FontStyle" xmi:id="__YT5e7lHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT5fLlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__YT5fblHEe27HeoHLJk0Yw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT5frlHEe27HeoHLJk0Yw"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT5f7lHEe27HeoHLJk0Yw"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="__YT5gLlHEe27HeoHLJk0Yw" type="StereotypeCommentLink"> + <styles xmi:type="notation:FontStyle" xmi:id="__YT5gblHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT5grlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__YT5g7lHEe27HeoHLJk0Yw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT5hLlHEe27HeoHLJk0Yw"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT5hblHEe27HeoHLJk0Yw"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="__YT5hrlHEe27HeoHLJk0Yw" type="StereotypeCommentLink"> + <styles xmi:type="notation:FontStyle" xmi:id="__YT5h7lHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT5iLlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__YT5iblHEe27HeoHLJk0Yw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT5irlHEe27HeoHLJk0Yw"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT5i7lHEe27HeoHLJk0Yw"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="__YT5jLlHEe27HeoHLJk0Yw" type="StereotypeCommentLink"> + <styles xmi:type="notation:FontStyle" xmi:id="__YT5jblHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT5jrlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__YT5j7lHEe27HeoHLJk0Yw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT5kLlHEe27HeoHLJk0Yw"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT5kblHEe27HeoHLJk0Yw"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="__YT5krlHEe27HeoHLJk0Yw" type="StereotypeCommentLink"> + <styles xmi:type="notation:FontStyle" xmi:id="__YT5k7lHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT5lLlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__YT5lblHEe27HeoHLJk0Yw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT5lrlHEe27HeoHLJk0Yw"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT5l7lHEe27HeoHLJk0Yw"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="__YT5mLlHEe27HeoHLJk0Yw" type="Connector_Edge"> + <children xmi:type="notation:DecorationNode" xmi:id="__YT5mblHEe27HeoHLJk0Yw" type="Connector_StereotypeLabel"> + <layoutConstraint xmi:type="notation:Location" xmi:id="__YT5mrlHEe27HeoHLJk0Yw" y="60"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="__YT5m7lHEe27HeoHLJk0Yw" type="Connector_NameLabel"> + <layoutConstraint xmi:type="notation:Location" xmi:id="__YT5nLlHEe27HeoHLJk0Yw" y="-20"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="__YT5nblHEe27HeoHLJk0Yw" type="Connector_SourceMultiplicityLabel"> + <layoutConstraint xmi:type="notation:Location" xmi:id="__YT5nrlHEe27HeoHLJk0Yw" y="20"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="__YT5n7lHEe27HeoHLJk0Yw" type="Connector_TargetMultiplicityLabel"> + <layoutConstraint xmi:type="notation:Location" xmi:id="__YT5oLlHEe27HeoHLJk0Yw" y="20"/> + </children> + <styles xmi:type="notation:FontStyle" xmi:id="__YT5oblHEe27HeoHLJk0Yw"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__YT5orlHEe27HeoHLJk0Yw" points="[305, 160, -643984, -643984]$[450, 160, -643984, -643984]"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="__YT5o7lHEe27HeoHLJk0Yw" type="StereotypeCommentLink"> + <styles xmi:type="notation:FontStyle" xmi:id="__YT5pLlHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT5pblHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__YT5prlHEe27HeoHLJk0Yw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT5p7lHEe27HeoHLJk0Yw"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT5qLlHEe27HeoHLJk0Yw"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="__YT5qblHEe27HeoHLJk0Yw" type="StereotypeCommentLink"> + <styles xmi:type="notation:FontStyle" xmi:id="__YT5qrlHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT5q7lHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__YT5rLlHEe27HeoHLJk0Yw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT5rblHEe27HeoHLJk0Yw"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT5rrlHEe27HeoHLJk0Yw"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="__YT5r7lHEe27HeoHLJk0Yw" type="StereotypeCommentLink"> + <styles xmi:type="notation:FontStyle" xmi:id="__YT5sLlHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT5sblHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__YT5srlHEe27HeoHLJk0Yw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT5s7lHEe27HeoHLJk0Yw"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT5tLlHEe27HeoHLJk0Yw"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="__YT5tblHEe27HeoHLJk0Yw" type="StereotypeCommentLink"> + <styles xmi:type="notation:FontStyle" xmi:id="__YT5trlHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT5t7lHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__YT5uLlHEe27HeoHLJk0Yw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT5ublHEe27HeoHLJk0Yw"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT5urlHEe27HeoHLJk0Yw"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="__YT5u7lHEe27HeoHLJk0Yw" type="StereotypeCommentLink"> + <styles xmi:type="notation:FontStyle" xmi:id="__YT5vLlHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT5vblHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__YT5vrlHEe27HeoHLJk0Yw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT5v7lHEe27HeoHLJk0Yw"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT5wLlHEe27HeoHLJk0Yw"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="__YT5wblHEe27HeoHLJk0Yw" type="StereotypeCommentLink"> + <styles xmi:type="notation:FontStyle" xmi:id="__YT5wrlHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT5w7lHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__YT5xLlHEe27HeoHLJk0Yw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT5xblHEe27HeoHLJk0Yw"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT5xrlHEe27HeoHLJk0Yw"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="__YT5x7lHEe27HeoHLJk0Yw" type="Connector_Edge"> + <children xmi:type="notation:DecorationNode" xmi:id="__YT5yLlHEe27HeoHLJk0Yw" type="Connector_StereotypeLabel"> + <styles xmi:type="notation:BooleanValueStyle" xmi:id="__YT5yblHEe27HeoHLJk0Yw" name="IS_UPDATED_POSITION" booleanValue="true"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="__YT5yrlHEe27HeoHLJk0Yw" y="60"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="__YT5y7lHEe27HeoHLJk0Yw" type="Connector_NameLabel"> + <styles xmi:type="notation:BooleanValueStyle" xmi:id="__YT5zLlHEe27HeoHLJk0Yw" name="IS_UPDATED_POSITION" booleanValue="true"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="__YT5zblHEe27HeoHLJk0Yw" y="-20"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="__YT5zrlHEe27HeoHLJk0Yw" type="Connector_SourceMultiplicityLabel"> + <styles xmi:type="notation:BooleanValueStyle" xmi:id="__YT5z7lHEe27HeoHLJk0Yw" name="IS_UPDATED_POSITION" booleanValue="true"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="__YT50LlHEe27HeoHLJk0Yw" x="-22" y="20"/> + </children> + <children xmi:type="notation:DecorationNode" xmi:id="__YT50blHEe27HeoHLJk0Yw" type="Connector_TargetMultiplicityLabel"> + <styles xmi:type="notation:BooleanValueStyle" xmi:id="__YT50rlHEe27HeoHLJk0Yw" name="IS_UPDATED_POSITION" booleanValue="true"/> + <layoutConstraint xmi:type="notation:Location" xmi:id="__YT507lHEe27HeoHLJk0Yw" x="22" y="20"/> + </children> + <styles xmi:type="notation:FontStyle" xmi:id="__YT51LlHEe27HeoHLJk0Yw"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__YT52LlHEe27HeoHLJk0Yw" points="[305, 160, -643984, -643984]$[450, 160, -643984, -643984]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT52blHEe27HeoHLJk0Yw" id="(1.0,0.5)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT52rlHEe27HeoHLJk0Yw" id="(0.0,0.5)"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="__YT527lHEe27HeoHLJk0Yw" type="StereotypeCommentLink"> + <styles xmi:type="notation:FontStyle" xmi:id="__YT53LlHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT53blHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__YT53rlHEe27HeoHLJk0Yw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT537lHEe27HeoHLJk0Yw"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT54LlHEe27HeoHLJk0Yw"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="__YT54blHEe27HeoHLJk0Yw" type="StereotypeCommentLink"> + <styles xmi:type="notation:FontStyle" xmi:id="__YT54rlHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT547lHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__YT55LlHEe27HeoHLJk0Yw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT55blHEe27HeoHLJk0Yw"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT55rlHEe27HeoHLJk0Yw"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="__YT557lHEe27HeoHLJk0Yw" type="StereotypeCommentLink"> + <styles xmi:type="notation:FontStyle" xmi:id="__YT56LlHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT56blHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__YT56rlHEe27HeoHLJk0Yw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT567lHEe27HeoHLJk0Yw"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT57LlHEe27HeoHLJk0Yw"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="__YT57blHEe27HeoHLJk0Yw" type="StereotypeCommentLink"> + <styles xmi:type="notation:FontStyle" xmi:id="__YT57rlHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT577lHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__YT58LlHEe27HeoHLJk0Yw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT58blHEe27HeoHLJk0Yw"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT58rlHEe27HeoHLJk0Yw"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="__YT587lHEe27HeoHLJk0Yw" type="StereotypeCommentLink"> + <styles xmi:type="notation:FontStyle" xmi:id="__YT59LlHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT59blHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__YT59rlHEe27HeoHLJk0Yw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT597lHEe27HeoHLJk0Yw"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT5-LlHEe27HeoHLJk0Yw"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="__YT5-blHEe27HeoHLJk0Yw" type="StereotypeCommentLink"> + <styles xmi:type="notation:FontStyle" xmi:id="__YT5-rlHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT5-7lHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__YT5_LlHEe27HeoHLJk0Yw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT5_blHEe27HeoHLJk0Yw"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT5_rlHEe27HeoHLJk0Yw"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="__YT5_7lHEe27HeoHLJk0Yw" type="StereotypeCommentLink"> + <styles xmi:type="notation:FontStyle" xmi:id="__YT6ALlHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT6AblHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__YT6ArlHEe27HeoHLJk0Yw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT6A7lHEe27HeoHLJk0Yw"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT6BLlHEe27HeoHLJk0Yw"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="__YT6BblHEe27HeoHLJk0Yw" type="StereotypeCommentLink"> + <styles xmi:type="notation:FontStyle" xmi:id="__YT6BrlHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT6B7lHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__YT6CLlHEe27HeoHLJk0Yw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT6CblHEe27HeoHLJk0Yw"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT6CrlHEe27HeoHLJk0Yw"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="__YT6C7lHEe27HeoHLJk0Yw" type="StereotypeCommentLink"> + <styles xmi:type="notation:FontStyle" xmi:id="__YT6DLlHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT6DblHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__YT6DrlHEe27HeoHLJk0Yw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT6D7lHEe27HeoHLJk0Yw"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT6ELlHEe27HeoHLJk0Yw"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="__YT6EblHEe27HeoHLJk0Yw" type="StereotypeCommentLink"> + <styles xmi:type="notation:FontStyle" xmi:id="__YT6ErlHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT6E7lHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__YT6FLlHEe27HeoHLJk0Yw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT6FblHEe27HeoHLJk0Yw"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT6FrlHEe27HeoHLJk0Yw"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="__YT6F7lHEe27HeoHLJk0Yw" type="StereotypeCommentLink"> + <styles xmi:type="notation:FontStyle" xmi:id="__YT6GLlHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT6GblHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__YT6GrlHEe27HeoHLJk0Yw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT6G7lHEe27HeoHLJk0Yw"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT6HLlHEe27HeoHLJk0Yw"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="__YT6HblHEe27HeoHLJk0Yw" type="Comment_AnnotatedElementEdge"> + <styles xmi:type="notation:FontStyle" xmi:id="__YT6HrlHEe27HeoHLJk0Yw"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__YT6H7lHEe27HeoHLJk0Yw" points="[380, 320, -643984, -643984]$[380, 241, -643984, -643984]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT6ILlHEe27HeoHLJk0Yw" id="(0.49926578560939794,0.0)"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT6IblHEe27HeoHLJk0Yw" id="(0.49926578560939794,1.0)"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="__YT6IrlHEe27HeoHLJk0Yw" type="StereotypeCommentLink"> + <styles xmi:type="notation:FontStyle" xmi:id="__YT6I7lHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT6JLlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__YT6JblHEe27HeoHLJk0Yw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT6JrlHEe27HeoHLJk0Yw"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT6J7lHEe27HeoHLJk0Yw"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="__YT6KLlHEe27HeoHLJk0Yw" type="StereotypeCommentLink"> + <styles xmi:type="notation:FontStyle" xmi:id="__YT6KblHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT6KrlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__YT6K7lHEe27HeoHLJk0Yw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT6LLlHEe27HeoHLJk0Yw"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT6LblHEe27HeoHLJk0Yw"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="__YT6LrlHEe27HeoHLJk0Yw" type="StereotypeCommentLink"> + <styles xmi:type="notation:FontStyle" xmi:id="__YT6L7lHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT6MLlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__YT6MblHEe27HeoHLJk0Yw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT6MrlHEe27HeoHLJk0Yw"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT6M7lHEe27HeoHLJk0Yw"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="__YT6NLlHEe27HeoHLJk0Yw" type="StereotypeCommentLink"> + <styles xmi:type="notation:FontStyle" xmi:id="__YT6NblHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT6NrlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__YT6N7lHEe27HeoHLJk0Yw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT6OLlHEe27HeoHLJk0Yw"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT6OblHEe27HeoHLJk0Yw"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="__YT6OrlHEe27HeoHLJk0Yw" type="StereotypeCommentLink"> + <styles xmi:type="notation:FontStyle" xmi:id="__YT6O7lHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT6PLlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__YT6PblHEe27HeoHLJk0Yw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT6PrlHEe27HeoHLJk0Yw"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT6P7lHEe27HeoHLJk0Yw"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="__YT6QLlHEe27HeoHLJk0Yw" type="StereotypeCommentLink"> + <styles xmi:type="notation:FontStyle" xmi:id="__YT6QblHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT6QrlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__YT6Q7lHEe27HeoHLJk0Yw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT6RLlHEe27HeoHLJk0Yw"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT6RblHEe27HeoHLJk0Yw"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="__YT6RrlHEe27HeoHLJk0Yw" type="StereotypeCommentLink"> + <styles xmi:type="notation:FontStyle" xmi:id="__YT6R7lHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT6SLlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__YT6SblHEe27HeoHLJk0Yw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT6SrlHEe27HeoHLJk0Yw"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT6S7lHEe27HeoHLJk0Yw"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="__YT6TLlHEe27HeoHLJk0Yw" type="StereotypeCommentLink"> + <styles xmi:type="notation:FontStyle" xmi:id="__YT6TblHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT6TrlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__YT6T7lHEe27HeoHLJk0Yw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT6ULlHEe27HeoHLJk0Yw"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT6UblHEe27HeoHLJk0Yw"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="__YT6UrlHEe27HeoHLJk0Yw" type="StereotypeCommentLink"> + <styles xmi:type="notation:FontStyle" xmi:id="__YT6U7lHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT6VLlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__YT6VblHEe27HeoHLJk0Yw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT6VrlHEe27HeoHLJk0Yw"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT6V7lHEe27HeoHLJk0Yw"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="__YT6WLlHEe27HeoHLJk0Yw" type="StereotypeCommentLink"> + <styles xmi:type="notation:FontStyle" xmi:id="__YT6WblHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT6WrlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__YT6W7lHEe27HeoHLJk0Yw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT6XLlHEe27HeoHLJk0Yw"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT6XblHEe27HeoHLJk0Yw"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="__YT6XrlHEe27HeoHLJk0Yw" type="StereotypeCommentLink"> + <styles xmi:type="notation:FontStyle" xmi:id="__YT6X7lHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT6YLlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__YT6YblHEe27HeoHLJk0Yw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT6YrlHEe27HeoHLJk0Yw"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT6Y7lHEe27HeoHLJk0Yw"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="__YT6ZLlHEe27HeoHLJk0Yw" type="StereotypeCommentLink"> + <styles xmi:type="notation:FontStyle" xmi:id="__YT6ZblHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT6ZrlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__YT6Z7lHEe27HeoHLJk0Yw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT6aLlHEe27HeoHLJk0Yw"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT6ablHEe27HeoHLJk0Yw"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="__YT6arlHEe27HeoHLJk0Yw" type="StereotypeCommentLink"> + <styles xmi:type="notation:FontStyle" xmi:id="__YT6a7lHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT6bLlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__YT6bblHEe27HeoHLJk0Yw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT6brlHEe27HeoHLJk0Yw"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT6b7lHEe27HeoHLJk0Yw"/> + </edges> + <edges xmi:type="notation:Connector" xmi:id="__YT6cLlHEe27HeoHLJk0Yw" type="StereotypeCommentLink"> + <styles xmi:type="notation:FontStyle" xmi:id="__YT6cblHEe27HeoHLJk0Yw"/> + <styles xmi:type="notation:EObjectValueStyle" xmi:id="__YT6crlHEe27HeoHLJk0Yw" name="BASE_ELEMENT"/> + <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__YT6c7lHEe27HeoHLJk0Yw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/> + <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT6dLlHEe27HeoHLJk0Yw"/> + <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__YT6dblHEe27HeoHLJk0Yw"/> + </edges> + </notation:Diagram> +</xmi:XMI>
diff --git a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python.ui/models/library/rclpy.uml b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python.ui/models/library/rclpy.uml new file mode 100644 index 0000000..ffdcb89 --- /dev/null +++ b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python.ui/models/library/rclpy.uml
@@ -0,0 +1,81 @@ +<?xml version="1.0" encoding="UTF-8"?> +<xmi:XMI xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:python="http://www.eclipse.org/papyrus/python/1" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML"> + <uml:Model xmi:id="_21YB0O4aEey3buyMmxEJ_w" name="rclpy"> + <packageImport xmi:type="uml:PackageImport" xmi:id="_22kUoO4aEey3buyMmxEJ_w"> + <importedPackage xmi:type="uml:Model" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#_0"/> + </packageImport> + <packagedElement xmi:type="uml:Package" xmi:id="_hq5LoO4bEey3buyMmxEJ_w" name="node"> + <packagedElement xmi:type="uml:Class" xmi:id="_eEr58O4bEey3buyMmxEJ_w" name="Node"/> + </packagedElement> + <packagedElement xmi:type="uml:Package" xmi:id="_nL59IO4bEey3buyMmxEJ_w" name="publisher"> + <packagedElement xmi:type="uml:Class" xmi:id="_mDLagO4bEey3buyMmxEJ_w" name="Publisher"/> + </packagedElement> + <packagedElement xmi:type="uml:Package" xmi:id="_uqkHEO4bEey3buyMmxEJ_w" name="lifecycle"> + <packagedElement xmi:type="uml:Class" xmi:id="_xe6eAO4bEey3buyMmxEJ_w" name="Node"/> + <packagedElement xmi:type="uml:Class" xmi:id="_y3RYEO4bEey3buyMmxEJ_w" name="Publisher"/> + <packagedElement xmi:type="uml:Class" xmi:id="_1TWY8O4bEey3buyMmxEJ_w" name="State"/> + <packagedElement xmi:type="uml:Class" xmi:id="_z5WgIO4bEey3buyMmxEJ_w" name="TransitionCallbackReturn"/> + </packagedElement> + <packagedElement xmi:type="uml:Package" xmi:id="_YOa0sO4cEey3buyMmxEJ_w" name="executors"> + <packagedElement xmi:type="uml:Class" xmi:id="_cQYOQO4cEey3buyMmxEJ_w" name="Executor"/> + <packagedElement xmi:type="uml:Class" xmi:id="_ifvTgO4cEey3buyMmxEJ_w" name="TimeoutException"/> + <packagedElement xmi:type="uml:Class" xmi:id="_jxDxcO4cEey3buyMmxEJ_w" name="ShutdownException"/> + <packagedElement xmi:type="uml:Class" xmi:id="_lsBpUO4cEey3buyMmxEJ_w" name="ExternalShutdownException"/> + <packagedElement xmi:type="uml:Class" xmi:id="_tDdJ4O4cEey3buyMmxEJ_w" name="SingleThreadedExecutor"/> + <packagedElement xmi:type="uml:Class" xmi:id="_ucINAO4cEey3buyMmxEJ_w" name="MultiThreadedExecutor"/> + </packagedElement> + <packagedElement xmi:type="uml:Package" xmi:id="_8JMZ8O4cEey3buyMmxEJ_w" name="action"> + <packagedElement xmi:type="uml:Class" xmi:id="_Axv5cO4dEey3buyMmxEJ_w" name="ActionServer"/> + <packagedElement xmi:type="uml:Class" xmi:id="_FZwmYO4dEey3buyMmxEJ_w" name="ActionClient"/> + </packagedElement> + <packagedElement xmi:type="uml:Package" xmi:id="_jLnsoO4dEey3buyMmxEJ_w" name="qos"> + <packagedElement xmi:type="uml:Class" xmi:id="_kwVnsO4dEey3buyMmxEJ_w" name="QoSProfile"/> + <packagedElement xmi:type="uml:Class" xmi:id="_uh-g4O4dEey3buyMmxEJ_w" name="InvalidQoSProfileException"/> + <packagedElement xmi:type="uml:Enumeration" xmi:id="_xeFFoO4dEey3buyMmxEJ_w" name="QoSPolicyKind"/> + <packagedElement xmi:type="uml:Enumeration" xmi:id="_3amHYO4dEey3buyMmxEJ_w" name="QoSPolicyEnum"/> + <packagedElement xmi:type="uml:Enumeration" xmi:id="_FRQ8QO4eEey3buyMmxEJ_w" name="HistoryPolicy"/> + <packagedElement xmi:type="uml:Enumeration" xmi:id="_G81GMO4eEey3buyMmxEJ_w" name="ReliabilityPolicy"/> + <packagedElement xmi:type="uml:Enumeration" xmi:id="_IrfAYO4eEey3buyMmxEJ_w" name="DurabilityPolicy"/> + <packagedElement xmi:type="uml:Enumeration" xmi:id="_KRwaoO4eEey3buyMmxEJ_w" name="LivelinessPolicy"/> + <packagedElement xmi:type="uml:Enumeration" xmi:id="_NHJTYO4eEey3buyMmxEJ_w" name="QoSPresetProfiles"/> + </packagedElement> + <packagedElement xmi:type="uml:Package" xmi:id="_0Sl_MO4eEey3buyMmxEJ_w" name="time"> + <packagedElement xmi:type="uml:Class" xmi:id="_1prt8O4eEey3buyMmxEJ_w" name="Time"/> + </packagedElement> + <packagedElement xmi:type="uml:Package" xmi:id="_LDGikO4fEey3buyMmxEJ_w" name="timer"> + <packagedElement xmi:type="uml:Class" xmi:id="_NRiwEO4fEey3buyMmxEJ_w" name="Timer"/> + <packagedElement xmi:type="uml:Class" xmi:id="_N42AoO4fEey3buyMmxEJ_w" name="Rate"/> + </packagedElement> + <packagedElement xmi:type="uml:Package" xmi:id="_jzOMQO4qEeyyq6rTvdmD_g" name="subscription"> + <packagedElement xmi:type="uml:Class" xmi:id="_mSgSIO4qEeyyq6rTvdmD_g" name="Subscription"/> + </packagedElement> + <packagedElement xmi:type="uml:Package" xmi:id="_MtPSsO4rEeyyq6rTvdmD_g" name="client"> + <packagedElement xmi:type="uml:Class" xmi:id="_QPtT4O4rEeyyq6rTvdmD_g" name="Client"/> + </packagedElement> + <packagedElement xmi:type="uml:Package" xmi:id="_f61wAO4rEeyyq6rTvdmD_g" name="service"> + <packagedElement xmi:type="uml:Class" xmi:id="_ji1xcO4rEeyyq6rTvdmD_g" name="Service"/> + </packagedElement> + <packagedElement xmi:type="uml:Package" xmi:id="_LfjtsAj9Ee2-xOjQ3SYv9w" name="rclpy"/> + <packagedElement xmi:type="uml:Package" xmi:id="_iZGXMLlHEe27HeoHLJk0Yw" name="callback_groups"> + <packagedElement xmi:type="uml:Class" xmi:id="_nzC3YLlHEe27HeoHLJk0Yw" name="ReentrantCallbackGroup"/> + <packagedElement xmi:type="uml:Class" xmi:id="_sgWUALlHEe27HeoHLJk0Yw" name="MutuallyExclusiveCallbackGroup"/> + </packagedElement> + <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_21q8wO4aEey3buyMmxEJ_w"> + <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_21q8we4aEey3buyMmxEJ_w" source="http://www.eclipse.org/uml2/2.0.0/UML"> + <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/python/1#/"/> + </eAnnotations> + <appliedProfile xmi:type="uml:Profile" href="pathmap://PapyrusPython_PROFILES/python.profile.uml#_ZZc2IOjGEeyu5-ah8U05Lg"/> + </profileApplication> + </uml:Model> + <python:Module xmi:id="_kSrGMO4bEey3buyMmxEJ_w" base_Package="_hq5LoO4bEey3buyMmxEJ_w"/> + <python:Module xmi:id="_qeUwIO4bEey3buyMmxEJ_w" base_Package="_nL59IO4bEey3buyMmxEJ_w"/> + <python:Module xmi:id="_wG0CoO4bEey3buyMmxEJ_w" base_Package="_uqkHEO4bEey3buyMmxEJ_w"/> + <python:Module xmi:id="_aExSUO4cEey3buyMmxEJ_w" base_Package="_YOa0sO4cEey3buyMmxEJ_w"/> + <python:Module xmi:id="_TBVPUO4dEey3buyMmxEJ_w" base_Package="_8JMZ8O4cEey3buyMmxEJ_w"/> + <python:Module xmi:id="_4OtPcO4eEey3buyMmxEJ_w" base_Package="_0Sl_MO4eEey3buyMmxEJ_w"/> + <python:Module xmi:id="_5dFuIO4eEey3buyMmxEJ_w" base_Package="_jLnsoO4dEey3buyMmxEJ_w"/> + <python:Module xmi:id="_MOia8O4fEey3buyMmxEJ_w" base_Package="_LDGikO4fEey3buyMmxEJ_w"/> + <python:Module xmi:id="_Ocr3EO4rEeyyq6rTvdmD_g" base_Package="_MtPSsO4rEeyyq6rTvdmD_g"/> + <python:Module xmi:id="_WzctsO4rEeyyq6rTvdmD_g" base_Package="_jzOMQO4qEeyyq6rTvdmD_g"/> + <python:Module xmi:id="_ltGekLlHEe27HeoHLJk0Yw" base_Package="_iZGXMLlHEe27HeoHLJk0Yw"/> +</xmi:XMI>
diff --git a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python.ui/plugin.properties b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python.ui/plugin.properties new file mode 100644 index 0000000..57de1b7 --- /dev/null +++ b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python.ui/plugin.properties
@@ -0,0 +1,11 @@ +# Copyright (c) CEA LIST. +# +# This program and the accompanying materials are made +# available under the terms of the Eclipse Public License 2.0 +# which is available at https://www.eclipse.org/legal/epl-2.0/ +# +# SPDX-License-Identifier: EPL-2.0 +# + +pluginName=Papyrus for Robotics: generate Python ROS 2 code, UI part (Incubation) +providerName=Eclipse Modeling Project
diff --git a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python.ui/plugin.xml b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python.ui/plugin.xml new file mode 100644 index 0000000..65e31c8 --- /dev/null +++ b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python.ui/plugin.xml
@@ -0,0 +1,40 @@ +<?xml version="1.0" encoding="UTF-8"?> +<?eclipse version="3.2"?> +<plugin> + <extension point="org.eclipse.ui.commands"> + <command + categoryId="org.eclipse.papyrus.editor.category" + defaultHandler="org.eclipse.papyrus.robotics.ros2.codegen.python.ui.handlers.GenerateCodeHandler" + id="org.eclipse.papyrus.robotics.ros2.codegen.python.ui.GenerateCodeCmd" + name="Generate ROS 2/Python code"/> + </extension> + <extension point="org.eclipse.ui.menus"> + <menuContribution + allPopups="false" + locationURI="popup:org.eclipse.papyrus.robotics.simplifiedui.ui.menu"> + <command + commandId="org.eclipse.papyrus.robotics.ros2.codegen.python.ui.GenerateCodeCmd" + icon="platform:/plugin/org.eclipse.papyrus.robotics.ros2.codegen.common/icons/ros-16x16.png"> + <visibleWhen checkEnabled="false"> + <iterate> + <adapt type="org.eclipse.emf.ecore.EObject"> + <or> + <test property="org.eclipse.papyrus.uml.stereotype" value="robotics::components::ComponentDefinition"/> + <test property="org.eclipse.papyrus.uml.stereotype" value="robotics::components::System"/> + <test property="org.eclipse.papyrus.uml.stereotype" value="robotics::services::ServiceDefinition"/> + <test property="org.eclipse.papyrus.uml.stereotype" value="robotics::commobject::DataType"/> + <test property="org.eclipse.papyrus.uml.stereotype" value="robotics::commobject::CommunicationObject"/> + </or> + </adapt> + </iterate> + </visibleWhen> + </command> + </menuContribution> + </extension> + + <extension point="org.eclipse.emf.ecore.uri_mapping"> + <mapping source="pathmap://ROS2_PYTHON_LIBRARY/" target="platform:/plugin/org.eclipse.papyrus.robotics.ros2.codegen.python.ui/models/library/"> + </mapping> + </extension> + +</plugin>
diff --git a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python.ui/pom.xml b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python.ui/pom.xml new file mode 100644 index 0000000..84c7e15 --- /dev/null +++ b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python.ui/pom.xml
@@ -0,0 +1,13 @@ +<?xml version="1.0" encoding="UTF-8"?> +<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.robotics</groupId> + <artifactId>org.eclipse.papyrus.robotics.ros2</artifactId> + <version>0.8.0-SNAPSHOT</version> + </parent> + <artifactId>org.eclipse.papyrus.robotics.ros2.codegen.python.ui</artifactId> + <packaging>eclipse-plugin</packaging> + <description>This module contains UI part of code generation for ROS 2/Python</description> +</project>
diff --git a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python.ui/src/org/eclipse/papyrus/robotics/ros2/codegen/python/ui/Activator.java b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python.ui/src/org/eclipse/papyrus/robotics/ros2/codegen/python/ui/Activator.java new file mode 100644 index 0000000..19065c4 --- /dev/null +++ b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python.ui/src/org/eclipse/papyrus/robotics/ros2/codegen/python/ui/Activator.java
@@ -0,0 +1,44 @@ +package org.eclipse.papyrus.robotics.ros2.codegen.python.ui; + +import org.eclipse.ui.plugin.AbstractUIPlugin; +import org.osgi.framework.BundleContext; + +/** + * The activator class controls the plug-in life cycle + */ +public class Activator extends AbstractUIPlugin { + + // The plug-in ID + public static final String PLUGIN_ID = "org.eclipse.papyrus.robotics.ros2.codegen.python.ui"; //$NON-NLS-1$ + + // The shared instance + private static Activator plugin; + + /** + * The constructor + */ + public Activator() { + } + + @Override + public void start(BundleContext context) throws Exception { + super.start(context); + plugin = this; + } + + @Override + public void stop(BundleContext context) throws Exception { + plugin = null; + super.stop(context); + } + + /** + * Returns the shared instance + * + * @return the shared instance + */ + public static Activator getDefault() { + return plugin; + } + +}
diff --git a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python/src/org/eclipse/papyrus/robotics/ros2/codegen/python/handlers/GenerateCodeHandler.java b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python.ui/src/org/eclipse/papyrus/robotics/ros2/codegen/python/ui/handlers/GenerateCodeHandler.java similarity index 91% rename from plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python/src/org/eclipse/papyrus/robotics/ros2/codegen/python/handlers/GenerateCodeHandler.java rename to plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python.ui/src/org/eclipse/papyrus/robotics/ros2/codegen/python/ui/handlers/GenerateCodeHandler.java index 8bf1639..2d7a6f3 100644 --- a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python/src/org/eclipse/papyrus/robotics/ros2/codegen/python/handlers/GenerateCodeHandler.java +++ b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python.ui/src/org/eclipse/papyrus/robotics/ros2/codegen/python/ui/handlers/GenerateCodeHandler.java
@@ -14,13 +14,13 @@ * *****************************************************************************/ -package org.eclipse.papyrus.robotics.ros2.codegen.python.handlers; +package org.eclipse.papyrus.robotics.ros2.codegen.python.ui.handlers; import org.eclipse.core.commands.ExecutionEvent; import org.eclipse.core.commands.ExecutionException; import org.eclipse.core.runtime.jobs.Job; import org.eclipse.jface.dialogs.MessageDialog; -import org.eclipse.papyrus.designer.transformation.base.utils.ProjectManagement; +import org.eclipse.papyrus.designer.infra.ui.UIProjectManagement; import org.eclipse.papyrus.designer.transformation.core.transformations.TransformationContext; import org.eclipse.papyrus.designer.transformation.profile.Transformation.ExecuteTrafoChain; import org.eclipse.papyrus.designer.uml.tools.utils.PackageUtil; @@ -43,7 +43,7 @@ Job job = new PythonGenJob( PackageUtil.getRootPackage((Classifier) selectedEObject), - ProjectManagement.getCurrentProject()); + UIProjectManagement.getCurrentProject()); job.setUser(true); job.schedule();
diff --git a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python/META-INF/MANIFEST.MF b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python/META-INF/MANIFEST.MF index 27c0429..675917c 100644 --- a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python/META-INF/MANIFEST.MF +++ b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python/META-INF/MANIFEST.MF
@@ -2,8 +2,7 @@ Export-Package: org.eclipse.papyrus.robotics.ros2.codegen.python, org.eclipse.papyrus.robotics.ros2.codegen.python.jobs, org.eclipse.papyrus.robotics.ros2.codegen.python.utils -Require-Bundle: org.eclipse.ui, - org.eclipse.papyrus.designer.transformation.core;bundle-version="0.7.0", +Require-Bundle: org.eclipse.papyrus.designer.transformation.core;bundle-version="0.7.0", org.eclipse.uml2.uml;bundle-version="4.0.0", org.eclipse.papyrus.infra.core.log;bundle-version="[1.2.0,3.0.0)", org.eclipse.core.resources, @@ -45,4 +44,4 @@ Bundle-ManifestVersion: 2 Bundle-SymbolicName: org.eclipse.papyrus.robotics.ros2.codegen.python;singleton:=true Bundle-RequiredExecutionEnvironment: JavaSE-11 -Automatic-Module-Name: org.eclipse.papyrus.robotics.transformation.ros.library +Automatic-Module-Name: org.eclipse.papyrus.robotics.ros2.codegen.python
diff --git a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python/src/org/eclipse/papyrus/robotics/ros2/codegen/python/Activator.java b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python/src/org/eclipse/papyrus/robotics/ros2/codegen/python/Activator.java index 329e11f..8ff9d63 100644 --- a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python/src/org/eclipse/papyrus/robotics/ros2/codegen/python/Activator.java +++ b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python/src/org/eclipse/papyrus/robotics/ros2/codegen/python/Activator.java
@@ -1,12 +1,12 @@ package org.eclipse.papyrus.robotics.ros2.codegen.python; -import org.eclipse.ui.plugin.AbstractUIPlugin; +import org.eclipse.core.runtime.Plugin; import org.osgi.framework.BundleContext; /** * The activator class controls the plug-in life cycle */ -public class Activator extends AbstractUIPlugin { +public class Activator extends Plugin { // The plug-in ID public static final String PLUGIN_ID = "org.eclipse.papyrus.robotics.ros2.codegen.python"; //$NON-NLS-1$
diff --git a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python/src/org/eclipse/papyrus/robotics/ros2/codegen/python/handlers/RewriteCDTHandler.java b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python/src/org/eclipse/papyrus/robotics/ros2/codegen/python/handlers/RewriteCDTHandler.java deleted file mode 100644 index 2616f91..0000000 --- a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen.python/src/org/eclipse/papyrus/robotics/ros2/codegen/python/handlers/RewriteCDTHandler.java +++ /dev/null
@@ -1,64 +0,0 @@ -/***************************************************************************** - * 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 2.0 - * which accompanies this distribution, and is available at - * https://www.eclipse.org/legal/epl-2.0/ - * - * SPDX-License-Identifier: EPL-2.0 - * - * Contributors: - * Ansgar Radermacher (CEA LIST) ansgar.radermacher@cea.fr - * - *****************************************************************************/ - -package org.eclipse.papyrus.robotics.ros2.codegen.python.handlers; - -import java.util.HashMap; -import java.util.Map; - -import org.eclipse.core.commands.ExecutionEvent; -import org.eclipse.core.commands.ExecutionException; -import org.eclipse.core.runtime.jobs.Job; -import org.eclipse.papyrus.designer.transformation.base.utils.ProjectManagement; -import org.eclipse.papyrus.designer.transformation.profile.Transformation.ExecuteTrafoChain; -import org.eclipse.papyrus.designer.uml.tools.utils.PackageUtil; -import org.eclipse.papyrus.robotics.ros2.codegen.common.RoboticsTContext; -import org.eclipse.papyrus.robotics.ros2.codegen.python.jobs.PythonGenJob; -import org.eclipse.papyrus.uml.diagram.common.handlers.CmdHandler; -import org.eclipse.uml2.uml.Classifier; - -public class RewriteCDTHandler extends CmdHandler { - - protected ExecuteTrafoChain chain; - - @Override - public Object execute(ExecutionEvent arg0) throws ExecutionException { - updateSelectedEObject(); - if (!(selectedEObject instanceof Classifier) || GenerateCodeHandler.isRunning()) { - return null; - } - - Job job = new PythonGenJob( - PackageUtil.getRootPackage((Classifier) selectedEObject), - ProjectManagement.getCurrentProject(), - new HashMap<String, Boolean>()); - - job.setUser(true); - job.schedule(); - return null; - } - - public static boolean rewriteProject(String projectName) { - Map<String, Boolean> rewriteMap = RoboticsTContext.current.rewriteMap; - if (rewriteMap != null) { - if (!rewriteMap.containsKey(projectName)) { - rewriteMap.put(projectName, true); - return true; - } - } - return false; - } -}
diff --git a/plugins/ros2/pom.xml b/plugins/ros2/pom.xml index b0c5910..7fe81bd 100644 --- a/plugins/ros2/pom.xml +++ b/plugins/ros2/pom.xml
@@ -18,7 +18,9 @@ <module>org.eclipse.papyrus.robotics.ros2.base</module> <module>org.eclipse.papyrus.robotics.ros2.codegen.common</module> <module>org.eclipse.papyrus.robotics.ros2.codegen.cpp</module> + <module>org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui</module> <module>org.eclipse.papyrus.robotics.ros2.codegen.python</module> + <module>org.eclipse.papyrus.robotics.ros2.codegen.python.ui</module> <module>org.eclipse.papyrus.robotics.ros2.launch</module> <module>org.eclipse.papyrus.robotics.ros2.codegen.tests</module> <module>org.eclipse.papyrus.robotics.ros2.preferences</module>
diff --git a/releng/org.eclipse.papyrus.robotics.configuration/pom.xml b/releng/org.eclipse.papyrus.robotics.configuration/pom.xml index 5a93c56..cfc7df1 100644 --- a/releng/org.eclipse.papyrus.robotics.configuration/pom.xml +++ b/releng/org.eclipse.papyrus.robotics.configuration/pom.xml
@@ -16,8 +16,8 @@ <component.rcp.name>org.eclipse.papyrus.robotics.rcp</component.rcp.name> <target.version>0.8.0-SNAPSHOT</target.version> - <tycho.version>2.7.2</tycho.version> - <tycho.extras.version>2.7.2</tycho.extras.version> + <tycho.version>2.7.5</tycho.version> + <tycho.extras.version>2.7.5</tycho.extras.version> <xtend.version>2.27.0</xtend.version> <!-- plugin versions -->
diff --git a/releng/org.eclipse.papyrus.robotics.ros2.feature/feature.xml b/releng/org.eclipse.papyrus.robotics.ros2.feature/feature.xml index 4264f08..d52565d 100644 --- a/releng/org.eclipse.papyrus.robotics.ros2.feature/feature.xml +++ b/releng/org.eclipse.papyrus.robotics.ros2.feature/feature.xml
@@ -110,4 +110,18 @@ version="0.0.0" unpack="false"/> + <plugin + id="org.eclipse.papyrus.robotics.ros2.codegen.cpp.ui" + download-size="0" + install-size="0" + version="0.0.0" + unpack="false"/> + + <plugin + id="org.eclipse.papyrus.robotics.ros2.codegen.python.ui" + download-size="0" + install-size="0" + version="0.0.0" + unpack="false"/> + </feature>