Newer
Older

Vincent Aravantinos
committed
<ecore:EPackage 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" name="model" nsURI="http://www.fortiss.org/tooling/base/model" nsPrefix="org-fortiss-tooling-base-model">
<eSubpackages name="element" nsURI="http://www.fortiss.org/tooling/base/model/element"
nsPrefix="org-fortiss-tooling-base-model-element">
<eClassifiers xsi:type="ecore:EClass" name="IModelElement">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Super class of first class model elements."/>
</eAnnotations>
<eOperations name="addSpecification">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="body" value="org.fortiss.tooling.base.model.element.impl.IModelElementStaticImpl.addSpecification(this, spec);"/>
</eAnnotations>
<eParameters name="spec" eType="#//element/IModelElementSpecification"/>
</eOperations>
<eStructuralFeatures xsi:type="ecore:EReference" name="specifications" upperBound="-1"

Dongyue Mou
committed
eType="#//element/IModelElementSpecification" containment="true" eOpposite="#//element/IModelElementSpecification/specificationOf">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="List of model element specifications providing additional model element properties."/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="referencedBy" upperBound="-1"
eType="#//element/IModelElementReference" eOpposite="#//element/IModelElementReference/reference">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="List of model element references."/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="IModelElementSpecification" abstract="true"
interface="true" eSuperTypes="platform:/resource/org.fortiss.tooling.kernel/model/kernel.ecore#//IIdLabeled">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Super class of model element specifications. Such specifications provide additional plugable properties."/>
</eAnnotations>

Dongyue Mou
committed
<eStructuralFeatures xsi:type="ecore:EReference" name="specificationOf" eType="#//element/IModelElement"
eOpposite="#//element/IModelElement/specifications">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The ModelElement which owns this specification"/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="IModelElementReference" abstract="true"
interface="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Super class of EObjects referencing model elements."/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="reference" eType="#//element/IModelElement"
eOpposite="#//element/IModelElement/referencedBy">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The referenced model element."/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="IHierarchicElement" abstract="true"
interface="true" eSuperTypes="#//element/IHierarchicElementContainer #//element/IModelElement">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Super class of hierarchic model elements."/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="connections" upperBound="-1"

Dongyue Mou
committed
eType="#//element/IConnection" containment="true" eOpposite="#//element/IConnection/owner">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="List of aggregated connection model elements. Usually a hierarchic element aggregates all connections of its direct sub-structure."/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="connectors" upperBound="-1"

Dongyue Mou
committed
eType="#//element/IConnector" containment="true" eOpposite="#//element/IConnector/owner">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="List of aggregated connectors."/>
</eAnnotations>
</eStructuralFeatures>

Dongyue Mou
committed
<eStructuralFeatures xsi:type="ecore:EReference" name="container" eType="#//element/IHierarchicElementContainer"
eOpposite="#//element/IHierarchicElementContainer/containedElements">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The container which this element belongs to"/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="IHierarchicElementContainer" abstract="true"
interface="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Super class of containers of hierarchic model elements."/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="containedElements" upperBound="-1"

Dongyue Mou
committed
eType="#//element/IHierarchicElement" containment="true" eOpposite="#//element/IHierarchicElement/container">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The contained hierarchic model elements."/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="IConnector" abstract="true" interface="true"
eSuperTypes="#//element/IModelElement">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Super class of connectors. Connectors reference incoming and outgoing connection model elements."/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="incoming" upperBound="-1"
eType="#//element/IConnection" eOpposite="#//element/IConnection/target">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The incoming connections."/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="outgoing" upperBound="-1"
eType="#//element/IConnection" eOpposite="#//element/IConnection/source">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The outgoing connections."/>
</eAnnotations>
</eStructuralFeatures>

Dongyue Mou
committed
<eStructuralFeatures xsi:type="ecore:EReference" name="owner" eType="#//element/IHierarchicElement"
eOpposite="#//element/IHierarchicElement/connectors">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The ModelElement which owns this connector"/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="IConnection" abstract="true" interface="true"
eSuperTypes="#//element/IModelElement">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Super class of connections. Connections are aggregated in a hierarchic model element and reference two connectors from that element or any direct sub-element."/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="source" eType="#//element/IConnector"
eOpposite="#//element/IConnector/outgoing">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The connection's source connector."/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="target" eType="#//element/IConnector"
eOpposite="#//element/IConnector/incoming">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The connection's target connector."/>
</eAnnotations>
</eStructuralFeatures>

Dongyue Mou
committed
<eStructuralFeatures xsi:type="ecore:EReference" name="owner" eType="#//element/IHierarchicElement"
eOpposite="#//element/IHierarchicElement/connections">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The ModelElement which owns this connection"/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="IHiddenSpecification" abstract="true"
interface="true" eSuperTypes="#//element/IModelElementSpecification">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Super class of model element specifications, which should be excluded from the navigator view."/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="IAnnotatedSpecification" abstract="true"
interface="true" eSuperTypes="#//element/IModelElementSpecification platform:/resource/org.fortiss.tooling.kernel/model/kernel.ecore#//INamedElement">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Super class of model element specifications that represent annotations (i.e., specifications that are guaranteed to exist exactly once for the model elements for which the annotation has been registered)"/>
<eClassifiers xsi:type="ecore:EDataType" name="IModelElementSpecificationArray"
instanceClassName="org.fortiss.tooling.base.model.element.IModelElementSpecification[]">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="An array of model element specifications."/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="IDerivedAnnotation" abstract="true"
interface="true" eSuperTypes="#//element/IAnnotatedSpecification #//element/IHiddenSpecification">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Interface for {@link IAnnotationSpecification}s that are derived from the state of other annotations and/or model elements.

<ul>
<li>Concrete specifications must provide a specialized getValue() {@link EOperation}s that perform the required calculation. Example: Calculation of {@link Component} WCET for current deployment (if available) based on {@link Component} instruction count and performance (e.g., MIPS) of {@link ExecutionUnit}, some warning indicator otherwise. </li>
<li>Concrete specifications may provide additional {@link EOperation} that provide an advanced query interface to the annotation. Example: WCET for an explicitly specified {@link ExecutionUnit}. This can be used e.g. in a DSE to explore different deployments.</li>
<li>The corresponding {@link IAnnotationValueProvider} should be based on {@link DerivedAnnotationValueProviderBase}.
</ul>"/>
</eAnnotations>
<eTypeParameters name="T"/>
<eOperations name="getValue">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Wrapper method for returning derived (calculated) values. It may return values annotated by the user if the calculation fails, or the user input is preferred, based on the configuration of the concrete annotation. "/>
<details key="body" value="if(getUserAnnotatedValue() != null && (isUserAnnotatedValuePreferred() || getDerivedValue() == null)) {return getUserAnnotatedValue();} return getDerivedValue();"/>
</eAnnotations>
<eGenericType eTypeParameter="#//element/IDerivedAnnotation/T"/>
</eOperations>
<eOperations name="getDerivedValue">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Returns the actual derived (calculated) values. It may return values annotated by the user if the calculation fails, or the user input is preferred, based on the configuration of the concrete annotation. "/>
</eAnnotations>
<eGenericType eTypeParameter="#//element/IDerivedAnnotation/T"/>
</eOperations>

Alexander Diewald
committed
<eOperations name="getDerivedFeature" eType="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//EStructuralFeature">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Returns the {@link EStructuralFeature} that stores the annotation of the model element associated with this {@link IDerivedAnnotation}. Returns null if no element specific behavior is desired."/>
<details key="body" value="return null;"/>
</eAnnotations>
</eOperations>
<eOperations name="isUserAnnotatedValuePreferred" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Default implementation of a method indicating whether the user annotated value, if available, shall be preferred over the derived one. The default is 'true', i.e. user annotated values are preferred. Shall be overridden, if another behavior is desired."/>
<details key="body" value="return true;"/>
</eAnnotations>
</eOperations>
<eOperations name="getUserAnnotatedValue">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Returns the {@link EAttribute} which is used to store the user annotated values, if the concrete annotation is designed therefore. By default, this function returns null, indicating no user annotated values are supported. This method must be re-implemented by concrete annotations if any other behavior is desired."/>
</eAnnotations>
<eGenericType eTypeParameter="#//element/IDerivedAnnotation/T"/>
</eOperations>
</eClassifiers>
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
</eSubpackages>
<eSubpackages name="layout" nsURI="http://www.fortiss.org/tooling/base/model/layout"
nsPrefix="org-fortiss-tooling-base-model-layout">
<eClassifiers xsi:type="ecore:EClass" name="ILayoutedModelElement" abstract="true"
interface="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Super class of model elements with layout data."/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="layoutData" upperBound="-1"
eType="#//layout/ILayoutData" containment="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Stores the aggregated layout data."/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ILayoutData" abstract="true" interface="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Super class of all layout data objects."/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="key" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The layout key indicating how the layout data is to be interpreted."/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Point" eSuperTypes="#//layout/ILayoutData">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Layout data for 2D locations."/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="x" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The horizontal X coordinate."/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="y" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The vertical Y coordinate."/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Dimension" eSuperTypes="#//layout/ILayoutData">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Layout data for 2D dimensions."/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="width" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"
defaultValueLiteral="10">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The width."/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="height" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"
defaultValueLiteral="10">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The height."/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EEnum" name="EOrientation">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Enumeration of 2D directions and orientations."/>
</eAnnotations>
<eLiterals name="NORTH"/>
<eLiterals name="EAST" value="1"/>
<eLiterals name="SOUTH" value="2"/>
<eLiterals name="WEST" value="3"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Orientation" eSuperTypes="#//layout/ILayoutData">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Layout data for 2D orientations."/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="orientation" lowerBound="1"
eType="#//layout/EOrientation" defaultValueLiteral="NORTH">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The orientation."/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Points" eSuperTypes="#//layout/ILayoutData">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Layout data for a sequence of 2D locations."/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="points" upperBound="-1"
eType="#//layout/Point" containment="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The aggregated locations."/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Angle" eSuperTypes="#//layout/ILayoutData">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Layout data for an angle (the interpretation of the double value is application dependent)."/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="angle" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDouble"
defaultValueLiteral="0">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The double value of the angle."/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Offset" eSuperTypes="#//layout/ILayoutData">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Layout data of a single dimensional offset."/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="offset" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt" defaultValueLiteral="0">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The offset value."/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="OffsetOrientation" eSuperTypes="#//layout/Offset #//layout/Orientation">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Combines an offset with an orientation."/>
</eAnnotations>
</eClassifiers>
</eSubpackages>
<eSubpackages name="base" nsURI="http://www.fortiss.org/tooling/base/model/base"
nsPrefix="org-fortiss-tooling-base-model-base">
<eClassifiers xsi:type="ecore:EClass" name="HierarchicElementBase" abstract="true"
eSuperTypes="platform:/resource/org.fortiss.tooling.kernel/model/kernel.ecore#//INamedCommentedElement #//element/IHierarchicElement #//layout/ILayoutedModelElement"/>
<eClassifiers xsi:type="ecore:EClass" name="ConnectorBase" abstract="true" eSuperTypes="platform:/resource/org.fortiss.tooling.kernel/model/kernel.ecore#//INamedCommentedElement #//element/IConnector #//layout/ILayoutedModelElement"/>
<eClassifiers xsi:type="ecore:EClass" name="EntryConnectorBase" abstract="true"
eSuperTypes="#//base/ConnectorBase"/>
<eClassifiers xsi:type="ecore:EClass" name="ExitConnectorBase" abstract="true"
eSuperTypes="#//base/ConnectorBase"/>
<eClassifiers xsi:type="ecore:EClass" name="LocalConnectorBase" abstract="true"
eSuperTypes="#//base/ConnectorBase"/>
<eClassifiers xsi:type="ecore:EClass" name="ConnectionSegmentBase" abstract="true"
eSuperTypes="platform:/resource/org.fortiss.tooling.kernel/model/kernel.ecore#//INamedCommentedElement #//element/IConnection #//layout/ILayoutedModelElement"/>
<eClassifiers xsi:type="ecore:EClass" name="LibraryElementBase" eSuperTypes="platform:/resource/org.fortiss.tooling.kernel/model/kernel.ecore#//ILibraryElement">
<eOperations name="getURI" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="body" value="return LibraryElementBaseStaticImpl.getURI(this);"/>
</eAnnotations>
</eOperations>
<eOperations name="getName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="body" value="return LibraryElementBaseStaticImpl.getName(this);"/>
</eAnnotations>
</eOperations>
</eClassifiers>