From 0eb2bae8a795cae25d5c4334d5a5431d671eba98 Mon Sep 17 00:00:00 2001
From: Johannes Eder <eder@fortiss.org>
Date: Fri, 19 Feb 2016 08:54:28 +0000
Subject: [PATCH] first version of generic visualization meta model refs 2489

---
 .../trunk/META-INF/MANIFEST.MF                |  1 +
 .../trunk/model/base.ecore                    | 52 +++++++++++++++++++
 .../trunk/model/base.genmodel                 | 25 +++++++++
 3 files changed, 78 insertions(+)

diff --git a/org.fortiss.tooling.base/trunk/META-INF/MANIFEST.MF b/org.fortiss.tooling.base/trunk/META-INF/MANIFEST.MF
index f9a3a17f4..555948523 100644
--- a/org.fortiss.tooling.base/trunk/META-INF/MANIFEST.MF
+++ b/org.fortiss.tooling.base/trunk/META-INF/MANIFEST.MF
@@ -25,5 +25,6 @@ Export-Package: org.fortiss.tooling.base,
  org.fortiss.tooling.base.model.layout,
  org.fortiss.tooling.base.model.layout.impl,
  org.fortiss.tooling.base.model.layout.util,
+ org.fortiss.tooling.base.model.visualization,
  org.fortiss.tooling.base.utils
 Bundle-Activator: org.fortiss.tooling.base.ToolingBaseActivator
diff --git a/org.fortiss.tooling.base/trunk/model/base.ecore b/org.fortiss.tooling.base/trunk/model/base.ecore
index f2d7df0ae..ab9d77392 100644
--- a/org.fortiss.tooling.base/trunk/model/base.ecore
+++ b/org.fortiss.tooling.base/trunk/model/base.ecore
@@ -441,4 +441,56 @@
       </eGenericSuperTypes>
     </eClassifiers>
   </eSubpackages>
+  <eSubpackages name="visualization" nsURI="http://www.fortiss.org/tooling/base/model/visualization"
+      nsPrefix="org-fortiss-tooling-base-model-visualization">
+    <eClassifiers xsi:type="ecore:EClass" name="DataSetCollection">
+      <eStructuralFeatures xsi:type="ecore:EReference" name="dimensions" lowerBound="1"
+          upperBound="-1" containment="true">
+        <eGenericType eClassifier="#//visualization/Dimension">
+          <eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
+        </eGenericType>
+      </eStructuralFeatures>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="axes" lowerBound="1"
+          upperBound="-1" containment="true">
+        <eGenericType eClassifier="#//visualization/Axis">
+          <eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
+        </eGenericType>
+      </eStructuralFeatures>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="sets" lowerBound="1"
+          upperBound="-1" eType="#//visualization/DataSet" containment="true"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="DataSet">
+      <eStructuralFeatures xsi:type="ecore:EReference" name="points" lowerBound="1"
+          upperBound="-1" containment="true">
+        <eGenericType eClassifier="#//visualization/DataPoint">
+          <eTypeArguments eClassifier="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EJavaObject"/>
+        </eGenericType>
+      </eStructuralFeatures>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="DataPoint">
+      <eTypeParameters name="T"/>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="start">
+        <eGenericType eTypeParameter="#//visualization/DataPoint/T"/>
+      </eStructuralFeatures>
+      <eStructuralFeatures xsi:type="ecore:EAttribute" name="end">
+        <eGenericType eTypeParameter="#//visualization/DataPoint/T"/>
+      </eStructuralFeatures>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="axis">
+        <eGenericType eClassifier="#//visualization/Axis">
+          <eTypeArguments eTypeParameter="#//visualization/DataPoint/T"/>
+        </eGenericType>
+      </eStructuralFeatures>
+      <eStructuralFeatures xsi:type="ecore:EReference" name="dimension">
+        <eGenericType eClassifier="#//visualization/Dimension">
+          <eTypeArguments eTypeParameter="#//visualization/DataPoint/T"/>
+        </eGenericType>
+      </eStructuralFeatures>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="Axis">
+      <eTypeParameters name="T"/>
+    </eClassifiers>
+    <eClassifiers xsi:type="ecore:EClass" name="Dimension">
+      <eTypeParameters name="T"/>
+    </eClassifiers>
+  </eSubpackages>
 </ecore:EPackage>
diff --git a/org.fortiss.tooling.base/trunk/model/base.genmodel b/org.fortiss.tooling.base/trunk/model/base.genmodel
index 0e82ae44d..7b6b381eb 100644
--- a/org.fortiss.tooling.base/trunk/model/base.genmodel
+++ b/org.fortiss.tooling.base/trunk/model/base.genmodel
@@ -154,5 +154,30 @@
         <genOperations ecoreOperation="base.ecore#//base/DerivedAnnotationBase/getUserAnnotatedValue"/>
       </genClasses>
     </nestedGenPackages>
+    <nestedGenPackages prefix="Visualization" basePackage="org.fortiss.tooling.base.model"
+        disposableProviderFactory="true" ecorePackage="base.ecore#//visualization">
+      <genClasses ecoreClass="base.ecore#//visualization/DataSetCollection">
+        <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference base.ecore#//visualization/DataSetCollection/dimensions"/>
+        <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference base.ecore#//visualization/DataSetCollection/axes"/>
+        <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference base.ecore#//visualization/DataSetCollection/sets"/>
+      </genClasses>
+      <genClasses ecoreClass="base.ecore#//visualization/DataSet">
+        <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference base.ecore#//visualization/DataSet/points"/>
+      </genClasses>
+      <genClasses ecoreClass="base.ecore#//visualization/DataPoint">
+        <genTypeParameters ecoreTypeParameter="base.ecore#//visualization/DataPoint/T"/>
+        <genFeatures createChild="false" ecoreFeature="ecore:EAttribute base.ecore#//visualization/DataPoint/start"/>
+        <genFeatures createChild="false" ecoreFeature="ecore:EAttribute base.ecore#//visualization/DataPoint/end"/>
+        <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference base.ecore#//visualization/DataPoint/axis"/>
+        <genFeatures notify="false" createChild="false" propertySortChoices="true"
+            ecoreFeature="ecore:EReference base.ecore#//visualization/DataPoint/dimension"/>
+      </genClasses>
+      <genClasses ecoreClass="base.ecore#//visualization/Axis">
+        <genTypeParameters ecoreTypeParameter="base.ecore#//visualization/Axis/T"/>
+      </genClasses>
+      <genClasses ecoreClass="base.ecore#//visualization/Dimension">
+        <genTypeParameters ecoreTypeParameter="base.ecore#//visualization/Dimension/T"/>
+      </genClasses>
+    </nestedGenPackages>
   </genPackages>
 </genmodel:GenModel>
-- 
GitLab