Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoraradermache2013-07-02 11:42:20 +0000
committeraradermache2013-07-02 11:42:20 +0000
commit07e9f00ae6d2df48361f64003468f50482b0d680 (patch)
treedd3528e43e1d867232693660a0b9950a013c2de9
parent678f45cef0636868b5d6728ad3d72f9924d4e9a7 (diff)
downloadorg.eclipse.papyrus-07e9f00ae6d2df48361f64003468f50482b0d680.tar.gz
org.eclipse.papyrus-07e9f00ae6d2df48361f64003468f50482b0d680.tar.xz
org.eclipse.papyrus-07e9f00ae6d2df48361f64003468f50482b0d680.zip
Change multiplicitly of base_xx attributes to 0..1 for stereotypes that extend multiple MM elements to avoid validation errors (only one of the base_xx is actually set)
-rw-r--r--extraplugins/codegen/org.eclipse.papyrus.cpp.profile/profiles/C_Cpp.ecore43
-rw-r--r--extraplugins/codegen/org.eclipse.papyrus.cpp.profile/profiles/C_Cpp.genmodel2
-rw-r--r--extraplugins/codegen/org.eclipse.papyrus.cpp.profile/profiles/C_Cpp.profile.notation86
-rw-r--r--extraplugins/codegen/org.eclipse.papyrus.cpp.profile/profiles/C_Cpp.profile.uml55
-rw-r--r--extraplugins/codegen/org.eclipse.papyrus.cpp.profile/src/org/eclipse/papyrus/C_Cpp/C_CppPackage.java58
-rw-r--r--extraplugins/codegen/org.eclipse.papyrus.cpp.profile/src/org/eclipse/papyrus/C_Cpp/Const.java6
-rw-r--r--extraplugins/codegen/org.eclipse.papyrus.cpp.profile/src/org/eclipse/papyrus/C_Cpp/ExternClass.java2
-rw-r--r--extraplugins/codegen/org.eclipse.papyrus.cpp.profile/src/org/eclipse/papyrus/C_Cpp/ExternLibrary.java5
-rw-r--r--extraplugins/codegen/org.eclipse.papyrus.cpp.profile/src/org/eclipse/papyrus/C_Cpp/Friend.java4
-rw-r--r--extraplugins/codegen/org.eclipse.papyrus.cpp.profile/src/org/eclipse/papyrus/C_Cpp/Include.java12
-rw-r--r--extraplugins/codegen/org.eclipse.papyrus.cpp.profile/src/org/eclipse/papyrus/C_Cpp/Ptr.java6
-rw-r--r--extraplugins/codegen/org.eclipse.papyrus.cpp.profile/src/org/eclipse/papyrus/C_Cpp/Ref.java4
-rw-r--r--extraplugins/codegen/org.eclipse.papyrus.cpp.profile/src/org/eclipse/papyrus/C_Cpp/StorageClass.java56
-rw-r--r--extraplugins/codegen/org.eclipse.papyrus.cpp.profile/src/org/eclipse/papyrus/C_Cpp/impl/C_CppPackageImpl.java58
-rw-r--r--extraplugins/codegen/org.eclipse.papyrus.cpp.profile/src/org/eclipse/papyrus/C_Cpp/impl/StorageClassImpl.java123
15 files changed, 446 insertions, 74 deletions
diff --git a/extraplugins/codegen/org.eclipse.papyrus.cpp.profile/profiles/C_Cpp.ecore b/extraplugins/codegen/org.eclipse.papyrus.cpp.profile/profiles/C_Cpp.ecore
index 96a7b15ee8c..60d7cbea2c0 100644
--- a/extraplugins/codegen/org.eclipse.papyrus.cpp.profile/profiles/C_Cpp.ecore
+++ b/extraplugins/codegen/org.eclipse.papyrus.cpp.profile/profiles/C_Cpp.ecore
@@ -6,31 +6,30 @@
<details key="documentation" value="&quot;declaration&quot; attribute should only be used, if more than one indirections of pointers (often &quot;**&quot;)"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="base_parameter" ordered="false"
- unique="false" lowerBound="1" eType="ecore:EClass platform:/plugin/org.eclipse.uml2.uml/model/UML.ecore#//Parameter"/>
+ unique="false" eType="ecore:EClass platform:/plugin/org.eclipse.uml2.uml/model/UML.ecore#//Parameter"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="base_property" ordered="false"
- unique="false" lowerBound="1" eType="ecore:EClass platform:/plugin/org.eclipse.uml2.uml/model/UML.ecore#//Property"/>
+ unique="false" eType="ecore:EClass platform:/plugin/org.eclipse.uml2.uml/model/UML.ecore#//Property"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="declaration" ordered="false"
- unique="false" lowerBound="1" eType="ecore:EDataType platform:/plugin/org.eclipse.uml2.types/model/Types.ecore#//String"/>
+ unique="false" eType="ecore:EDataType platform:/plugin/org.eclipse.uml2.types/model/Types.ecore#//String"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Include">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="An arbitrary string that is added to header and body file. Although primarily intended for manual include directives, it can be used for arbitrary definitions.&#xA;&quot;preBody&quot; is added to a C++ body file before automatic include statements, &quot;body&quot; after"/>
</eAnnotations>
- <eStructuralFeatures xsi:type="ecore:EAttribute" name="body" ordered="false" lowerBound="1"
- eType="ecore:EDataType platform:/plugin/org.eclipse.uml2.types/model/Types.ecore#//String"
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="body" ordered="false" eType="ecore:EDataType platform:/plugin/org.eclipse.uml2.types/model/Types.ecore#//String"
defaultValueLiteral=""/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="preBody" ordered="false"
- lowerBound="1" eType="ecore:EDataType platform:/plugin/org.eclipse.uml2.types/model/Types.ecore#//String"
+ eType="ecore:EDataType platform:/plugin/org.eclipse.uml2.types/model/Types.ecore#//String"
defaultValueLiteral=""/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="header" ordered="false"
- lowerBound="1" eType="ecore:EDataType platform:/plugin/org.eclipse.uml2.types/model/Types.ecore#//String"
+ eType="ecore:EDataType platform:/plugin/org.eclipse.uml2.types/model/Types.ecore#//String"
defaultValueLiteral=""/>
<eStructuralFeatures xsi:type="ecore:EReference" name="base_package" ordered="false"
- unique="false" lowerBound="1" eType="ecore:EClass platform:/plugin/org.eclipse.uml2.uml/model/UML.ecore#//Package"/>
+ unique="false" eType="ecore:EClass platform:/plugin/org.eclipse.uml2.uml/model/UML.ecore#//Package"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="base_class" ordered="false"
- unique="false" lowerBound="1" eType="ecore:EClass platform:/plugin/org.eclipse.uml2.uml/model/UML.ecore#//Class"/>
+ unique="false" eType="ecore:EClass platform:/plugin/org.eclipse.uml2.uml/model/UML.ecore#//Class"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="base_PackageImport" ordered="false"
- lowerBound="1" eType="ecore:EClass platform:/plugin/org.eclipse.uml2.uml/model/UML.ecore#//PackageImport"/>
+ eType="ecore:EClass platform:/plugin/org.eclipse.uml2.uml/model/UML.ecore#//PackageImport"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ManualGeneration">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -43,10 +42,10 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ExternLibrary">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
- <details key="documentation" value="Mark a package as External Library. If this package is used, the associated CDT project will be configured accordingly"/>
+ <details key="documentation" value="Mark a package as External Library. If this package is used, the associated CDT project will be configured accordingly.&#xA;The name is not required, since the UML name is used "/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name" ordered="false" unique="false"
- lowerBound="1" eType="ecore:EDataType platform:/plugin/org.eclipse.uml2.types/model/Types.ecore#//String"/>
+ eType="ecore:EDataType platform:/plugin/org.eclipse.uml2.types/model/Types.ecore#//String"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="base_package" ordered="false"
unique="false" lowerBound="1" eType="ecore:EClass platform:/plugin/org.eclipse.uml2.uml/model/UML.ecore#//Package"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="libPaths" ordered="false"
@@ -89,11 +88,11 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Const">
<eStructuralFeatures xsi:type="ecore:EReference" name="base_parameter" ordered="false"
- unique="false" lowerBound="1" eType="ecore:EClass platform:/plugin/org.eclipse.uml2.uml/model/UML.ecore#//Parameter"/>
+ unique="false" eType="ecore:EClass platform:/plugin/org.eclipse.uml2.uml/model/UML.ecore#//Parameter"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="base_property" ordered="false"
- unique="false" lowerBound="1" eType="ecore:EClass platform:/plugin/org.eclipse.uml2.uml/model/UML.ecore#//Property"/>
+ unique="false" eType="ecore:EClass platform:/plugin/org.eclipse.uml2.uml/model/UML.ecore#//Property"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="base_operation" ordered="false"
- unique="false" lowerBound="1" eType="ecore:EClass platform:/plugin/org.eclipse.uml2.uml/model/UML.ecore#//Operation"/>
+ unique="false" eType="ecore:EClass platform:/plugin/org.eclipse.uml2.uml/model/UML.ecore#//Operation"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Default">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="value" ordered="false"
@@ -105,13 +104,13 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Ref">
<eStructuralFeatures xsi:type="ecore:EReference" name="base_parameter" ordered="false"
- unique="false" lowerBound="1" eType="ecore:EClass platform:/plugin/org.eclipse.uml2.uml/model/UML.ecore#//Parameter"/>
+ unique="false" eType="ecore:EClass platform:/plugin/org.eclipse.uml2.uml/model/UML.ecore#//Parameter"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="base_property" ordered="false"
- unique="false" lowerBound="1" eType="ecore:EClass platform:/plugin/org.eclipse.uml2.uml/model/UML.ecore#//Property"/>
+ unique="false" eType="ecore:EClass platform:/plugin/org.eclipse.uml2.uml/model/UML.ecore#//Property"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ExternClass">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name" ordered="false" unique="false"
- lowerBound="1" eType="ecore:EDataType platform:/plugin/org.eclipse.uml2.types/model/Types.ecore#//String"/>
+ eType="ecore:EDataType platform:/plugin/org.eclipse.uml2.types/model/Types.ecore#//String"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="base_class" ordered="false"
unique="false" lowerBound="1" eType="ecore:EClass platform:/plugin/org.eclipse.uml2.uml/model/UML.ecore#//Class"/>
</eClassifiers>
@@ -123,9 +122,9 @@
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Friend">
<eStructuralFeatures xsi:type="ecore:EReference" name="base_dependency" ordered="false"
- unique="false" lowerBound="1" eType="ecore:EClass platform:/plugin/org.eclipse.uml2.uml/model/UML.ecore#//Dependency"/>
+ unique="false" eType="ecore:EClass platform:/plugin/org.eclipse.uml2.uml/model/UML.ecore#//Dependency"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="base_operation" ordered="false"
- unique="false" lowerBound="1" eType="ecore:EClass platform:/plugin/org.eclipse.uml2.uml/model/UML.ecore#//Operation"/>
+ unique="false" eType="ecore:EClass platform:/plugin/org.eclipse.uml2.uml/model/UML.ecore#//Operation"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Inline">
<eStructuralFeatures xsi:type="ecore:EReference" name="base_operation" ordered="false"
@@ -190,5 +189,9 @@
<eClassifiers xsi:type="ecore:EClass" name="StorageClass">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="storageClass" ordered="false"
unique="false" lowerBound="1" eType="#//EStorageClass"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="base_Parameter" ordered="false"
+ eType="ecore:EClass platform:/plugin/org.eclipse.uml2.uml/model/UML.ecore#//Parameter"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="base_Property" ordered="false"
+ eType="ecore:EClass platform:/plugin/org.eclipse.uml2.uml/model/UML.ecore#//Property"/>
</eClassifiers>
</ecore:EPackage>
diff --git a/extraplugins/codegen/org.eclipse.papyrus.cpp.profile/profiles/C_Cpp.genmodel b/extraplugins/codegen/org.eclipse.papyrus.cpp.profile/profiles/C_Cpp.genmodel
index c24691fedc2..0422360662b 100644
--- a/extraplugins/codegen/org.eclipse.papyrus.cpp.profile/profiles/C_Cpp.genmodel
+++ b/extraplugins/codegen/org.eclipse.papyrus.cpp.profile/profiles/C_Cpp.genmodel
@@ -121,6 +121,8 @@
</genClasses>
<genClasses ecoreClass="C_Cpp.ecore#//StorageClass">
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute C_Cpp.ecore#//StorageClass/storageClass"/>
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference C_Cpp.ecore#//StorageClass/base_Parameter"/>
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference C_Cpp.ecore#//StorageClass/base_Property"/>
</genClasses>
</genPackages>
</genmodel:GenModel>
diff --git a/extraplugins/codegen/org.eclipse.papyrus.cpp.profile/profiles/C_Cpp.profile.notation b/extraplugins/codegen/org.eclipse.papyrus.cpp.profile/profiles/C_Cpp.profile.notation
index 6e1e462e700..c8cc2dbcfcd 100644
--- a/extraplugins/codegen/org.eclipse.papyrus.cpp.profile/profiles/C_Cpp.profile.notation
+++ b/extraplugins/codegen/org.eclipse.papyrus.cpp.profile/profiles/C_Cpp.profile.notation
@@ -502,21 +502,21 @@
<children xmi:type="notation:BasicCompartment" xmi:id="_XJGy58oSEeGKstsYRuxdvw" type="1071">
<children xmi:type="notation:Shape" xmi:id="_lyQz0P2HEeGbWP4cpLE0gg" type="3002" fontName="Sans Serif" lineColor="0">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_fIJAoI1PEeKTUILNxKtfZw" source="CustomAppearance_Annotation">
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_i0dhYI1PEeKTUILNxKtfZw" key="CustomAppearance_MaskValue" value="28"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_Bjo_IOL9EeKxe91u-BdTVQ" key="CustomAppearance_MaskValue" value="60"/>
</eAnnotations>
<element xmi:type="uml:Property" href="C_Cpp.profile.uml#_XU2q8ByJEduN1bTiWJ0lyw"/>
<layoutConstraint xmi:type="notation:Location" xmi:id="_lyQz0f2HEeGbWP4cpLE0gg"/>
</children>
<children xmi:type="notation:Shape" xmi:id="_lyRa4P2HEeGbWP4cpLE0gg" type="3002" fontName="Sans Serif" lineColor="0">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_fIJnsI1PEeKTUILNxKtfZw" source="CustomAppearance_Annotation">
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_i0dhYY1PEeKTUILNxKtfZw" key="CustomAppearance_MaskValue" value="28"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_BHIpUOL9EeKxe91u-BdTVQ" key="CustomAppearance_MaskValue" value="60"/>
</eAnnotations>
<element xmi:type="uml:Property" href="C_Cpp.profile.uml#_YtvwgByJEduN1bTiWJ0lyw"/>
<layoutConstraint xmi:type="notation:Location" xmi:id="_lyRa4f2HEeGbWP4cpLE0gg"/>
</children>
<children xmi:type="notation:Shape" xmi:id="_r9p_EP2HEeGbWP4cpLE0gg" type="3002" fontName="Sans Serif" lineColor="0">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_fIKOwI1PEeKTUILNxKtfZw" source="CustomAppearance_Annotation">
- <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_i0eIcI1PEeKTUILNxKtfZw" key="CustomAppearance_MaskValue" value="28"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_Aey28OL9EeKxe91u-BdTVQ" key="CustomAppearance_MaskValue" value="60"/>
</eAnnotations>
<element xmi:type="uml:Property" href="C_Cpp.profile.uml#_r9C7EP2HEeGbWP4cpLE0gg"/>
<layoutConstraint xmi:type="notation:Location" xmi:id="_r9p_Ef2HEeGbWP4cpLE0gg"/>
@@ -533,7 +533,7 @@
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_XJHZ9coSEeGKstsYRuxdvw"/>
</children>
<element xmi:type="uml:Stereotype" href="C_Cpp.profile.uml#_RwTdQByJEduN1bTiWJ0lyw"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XJFkwcoSEeGKstsYRuxdvw" x="414" y="135" width="118" height="100"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XJFkwcoSEeGKstsYRuxdvw" x="396" y="135" width="154" height="100"/>
</children>
<children xmi:type="notation:Shape" xmi:id="_XzsA8MoSEeGKstsYRuxdvw" type="1031" fontName="Sans Serif" lineColor="0">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_XzsoAMoSEeGKstsYRuxdvw" source="ShadowFigure">
@@ -663,6 +663,9 @@
<children xmi:type="notation:DecorationNode" xmi:id="_l90kZsoSEeGKstsYRuxdvw" type="1034"/>
<children xmi:type="notation:BasicCompartment" xmi:id="_l90kZ8oSEeGKstsYRuxdvw" type="1071">
<children xmi:type="notation:Shape" xmi:id="_a1VvoNTVEeKiLbHSN_MIRQ" type="3002" fontName="Sans Serif" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_kVi0oOL5EeK7avO_9XJm4Q" source="CustomAppearance_Annotation">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_kmNG0OL5EeK7avO_9XJm4Q" key="CustomAppearance_MaskValue" value="28"/>
+ </eAnnotations>
<element xmi:type="uml:Property" href="C_Cpp.profile.uml#_UiU48ByJEduN1bTiWJ0lyw"/>
<layoutConstraint xmi:type="notation:Location" xmi:id="_a1VvodTVEeKiLbHSN_MIRQ"/>
</children>
@@ -678,7 +681,7 @@
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_l90kcMoSEeGKstsYRuxdvw"/>
</children>
<element xmi:type="uml:Stereotype" href="C_Cpp.profile.uml#_MyI6IByJEduN1bTiWJ0lyw"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_l9z9UcoSEeGKstsYRuxdvw" x="9" y="441" width="118" height="91"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_l9z9UcoSEeGKstsYRuxdvw" x="9" y="441" width="127" height="91"/>
</children>
<children xmi:type="notation:Shape" xmi:id="_nxrusMoSEeGKstsYRuxdvw" type="1026" fontName="Sans Serif" lineColor="0">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_nxrussoSEeGKstsYRuxdvw" source="ShadowFigure">
@@ -720,6 +723,13 @@
<element xmi:type="uml:Property" href="C_Cpp.profile.uml#_NkWpcNTPEeKiLbHSN_MIRQ"/>
<layoutConstraint xmi:type="notation:Location" xmi:id="_NkcwEdTPEeKiLbHSN_MIRQ"/>
</children>
+ <children xmi:type="notation:Shape" xmi:id="_tu_I4OL8EeKxe91u-BdTVQ" type="3002" fontName="Sans Serif" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_wDLZEOL8EeKxe91u-BdTVQ" source="CustomAppearance_Annotation">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_xH6zkOL8EeKxe91u-BdTVQ" key="CustomAppearance_MaskValue" value="60"/>
+ </eAnnotations>
+ <element xmi:type="uml:Property" href="C_Cpp.profile.uml#_WFVj0ByJEduN1bTiWJ0lyw"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_tu_I4eL8EeKxe91u-BdTVQ" x="42" y="9"/>
+ </children>
<styles xmi:type="notation:TitleStyle" xmi:id="_nxsVxsoSEeGKstsYRuxdvw"/>
<styles xmi:type="notation:SortingStyle" xmi:id="_nxsVx8oSEeGKstsYRuxdvw"/>
<styles xmi:type="notation:FilteringStyle" xmi:id="_nxsVyMoSEeGKstsYRuxdvw"/>
@@ -732,7 +742,7 @@
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_nxsVzsoSEeGKstsYRuxdvw"/>
</children>
<element xmi:type="uml:Stereotype" href="C_Cpp.profile.uml#_PmXVQByJEduN1bTiWJ0lyw"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_nxruscoSEeGKstsYRuxdvw" x="189" y="135" width="145" height="100"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_nxruscoSEeGKstsYRuxdvw" x="189" y="135" width="145" height="109"/>
</children>
<children xmi:type="notation:Shape" xmi:id="_1pPUYMoSEeGKstsYRuxdvw" type="1031" fontName="Sans Serif" lineColor="0">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_1pP7cMoSEeGKstsYRuxdvw" source="ShadowFigure">
@@ -865,7 +875,7 @@
<element xmi:type="uml:Extension" href="C_Cpp.profile.uml#_0It34ByJEduN1bTiWJ0lyw"/>
<bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_X0EbcsoSEeGKstsYRuxdvw" points="[-46, -50, 121, 132]$[-167, -182, 0, 0]"/>
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_gI27UP2HEeGbWP4cpLE0gg" id="(0.1440677966101695,0.03)"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_cr3QAP2HEeGbWP4cpLE0gg" id="(0.9467849223946785,0.9)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_cr3QAP2HEeGbWP4cpLE0gg" id="(0.9157427937915743,0.82)"/>
</edges>
<edges xmi:type="notation:Connector" xmi:id="_YSPlMMoSEeGKstsYRuxdvw" type="1013" source="_XJFkwMoSEeGKstsYRuxdvw" target="_YR4Y0MoSEeGKstsYRuxdvw" lineColor="0">
<styles xmi:type="notation:FontStyle" xmi:id="_YSPlMcoSEeGKstsYRuxdvw" fontName="Sans Serif"/>
@@ -899,7 +909,7 @@
<element xmi:type="uml:Extension" href="C_Cpp.profile.uml#_kJ7RsDlPEd2mO4M0idYmag"/>
<bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_1pmgwsoSEeGKstsYRuxdvw" points="[-46, -50, 121, 132]$[-167, -182, 0, 0]"/>
<sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__qrHYNTPEeKiLbHSN_MIRQ" id="(0.8728813559322034,0.04)"/>
- <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__XtvINTPEeKiLbHSN_MIRQ" id="(0.24770642201834864,0.66)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__XtvINTPEeKiLbHSN_MIRQ" id="(0.3486238532110092,0.94)"/>
</edges>
<edges xmi:type="notation:Connector" xmi:id="_JO6vIP2HEeGbWP4cpLE0gg" type="1013" source="_Z1AYcMoSEeGKstsYRuxdvw" target="_XzsA8MoSEeGKstsYRuxdvw" lineColor="0">
<styles xmi:type="notation:FontStyle" xmi:id="_JO6vIf2HEeGbWP4cpLE0gg" fontName="Sans Serif"/>
@@ -1185,7 +1195,7 @@
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_ccgbZpVTEeKBzP_954cAAA"/>
</children>
<element xmi:type="uml:Enumeration" href="C_Cpp.profile.uml#_YVBzYJMIEeKrb5fnA81_2Q"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ccdYEZVTEeKBzP_954cAAA" x="135" y="180" width="109"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ccdYEZVTEeKBzP_954cAAA" x="135" y="72" width="109"/>
</children>
<children xmi:type="notation:Shape" xmi:id="_c-ZAcJVTEeKBzP_954cAAA" type="1026" fontName="Sans Serif" lineColor="0">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_c-ZngJVTEeKBzP_954cAAA" source="ShadowFigure">
@@ -1218,7 +1228,7 @@
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_c-a1opVTEeKBzP_954cAAA"/>
</children>
<element xmi:type="uml:Stereotype" href="C_Cpp.profile.uml#_U3BNgJVPEeKCE6_KfOehJw"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_c-ZAcZVTEeKBzP_954cAAA" x="336" y="184" width="214" height="105"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_c-ZAcZVTEeKBzP_954cAAA" x="336" y="184" width="241" height="105"/>
</children>
<children xmi:type="notation:Shape" xmi:id="_deomwJVTEeKBzP_954cAAA" type="2006" fontName="Sans Serif" lineColor="0">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_deomwpVTEeKBzP_954cAAA" source="ShadowFigure">
@@ -1250,9 +1260,63 @@
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_depN2pVTEeKBzP_954cAAA"/>
</children>
<element xmi:type="uml:Enumeration" href="C_Cpp.profile.uml#_yOu8UJMIEeKrb5fnA81_2Q"/>
- <layoutConstraint xmi:type="notation:Bounds" xmi:id="_deomwZVTEeKBzP_954cAAA" x="135" y="324" width="109"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_deomwZVTEeKBzP_954cAAA" x="135" y="216" width="109"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_TsW4AOL9EeKxe91u-BdTVQ" type="1031" fontName="Sans Serif" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_TsYGIOL9EeKxe91u-BdTVQ" source="ShadowFigure">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_TsYGIeL9EeKxe91u-BdTVQ" key="ShadowFigure_Value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_TsYGIuL9EeKxe91u-BdTVQ" source="displayNameLabelIcon">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_TsYGI-L9EeKxe91u-BdTVQ" key="displayNameLabelIcon_value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_TsYGJOL9EeKxe91u-BdTVQ" source="QualifiedName">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_TsYGJeL9EeKxe91u-BdTVQ" key="QualifiedNameDepth" value="1000"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_TsZUQOL9EeKxe91u-BdTVQ" source="Stereotype_Annotation">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_TsZUQeL9EeKxe91u-BdTVQ" key="StereotypeWithQualifiedNameList" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_TsZUQuL9EeKxe91u-BdTVQ" key="StereotypeList" value="StandardProfileL2::Metaclass"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_TsZUQ-L9EeKxe91u-BdTVQ" key="Stereotype_Presentation_Kind" value="HorizontalStereo"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_TsZUROL9EeKxe91u-BdTVQ" key="PropStereoDisplay" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_TsZUReL9EeKxe91u-BdTVQ" key="StereotypePropertyLocation" value="Compartment"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_TsYGJuL9EeKxe91u-BdTVQ" type="1084"/>
+ <element xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Parameter"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_TsYtMOL9EeKxe91u-BdTVQ" x="334" y="68"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_ZMcccOL9EeKxe91u-BdTVQ" type="1031" fontName="Sans Serif" lineColor="0">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_ZMdDgOL9EeKxe91u-BdTVQ" source="ShadowFigure">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_ZMdDgeL9EeKxe91u-BdTVQ" key="ShadowFigure_Value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_ZMdDguL9EeKxe91u-BdTVQ" source="displayNameLabelIcon">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_ZMdDg-L9EeKxe91u-BdTVQ" key="displayNameLabelIcon_value" value="false"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_ZMdDhOL9EeKxe91u-BdTVQ" source="QualifiedName">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_ZMdDheL9EeKxe91u-BdTVQ" key="QualifiedNameDepth" value="1000"/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_ZMdqkOL9EeKxe91u-BdTVQ" source="Stereotype_Annotation">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_ZMdqkeL9EeKxe91u-BdTVQ" key="StereotypeWithQualifiedNameList" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_ZMdqkuL9EeKxe91u-BdTVQ" key="StereotypeList" value="StandardProfileL2::Metaclass"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_ZMdqk-L9EeKxe91u-BdTVQ" key="Stereotype_Presentation_Kind" value="HorizontalStereo"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_ZMdqlOL9EeKxe91u-BdTVQ" key="PropStereoDisplay" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_ZMdqleL9EeKxe91u-BdTVQ" key="StereotypePropertyLocation" value="Compartment"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_ZMdDhuL9EeKxe91u-BdTVQ" type="1084"/>
+ <element xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Property"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ZMdDh-L9EeKxe91u-BdTVQ" x="479" y="70"/>
</children>
<styles xmi:type="notation:DiagramStyle" xmi:id="_br8hIZVTEeKBzP_954cAAA"/>
<element xmi:type="uml:Profile" href="C_Cpp.profile.uml#_j9REUByGEduN1bTiWJ0lyw"/>
+ <edges xmi:type="notation:Connector" xmi:id="_bvVP8OL9EeKxe91u-BdTVQ" type="1013" source="_c-ZAcJVTEeKBzP_954cAAA" target="_TsW4AOL9EeKxe91u-BdTVQ" lineColor="0">
+ <styles xmi:type="notation:FontStyle" xmi:id="_bvVP8eL9EeKxe91u-BdTVQ" fontName="Sans Serif"/>
+ <element xmi:type="uml:Extension" href="C_Cpp.profile.uml#_bvC8EOL9EeKxe91u-BdTVQ"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_bvVP8uL9EeKxe91u-BdTVQ" points="[-8, -5, 0, 91]$[-8, -121, 0, -25]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_bvaIcOL9EeKxe91u-BdTVQ" id="(0.23236514522821577,0.047619047619047616)"/>
+ </edges>
+ <edges xmi:type="notation:Connector" xmi:id="_cKor4OL9EeKxe91u-BdTVQ" type="1013" source="_c-ZAcJVTEeKBzP_954cAAA" target="_ZMcccOL9EeKxe91u-BdTVQ" lineColor="0">
+ <styles xmi:type="notation:FontStyle" xmi:id="_cKor4eL9EeKxe91u-BdTVQ" fontName="Sans Serif"/>
+ <element xmi:type="uml:Extension" href="C_Cpp.profile.uml#_cKgwEOL9EeKxe91u-BdTVQ"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_cKor4uL9EeKxe91u-BdTVQ" points="[-2, -3, -1, 89]$[-2, -67, -1, 25]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_cKrvMOL9EeKxe91u-BdTVQ" id="(0.8049792531120332,0.02857142857142857)"/>
+ </edges>
</notation:Diagram>
</xmi:XMI>
diff --git a/extraplugins/codegen/org.eclipse.papyrus.cpp.profile/profiles/C_Cpp.profile.uml b/extraplugins/codegen/org.eclipse.papyrus.cpp.profile/profiles/C_Cpp.profile.uml
index 8d7497d9f33..3525f13c38d 100644
--- a/extraplugins/codegen/org.eclipse.papyrus.cpp.profile/profiles/C_Cpp.profile.uml
+++ b/extraplugins/codegen/org.eclipse.papyrus.cpp.profile/profiles/C_Cpp.profile.uml
@@ -12,7 +12,8 @@
<body>Some toolkits require a quite particular way of use. For instance, LTTng requires the use of C (not C++) for the declaration of a trace provider and the header file is read several time with redefined macros. Therefore, the code generator supports a &quot;manual&quot; generation mode, in which primarily the contents of the CppInclude directive is written.</body>
</ownedComment>
<ownedComment xmi:type="uml:Comment" xmi:id="_w-x6sNTPEeKiLbHSN_MIRQ" annotatedElement="_PmXVQByJEduN1bTiWJ0lyw">
- <body>Mark a package as External Library. If this package is used, the associated CDT project will be configured accordingly</body>
+ <body>Mark a package as External Library. If this package is used, the associated CDT project will be configured accordingly.
+The name is not required, since the UML name is used </body>
</ownedComment>
<ownedComment xmi:type="uml:Comment" xmi:id="_LBAtgNTQEeKiLbHSN_MIRQ" annotatedElement="_IHjS8ByMEdu0tMSz-ceC5A">
<body>No codegeneration should be done for this element</body>
@@ -96,12 +97,18 @@
<packagedElement xmi:type="uml:Stereotype" xmi:id="_l2faUByHEduN1bTiWJ0lyw" name="Const">
<ownedAttribute xmi:type="uml:Property" xmi:id="_q3qOIByHEduN1bTiWJ0lyw" name="base_parameter" isUnique="false" association="_q3wUwByHEduN1bTiWJ0lyw">
<type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Parameter"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_D7WaMOL5EeK7avO_9XJm4Q"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_D7dH4OL5EeK7avO_9XJm4Q" value="1"/>
</ownedAttribute>
<ownedAttribute xmi:type="uml:Property" xmi:id="_kJX7wByIEduN1bTiWJ0lyw" name="base_property" isUnique="false" association="_kJ5gMByIEduN1bTiWJ0lyw">
<type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Property"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_I03G0OL5EeK7avO_9XJm4Q"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_I0-bkOL5EeK7avO_9XJm4Q" value="1"/>
</ownedAttribute>
<ownedAttribute xmi:type="uml:Property" xmi:id="_ThDh0ByMEdu0tMSz-ceC5A" name="base_operation" isUnique="false" association="_ThSyYByMEdu0tMSz-ceC5A">
<type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Operation"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_L-zTQOL5EeK7avO_9XJm4Q"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_L-6oAOL5EeK7avO_9XJm4Q" value="1"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Extension" xmi:id="_q3wUwByHEduN1bTiWJ0lyw" name="E_Const_Parameter1" memberEnd="_q3qOIByHEduN1bTiWJ0lyw _q3wUwRyHEduN1bTiWJ0lyw">
@@ -124,22 +131,30 @@
<packagedElement xmi:type="uml:Stereotype" xmi:id="_19ZzgByHEduN1bTiWJ0lyw" name="Ptr">
<ownedAttribute xmi:type="uml:Property" xmi:id="_VbvCoByIEduN1bTiWJ0lyw" name="base_parameter" isUnique="false" association="_Vb-6QByIEduN1bTiWJ0lyw">
<type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Parameter"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_5qhDkOL4EeK7avO_9XJm4Q"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_5qrboOL4EeK7avO_9XJm4Q" value="1"/>
</ownedAttribute>
<ownedAttribute xmi:type="uml:Property" xmi:id="_lylVQByIEduN1bTiWJ0lyw" name="base_property" isUnique="false" association="_lzRRwByIEduN1bTiWJ0lyw">
<type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Property"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_9dMD8OL4EeK7avO_9XJm4Q"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_9dbUgOL4EeK7avO_9XJm4Q" value="1"/>
</ownedAttribute>
<ownedAttribute xmi:type="uml:Property" xmi:id="_5xNQUNY8EeGH9LIP6-_nLw" name="declaration" visibility="public" isUnique="false">
<type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_9QCHoNY8EeGH9LIP6-_nLw" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_9QCHoNY8EeGH9LIP6-_nLw"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_9QFK8NY8EeGH9LIP6-_nLw" value="1"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Stereotype" xmi:id="_2VwCEByHEduN1bTiWJ0lyw" name="Ref">
<ownedAttribute xmi:type="uml:Property" xmi:id="_V-XOkByIEduN1bTiWJ0lyw" name="base_parameter" isUnique="false" association="_V-ysYByIEduN1bTiWJ0lyw">
<type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Parameter"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="__nXcgOL4EeK7avO_9XJm4Q"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="__nfYUOL4EeK7avO_9XJm4Q" value="1"/>
</ownedAttribute>
<ownedAttribute xmi:type="uml:Property" xmi:id="_mbfIUByIEduN1bTiWJ0lyw" name="base_property" isUnique="false" association="_mb27wByIEduN1bTiWJ0lyw">
<type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Property"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_BOSXAOL5EeK7avO_9XJm4Q"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_BOaS0OL5EeK7avO_9XJm4Q" value="1"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Extension" xmi:id="_Vb-6QByIEduN1bTiWJ0lyw" name="E_Ptr_Parameter1" memberEnd="_VbvCoByIEduN1bTiWJ0lyw _Vb-6QRyIEduN1bTiWJ0lyw">
@@ -166,6 +181,8 @@
<packagedElement xmi:type="uml:Stereotype" xmi:id="_MyI6IByJEduN1bTiWJ0lyw" name="ExternClass">
<ownedAttribute xmi:type="uml:Property" xmi:id="_UiU48ByJEduN1bTiWJ0lyw" name="name" isUnique="false">
<type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Ho9-oOL9EeKxe91u-BdTVQ"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_HpF6cOL9EeKxe91u-BdTVQ" value="1"/>
</ownedAttribute>
<ownedAttribute xmi:type="uml:Property" xmi:id="_05Yf0ByJEduN1bTiWJ0lyw" name="base_class" isUnique="false" association="_05nJUByJEduN1bTiWJ0lyw">
<type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Class"/>
@@ -174,6 +191,8 @@
<packagedElement xmi:type="uml:Stereotype" xmi:id="_PmXVQByJEduN1bTiWJ0lyw" name="ExternLibrary">
<ownedAttribute xmi:type="uml:Property" xmi:id="_WFVj0ByJEduN1bTiWJ0lyw" name="name" isUnique="false">
<type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_x4IIgOL8EeKxe91u-BdTVQ"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_x4hxIOL8EeKxe91u-BdTVQ" value="1"/>
</ownedAttribute>
<ownedAttribute xmi:type="uml:Property" xmi:id="_zqayUByJEduN1bTiWJ0lyw" name="base_package" isUnique="false" association="_zqqC4ByJEduN1bTiWJ0lyw">
<type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Package"/>
@@ -214,30 +233,36 @@
<packagedElement xmi:type="uml:Stereotype" xmi:id="_RwTdQByJEduN1bTiWJ0lyw" name="Include">
<ownedAttribute xmi:type="uml:Property" xmi:id="_XU2q8ByJEduN1bTiWJ0lyw" name="body" visibility="public">
<type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_XhvLMBybEdudA-H9lQdiWg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_XhvLMBybEdudA-H9lQdiWg"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_XiD7UBybEdudA-H9lQdiWg" value="1"/>
<defaultValue xmi:type="uml:LiteralString" xmi:id="_RyRCMBBXEdyoOLr5UzE5gA" value=""/>
</ownedAttribute>
<ownedAttribute xmi:type="uml:Property" xmi:id="_r9C7EP2HEeGbWP4cpLE0gg" name="preBody" visibility="public">
<type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_siaR8P2HEeGbWP4cpLE0gg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_siaR8P2HEeGbWP4cpLE0gg"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_sia5AP2HEeGbWP4cpLE0gg" value="1"/>
<defaultValue xmi:type="uml:LiteralString" xmi:id="_5Ewt4JVWEeKvxuXeCtLm5w" name="" value=""/>
</ownedAttribute>
<ownedAttribute xmi:type="uml:Property" xmi:id="_YtvwgByJEduN1bTiWJ0lyw" name="header" visibility="public">
<type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
- <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_dbl6gBybEdudA-H9lQdiWg" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_dbl6gBybEdudA-H9lQdiWg"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_dbnIoBybEdudA-H9lQdiWg" value="1"/>
<defaultValue xmi:type="uml:LiteralString" xmi:id="_RT5rMBBXEdyoOLr5UzE5gA" value=""/>
</ownedAttribute>
<ownedAttribute xmi:type="uml:Property" xmi:id="_0IP90ByJEduN1bTiWJ0lyw" name="base_package" isUnique="false" association="_0It34ByJEduN1bTiWJ0lyw">
<type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Package"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_eMPUEOL5EeK7avO_9XJm4Q"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_eMekoOL5EeK7avO_9XJm4Q" value="1"/>
</ownedAttribute>
<ownedAttribute xmi:type="uml:Property" xmi:id="_0ja24ByJEduN1bTiWJ0lyw" name="base_class" isUnique="false" association="_0jpgYByJEduN1bTiWJ0lyw">
<type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Class"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fSqJkOL5EeK7avO_9XJm4Q"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_fSw3QOL5EeK7avO_9XJm4Q" value="1"/>
</ownedAttribute>
<ownedAttribute xmi:type="uml:Property" xmi:id="_kKB_YTlPEd2mO4M0idYmag" name="base_PackageImport" association="_kJ7RsDlPEd2mO4M0idYmag">
<type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#PackageImport"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_gANMEOL5EeK7avO_9XJm4Q"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_gAb1kOL5EeK7avO_9XJm4Q" value="1"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Extension" xmi:id="_zqqC4ByJEduN1bTiWJ0lyw" name="E_ExternLibrary_Package1" memberEnd="_zqayUByJEduN1bTiWJ0lyw _zqqC4RyJEduN1bTiWJ0lyw">
@@ -285,9 +310,13 @@
<packagedElement xmi:type="uml:Stereotype" xmi:id="_e6bN0ByMEdu0tMSz-ceC5A" name="Friend">
<ownedAttribute xmi:type="uml:Property" xmi:id="_gvjjcByMEdu0tMSz-ceC5A" name="base_dependency" isUnique="false" association="_gvyM8ByMEdu0tMSz-ceC5A">
<type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Dependency"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_WZnFQOL5EeK7avO_9XJm4Q"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_WZ1uwOL5EeK7avO_9XJm4Q" value="1"/>
</ownedAttribute>
<ownedAttribute xmi:type="uml:Property" xmi:id="_hPAfkByMEdu0tMSz-ceC5A" name="base_operation" isUnique="false" association="_hPPwIByMEdu0tMSz-ceC5A">
<type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Operation"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_XZ6EoOL5EeK7avO_9XJm4Q"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_XaHgAOL5EeK7avO_9XJm4Q" value="1"/>
</ownedAttribute>
</packagedElement>
<packagedElement xmi:type="uml:Extension" xmi:id="_gvyM8ByMEdu0tMSz-ceC5A" name="E_Friend_Dependency1" memberEnd="_gvjjcByMEdu0tMSz-ceC5A _gvyM8RyMEdu0tMSz-ceC5A">
@@ -428,6 +457,22 @@
<value xsi:nil="true"/>
</defaultValue>
</ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_bu81cOL9EeKxe91u-BdTVQ" name="base_Parameter" association="_bvC8EOL9EeKxe91u-BdTVQ">
+ <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Parameter"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_d4yPwOL9EeKxe91u-BdTVQ"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_d4918OL9EeKxe91u-BdTVQ" value="1"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_cKdswOL9EeKxe91u-BdTVQ" name="base_Property" association="_cKgwEOL9EeKxe91u-BdTVQ">
+ <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Property"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_esvcQOL9EeKxe91u-BdTVQ"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_es2J8OL9EeKxe91u-BdTVQ" value="1"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Extension" xmi:id="_bvC8EOL9EeKxe91u-BdTVQ" name="E_StorageClass_Parameter1" memberEnd="_bvC8EeL9EeKxe91u-BdTVQ _bu81cOL9EeKxe91u-BdTVQ">
+ <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_bvC8EeL9EeKxe91u-BdTVQ" name="extension_StorageClass" type="_U3BNgJVPEeKCE6_KfOehJw" aggregation="composite" association="_bvC8EOL9EeKxe91u-BdTVQ"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Extension" xmi:id="_cKgwEOL9EeKxe91u-BdTVQ" name="E_StorageClass_Property1" memberEnd="_cKgwEeL9EeKxe91u-BdTVQ _cKdswOL9EeKxe91u-BdTVQ">
+ <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_cKgwEeL9EeKxe91u-BdTVQ" name="extension_StorageClass" type="_U3BNgJVPEeKCE6_KfOehJw" aggregation="composite" association="_cKgwEOL9EeKxe91u-BdTVQ"/>
</packagedElement>
<profileApplication xmi:type="uml:ProfileApplication" xmi:id="_QS19UMogEeGKstsYRuxdvw">
<eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_QUmQ0MogEeGKstsYRuxdvw" source="http://www.eclipse.org/uml2/2.0.0/UML">
diff --git a/extraplugins/codegen/org.eclipse.papyrus.cpp.profile/src/org/eclipse/papyrus/C_Cpp/C_CppPackage.java b/extraplugins/codegen/org.eclipse.papyrus.cpp.profile/src/org/eclipse/papyrus/C_Cpp/C_CppPackage.java
index 9c11e2a50c8..b5e95a2a150 100644
--- a/extraplugins/codegen/org.eclipse.papyrus.cpp.profile/src/org/eclipse/papyrus/C_Cpp/C_CppPackage.java
+++ b/extraplugins/codegen/org.eclipse.papyrus.cpp.profile/src/org/eclipse/papyrus/C_Cpp/C_CppPackage.java
@@ -962,13 +962,31 @@ public interface C_CppPackage extends EPackage {
int STORAGE_CLASS__STORAGE_CLASS = 0;
/**
+ * The feature id for the '<em><b>Base Parameter</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STORAGE_CLASS__BASE_PARAMETER = 1;
+
+ /**
+ * The feature id for the '<em><b>Base Property</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int STORAGE_CLASS__BASE_PROPERTY = 2;
+
+ /**
* The number of structural features of the '<em>Storage Class</em>' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
- int STORAGE_CLASS_FEATURE_COUNT = 1;
+ int STORAGE_CLASS_FEATURE_COUNT = 3;
/**
* The meta object id for the '{@link org.eclipse.papyrus.C_Cpp.VisibilityKind <em>Visibility Kind</em>}' enum.
@@ -1815,6 +1833,28 @@ public interface C_CppPackage extends EPackage {
EAttribute getStorageClass_StorageClass();
/**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.C_Cpp.StorageClass#getBase_Parameter <em>Base Parameter</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Parameter</em>'.
+ * @see org.eclipse.papyrus.C_Cpp.StorageClass#getBase_Parameter()
+ * @see #getStorageClass()
+ * @generated
+ */
+ EReference getStorageClass_Base_Parameter();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.C_Cpp.StorageClass#getBase_Property <em>Base Property</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Base Property</em>'.
+ * @see org.eclipse.papyrus.C_Cpp.StorageClass#getBase_Property()
+ * @see #getStorageClass()
+ * @generated
+ */
+ EReference getStorageClass_Base_Property();
+
+ /**
* Returns the meta object for enum '{@link org.eclipse.papyrus.C_Cpp.VisibilityKind <em>Visibility Kind</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -2521,6 +2561,22 @@ public interface C_CppPackage extends EPackage {
EAttribute STORAGE_CLASS__STORAGE_CLASS = eINSTANCE.getStorageClass_StorageClass();
/**
+ * The meta object literal for the '<em><b>Base Parameter</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference STORAGE_CLASS__BASE_PARAMETER = eINSTANCE.getStorageClass_Base_Parameter();
+
+ /**
+ * The meta object literal for the '<em><b>Base Property</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference STORAGE_CLASS__BASE_PROPERTY = eINSTANCE.getStorageClass_Base_Property();
+
+ /**
* The meta object literal for the '{@link org.eclipse.papyrus.C_Cpp.VisibilityKind <em>Visibility Kind</em>}' enum.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
diff --git a/extraplugins/codegen/org.eclipse.papyrus.cpp.profile/src/org/eclipse/papyrus/C_Cpp/Const.java b/extraplugins/codegen/org.eclipse.papyrus.cpp.profile/src/org/eclipse/papyrus/C_Cpp/Const.java
index bf0688c4103..37ee8288e48 100644
--- a/extraplugins/codegen/org.eclipse.papyrus.cpp.profile/src/org/eclipse/papyrus/C_Cpp/Const.java
+++ b/extraplugins/codegen/org.eclipse.papyrus.cpp.profile/src/org/eclipse/papyrus/C_Cpp/Const.java
@@ -38,7 +38,7 @@ public interface Const extends EObject {
* @return the value of the '<em>Base parameter</em>' reference.
* @see #setBase_parameter(Parameter)
* @see org.eclipse.papyrus.C_Cpp.C_CppPackage#getConst_Base_parameter()
- * @model required="true" ordered="false"
+ * @model ordered="false"
* @generated
*/
Parameter getBase_parameter();
@@ -64,7 +64,7 @@ public interface Const extends EObject {
* @return the value of the '<em>Base property</em>' reference.
* @see #setBase_property(Property)
* @see org.eclipse.papyrus.C_Cpp.C_CppPackage#getConst_Base_property()
- * @model required="true" ordered="false"
+ * @model ordered="false"
* @generated
*/
Property getBase_property();
@@ -90,7 +90,7 @@ public interface Const extends EObject {
* @return the value of the '<em>Base operation</em>' reference.
* @see #setBase_operation(Operation)
* @see org.eclipse.papyrus.C_Cpp.C_CppPackage#getConst_Base_operation()
- * @model required="true" ordered="false"
+ * @model ordered="false"
* @generated
*/
Operation getBase_operation();
diff --git a/extraplugins/codegen/org.eclipse.papyrus.cpp.profile/src/org/eclipse/papyrus/C_Cpp/ExternClass.java b/extraplugins/codegen/org.eclipse.papyrus.cpp.profile/src/org/eclipse/papyrus/C_Cpp/ExternClass.java
index e39f2a04394..4bf54290a74 100644
--- a/extraplugins/codegen/org.eclipse.papyrus.cpp.profile/src/org/eclipse/papyrus/C_Cpp/ExternClass.java
+++ b/extraplugins/codegen/org.eclipse.papyrus.cpp.profile/src/org/eclipse/papyrus/C_Cpp/ExternClass.java
@@ -33,7 +33,7 @@ public interface ExternClass extends EObject {
* @return the value of the '<em>Name</em>' attribute.
* @see #setName(String)
* @see org.eclipse.papyrus.C_Cpp.C_CppPackage#getExternClass_Name()
- * @model unique="false" dataType="org.eclipse.uml2.types.String" required="true" ordered="false"
+ * @model unique="false" dataType="org.eclipse.uml2.types.String" ordered="false"
* @generated
*/
String getName();
diff --git a/extraplugins/codegen/org.eclipse.papyrus.cpp.profile/src/org/eclipse/papyrus/C_Cpp/ExternLibrary.java b/extraplugins/codegen/org.eclipse.papyrus.cpp.profile/src/org/eclipse/papyrus/C_Cpp/ExternLibrary.java
index 17f4f9347c4..e031c5c17d3 100644
--- a/extraplugins/codegen/org.eclipse.papyrus.cpp.profile/src/org/eclipse/papyrus/C_Cpp/ExternLibrary.java
+++ b/extraplugins/codegen/org.eclipse.papyrus.cpp.profile/src/org/eclipse/papyrus/C_Cpp/ExternLibrary.java
@@ -11,7 +11,8 @@ import org.eclipse.emf.ecore.EObject;
* <!-- end-user-doc -->
*
* <!-- begin-model-doc -->
- * Mark a package as External Library. If this package is used, the associated CDT project will be configured accordingly
+ * Mark a package as External Library. If this package is used, the associated CDT project will be configured accordingly.
+ * The name is not required, since the UML name is used
* <!-- end-model-doc -->
*
* <p>
@@ -42,7 +43,7 @@ public interface ExternLibrary extends EObject {
* @return the value of the '<em>Name</em>' attribute.
* @see #setName(String)
* @see org.eclipse.papyrus.C_Cpp.C_CppPackage#getExternLibrary_Name()
- * @model unique="false" dataType="org.eclipse.uml2.types.String" required="true" ordered="false"
+ * @model unique="false" dataType="org.eclipse.uml2.types.String" ordered="false"
* @generated
*/
String getName();
diff --git a/extraplugins/codegen/org.eclipse.papyrus.cpp.profile/src/org/eclipse/papyrus/C_Cpp/Friend.java b/extraplugins/codegen/org.eclipse.papyrus.cpp.profile/src/org/eclipse/papyrus/C_Cpp/Friend.java
index 1d36d297256..fd2892ddfad 100644
--- a/extraplugins/codegen/org.eclipse.papyrus.cpp.profile/src/org/eclipse/papyrus/C_Cpp/Friend.java
+++ b/extraplugins/codegen/org.eclipse.papyrus.cpp.profile/src/org/eclipse/papyrus/C_Cpp/Friend.java
@@ -36,7 +36,7 @@ public interface Friend extends EObject {
* @return the value of the '<em>Base dependency</em>' reference.
* @see #setBase_dependency(Dependency)
* @see org.eclipse.papyrus.C_Cpp.C_CppPackage#getFriend_Base_dependency()
- * @model required="true" ordered="false"
+ * @model ordered="false"
* @generated
*/
Dependency getBase_dependency();
@@ -62,7 +62,7 @@ public interface Friend extends EObject {
* @return the value of the '<em>Base operation</em>' reference.
* @see #setBase_operation(Operation)
* @see org.eclipse.papyrus.C_Cpp.C_CppPackage#getFriend_Base_operation()
- * @model required="true" ordered="false"
+ * @model ordered="false"
* @generated
*/
Operation getBase_operation();
diff --git a/extraplugins/codegen/org.eclipse.papyrus.cpp.profile/src/org/eclipse/papyrus/C_Cpp/Include.java b/extraplugins/codegen/org.eclipse.papyrus.cpp.profile/src/org/eclipse/papyrus/C_Cpp/Include.java
index 0283a53d8f4..2b68020c2a3 100644
--- a/extraplugins/codegen/org.eclipse.papyrus.cpp.profile/src/org/eclipse/papyrus/C_Cpp/Include.java
+++ b/extraplugins/codegen/org.eclipse.papyrus.cpp.profile/src/org/eclipse/papyrus/C_Cpp/Include.java
@@ -45,7 +45,7 @@ public interface Include extends EObject {
* @return the value of the '<em>Body</em>' attribute.
* @see #setBody(String)
* @see org.eclipse.papyrus.C_Cpp.C_CppPackage#getInclude_Body()
- * @model default="" dataType="org.eclipse.uml2.types.String" required="true" ordered="false"
+ * @model default="" dataType="org.eclipse.uml2.types.String" ordered="false"
* @generated
*/
String getBody();
@@ -72,7 +72,7 @@ public interface Include extends EObject {
* @return the value of the '<em>Header</em>' attribute.
* @see #setHeader(String)
* @see org.eclipse.papyrus.C_Cpp.C_CppPackage#getInclude_Header()
- * @model default="" dataType="org.eclipse.uml2.types.String" required="true" ordered="false"
+ * @model default="" dataType="org.eclipse.uml2.types.String" ordered="false"
* @generated
*/
String getHeader();
@@ -98,7 +98,7 @@ public interface Include extends EObject {
* @return the value of the '<em>Base package</em>' reference.
* @see #setBase_package(org.eclipse.uml2.uml.Package)
* @see org.eclipse.papyrus.C_Cpp.C_CppPackage#getInclude_Base_package()
- * @model required="true" ordered="false"
+ * @model ordered="false"
* @generated
*/
org.eclipse.uml2.uml.Package getBase_package();
@@ -124,7 +124,7 @@ public interface Include extends EObject {
* @return the value of the '<em>Base class</em>' reference.
* @see #setBase_class(org.eclipse.uml2.uml.Class)
* @see org.eclipse.papyrus.C_Cpp.C_CppPackage#getInclude_Base_class()
- * @model required="true" ordered="false"
+ * @model ordered="false"
* @generated
*/
org.eclipse.uml2.uml.Class getBase_class();
@@ -150,7 +150,7 @@ public interface Include extends EObject {
* @return the value of the '<em>Base Package Import</em>' reference.
* @see #setBase_PackageImport(PackageImport)
* @see org.eclipse.papyrus.C_Cpp.C_CppPackage#getInclude_Base_PackageImport()
- * @model required="true" ordered="false"
+ * @model ordered="false"
* @generated
*/
PackageImport getBase_PackageImport();
@@ -177,7 +177,7 @@ public interface Include extends EObject {
* @return the value of the '<em>Pre Body</em>' attribute.
* @see #setPreBody(String)
* @see org.eclipse.papyrus.C_Cpp.C_CppPackage#getInclude_PreBody()
- * @model default="" dataType="org.eclipse.uml2.types.String" required="true" ordered="false"
+ * @model default="" dataType="org.eclipse.uml2.types.String" ordered="false"
* @generated
*/
String getPreBody();
diff --git a/extraplugins/codegen/org.eclipse.papyrus.cpp.profile/src/org/eclipse/papyrus/C_Cpp/Ptr.java b/extraplugins/codegen/org.eclipse.papyrus.cpp.profile/src/org/eclipse/papyrus/C_Cpp/Ptr.java
index 29bdf670378..723fe1072a9 100644
--- a/extraplugins/codegen/org.eclipse.papyrus.cpp.profile/src/org/eclipse/papyrus/C_Cpp/Ptr.java
+++ b/extraplugins/codegen/org.eclipse.papyrus.cpp.profile/src/org/eclipse/papyrus/C_Cpp/Ptr.java
@@ -41,7 +41,7 @@ public interface Ptr extends EObject {
* @return the value of the '<em>Base parameter</em>' reference.
* @see #setBase_parameter(Parameter)
* @see org.eclipse.papyrus.C_Cpp.C_CppPackage#getPtr_Base_parameter()
- * @model required="true" ordered="false"
+ * @model ordered="false"
* @generated
*/
Parameter getBase_parameter();
@@ -67,7 +67,7 @@ public interface Ptr extends EObject {
* @return the value of the '<em>Base property</em>' reference.
* @see #setBase_property(Property)
* @see org.eclipse.papyrus.C_Cpp.C_CppPackage#getPtr_Base_property()
- * @model required="true" ordered="false"
+ * @model ordered="false"
* @generated
*/
Property getBase_property();
@@ -93,7 +93,7 @@ public interface Ptr extends EObject {
* @return the value of the '<em>Declaration</em>' attribute.
* @see #setDeclaration(String)
* @see org.eclipse.papyrus.C_Cpp.C_CppPackage#getPtr_Declaration()
- * @model unique="false" dataType="org.eclipse.uml2.types.String" required="true" ordered="false"
+ * @model unique="false" dataType="org.eclipse.uml2.types.String" ordered="false"
* @generated
*/
String getDeclaration();
diff --git a/extraplugins/codegen/org.eclipse.papyrus.cpp.profile/src/org/eclipse/papyrus/C_Cpp/Ref.java b/extraplugins/codegen/org.eclipse.papyrus.cpp.profile/src/org/eclipse/papyrus/C_Cpp/Ref.java
index 390f3356d41..12b31e66c9c 100644
--- a/extraplugins/codegen/org.eclipse.papyrus.cpp.profile/src/org/eclipse/papyrus/C_Cpp/Ref.java
+++ b/extraplugins/codegen/org.eclipse.papyrus.cpp.profile/src/org/eclipse/papyrus/C_Cpp/Ref.java
@@ -36,7 +36,7 @@ public interface Ref extends EObject {
* @return the value of the '<em>Base parameter</em>' reference.
* @see #setBase_parameter(Parameter)
* @see org.eclipse.papyrus.C_Cpp.C_CppPackage#getRef_Base_parameter()
- * @model required="true" ordered="false"
+ * @model ordered="false"
* @generated
*/
Parameter getBase_parameter();
@@ -62,7 +62,7 @@ public interface Ref extends EObject {
* @return the value of the '<em>Base property</em>' reference.
* @see #setBase_property(Property)
* @see org.eclipse.papyrus.C_Cpp.C_CppPackage#getRef_Base_property()
- * @model required="true" ordered="false"
+ * @model ordered="false"
* @generated
*/
Property getBase_property();
diff --git a/extraplugins/codegen/org.eclipse.papyrus.cpp.profile/src/org/eclipse/papyrus/C_Cpp/StorageClass.java b/extraplugins/codegen/org.eclipse.papyrus.cpp.profile/src/org/eclipse/papyrus/C_Cpp/StorageClass.java
index 610597e8425..dbfbabb9dc3 100644
--- a/extraplugins/codegen/org.eclipse.papyrus.cpp.profile/src/org/eclipse/papyrus/C_Cpp/StorageClass.java
+++ b/extraplugins/codegen/org.eclipse.papyrus.cpp.profile/src/org/eclipse/papyrus/C_Cpp/StorageClass.java
@@ -3,6 +3,8 @@
package org.eclipse.papyrus.C_Cpp;
import org.eclipse.emf.ecore.EObject;
+import org.eclipse.uml2.uml.Parameter;
+import org.eclipse.uml2.uml.Property;
/**
* <!-- begin-user-doc -->
@@ -13,6 +15,8 @@ import org.eclipse.emf.ecore.EObject;
* The following features are supported:
* <ul>
* <li>{@link org.eclipse.papyrus.C_Cpp.StorageClass#getStorageClass <em>Storage Class</em>}</li>
+ * <li>{@link org.eclipse.papyrus.C_Cpp.StorageClass#getBase_Parameter <em>Base Parameter</em>}</li>
+ * <li>{@link org.eclipse.papyrus.C_Cpp.StorageClass#getBase_Property <em>Base Property</em>}</li>
* </ul>
* </p>
*
@@ -50,4 +54,56 @@ public interface StorageClass extends EObject {
*/
void setStorageClass(EStorageClass value);
+ /**
+ * Returns the value of the '<em><b>Base Parameter</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Parameter</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Parameter</em>' reference.
+ * @see #setBase_Parameter(Parameter)
+ * @see org.eclipse.papyrus.C_Cpp.C_CppPackage#getStorageClass_Base_Parameter()
+ * @model ordered="false"
+ * @generated
+ */
+ Parameter getBase_Parameter();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.C_Cpp.StorageClass#getBase_Parameter <em>Base Parameter</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Parameter</em>' reference.
+ * @see #getBase_Parameter()
+ * @generated
+ */
+ void setBase_Parameter(Parameter value);
+
+ /**
+ * Returns the value of the '<em><b>Base Property</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Property</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Base Property</em>' reference.
+ * @see #setBase_Property(Property)
+ * @see org.eclipse.papyrus.C_Cpp.C_CppPackage#getStorageClass_Base_Property()
+ * @model ordered="false"
+ * @generated
+ */
+ Property getBase_Property();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.C_Cpp.StorageClass#getBase_Property <em>Base Property</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Base Property</em>' reference.
+ * @see #getBase_Property()
+ * @generated
+ */
+ void setBase_Property(Property value);
+
} // StorageClass
diff --git a/extraplugins/codegen/org.eclipse.papyrus.cpp.profile/src/org/eclipse/papyrus/C_Cpp/impl/C_CppPackageImpl.java b/extraplugins/codegen/org.eclipse.papyrus.cpp.profile/src/org/eclipse/papyrus/C_Cpp/impl/C_CppPackageImpl.java
index 3028465e54b..0105f9edfb9 100644
--- a/extraplugins/codegen/org.eclipse.papyrus.cpp.profile/src/org/eclipse/papyrus/C_Cpp/impl/C_CppPackageImpl.java
+++ b/extraplugins/codegen/org.eclipse.papyrus.cpp.profile/src/org/eclipse/papyrus/C_Cpp/impl/C_CppPackageImpl.java
@@ -981,6 +981,24 @@ public class C_CppPackageImpl extends EPackageImpl implements C_CppPackage {
* <!-- end-user-doc -->
* @generated
*/
+ public EReference getStorageClass_Base_Parameter() {
+ return (EReference)storageClassEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getStorageClass_Base_Property() {
+ return (EReference)storageClassEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
public EEnum getVisibilityKind() {
return visibilityKindEEnum;
}
@@ -1129,6 +1147,8 @@ public class C_CppPackageImpl extends EPackageImpl implements C_CppPackage {
storageClassEClass = createEClass(STORAGE_CLASS);
createEAttribute(storageClassEClass, STORAGE_CLASS__STORAGE_CLASS);
+ createEReference(storageClassEClass, STORAGE_CLASS__BASE_PARAMETER);
+ createEReference(storageClassEClass, STORAGE_CLASS__BASE_PROPERTY);
// Create enums
visibilityKindEEnum = createEEnum(VISIBILITY_KIND);
@@ -1171,24 +1191,24 @@ public class C_CppPackageImpl extends EPackageImpl implements C_CppPackage {
// Initialize classes and features; add operations and parameters
initEClass(ptrEClass, Ptr.class, "Ptr", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
- initEReference(getPtr_Base_parameter(), theUMLPackage.getParameter(), null, "base_parameter", null, 1, 1, Ptr.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
- initEReference(getPtr_Base_property(), theUMLPackage.getProperty(), null, "base_property", null, 1, 1, Ptr.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
- initEAttribute(getPtr_Declaration(), theTypesPackage.getString(), "declaration", null, 1, 1, Ptr.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEReference(getPtr_Base_parameter(), theUMLPackage.getParameter(), null, "base_parameter", null, 0, 1, Ptr.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEReference(getPtr_Base_property(), theUMLPackage.getProperty(), null, "base_property", null, 0, 1, Ptr.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEAttribute(getPtr_Declaration(), theTypesPackage.getString(), "declaration", null, 0, 1, Ptr.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
initEClass(includeEClass, Include.class, "Include", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
- initEAttribute(getInclude_Body(), theTypesPackage.getString(), "body", "", 1, 1, Include.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
- initEAttribute(getInclude_PreBody(), theTypesPackage.getString(), "preBody", "", 1, 1, Include.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
- initEAttribute(getInclude_Header(), theTypesPackage.getString(), "header", "", 1, 1, Include.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
- initEReference(getInclude_Base_package(), theUMLPackage.getPackage(), null, "base_package", null, 1, 1, Include.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
- initEReference(getInclude_Base_class(), theUMLPackage.getClass_(), null, "base_class", null, 1, 1, Include.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
- initEReference(getInclude_Base_PackageImport(), theUMLPackage.getPackageImport(), null, "base_PackageImport", null, 1, 1, Include.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEAttribute(getInclude_Body(), theTypesPackage.getString(), "body", "", 0, 1, Include.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEAttribute(getInclude_PreBody(), theTypesPackage.getString(), "preBody", "", 0, 1, Include.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEAttribute(getInclude_Header(), theTypesPackage.getString(), "header", "", 0, 1, Include.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEReference(getInclude_Base_package(), theUMLPackage.getPackage(), null, "base_package", null, 0, 1, Include.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEReference(getInclude_Base_class(), theUMLPackage.getClass_(), null, "base_class", null, 0, 1, Include.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEReference(getInclude_Base_PackageImport(), theUMLPackage.getPackageImport(), null, "base_PackageImport", null, 0, 1, Include.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
initEClass(manualGenerationEClass, ManualGeneration.class, "ManualGeneration", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEAttribute(getManualGeneration_ExtensionBody(), theTypesPackage.getString(), "extensionBody", null, 1, 1, ManualGeneration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
initEReference(getManualGeneration_Base_Class(), theUMLPackage.getClass_(), null, "base_Class", null, 1, 1, ManualGeneration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
initEClass(externLibraryEClass, ExternLibrary.class, "ExternLibrary", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
- initEAttribute(getExternLibrary_Name(), theTypesPackage.getString(), "name", null, 1, 1, ExternLibrary.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEAttribute(getExternLibrary_Name(), theTypesPackage.getString(), "name", null, 0, 1, ExternLibrary.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
initEReference(getExternLibrary_Base_package(), theUMLPackage.getPackage(), null, "base_package", null, 1, 1, ExternLibrary.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
initEAttribute(getExternLibrary_LibPaths(), theTypesPackage.getString(), "libPaths", null, 0, -1, ExternLibrary.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
initEAttribute(getExternLibrary_Macros(), theTypesPackage.getString(), "macros", null, 0, -1, ExternLibrary.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
@@ -1208,9 +1228,9 @@ public class C_CppPackageImpl extends EPackageImpl implements C_CppPackage {
initEReference(getArray_Base_association(), theUMLPackage.getAssociation(), null, "base_association", null, 1, 1, Array.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
initEClass(constEClass, Const.class, "Const", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
- initEReference(getConst_Base_parameter(), theUMLPackage.getParameter(), null, "base_parameter", null, 1, 1, Const.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
- initEReference(getConst_Base_property(), theUMLPackage.getProperty(), null, "base_property", null, 1, 1, Const.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
- initEReference(getConst_Base_operation(), theUMLPackage.getOperation(), null, "base_operation", null, 1, 1, Const.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEReference(getConst_Base_parameter(), theUMLPackage.getParameter(), null, "base_parameter", null, 0, 1, Const.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEReference(getConst_Base_property(), theUMLPackage.getProperty(), null, "base_property", null, 0, 1, Const.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEReference(getConst_Base_operation(), theUMLPackage.getOperation(), null, "base_operation", null, 0, 1, Const.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
initEClass(defaultEClass, Default.class, "Default", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEAttribute(getDefault_Value(), theTypesPackage.getString(), "value", null, 1, 1, Default.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
@@ -1218,11 +1238,11 @@ public class C_CppPackageImpl extends EPackageImpl implements C_CppPackage {
initEReference(getDefault_Base_property(), theUMLPackage.getProperty(), null, "base_property", null, 1, 1, Default.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
initEClass(refEClass, Ref.class, "Ref", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
- initEReference(getRef_Base_parameter(), theUMLPackage.getParameter(), null, "base_parameter", null, 1, 1, Ref.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
- initEReference(getRef_Base_property(), theUMLPackage.getProperty(), null, "base_property", null, 1, 1, Ref.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEReference(getRef_Base_parameter(), theUMLPackage.getParameter(), null, "base_parameter", null, 0, 1, Ref.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEReference(getRef_Base_property(), theUMLPackage.getProperty(), null, "base_property", null, 0, 1, Ref.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
initEClass(externClassEClass, ExternClass.class, "ExternClass", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
- initEAttribute(getExternClass_Name(), theTypesPackage.getString(), "name", null, 1, 1, ExternClass.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEAttribute(getExternClass_Name(), theTypesPackage.getString(), "name", null, 0, 1, ExternClass.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
initEReference(getExternClass_Base_class(), theUMLPackage.getClass_(), null, "base_class", null, 1, 1, ExternClass.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
initEClass(constInitEClass, ConstInit.class, "ConstInit", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
@@ -1230,8 +1250,8 @@ public class C_CppPackageImpl extends EPackageImpl implements C_CppPackage {
initEReference(getConstInit_Base_operation(), theUMLPackage.getOperation(), null, "base_operation", null, 1, 1, ConstInit.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
initEClass(friendEClass, Friend.class, "Friend", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
- initEReference(getFriend_Base_dependency(), theUMLPackage.getDependency(), null, "base_dependency", null, 1, 1, Friend.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
- initEReference(getFriend_Base_operation(), theUMLPackage.getOperation(), null, "base_operation", null, 1, 1, Friend.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEReference(getFriend_Base_dependency(), theUMLPackage.getDependency(), null, "base_dependency", null, 0, 1, Friend.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEReference(getFriend_Base_operation(), theUMLPackage.getOperation(), null, "base_operation", null, 0, 1, Friend.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
initEClass(inlineEClass, Inline.class, "Inline", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEReference(getInline_Base_operation(), theUMLPackage.getOperation(), null, "base_operation", null, 1, 1, Inline.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
@@ -1268,6 +1288,8 @@ public class C_CppPackageImpl extends EPackageImpl implements C_CppPackage {
initEClass(storageClassEClass, StorageClass.class, "StorageClass", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEAttribute(getStorageClass_StorageClass(), this.getEStorageClass(), "storageClass", null, 1, 1, StorageClass.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEReference(getStorageClass_Base_Parameter(), theUMLPackage.getParameter(), null, "base_Parameter", null, 0, 1, StorageClass.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEReference(getStorageClass_Base_Property(), theUMLPackage.getProperty(), null, "base_Property", null, 0, 1, StorageClass.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
// Initialize enums and add enum literals
initEEnum(visibilityKindEEnum, VisibilityKind.class, "VisibilityKind");
diff --git a/extraplugins/codegen/org.eclipse.papyrus.cpp.profile/src/org/eclipse/papyrus/C_Cpp/impl/StorageClassImpl.java b/extraplugins/codegen/org.eclipse.papyrus.cpp.profile/src/org/eclipse/papyrus/C_Cpp/impl/StorageClassImpl.java
index 2c05f5a729c..c7cbee49572 100644
--- a/extraplugins/codegen/org.eclipse.papyrus.cpp.profile/src/org/eclipse/papyrus/C_Cpp/impl/StorageClassImpl.java
+++ b/extraplugins/codegen/org.eclipse.papyrus.cpp.profile/src/org/eclipse/papyrus/C_Cpp/impl/StorageClassImpl.java
@@ -4,11 +4,14 @@ package org.eclipse.papyrus.C_Cpp.impl;
import org.eclipse.emf.common.notify.Notification;
import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
import org.eclipse.emf.ecore.impl.ENotificationImpl;
import org.eclipse.emf.ecore.impl.EObjectImpl;
import org.eclipse.papyrus.C_Cpp.C_CppPackage;
import org.eclipse.papyrus.C_Cpp.EStorageClass;
import org.eclipse.papyrus.C_Cpp.StorageClass;
+import org.eclipse.uml2.uml.Parameter;
+import org.eclipse.uml2.uml.Property;
/**
* <!-- begin-user-doc -->
@@ -18,6 +21,8 @@ import org.eclipse.papyrus.C_Cpp.StorageClass;
* The following features are implemented:
* <ul>
* <li>{@link org.eclipse.papyrus.C_Cpp.impl.StorageClassImpl#getStorageClass <em>Storage Class</em>}</li>
+ * <li>{@link org.eclipse.papyrus.C_Cpp.impl.StorageClassImpl#getBase_Parameter <em>Base Parameter</em>}</li>
+ * <li>{@link org.eclipse.papyrus.C_Cpp.impl.StorageClassImpl#getBase_Property <em>Base Property</em>}</li>
* </ul>
* </p>
*
@@ -45,6 +50,26 @@ public class StorageClassImpl extends EObjectImpl implements StorageClass {
protected EStorageClass storageClass = STORAGE_CLASS_EDEFAULT;
/**
+ * The cached value of the '{@link #getBase_Parameter() <em>Base Parameter</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_Parameter()
+ * @generated
+ * @ordered
+ */
+ protected Parameter base_Parameter;
+
+ /**
+ * The cached value of the '{@link #getBase_Property() <em>Base Property</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBase_Property()
+ * @generated
+ * @ordered
+ */
+ protected Property base_Property;
+
+ /**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
@@ -89,11 +114,93 @@ public class StorageClassImpl extends EObjectImpl implements StorageClass {
* <!-- end-user-doc -->
* @generated
*/
+ public Parameter getBase_Parameter() {
+ if (base_Parameter != null && base_Parameter.eIsProxy()) {
+ InternalEObject oldBase_Parameter = (InternalEObject)base_Parameter;
+ base_Parameter = (Parameter)eResolveProxy(oldBase_Parameter);
+ if (base_Parameter != oldBase_Parameter) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, C_CppPackage.STORAGE_CLASS__BASE_PARAMETER, oldBase_Parameter, base_Parameter));
+ }
+ }
+ return base_Parameter;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Parameter basicGetBase_Parameter() {
+ return base_Parameter;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_Parameter(Parameter newBase_Parameter) {
+ Parameter oldBase_Parameter = base_Parameter;
+ base_Parameter = newBase_Parameter;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, C_CppPackage.STORAGE_CLASS__BASE_PARAMETER, oldBase_Parameter, base_Parameter));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Property getBase_Property() {
+ if (base_Property != null && base_Property.eIsProxy()) {
+ InternalEObject oldBase_Property = (InternalEObject)base_Property;
+ base_Property = (Property)eResolveProxy(oldBase_Property);
+ if (base_Property != oldBase_Property) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, C_CppPackage.STORAGE_CLASS__BASE_PROPERTY, oldBase_Property, base_Property));
+ }
+ }
+ return base_Property;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Property basicGetBase_Property() {
+ return base_Property;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBase_Property(Property newBase_Property) {
+ Property oldBase_Property = base_Property;
+ base_Property = newBase_Property;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, C_CppPackage.STORAGE_CLASS__BASE_PROPERTY, oldBase_Property, base_Property));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
@Override
public Object eGet(int featureID, boolean resolve, boolean coreType) {
switch (featureID) {
case C_CppPackage.STORAGE_CLASS__STORAGE_CLASS:
return getStorageClass();
+ case C_CppPackage.STORAGE_CLASS__BASE_PARAMETER:
+ if (resolve) return getBase_Parameter();
+ return basicGetBase_Parameter();
+ case C_CppPackage.STORAGE_CLASS__BASE_PROPERTY:
+ if (resolve) return getBase_Property();
+ return basicGetBase_Property();
}
return super.eGet(featureID, resolve, coreType);
}
@@ -109,6 +216,12 @@ public class StorageClassImpl extends EObjectImpl implements StorageClass {
case C_CppPackage.STORAGE_CLASS__STORAGE_CLASS:
setStorageClass((EStorageClass)newValue);
return;
+ case C_CppPackage.STORAGE_CLASS__BASE_PARAMETER:
+ setBase_Parameter((Parameter)newValue);
+ return;
+ case C_CppPackage.STORAGE_CLASS__BASE_PROPERTY:
+ setBase_Property((Property)newValue);
+ return;
}
super.eSet(featureID, newValue);
}
@@ -124,6 +237,12 @@ public class StorageClassImpl extends EObjectImpl implements StorageClass {
case C_CppPackage.STORAGE_CLASS__STORAGE_CLASS:
setStorageClass(STORAGE_CLASS_EDEFAULT);
return;
+ case C_CppPackage.STORAGE_CLASS__BASE_PARAMETER:
+ setBase_Parameter((Parameter)null);
+ return;
+ case C_CppPackage.STORAGE_CLASS__BASE_PROPERTY:
+ setBase_Property((Property)null);
+ return;
}
super.eUnset(featureID);
}
@@ -138,6 +257,10 @@ public class StorageClassImpl extends EObjectImpl implements StorageClass {
switch (featureID) {
case C_CppPackage.STORAGE_CLASS__STORAGE_CLASS:
return storageClass != STORAGE_CLASS_EDEFAULT;
+ case C_CppPackage.STORAGE_CLASS__BASE_PARAMETER:
+ return base_Parameter != null;
+ case C_CppPackage.STORAGE_CLASS__BASE_PROPERTY:
+ return base_Property != null;
}
return super.eIsSet(featureID);
}

Back to the top