aboutsummaryrefslogtreecommitdiffstats
path: root/Domains
diff options
context:
space:
mode:
authorLibravatar OszkarSemerath <oszka@152.66.252.189>2017-06-10 19:05:05 +0200
committerLibravatar OszkarSemerath <oszka@152.66.252.189>2017-06-10 19:05:05 +0200
commit60f01f46ba232ed6416054f0a6115cb2a9b70b4e (patch)
tree5edf8aeb07abc51f3fec63bbd15c926e1de09552 /Domains
parentInitial commit, migrating from SVN (diff)
downloadVIATRA-Generator-60f01f46ba232ed6416054f0a6115cb2a9b70b4e.tar.gz
VIATRA-Generator-60f01f46ba232ed6416054f0a6115cb2a9b70b4e.tar.zst
VIATRA-Generator-60f01f46ba232ed6416054f0a6115cb2a9b70b4e.zip
Migrating Additional projects
Diffstat (limited to 'Domains')
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/.classpath10
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/.gitignore4
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/.project40
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/.settings/org.eclipse.jdt.core.prefs7
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/.settings/org.eclipse.viatra.query.patternlanguage.emf.EMFPatternLanguage.prefs28
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/META-INF/MANIFEST.MF21
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/build.properties9
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/FAMTerminator.java52
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/Function.java61
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/FunctionType.java241
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/FunctionalArchitectureFactory.java96
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/FunctionalArchitectureModel.java42
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/FunctionalArchitecturePackage.java949
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/FunctionalData.java83
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/FunctionalElement.java109
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/FunctionalInput.java42
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/FunctionalInterface.java73
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/FunctionalOutput.java42
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/InformationLink.java81
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/impl/FAMTerminatorImpl.java196
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/impl/FunctionImpl.java191
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/impl/FunctionalArchitectureFactoryImpl.java213
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/impl/FunctionalArchitectureModelImpl.java152
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/impl/FunctionalArchitecturePackageImpl.java574
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/impl/FunctionalDataImpl.java275
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/impl/FunctionalElementImpl.java318
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/impl/FunctionalInputImpl.java165
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/impl/FunctionalInterfaceImpl.java243
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/impl/FunctionalOutputImpl.java165
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/impl/InformationLinkImpl.java285
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/util/FunctionalArchitectureAdapterFactory.java265
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/util/FunctionalArchitectureSwitch.java282
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/model/FAM.aird620
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/model/FAM.ecore68
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/model/FAM.genmodel49
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/plugin.properties4
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/plugin.xml28
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/queries/hu/bme/mit/inf/dslreasoner/domains/transima/fam/patterns/pattern.vql114
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/.classpath10
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/.gitignore4
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/.project40
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/.settings/org.eclipse.jdt.core.prefs7
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/META-INF/MANIFEST.MF20
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/build.properties5
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/CompositeElement.java42
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/Entry.java17
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/Pseudostate.java17
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/Region.java42
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/RegularState.java17
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/State.java17
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/Statechart.java17
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/Synchronization.java17
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/Transition.java81
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/Vertex.java63
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/YakindummFactory.java87
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/YakindummPackage.java840
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/impl/CompositeElementImpl.java152
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/impl/EntryImpl.java37
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/impl/PseudostateImpl.java37
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/impl/RegionImpl.java152
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/impl/RegularStateImpl.java37
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/impl/StateImpl.java183
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/impl/StatechartImpl.java37
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/impl/SynchronizationImpl.java37
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/impl/TransitionImpl.java284
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/impl/VertexImpl.java206
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/impl/YakindummFactoryImpl.java150
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/impl/YakindummPackageImpl.java428
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/util/YakindummAdapterFactory.java282
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/util/YakindummSwitch.java309
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/model/yakindu_simplified.aird1167
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/model/yakindu_simplified.ecore30
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/model/yakindu_simplified.genmodel31
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/model/yakindumm class diagram.pdfbin0 -> 105380 bytes
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/model/yakindumm class diagram.svg350
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/plugin.properties4
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/plugin.xml37
-rw-r--r--Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/queries/hu/bme/mit/inf/dslreasoner/partialsnapshot_mavo/yakindu/patterns.vql196
78 files changed, 11686 insertions, 0 deletions
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/.classpath b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/.classpath
new file mode 100644
index 00000000..0271bab1
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/.classpath
@@ -0,0 +1,10 @@
1<?xml version="1.0" encoding="UTF-8"?>
2<classpath>
3 <classpathentry kind="src" path="ecore-gen"/>
4 <classpathentry kind="src" path="queries"/>
5 <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
6 <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
7 <classpathentry kind="src" path="src"/>
8 <classpathentry kind="src" path="src-gen/"/>
9 <classpathentry kind="output" path="bin"/>
10</classpath>
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/.gitignore b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/.gitignore
new file mode 100644
index 00000000..8ae4e44d
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/.gitignore
@@ -0,0 +1,4 @@
1/bin/
2/src-gen/
3/vql-gen/
4/xtend-gen/
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/.project b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/.project
new file mode 100644
index 00000000..112eddf3
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/.project
@@ -0,0 +1,40 @@
1<?xml version="1.0" encoding="UTF-8"?>
2<projectDescription>
3 <name>hu.bme.mit.inf.dslreasoner.domains.transima.fam</name>
4 <comment></comment>
5 <projects>
6 </projects>
7 <buildSpec>
8 <buildCommand>
9 <name>org.eclipse.xtext.ui.shared.xtextBuilder</name>
10 <arguments>
11 </arguments>
12 </buildCommand>
13 <buildCommand>
14 <name>org.eclipse.viatra.query.tooling.ui.projectbuilder</name>
15 <arguments>
16 </arguments>
17 </buildCommand>
18 <buildCommand>
19 <name>org.eclipse.jdt.core.javabuilder</name>
20 <arguments>
21 </arguments>
22 </buildCommand>
23 <buildCommand>
24 <name>org.eclipse.pde.ManifestBuilder</name>
25 <arguments>
26 </arguments>
27 </buildCommand>
28 <buildCommand>
29 <name>org.eclipse.pde.SchemaBuilder</name>
30 <arguments>
31 </arguments>
32 </buildCommand>
33 </buildSpec>
34 <natures>
35 <nature>org.eclipse.pde.PluginNature</nature>
36 <nature>org.eclipse.jdt.core.javanature</nature>
37 <nature>org.eclipse.viatra.query.projectnature</nature>
38 <nature>org.eclipse.xtext.ui.shared.xtextNature</nature>
39 </natures>
40</projectDescription>
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/.settings/org.eclipse.jdt.core.prefs b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 00000000..295926d9
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,7 @@
1eclipse.preferences.version=1
2org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
3org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
4org.eclipse.jdt.core.compiler.compliance=1.8
5org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
6org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
7org.eclipse.jdt.core.compiler.source=1.8
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/.settings/org.eclipse.viatra.query.patternlanguage.emf.EMFPatternLanguage.prefs b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/.settings/org.eclipse.viatra.query.patternlanguage.emf.EMFPatternLanguage.prefs
new file mode 100644
index 00000000..0416e0e4
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/.settings/org.eclipse.viatra.query.patternlanguage.emf.EMFPatternLanguage.prefs
@@ -0,0 +1,28 @@
1BuilderConfiguration.is_project_specific=true
2autobuilding=true
3eclipse.preferences.version=1
4generateGeneratedAnnotation=false
5generateSuppressWarnings=true
6generatedAnnotationComment=
7includeDateInGenerated=false
8org.eclipse.viatra.query.patternlanguage.emf.EMFPatternLanguage.useProjectSettings=true
9outlet.DEFAULT_OUTPUT.cleanDirectory=false
10outlet.DEFAULT_OUTPUT.cleanupDerived=true
11outlet.DEFAULT_OUTPUT.createDirectory=true
12outlet.DEFAULT_OUTPUT.derived=true
13outlet.DEFAULT_OUTPUT.directory=./src-gen
14outlet.DEFAULT_OUTPUT.hideLocalSyntheticVariables=true
15outlet.DEFAULT_OUTPUT.installDslAsPrimarySource=false
16outlet.DEFAULT_OUTPUT.keepLocalHistory=true
17outlet.DEFAULT_OUTPUT.override=true
18outlet.DEFAULT_OUTPUT.sourceFolder.ecore-gen.directory=
19outlet.DEFAULT_OUTPUT.sourceFolder.ecore-gen.ignore=
20outlet.DEFAULT_OUTPUT.sourceFolder.queries.directory=
21outlet.DEFAULT_OUTPUT.sourceFolder.queries.ignore=
22outlet.DEFAULT_OUTPUT.sourceFolder.src-gen.directory=
23outlet.DEFAULT_OUTPUT.sourceFolder.src-gen.ignore=
24outlet.DEFAULT_OUTPUT.sourceFolder.src.directory=
25outlet.DEFAULT_OUTPUT.sourceFolder.src.ignore=
26outlet.DEFAULT_OUTPUT.userOutputPerSourceFolder=
27targetJavaVersion=JAVA5
28useJavaCompilerCompliance=true
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/META-INF/MANIFEST.MF b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/META-INF/MANIFEST.MF
new file mode 100644
index 00000000..84fd9aac
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/META-INF/MANIFEST.MF
@@ -0,0 +1,21 @@
1Manifest-Version: 1.0
2Bundle-ManifestVersion: 2
3Bundle-Name: %pluginName
4Bundle-SymbolicName: hu.bme.mit.inf.dslreasoner.domains.transima.fam;singleton:=true
5Bundle-Version: 1.0.0.qualifier
6Bundle-ClassPath: .
7Bundle-Vendor: %providerName
8Bundle-Localization: plugin
9Export-Package: hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture,
10 hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl,
11 hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.util,
12 hu.bme.mit.inf.dslreasoner.domains.transima.fam.patterns,
13 hu.bme.mit.inf.dslreasoner.domains.transima.fam.patterns.util
14Require-Bundle: org.eclipse.viatra.addon.querybasedfeatures.runtime,
15 org.eclipse.viatra.query.runtime,
16 org.eclipse.core.runtime,
17 org.eclipse.emf.ecore;visibility:=reexport,
18 com.google.guava;bundle-version="15.0.0"
19Bundle-RequiredExecutionEnvironment: JavaSE-1.8
20Bundle-ActivationPolicy: lazy
21Import-Package: org.apache.log4j
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/build.properties b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/build.properties
new file mode 100644
index 00000000..447f580d
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/build.properties
@@ -0,0 +1,9 @@
1bin.includes = .,\
2 model/,\
3 META-INF/,\
4 plugin.xml,\
5 plugin.properties
6jars.compile.order = .
7source.. = ecore-gen/,\
8 src-gen/
9output.. = bin/
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/FAMTerminator.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/FAMTerminator.java
new file mode 100644
index 00000000..c573d14e
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/FAMTerminator.java
@@ -0,0 +1,52 @@
1/**
2 */
3package hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture;
4
5import org.eclipse.emf.ecore.EObject;
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>FAM Terminator</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 * <p>
13 * The following features are supported:
14 * </p>
15 * <ul>
16 * <li>{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FAMTerminator#getData <em>Data</em>}</li>
17 * </ul>
18 *
19 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalArchitecturePackage#getFAMTerminator()
20 * @model
21 * @generated
22 */
23public interface FAMTerminator extends EObject {
24 /**
25 * Returns the value of the '<em><b>Data</b></em>' container reference.
26 * It is bidirectional and its opposite is '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalData#getTerminator <em>Terminator</em>}'.
27 * <!-- begin-user-doc -->
28 * <p>
29 * If the meaning of the '<em>Data</em>' container reference isn't clear,
30 * there really should be more of a description here...
31 * </p>
32 * <!-- end-user-doc -->
33 * @return the value of the '<em>Data</em>' container reference.
34 * @see #setData(FunctionalData)
35 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalArchitecturePackage#getFAMTerminator_Data()
36 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalData#getTerminator
37 * @model opposite="terminator" transient="false"
38 * @generated
39 */
40 FunctionalData getData();
41
42 /**
43 * Sets the value of the '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FAMTerminator#getData <em>Data</em>}' container reference.
44 * <!-- begin-user-doc -->
45 * <!-- end-user-doc -->
46 * @param value the new value of the '<em>Data</em>' container reference.
47 * @see #getData()
48 * @generated
49 */
50 void setData(FunctionalData value);
51
52} // FAMTerminator
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/Function.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/Function.java
new file mode 100644
index 00000000..52c4bcd2
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/Function.java
@@ -0,0 +1,61 @@
1/**
2 */
3package hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture;
4
5import org.eclipse.emf.common.util.EList;
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Function</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 * <p>
13 * The following features are supported:
14 * </p>
15 * <ul>
16 * <li>{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.Function#getSubElements <em>Sub Elements</em>}</li>
17 * <li>{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.Function#getType <em>Type</em>}</li>
18 * </ul>
19 *
20 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalArchitecturePackage#getFunction()
21 * @model
22 * @generated
23 */
24public interface Function extends FunctionalElement {
25 /**
26 * Returns the value of the '<em><b>Sub Elements</b></em>' containment reference list.
27 * The list contents are of type {@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalElement}.
28 * It is bidirectional and its opposite is '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalElement#getParent <em>Parent</em>}'.
29 * <!-- begin-user-doc -->
30 * <p>
31 * If the meaning of the '<em>Sub Elements</em>' containment reference list isn't clear,
32 * there really should be more of a description here...
33 * </p>
34 * <!-- end-user-doc -->
35 * @return the value of the '<em>Sub Elements</em>' containment reference list.
36 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalArchitecturePackage#getFunction_SubElements()
37 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalElement#getParent
38 * @model opposite="parent" containment="true"
39 * @generated
40 */
41 EList<FunctionalElement> getSubElements();
42
43 /**
44 * Returns the value of the '<em><b>Type</b></em>' attribute.
45 * The literals are from the enumeration {@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionType}.
46 * <!-- begin-user-doc -->
47 * <p>
48 * If the meaning of the '<em>Type</em>' attribute isn't clear,
49 * there really should be more of a description here...
50 * </p>
51 * <!-- end-user-doc -->
52 * @return the value of the '<em>Type</em>' attribute.
53 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionType
54 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalArchitecturePackage#getFunction_Type()
55 * @model required="true" transient="true" changeable="false" volatile="true" derived="true"
56 * annotation="org.eclipse.viatra.query.querybasedfeature patternFQN='hu.bme.mit.inf.dslreasoner.domains.transima.fam.patterns.type'"
57 * @generated
58 */
59 FunctionType getType();
60
61} // Function
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/FunctionType.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/FunctionType.java
new file mode 100644
index 00000000..e0bee9bc
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/FunctionType.java
@@ -0,0 +1,241 @@
1/**
2 */
3package hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture;
4
5import java.util.Arrays;
6import java.util.Collections;
7import java.util.List;
8
9import org.eclipse.emf.common.util.Enumerator;
10
11/**
12 * <!-- begin-user-doc -->
13 * A representation of the literals of the enumeration '<em><b>Function Type</b></em>',
14 * and utility methods for working with them.
15 * <!-- end-user-doc -->
16 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalArchitecturePackage#getFunctionType()
17 * @model
18 * @generated
19 */
20public enum FunctionType implements Enumerator {
21 /**
22 * The '<em><b>Root</b></em>' literal object.
23 * <!-- begin-user-doc -->
24 * <!-- end-user-doc -->
25 * @see #ROOT_VALUE
26 * @generated
27 * @ordered
28 */
29 ROOT(0, "Root", "Root"),
30
31 /**
32 * The '<em><b>Intermediate</b></em>' literal object.
33 * <!-- begin-user-doc -->
34 * <!-- end-user-doc -->
35 * @see #INTERMEDIATE_VALUE
36 * @generated
37 * @ordered
38 */
39 INTERMEDIATE(1, "Intermediate", "Intermediate"),
40
41 /**
42 * The '<em><b>Leaf</b></em>' literal object.
43 * <!-- begin-user-doc -->
44 * <!-- end-user-doc -->
45 * @see #LEAF_VALUE
46 * @generated
47 * @ordered
48 */
49 LEAF(2, "Leaf", "Leaf");
50
51 /**
52 * The '<em><b>Root</b></em>' literal value.
53 * <!-- begin-user-doc -->
54 * <p>
55 * If the meaning of '<em><b>Root</b></em>' literal object isn't clear,
56 * there really should be more of a description here...
57 * </p>
58 * <!-- end-user-doc -->
59 * @see #ROOT
60 * @model name="Root"
61 * @generated
62 * @ordered
63 */
64 public static final int ROOT_VALUE = 0;
65
66 /**
67 * The '<em><b>Intermediate</b></em>' literal value.
68 * <!-- begin-user-doc -->
69 * <p>
70 * If the meaning of '<em><b>Intermediate</b></em>' literal object isn't clear,
71 * there really should be more of a description here...
72 * </p>
73 * <!-- end-user-doc -->
74 * @see #INTERMEDIATE
75 * @model name="Intermediate"
76 * @generated
77 * @ordered
78 */
79 public static final int INTERMEDIATE_VALUE = 1;
80
81 /**
82 * The '<em><b>Leaf</b></em>' literal value.
83 * <!-- begin-user-doc -->
84 * <p>
85 * If the meaning of '<em><b>Leaf</b></em>' literal object isn't clear,
86 * there really should be more of a description here...
87 * </p>
88 * <!-- end-user-doc -->
89 * @see #LEAF
90 * @model name="Leaf"
91 * @generated
92 * @ordered
93 */
94 public static final int LEAF_VALUE = 2;
95
96 /**
97 * An array of all the '<em><b>Function Type</b></em>' enumerators.
98 * <!-- begin-user-doc -->
99 * <!-- end-user-doc -->
100 * @generated
101 */
102 private static final FunctionType[] VALUES_ARRAY =
103 new FunctionType[] {
104 ROOT,
105 INTERMEDIATE,
106 LEAF,
107 };
108
109 /**
110 * A public read-only list of all the '<em><b>Function Type</b></em>' enumerators.
111 * <!-- begin-user-doc -->
112 * <!-- end-user-doc -->
113 * @generated
114 */
115 public static final List<FunctionType> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
116
117 /**
118 * Returns the '<em><b>Function Type</b></em>' literal with the specified literal value.
119 * <!-- begin-user-doc -->
120 * <!-- end-user-doc -->
121 * @param literal the literal.
122 * @return the matching enumerator or <code>null</code>.
123 * @generated
124 */
125 public static FunctionType get(String literal) {
126 for (int i = 0; i < VALUES_ARRAY.length; ++i) {
127 FunctionType result = VALUES_ARRAY[i];
128 if (result.toString().equals(literal)) {
129 return result;
130 }
131 }
132 return null;
133 }
134
135 /**
136 * Returns the '<em><b>Function Type</b></em>' literal with the specified name.
137 * <!-- begin-user-doc -->
138 * <!-- end-user-doc -->
139 * @param name the name.
140 * @return the matching enumerator or <code>null</code>.
141 * @generated
142 */
143 public static FunctionType getByName(String name) {
144 for (int i = 0; i < VALUES_ARRAY.length; ++i) {
145 FunctionType result = VALUES_ARRAY[i];
146 if (result.getName().equals(name)) {
147 return result;
148 }
149 }
150 return null;
151 }
152
153 /**
154 * Returns the '<em><b>Function Type</b></em>' literal with the specified integer value.
155 * <!-- begin-user-doc -->
156 * <!-- end-user-doc -->
157 * @param value the integer value.
158 * @return the matching enumerator or <code>null</code>.
159 * @generated
160 */
161 public static FunctionType get(int value) {
162 switch (value) {
163 case ROOT_VALUE: return ROOT;
164 case INTERMEDIATE_VALUE: return INTERMEDIATE;
165 case LEAF_VALUE: return LEAF;
166 }
167 return null;
168 }
169
170 /**
171 * <!-- begin-user-doc -->
172 * <!-- end-user-doc -->
173 * @generated
174 */
175 private final int value;
176
177 /**
178 * <!-- begin-user-doc -->
179 * <!-- end-user-doc -->
180 * @generated
181 */
182 private final String name;
183
184 /**
185 * <!-- begin-user-doc -->
186 * <!-- end-user-doc -->
187 * @generated
188 */
189 private final String literal;
190
191 /**
192 * Only this class can construct instances.
193 * <!-- begin-user-doc -->
194 * <!-- end-user-doc -->
195 * @generated
196 */
197 private FunctionType(int value, String name, String literal) {
198 this.value = value;
199 this.name = name;
200 this.literal = literal;
201 }
202
203 /**
204 * <!-- begin-user-doc -->
205 * <!-- end-user-doc -->
206 * @generated
207 */
208 public int getValue() {
209 return value;
210 }
211
212 /**
213 * <!-- begin-user-doc -->
214 * <!-- end-user-doc -->
215 * @generated
216 */
217 public String getName() {
218 return name;
219 }
220
221 /**
222 * <!-- begin-user-doc -->
223 * <!-- end-user-doc -->
224 * @generated
225 */
226 public String getLiteral() {
227 return literal;
228 }
229
230 /**
231 * Returns the literal value of the enumerator, which is its string representation.
232 * <!-- begin-user-doc -->
233 * <!-- end-user-doc -->
234 * @generated
235 */
236 @Override
237 public String toString() {
238 return literal;
239 }
240
241} //FunctionType
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/FunctionalArchitectureFactory.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/FunctionalArchitectureFactory.java
new file mode 100644
index 00000000..8eac8435
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/FunctionalArchitectureFactory.java
@@ -0,0 +1,96 @@
1/**
2 */
3package hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture;
4
5import org.eclipse.emf.ecore.EFactory;
6
7/**
8 * <!-- begin-user-doc -->
9 * The <b>Factory</b> for the model.
10 * It provides a create method for each non-abstract class of the model.
11 * <!-- end-user-doc -->
12 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalArchitecturePackage
13 * @generated
14 */
15public interface FunctionalArchitectureFactory extends EFactory {
16 /**
17 * The singleton instance of the factory.
18 * <!-- begin-user-doc -->
19 * <!-- end-user-doc -->
20 * @generated
21 */
22 FunctionalArchitectureFactory eINSTANCE = hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FunctionalArchitectureFactoryImpl.init();
23
24 /**
25 * Returns a new object of class '<em>Model</em>'.
26 * <!-- begin-user-doc -->
27 * <!-- end-user-doc -->
28 * @return a new object of class '<em>Model</em>'.
29 * @generated
30 */
31 FunctionalArchitectureModel createFunctionalArchitectureModel();
32
33 /**
34 * Returns a new object of class '<em>Function</em>'.
35 * <!-- begin-user-doc -->
36 * <!-- end-user-doc -->
37 * @return a new object of class '<em>Function</em>'.
38 * @generated
39 */
40 Function createFunction();
41
42 /**
43 * Returns a new object of class '<em>FAM Terminator</em>'.
44 * <!-- begin-user-doc -->
45 * <!-- end-user-doc -->
46 * @return a new object of class '<em>FAM Terminator</em>'.
47 * @generated
48 */
49 FAMTerminator createFAMTerminator();
50
51 /**
52 * Returns a new object of class '<em>Information Link</em>'.
53 * <!-- begin-user-doc -->
54 * <!-- end-user-doc -->
55 * @return a new object of class '<em>Information Link</em>'.
56 * @generated
57 */
58 InformationLink createInformationLink();
59
60 /**
61 * Returns a new object of class '<em>Functional Interface</em>'.
62 * <!-- begin-user-doc -->
63 * <!-- end-user-doc -->
64 * @return a new object of class '<em>Functional Interface</em>'.
65 * @generated
66 */
67 FunctionalInterface createFunctionalInterface();
68
69 /**
70 * Returns a new object of class '<em>Functional Input</em>'.
71 * <!-- begin-user-doc -->
72 * <!-- end-user-doc -->
73 * @return a new object of class '<em>Functional Input</em>'.
74 * @generated
75 */
76 FunctionalInput createFunctionalInput();
77
78 /**
79 * Returns a new object of class '<em>Functional Output</em>'.
80 * <!-- begin-user-doc -->
81 * <!-- end-user-doc -->
82 * @return a new object of class '<em>Functional Output</em>'.
83 * @generated
84 */
85 FunctionalOutput createFunctionalOutput();
86
87 /**
88 * Returns the package supported by this factory.
89 * <!-- begin-user-doc -->
90 * <!-- end-user-doc -->
91 * @return the package supported by this factory.
92 * @generated
93 */
94 FunctionalArchitecturePackage getFunctionalArchitecturePackage();
95
96} //FunctionalArchitectureFactory
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/FunctionalArchitectureModel.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/FunctionalArchitectureModel.java
new file mode 100644
index 00000000..d786d403
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/FunctionalArchitectureModel.java
@@ -0,0 +1,42 @@
1/**
2 */
3package hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture;
4
5import org.eclipse.emf.common.util.EList;
6
7import org.eclipse.emf.ecore.EObject;
8
9/**
10 * <!-- begin-user-doc -->
11 * A representation of the model object '<em><b>Model</b></em>'.
12 * <!-- end-user-doc -->
13 *
14 * <p>
15 * The following features are supported:
16 * </p>
17 * <ul>
18 * <li>{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalArchitectureModel#getRootElements <em>Root Elements</em>}</li>
19 * </ul>
20 *
21 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalArchitecturePackage#getFunctionalArchitectureModel()
22 * @model
23 * @generated
24 */
25public interface FunctionalArchitectureModel extends EObject {
26 /**
27 * Returns the value of the '<em><b>Root Elements</b></em>' containment reference list.
28 * The list contents are of type {@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalElement}.
29 * <!-- begin-user-doc -->
30 * <p>
31 * If the meaning of the '<em>Root Elements</em>' containment reference list isn't clear,
32 * there really should be more of a description here...
33 * </p>
34 * <!-- end-user-doc -->
35 * @return the value of the '<em>Root Elements</em>' containment reference list.
36 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalArchitecturePackage#getFunctionalArchitectureModel_RootElements()
37 * @model containment="true"
38 * @generated
39 */
40 EList<FunctionalElement> getRootElements();
41
42} // FunctionalArchitectureModel
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/FunctionalArchitecturePackage.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/FunctionalArchitecturePackage.java
new file mode 100644
index 00000000..41e64cb4
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/FunctionalArchitecturePackage.java
@@ -0,0 +1,949 @@
1/**
2 */
3package hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture;
4
5import org.eclipse.emf.ecore.EAttribute;
6import org.eclipse.emf.ecore.EClass;
7import org.eclipse.emf.ecore.EEnum;
8import org.eclipse.emf.ecore.EPackage;
9import org.eclipse.emf.ecore.EReference;
10
11/**
12 * <!-- begin-user-doc -->
13 * The <b>Package</b> for the model.
14 * It contains accessors for the meta objects to represent
15 * <ul>
16 * <li>each class,</li>
17 * <li>each feature of each class,</li>
18 * <li>each enum,</li>
19 * <li>and each data type</li>
20 * </ul>
21 * <!-- end-user-doc -->
22 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalArchitectureFactory
23 * @model kind="package"
24 * annotation="http://www.eclipse.org/emf/2002/Ecore settingDelegates='org.eclipse.viatra.query.querybasedfeature'"
25 * @generated
26 */
27public interface FunctionalArchitecturePackage extends EPackage {
28 /**
29 * The package name.
30 * <!-- begin-user-doc -->
31 * <!-- end-user-doc -->
32 * @generated
33 */
34 String eNAME = "FunctionalArchitecture";
35
36 /**
37 * The package namespace URI.
38 * <!-- begin-user-doc -->
39 * <!-- end-user-doc -->
40 * @generated
41 */
42 String eNS_URI = "FAM";
43
44 /**
45 * The package namespace name.
46 * <!-- begin-user-doc -->
47 * <!-- end-user-doc -->
48 * @generated
49 */
50 String eNS_PREFIX = "fam";
51
52 /**
53 * The singleton instance of the package.
54 * <!-- begin-user-doc -->
55 * <!-- end-user-doc -->
56 * @generated
57 */
58 FunctionalArchitecturePackage eINSTANCE = hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FunctionalArchitecturePackageImpl.init();
59
60 /**
61 * The meta object id for the '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FunctionalElementImpl <em>Functional Element</em>}' class.
62 * <!-- begin-user-doc -->
63 * <!-- end-user-doc -->
64 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FunctionalElementImpl
65 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FunctionalArchitecturePackageImpl#getFunctionalElement()
66 * @generated
67 */
68 int FUNCTIONAL_ELEMENT = 0;
69
70 /**
71 * The feature id for the '<em><b>Interface</b></em>' containment reference.
72 * <!-- begin-user-doc -->
73 * <!-- end-user-doc -->
74 * @generated
75 * @ordered
76 */
77 int FUNCTIONAL_ELEMENT__INTERFACE = 0;
78
79 /**
80 * The feature id for the '<em><b>Model</b></em>' reference.
81 * <!-- begin-user-doc -->
82 * <!-- end-user-doc -->
83 * @generated
84 * @ordered
85 */
86 int FUNCTIONAL_ELEMENT__MODEL = 1;
87
88 /**
89 * The feature id for the '<em><b>Parent</b></em>' container reference.
90 * <!-- begin-user-doc -->
91 * <!-- end-user-doc -->
92 * @generated
93 * @ordered
94 */
95 int FUNCTIONAL_ELEMENT__PARENT = 2;
96
97 /**
98 * The number of structural features of the '<em>Functional Element</em>' class.
99 * <!-- begin-user-doc -->
100 * <!-- end-user-doc -->
101 * @generated
102 * @ordered
103 */
104 int FUNCTIONAL_ELEMENT_FEATURE_COUNT = 3;
105
106 /**
107 * The meta object id for the '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FunctionalArchitectureModelImpl <em>Model</em>}' class.
108 * <!-- begin-user-doc -->
109 * <!-- end-user-doc -->
110 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FunctionalArchitectureModelImpl
111 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FunctionalArchitecturePackageImpl#getFunctionalArchitectureModel()
112 * @generated
113 */
114 int FUNCTIONAL_ARCHITECTURE_MODEL = 1;
115
116 /**
117 * The feature id for the '<em><b>Root Elements</b></em>' containment reference list.
118 * <!-- begin-user-doc -->
119 * <!-- end-user-doc -->
120 * @generated
121 * @ordered
122 */
123 int FUNCTIONAL_ARCHITECTURE_MODEL__ROOT_ELEMENTS = 0;
124
125 /**
126 * The number of structural features of the '<em>Model</em>' class.
127 * <!-- begin-user-doc -->
128 * <!-- end-user-doc -->
129 * @generated
130 * @ordered
131 */
132 int FUNCTIONAL_ARCHITECTURE_MODEL_FEATURE_COUNT = 1;
133
134 /**
135 * The meta object id for the '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FunctionImpl <em>Function</em>}' class.
136 * <!-- begin-user-doc -->
137 * <!-- end-user-doc -->
138 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FunctionImpl
139 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FunctionalArchitecturePackageImpl#getFunction()
140 * @generated
141 */
142 int FUNCTION = 2;
143
144 /**
145 * The feature id for the '<em><b>Interface</b></em>' containment reference.
146 * <!-- begin-user-doc -->
147 * <!-- end-user-doc -->
148 * @generated
149 * @ordered
150 */
151 int FUNCTION__INTERFACE = FUNCTIONAL_ELEMENT__INTERFACE;
152
153 /**
154 * The feature id for the '<em><b>Model</b></em>' reference.
155 * <!-- begin-user-doc -->
156 * <!-- end-user-doc -->
157 * @generated
158 * @ordered
159 */
160 int FUNCTION__MODEL = FUNCTIONAL_ELEMENT__MODEL;
161
162 /**
163 * The feature id for the '<em><b>Parent</b></em>' container reference.
164 * <!-- begin-user-doc -->
165 * <!-- end-user-doc -->
166 * @generated
167 * @ordered
168 */
169 int FUNCTION__PARENT = FUNCTIONAL_ELEMENT__PARENT;
170
171 /**
172 * The feature id for the '<em><b>Sub Elements</b></em>' containment reference list.
173 * <!-- begin-user-doc -->
174 * <!-- end-user-doc -->
175 * @generated
176 * @ordered
177 */
178 int FUNCTION__SUB_ELEMENTS = FUNCTIONAL_ELEMENT_FEATURE_COUNT + 0;
179
180 /**
181 * The feature id for the '<em><b>Type</b></em>' attribute.
182 * <!-- begin-user-doc -->
183 * <!-- end-user-doc -->
184 * @generated
185 * @ordered
186 */
187 int FUNCTION__TYPE = FUNCTIONAL_ELEMENT_FEATURE_COUNT + 1;
188
189 /**
190 * The number of structural features of the '<em>Function</em>' class.
191 * <!-- begin-user-doc -->
192 * <!-- end-user-doc -->
193 * @generated
194 * @ordered
195 */
196 int FUNCTION_FEATURE_COUNT = FUNCTIONAL_ELEMENT_FEATURE_COUNT + 2;
197
198 /**
199 * The meta object id for the '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FAMTerminatorImpl <em>FAM Terminator</em>}' class.
200 * <!-- begin-user-doc -->
201 * <!-- end-user-doc -->
202 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FAMTerminatorImpl
203 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FunctionalArchitecturePackageImpl#getFAMTerminator()
204 * @generated
205 */
206 int FAM_TERMINATOR = 3;
207
208 /**
209 * The feature id for the '<em><b>Data</b></em>' container reference.
210 * <!-- begin-user-doc -->
211 * <!-- end-user-doc -->
212 * @generated
213 * @ordered
214 */
215 int FAM_TERMINATOR__DATA = 0;
216
217 /**
218 * The number of structural features of the '<em>FAM Terminator</em>' class.
219 * <!-- begin-user-doc -->
220 * <!-- end-user-doc -->
221 * @generated
222 * @ordered
223 */
224 int FAM_TERMINATOR_FEATURE_COUNT = 1;
225
226 /**
227 * The meta object id for the '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.InformationLinkImpl <em>Information Link</em>}' class.
228 * <!-- begin-user-doc -->
229 * <!-- end-user-doc -->
230 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.InformationLinkImpl
231 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FunctionalArchitecturePackageImpl#getInformationLink()
232 * @generated
233 */
234 int INFORMATION_LINK = 4;
235
236 /**
237 * The feature id for the '<em><b>From</b></em>' container reference.
238 * <!-- begin-user-doc -->
239 * <!-- end-user-doc -->
240 * @generated
241 * @ordered
242 */
243 int INFORMATION_LINK__FROM = 0;
244
245 /**
246 * The feature id for the '<em><b>To</b></em>' reference.
247 * <!-- begin-user-doc -->
248 * <!-- end-user-doc -->
249 * @generated
250 * @ordered
251 */
252 int INFORMATION_LINK__TO = 1;
253
254 /**
255 * The number of structural features of the '<em>Information Link</em>' class.
256 * <!-- begin-user-doc -->
257 * <!-- end-user-doc -->
258 * @generated
259 * @ordered
260 */
261 int INFORMATION_LINK_FEATURE_COUNT = 2;
262
263 /**
264 * The meta object id for the '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FunctionalInterfaceImpl <em>Functional Interface</em>}' class.
265 * <!-- begin-user-doc -->
266 * <!-- end-user-doc -->
267 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FunctionalInterfaceImpl
268 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FunctionalArchitecturePackageImpl#getFunctionalInterface()
269 * @generated
270 */
271 int FUNCTIONAL_INTERFACE = 5;
272
273 /**
274 * The feature id for the '<em><b>Data</b></em>' containment reference list.
275 * <!-- begin-user-doc -->
276 * <!-- end-user-doc -->
277 * @generated
278 * @ordered
279 */
280 int FUNCTIONAL_INTERFACE__DATA = 0;
281
282 /**
283 * The feature id for the '<em><b>Element</b></em>' container reference.
284 * <!-- begin-user-doc -->
285 * <!-- end-user-doc -->
286 * @generated
287 * @ordered
288 */
289 int FUNCTIONAL_INTERFACE__ELEMENT = 1;
290
291 /**
292 * The number of structural features of the '<em>Functional Interface</em>' class.
293 * <!-- begin-user-doc -->
294 * <!-- end-user-doc -->
295 * @generated
296 * @ordered
297 */
298 int FUNCTIONAL_INTERFACE_FEATURE_COUNT = 2;
299
300 /**
301 * The meta object id for the '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FunctionalDataImpl <em>Functional Data</em>}' class.
302 * <!-- begin-user-doc -->
303 * <!-- end-user-doc -->
304 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FunctionalDataImpl
305 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FunctionalArchitecturePackageImpl#getFunctionalData()
306 * @generated
307 */
308 int FUNCTIONAL_DATA = 8;
309
310 /**
311 * The feature id for the '<em><b>Terminator</b></em>' containment reference.
312 * <!-- begin-user-doc -->
313 * <!-- end-user-doc -->
314 * @generated
315 * @ordered
316 */
317 int FUNCTIONAL_DATA__TERMINATOR = 0;
318
319 /**
320 * The feature id for the '<em><b>Interface</b></em>' container reference.
321 * <!-- begin-user-doc -->
322 * <!-- end-user-doc -->
323 * @generated
324 * @ordered
325 */
326 int FUNCTIONAL_DATA__INTERFACE = 1;
327
328 /**
329 * The number of structural features of the '<em>Functional Data</em>' class.
330 * <!-- begin-user-doc -->
331 * <!-- end-user-doc -->
332 * @generated
333 * @ordered
334 */
335 int FUNCTIONAL_DATA_FEATURE_COUNT = 2;
336
337 /**
338 * The meta object id for the '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FunctionalInputImpl <em>Functional Input</em>}' class.
339 * <!-- begin-user-doc -->
340 * <!-- end-user-doc -->
341 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FunctionalInputImpl
342 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FunctionalArchitecturePackageImpl#getFunctionalInput()
343 * @generated
344 */
345 int FUNCTIONAL_INPUT = 6;
346
347 /**
348 * The feature id for the '<em><b>Terminator</b></em>' containment reference.
349 * <!-- begin-user-doc -->
350 * <!-- end-user-doc -->
351 * @generated
352 * @ordered
353 */
354 int FUNCTIONAL_INPUT__TERMINATOR = FUNCTIONAL_DATA__TERMINATOR;
355
356 /**
357 * The feature id for the '<em><b>Interface</b></em>' container reference.
358 * <!-- begin-user-doc -->
359 * <!-- end-user-doc -->
360 * @generated
361 * @ordered
362 */
363 int FUNCTIONAL_INPUT__INTERFACE = FUNCTIONAL_DATA__INTERFACE;
364
365 /**
366 * The feature id for the '<em><b>Incoming Links</b></em>' reference list.
367 * <!-- begin-user-doc -->
368 * <!-- end-user-doc -->
369 * @generated
370 * @ordered
371 */
372 int FUNCTIONAL_INPUT__INCOMING_LINKS = FUNCTIONAL_DATA_FEATURE_COUNT + 0;
373
374 /**
375 * The number of structural features of the '<em>Functional Input</em>' class.
376 * <!-- begin-user-doc -->
377 * <!-- end-user-doc -->
378 * @generated
379 * @ordered
380 */
381 int FUNCTIONAL_INPUT_FEATURE_COUNT = FUNCTIONAL_DATA_FEATURE_COUNT + 1;
382
383 /**
384 * The meta object id for the '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FunctionalOutputImpl <em>Functional Output</em>}' class.
385 * <!-- begin-user-doc -->
386 * <!-- end-user-doc -->
387 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FunctionalOutputImpl
388 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FunctionalArchitecturePackageImpl#getFunctionalOutput()
389 * @generated
390 */
391 int FUNCTIONAL_OUTPUT = 7;
392
393 /**
394 * The feature id for the '<em><b>Terminator</b></em>' containment reference.
395 * <!-- begin-user-doc -->
396 * <!-- end-user-doc -->
397 * @generated
398 * @ordered
399 */
400 int FUNCTIONAL_OUTPUT__TERMINATOR = FUNCTIONAL_DATA__TERMINATOR;
401
402 /**
403 * The feature id for the '<em><b>Interface</b></em>' container reference.
404 * <!-- begin-user-doc -->
405 * <!-- end-user-doc -->
406 * @generated
407 * @ordered
408 */
409 int FUNCTIONAL_OUTPUT__INTERFACE = FUNCTIONAL_DATA__INTERFACE;
410
411 /**
412 * The feature id for the '<em><b>Outgoing Links</b></em>' containment reference list.
413 * <!-- begin-user-doc -->
414 * <!-- end-user-doc -->
415 * @generated
416 * @ordered
417 */
418 int FUNCTIONAL_OUTPUT__OUTGOING_LINKS = FUNCTIONAL_DATA_FEATURE_COUNT + 0;
419
420 /**
421 * The number of structural features of the '<em>Functional Output</em>' class.
422 * <!-- begin-user-doc -->
423 * <!-- end-user-doc -->
424 * @generated
425 * @ordered
426 */
427 int FUNCTIONAL_OUTPUT_FEATURE_COUNT = FUNCTIONAL_DATA_FEATURE_COUNT + 1;
428
429 /**
430 * The meta object id for the '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionType <em>Function Type</em>}' enum.
431 * <!-- begin-user-doc -->
432 * <!-- end-user-doc -->
433 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionType
434 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FunctionalArchitecturePackageImpl#getFunctionType()
435 * @generated
436 */
437 int FUNCTION_TYPE = 9;
438
439
440 /**
441 * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalElement <em>Functional Element</em>}'.
442 * <!-- begin-user-doc -->
443 * <!-- end-user-doc -->
444 * @return the meta object for class '<em>Functional Element</em>'.
445 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalElement
446 * @generated
447 */
448 EClass getFunctionalElement();
449
450 /**
451 * Returns the meta object for the containment reference '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalElement#getInterface <em>Interface</em>}'.
452 * <!-- begin-user-doc -->
453 * <!-- end-user-doc -->
454 * @return the meta object for the containment reference '<em>Interface</em>'.
455 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalElement#getInterface()
456 * @see #getFunctionalElement()
457 * @generated
458 */
459 EReference getFunctionalElement_Interface();
460
461 /**
462 * Returns the meta object for the reference '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalElement#getModel <em>Model</em>}'.
463 * <!-- begin-user-doc -->
464 * <!-- end-user-doc -->
465 * @return the meta object for the reference '<em>Model</em>'.
466 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalElement#getModel()
467 * @see #getFunctionalElement()
468 * @generated
469 */
470 EReference getFunctionalElement_Model();
471
472 /**
473 * Returns the meta object for the container reference '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalElement#getParent <em>Parent</em>}'.
474 * <!-- begin-user-doc -->
475 * <!-- end-user-doc -->
476 * @return the meta object for the container reference '<em>Parent</em>'.
477 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalElement#getParent()
478 * @see #getFunctionalElement()
479 * @generated
480 */
481 EReference getFunctionalElement_Parent();
482
483 /**
484 * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalArchitectureModel <em>Model</em>}'.
485 * <!-- begin-user-doc -->
486 * <!-- end-user-doc -->
487 * @return the meta object for class '<em>Model</em>'.
488 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalArchitectureModel
489 * @generated
490 */
491 EClass getFunctionalArchitectureModel();
492
493 /**
494 * Returns the meta object for the containment reference list '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalArchitectureModel#getRootElements <em>Root Elements</em>}'.
495 * <!-- begin-user-doc -->
496 * <!-- end-user-doc -->
497 * @return the meta object for the containment reference list '<em>Root Elements</em>'.
498 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalArchitectureModel#getRootElements()
499 * @see #getFunctionalArchitectureModel()
500 * @generated
501 */
502 EReference getFunctionalArchitectureModel_RootElements();
503
504 /**
505 * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.Function <em>Function</em>}'.
506 * <!-- begin-user-doc -->
507 * <!-- end-user-doc -->
508 * @return the meta object for class '<em>Function</em>'.
509 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.Function
510 * @generated
511 */
512 EClass getFunction();
513
514 /**
515 * Returns the meta object for the containment reference list '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.Function#getSubElements <em>Sub Elements</em>}'.
516 * <!-- begin-user-doc -->
517 * <!-- end-user-doc -->
518 * @return the meta object for the containment reference list '<em>Sub Elements</em>'.
519 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.Function#getSubElements()
520 * @see #getFunction()
521 * @generated
522 */
523 EReference getFunction_SubElements();
524
525 /**
526 * Returns the meta object for the attribute '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.Function#getType <em>Type</em>}'.
527 * <!-- begin-user-doc -->
528 * <!-- end-user-doc -->
529 * @return the meta object for the attribute '<em>Type</em>'.
530 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.Function#getType()
531 * @see #getFunction()
532 * @generated
533 */
534 EAttribute getFunction_Type();
535
536 /**
537 * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FAMTerminator <em>FAM Terminator</em>}'.
538 * <!-- begin-user-doc -->
539 * <!-- end-user-doc -->
540 * @return the meta object for class '<em>FAM Terminator</em>'.
541 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FAMTerminator
542 * @generated
543 */
544 EClass getFAMTerminator();
545
546 /**
547 * Returns the meta object for the container reference '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FAMTerminator#getData <em>Data</em>}'.
548 * <!-- begin-user-doc -->
549 * <!-- end-user-doc -->
550 * @return the meta object for the container reference '<em>Data</em>'.
551 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FAMTerminator#getData()
552 * @see #getFAMTerminator()
553 * @generated
554 */
555 EReference getFAMTerminator_Data();
556
557 /**
558 * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.InformationLink <em>Information Link</em>}'.
559 * <!-- begin-user-doc -->
560 * <!-- end-user-doc -->
561 * @return the meta object for class '<em>Information Link</em>'.
562 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.InformationLink
563 * @generated
564 */
565 EClass getInformationLink();
566
567 /**
568 * Returns the meta object for the container reference '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.InformationLink#getFrom <em>From</em>}'.
569 * <!-- begin-user-doc -->
570 * <!-- end-user-doc -->
571 * @return the meta object for the container reference '<em>From</em>'.
572 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.InformationLink#getFrom()
573 * @see #getInformationLink()
574 * @generated
575 */
576 EReference getInformationLink_From();
577
578 /**
579 * Returns the meta object for the reference '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.InformationLink#getTo <em>To</em>}'.
580 * <!-- begin-user-doc -->
581 * <!-- end-user-doc -->
582 * @return the meta object for the reference '<em>To</em>'.
583 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.InformationLink#getTo()
584 * @see #getInformationLink()
585 * @generated
586 */
587 EReference getInformationLink_To();
588
589 /**
590 * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalInterface <em>Functional Interface</em>}'.
591 * <!-- begin-user-doc -->
592 * <!-- end-user-doc -->
593 * @return the meta object for class '<em>Functional Interface</em>'.
594 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalInterface
595 * @generated
596 */
597 EClass getFunctionalInterface();
598
599 /**
600 * Returns the meta object for the containment reference list '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalInterface#getData <em>Data</em>}'.
601 * <!-- begin-user-doc -->
602 * <!-- end-user-doc -->
603 * @return the meta object for the containment reference list '<em>Data</em>'.
604 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalInterface#getData()
605 * @see #getFunctionalInterface()
606 * @generated
607 */
608 EReference getFunctionalInterface_Data();
609
610 /**
611 * Returns the meta object for the container reference '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalInterface#getElement <em>Element</em>}'.
612 * <!-- begin-user-doc -->
613 * <!-- end-user-doc -->
614 * @return the meta object for the container reference '<em>Element</em>'.
615 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalInterface#getElement()
616 * @see #getFunctionalInterface()
617 * @generated
618 */
619 EReference getFunctionalInterface_Element();
620
621 /**
622 * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalInput <em>Functional Input</em>}'.
623 * <!-- begin-user-doc -->
624 * <!-- end-user-doc -->
625 * @return the meta object for class '<em>Functional Input</em>'.
626 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalInput
627 * @generated
628 */
629 EClass getFunctionalInput();
630
631 /**
632 * Returns the meta object for the reference list '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalInput#getIncomingLinks <em>Incoming Links</em>}'.
633 * <!-- begin-user-doc -->
634 * <!-- end-user-doc -->
635 * @return the meta object for the reference list '<em>Incoming Links</em>'.
636 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalInput#getIncomingLinks()
637 * @see #getFunctionalInput()
638 * @generated
639 */
640 EReference getFunctionalInput_IncomingLinks();
641
642 /**
643 * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalOutput <em>Functional Output</em>}'.
644 * <!-- begin-user-doc -->
645 * <!-- end-user-doc -->
646 * @return the meta object for class '<em>Functional Output</em>'.
647 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalOutput
648 * @generated
649 */
650 EClass getFunctionalOutput();
651
652 /**
653 * Returns the meta object for the containment reference list '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalOutput#getOutgoingLinks <em>Outgoing Links</em>}'.
654 * <!-- begin-user-doc -->
655 * <!-- end-user-doc -->
656 * @return the meta object for the containment reference list '<em>Outgoing Links</em>'.
657 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalOutput#getOutgoingLinks()
658 * @see #getFunctionalOutput()
659 * @generated
660 */
661 EReference getFunctionalOutput_OutgoingLinks();
662
663 /**
664 * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalData <em>Functional Data</em>}'.
665 * <!-- begin-user-doc -->
666 * <!-- end-user-doc -->
667 * @return the meta object for class '<em>Functional Data</em>'.
668 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalData
669 * @generated
670 */
671 EClass getFunctionalData();
672
673 /**
674 * Returns the meta object for the containment reference '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalData#getTerminator <em>Terminator</em>}'.
675 * <!-- begin-user-doc -->
676 * <!-- end-user-doc -->
677 * @return the meta object for the containment reference '<em>Terminator</em>'.
678 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalData#getTerminator()
679 * @see #getFunctionalData()
680 * @generated
681 */
682 EReference getFunctionalData_Terminator();
683
684 /**
685 * Returns the meta object for the container reference '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalData#getInterface <em>Interface</em>}'.
686 * <!-- begin-user-doc -->
687 * <!-- end-user-doc -->
688 * @return the meta object for the container reference '<em>Interface</em>'.
689 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalData#getInterface()
690 * @see #getFunctionalData()
691 * @generated
692 */
693 EReference getFunctionalData_Interface();
694
695 /**
696 * Returns the meta object for enum '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionType <em>Function Type</em>}'.
697 * <!-- begin-user-doc -->
698 * <!-- end-user-doc -->
699 * @return the meta object for enum '<em>Function Type</em>'.
700 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionType
701 * @generated
702 */
703 EEnum getFunctionType();
704
705 /**
706 * Returns the factory that creates the instances of the model.
707 * <!-- begin-user-doc -->
708 * <!-- end-user-doc -->
709 * @return the factory that creates the instances of the model.
710 * @generated
711 */
712 FunctionalArchitectureFactory getFunctionalArchitectureFactory();
713
714 /**
715 * <!-- begin-user-doc -->
716 * Defines literals for the meta objects that represent
717 * <ul>
718 * <li>each class,</li>
719 * <li>each feature of each class,</li>
720 * <li>each enum,</li>
721 * <li>and each data type</li>
722 * </ul>
723 * <!-- end-user-doc -->
724 * @generated
725 */
726 interface Literals {
727 /**
728 * The meta object literal for the '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FunctionalElementImpl <em>Functional Element</em>}' class.
729 * <!-- begin-user-doc -->
730 * <!-- end-user-doc -->
731 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FunctionalElementImpl
732 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FunctionalArchitecturePackageImpl#getFunctionalElement()
733 * @generated
734 */
735 EClass FUNCTIONAL_ELEMENT = eINSTANCE.getFunctionalElement();
736
737 /**
738 * The meta object literal for the '<em><b>Interface</b></em>' containment reference feature.
739 * <!-- begin-user-doc -->
740 * <!-- end-user-doc -->
741 * @generated
742 */
743 EReference FUNCTIONAL_ELEMENT__INTERFACE = eINSTANCE.getFunctionalElement_Interface();
744
745 /**
746 * The meta object literal for the '<em><b>Model</b></em>' reference feature.
747 * <!-- begin-user-doc -->
748 * <!-- end-user-doc -->
749 * @generated
750 */
751 EReference FUNCTIONAL_ELEMENT__MODEL = eINSTANCE.getFunctionalElement_Model();
752
753 /**
754 * The meta object literal for the '<em><b>Parent</b></em>' container reference feature.
755 * <!-- begin-user-doc -->
756 * <!-- end-user-doc -->
757 * @generated
758 */
759 EReference FUNCTIONAL_ELEMENT__PARENT = eINSTANCE.getFunctionalElement_Parent();
760
761 /**
762 * The meta object literal for the '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FunctionalArchitectureModelImpl <em>Model</em>}' class.
763 * <!-- begin-user-doc -->
764 * <!-- end-user-doc -->
765 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FunctionalArchitectureModelImpl
766 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FunctionalArchitecturePackageImpl#getFunctionalArchitectureModel()
767 * @generated
768 */
769 EClass FUNCTIONAL_ARCHITECTURE_MODEL = eINSTANCE.getFunctionalArchitectureModel();
770
771 /**
772 * The meta object literal for the '<em><b>Root Elements</b></em>' containment reference list feature.
773 * <!-- begin-user-doc -->
774 * <!-- end-user-doc -->
775 * @generated
776 */
777 EReference FUNCTIONAL_ARCHITECTURE_MODEL__ROOT_ELEMENTS = eINSTANCE.getFunctionalArchitectureModel_RootElements();
778
779 /**
780 * The meta object literal for the '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FunctionImpl <em>Function</em>}' class.
781 * <!-- begin-user-doc -->
782 * <!-- end-user-doc -->
783 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FunctionImpl
784 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FunctionalArchitecturePackageImpl#getFunction()
785 * @generated
786 */
787 EClass FUNCTION = eINSTANCE.getFunction();
788
789 /**
790 * The meta object literal for the '<em><b>Sub Elements</b></em>' containment reference list feature.
791 * <!-- begin-user-doc -->
792 * <!-- end-user-doc -->
793 * @generated
794 */
795 EReference FUNCTION__SUB_ELEMENTS = eINSTANCE.getFunction_SubElements();
796
797 /**
798 * The meta object literal for the '<em><b>Type</b></em>' attribute feature.
799 * <!-- begin-user-doc -->
800 * <!-- end-user-doc -->
801 * @generated
802 */
803 EAttribute FUNCTION__TYPE = eINSTANCE.getFunction_Type();
804
805 /**
806 * The meta object literal for the '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FAMTerminatorImpl <em>FAM Terminator</em>}' class.
807 * <!-- begin-user-doc -->
808 * <!-- end-user-doc -->
809 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FAMTerminatorImpl
810 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FunctionalArchitecturePackageImpl#getFAMTerminator()
811 * @generated
812 */
813 EClass FAM_TERMINATOR = eINSTANCE.getFAMTerminator();
814
815 /**
816 * The meta object literal for the '<em><b>Data</b></em>' container reference feature.
817 * <!-- begin-user-doc -->
818 * <!-- end-user-doc -->
819 * @generated
820 */
821 EReference FAM_TERMINATOR__DATA = eINSTANCE.getFAMTerminator_Data();
822
823 /**
824 * The meta object literal for the '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.InformationLinkImpl <em>Information Link</em>}' class.
825 * <!-- begin-user-doc -->
826 * <!-- end-user-doc -->
827 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.InformationLinkImpl
828 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FunctionalArchitecturePackageImpl#getInformationLink()
829 * @generated
830 */
831 EClass INFORMATION_LINK = eINSTANCE.getInformationLink();
832
833 /**
834 * The meta object literal for the '<em><b>From</b></em>' container reference feature.
835 * <!-- begin-user-doc -->
836 * <!-- end-user-doc -->
837 * @generated
838 */
839 EReference INFORMATION_LINK__FROM = eINSTANCE.getInformationLink_From();
840
841 /**
842 * The meta object literal for the '<em><b>To</b></em>' reference feature.
843 * <!-- begin-user-doc -->
844 * <!-- end-user-doc -->
845 * @generated
846 */
847 EReference INFORMATION_LINK__TO = eINSTANCE.getInformationLink_To();
848
849 /**
850 * The meta object literal for the '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FunctionalInterfaceImpl <em>Functional Interface</em>}' class.
851 * <!-- begin-user-doc -->
852 * <!-- end-user-doc -->
853 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FunctionalInterfaceImpl
854 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FunctionalArchitecturePackageImpl#getFunctionalInterface()
855 * @generated
856 */
857 EClass FUNCTIONAL_INTERFACE = eINSTANCE.getFunctionalInterface();
858
859 /**
860 * The meta object literal for the '<em><b>Data</b></em>' containment reference list feature.
861 * <!-- begin-user-doc -->
862 * <!-- end-user-doc -->
863 * @generated
864 */
865 EReference FUNCTIONAL_INTERFACE__DATA = eINSTANCE.getFunctionalInterface_Data();
866
867 /**
868 * The meta object literal for the '<em><b>Element</b></em>' container reference feature.
869 * <!-- begin-user-doc -->
870 * <!-- end-user-doc -->
871 * @generated
872 */
873 EReference FUNCTIONAL_INTERFACE__ELEMENT = eINSTANCE.getFunctionalInterface_Element();
874
875 /**
876 * The meta object literal for the '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FunctionalInputImpl <em>Functional Input</em>}' class.
877 * <!-- begin-user-doc -->
878 * <!-- end-user-doc -->
879 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FunctionalInputImpl
880 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FunctionalArchitecturePackageImpl#getFunctionalInput()
881 * @generated
882 */
883 EClass FUNCTIONAL_INPUT = eINSTANCE.getFunctionalInput();
884
885 /**
886 * The meta object literal for the '<em><b>Incoming Links</b></em>' reference list feature.
887 * <!-- begin-user-doc -->
888 * <!-- end-user-doc -->
889 * @generated
890 */
891 EReference FUNCTIONAL_INPUT__INCOMING_LINKS = eINSTANCE.getFunctionalInput_IncomingLinks();
892
893 /**
894 * The meta object literal for the '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FunctionalOutputImpl <em>Functional Output</em>}' class.
895 * <!-- begin-user-doc -->
896 * <!-- end-user-doc -->
897 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FunctionalOutputImpl
898 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FunctionalArchitecturePackageImpl#getFunctionalOutput()
899 * @generated
900 */
901 EClass FUNCTIONAL_OUTPUT = eINSTANCE.getFunctionalOutput();
902
903 /**
904 * The meta object literal for the '<em><b>Outgoing Links</b></em>' containment reference list feature.
905 * <!-- begin-user-doc -->
906 * <!-- end-user-doc -->
907 * @generated
908 */
909 EReference FUNCTIONAL_OUTPUT__OUTGOING_LINKS = eINSTANCE.getFunctionalOutput_OutgoingLinks();
910
911 /**
912 * The meta object literal for the '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FunctionalDataImpl <em>Functional Data</em>}' class.
913 * <!-- begin-user-doc -->
914 * <!-- end-user-doc -->
915 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FunctionalDataImpl
916 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FunctionalArchitecturePackageImpl#getFunctionalData()
917 * @generated
918 */
919 EClass FUNCTIONAL_DATA = eINSTANCE.getFunctionalData();
920
921 /**
922 * The meta object literal for the '<em><b>Terminator</b></em>' containment reference feature.
923 * <!-- begin-user-doc -->
924 * <!-- end-user-doc -->
925 * @generated
926 */
927 EReference FUNCTIONAL_DATA__TERMINATOR = eINSTANCE.getFunctionalData_Terminator();
928
929 /**
930 * The meta object literal for the '<em><b>Interface</b></em>' container reference feature.
931 * <!-- begin-user-doc -->
932 * <!-- end-user-doc -->
933 * @generated
934 */
935 EReference FUNCTIONAL_DATA__INTERFACE = eINSTANCE.getFunctionalData_Interface();
936
937 /**
938 * The meta object literal for the '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionType <em>Function Type</em>}' enum.
939 * <!-- begin-user-doc -->
940 * <!-- end-user-doc -->
941 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionType
942 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FunctionalArchitecturePackageImpl#getFunctionType()
943 * @generated
944 */
945 EEnum FUNCTION_TYPE = eINSTANCE.getFunctionType();
946
947 }
948
949} //FunctionalArchitecturePackage
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/FunctionalData.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/FunctionalData.java
new file mode 100644
index 00000000..91bd82b0
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/FunctionalData.java
@@ -0,0 +1,83 @@
1/**
2 */
3package hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture;
4
5import org.eclipse.emf.common.util.EList;
6
7import org.eclipse.emf.ecore.EObject;
8
9/**
10 * <!-- begin-user-doc -->
11 * A representation of the model object '<em><b>Functional Data</b></em>'.
12 * <!-- end-user-doc -->
13 *
14 * <p>
15 * The following features are supported:
16 * </p>
17 * <ul>
18 * <li>{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalData#getTerminator <em>Terminator</em>}</li>
19 * <li>{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalData#getInterface <em>Interface</em>}</li>
20 * </ul>
21 *
22 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalArchitecturePackage#getFunctionalData()
23 * @model abstract="true"
24 * @generated
25 */
26public interface FunctionalData extends EObject {
27 /**
28 * Returns the value of the '<em><b>Terminator</b></em>' containment reference.
29 * It is bidirectional and its opposite is '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FAMTerminator#getData <em>Data</em>}'.
30 * <!-- begin-user-doc -->
31 * <p>
32 * If the meaning of the '<em>Terminator</em>' containment reference list isn't clear,
33 * there really should be more of a description here...
34 * </p>
35 * <!-- end-user-doc -->
36 * @return the value of the '<em>Terminator</em>' containment reference.
37 * @see #setTerminator(FAMTerminator)
38 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalArchitecturePackage#getFunctionalData_Terminator()
39 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FAMTerminator#getData
40 * @model opposite="data" containment="true"
41 * @generated
42 */
43 FAMTerminator getTerminator();
44
45 /**
46 * Sets the value of the '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalData#getTerminator <em>Terminator</em>}' containment reference.
47 * <!-- begin-user-doc -->
48 * <!-- end-user-doc -->
49 * @param value the new value of the '<em>Terminator</em>' containment reference.
50 * @see #getTerminator()
51 * @generated
52 */
53 void setTerminator(FAMTerminator value);
54
55 /**
56 * Returns the value of the '<em><b>Interface</b></em>' container reference.
57 * It is bidirectional and its opposite is '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalInterface#getData <em>Data</em>}'.
58 * <!-- begin-user-doc -->
59 * <p>
60 * If the meaning of the '<em>Interface</em>' container reference isn't clear,
61 * there really should be more of a description here...
62 * </p>
63 * <!-- end-user-doc -->
64 * @return the value of the '<em>Interface</em>' container reference.
65 * @see #setInterface(FunctionalInterface)
66 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalArchitecturePackage#getFunctionalData_Interface()
67 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalInterface#getData
68 * @model opposite="data" transient="false"
69 * @generated
70 */
71 FunctionalInterface getInterface();
72
73 /**
74 * Sets the value of the '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalData#getInterface <em>Interface</em>}' container reference.
75 * <!-- begin-user-doc -->
76 * <!-- end-user-doc -->
77 * @param value the new value of the '<em>Interface</em>' container reference.
78 * @see #getInterface()
79 * @generated
80 */
81 void setInterface(FunctionalInterface value);
82
83} // FunctionalData
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/FunctionalElement.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/FunctionalElement.java
new file mode 100644
index 00000000..953f1d26
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/FunctionalElement.java
@@ -0,0 +1,109 @@
1/**
2 */
3package hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture;
4
5import org.eclipse.emf.ecore.EObject;
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Functional Element</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 * <p>
13 * The following features are supported:
14 * </p>
15 * <ul>
16 * <li>{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalElement#getInterface <em>Interface</em>}</li>
17 * <li>{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalElement#getModel <em>Model</em>}</li>
18 * <li>{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalElement#getParent <em>Parent</em>}</li>
19 * </ul>
20 *
21 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalArchitecturePackage#getFunctionalElement()
22 * @model abstract="true"
23 * @generated
24 */
25public interface FunctionalElement extends EObject {
26 /**
27 * Returns the value of the '<em><b>Interface</b></em>' containment reference.
28 * It is bidirectional and its opposite is '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalInterface#getElement <em>Element</em>}'.
29 * <!-- begin-user-doc -->
30 * <p>
31 * If the meaning of the '<em>Interface</em>' containment reference isn't clear,
32 * there really should be more of a description here...
33 * </p>
34 * <!-- end-user-doc -->
35 * @return the value of the '<em>Interface</em>' containment reference.
36 * @see #setInterface(FunctionalInterface)
37 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalArchitecturePackage#getFunctionalElement_Interface()
38 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalInterface#getElement
39 * @model opposite="element" containment="true"
40 * @generated
41 */
42 FunctionalInterface getInterface();
43
44 /**
45 * Sets the value of the '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalElement#getInterface <em>Interface</em>}' containment reference.
46 * <!-- begin-user-doc -->
47 * <!-- end-user-doc -->
48 * @param value the new value of the '<em>Interface</em>' containment reference.
49 * @see #getInterface()
50 * @generated
51 */
52 void setInterface(FunctionalInterface value);
53
54 /**
55 * Returns the value of the '<em><b>Model</b></em>' reference.
56 * <!-- begin-user-doc -->
57 * <p>
58 * If the meaning of the '<em>Model</em>' reference isn't clear,
59 * there really should be more of a description here...
60 * </p>
61 * <!-- end-user-doc -->
62 * @return the value of the '<em>Model</em>' reference.
63 * @see #setModel(FunctionalArchitectureModel)
64 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalArchitecturePackage#getFunctionalElement_Model()
65 * @model required="true" transient="true" volatile="true" derived="true"
66 * annotation="org.eclipse.viatra.query.querybasedfeature patternFQN='hu.bme.mit.inf.dslreasoner.domains.transima.fam.patterns.model'"
67 * @generated
68 */
69 FunctionalArchitectureModel getModel();
70
71 /**
72 * Sets the value of the '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalElement#getModel <em>Model</em>}' reference.
73 * <!-- begin-user-doc -->
74 * <!-- end-user-doc -->
75 * @param value the new value of the '<em>Model</em>' reference.
76 * @see #getModel()
77 * @generated
78 */
79 void setModel(FunctionalArchitectureModel value);
80
81 /**
82 * Returns the value of the '<em><b>Parent</b></em>' container reference.
83 * It is bidirectional and its opposite is '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.Function#getSubElements <em>Sub Elements</em>}'.
84 * <!-- begin-user-doc -->
85 * <p>
86 * If the meaning of the '<em>Parent</em>' container reference isn't clear,
87 * there really should be more of a description here...
88 * </p>
89 * <!-- end-user-doc -->
90 * @return the value of the '<em>Parent</em>' container reference.
91 * @see #setParent(Function)
92 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalArchitecturePackage#getFunctionalElement_Parent()
93 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.Function#getSubElements
94 * @model opposite="subElements" transient="false"
95 * @generated
96 */
97 Function getParent();
98
99 /**
100 * Sets the value of the '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalElement#getParent <em>Parent</em>}' container reference.
101 * <!-- begin-user-doc -->
102 * <!-- end-user-doc -->
103 * @param value the new value of the '<em>Parent</em>' container reference.
104 * @see #getParent()
105 * @generated
106 */
107 void setParent(Function value);
108
109} // FunctionalElement
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/FunctionalInput.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/FunctionalInput.java
new file mode 100644
index 00000000..4a82c0d0
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/FunctionalInput.java
@@ -0,0 +1,42 @@
1/**
2 */
3package hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture;
4
5import org.eclipse.emf.common.util.EList;
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Functional Input</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 * <p>
13 * The following features are supported:
14 * </p>
15 * <ul>
16 * <li>{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalInput#getIncomingLinks <em>Incoming Links</em>}</li>
17 * </ul>
18 *
19 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalArchitecturePackage#getFunctionalInput()
20 * @model
21 * @generated
22 */
23public interface FunctionalInput extends FunctionalData {
24 /**
25 * Returns the value of the '<em><b>Incoming Links</b></em>' reference list.
26 * The list contents are of type {@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.InformationLink}.
27 * It is bidirectional and its opposite is '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.InformationLink#getTo <em>To</em>}'.
28 * <!-- begin-user-doc -->
29 * <p>
30 * If the meaning of the '<em>Incoming Links</em>' reference list isn't clear,
31 * there really should be more of a description here...
32 * </p>
33 * <!-- end-user-doc -->
34 * @return the value of the '<em>Incoming Links</em>' reference list.
35 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalArchitecturePackage#getFunctionalInput_IncomingLinks()
36 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.InformationLink#getTo
37 * @model opposite="to"
38 * @generated
39 */
40 EList<InformationLink> getIncomingLinks();
41
42} // FunctionalInput
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/FunctionalInterface.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/FunctionalInterface.java
new file mode 100644
index 00000000..e5b8fe48
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/FunctionalInterface.java
@@ -0,0 +1,73 @@
1/**
2 */
3package hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture;
4
5import org.eclipse.emf.common.util.EList;
6
7import org.eclipse.emf.ecore.EObject;
8
9/**
10 * <!-- begin-user-doc -->
11 * A representation of the model object '<em><b>Functional Interface</b></em>'.
12 * <!-- end-user-doc -->
13 *
14 * <p>
15 * The following features are supported:
16 * </p>
17 * <ul>
18 * <li>{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalInterface#getData <em>Data</em>}</li>
19 * <li>{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalInterface#getElement <em>Element</em>}</li>
20 * </ul>
21 *
22 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalArchitecturePackage#getFunctionalInterface()
23 * @model
24 * @generated
25 */
26public interface FunctionalInterface extends EObject {
27 /**
28 * Returns the value of the '<em><b>Data</b></em>' containment reference list.
29 * The list contents are of type {@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalData}.
30 * It is bidirectional and its opposite is '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalData#getInterface <em>Interface</em>}'.
31 * <!-- begin-user-doc -->
32 * <p>
33 * If the meaning of the '<em>Data</em>' containment reference list isn't clear,
34 * there really should be more of a description here...
35 * </p>
36 * <!-- end-user-doc -->
37 * @return the value of the '<em>Data</em>' containment reference list.
38 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalArchitecturePackage#getFunctionalInterface_Data()
39 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalData#getInterface
40 * @model opposite="interface" containment="true"
41 * @generated
42 */
43 EList<FunctionalData> getData();
44
45 /**
46 * Returns the value of the '<em><b>Element</b></em>' container reference.
47 * It is bidirectional and its opposite is '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalElement#getInterface <em>Interface</em>}'.
48 * <!-- begin-user-doc -->
49 * <p>
50 * If the meaning of the '<em>Element</em>' container reference isn't clear,
51 * there really should be more of a description here...
52 * </p>
53 * <!-- end-user-doc -->
54 * @return the value of the '<em>Element</em>' container reference.
55 * @see #setElement(FunctionalElement)
56 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalArchitecturePackage#getFunctionalInterface_Element()
57 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalElement#getInterface
58 * @model opposite="interface" transient="false"
59 * @generated
60 */
61 FunctionalElement getElement();
62
63 /**
64 * Sets the value of the '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalInterface#getElement <em>Element</em>}' container reference.
65 * <!-- begin-user-doc -->
66 * <!-- end-user-doc -->
67 * @param value the new value of the '<em>Element</em>' container reference.
68 * @see #getElement()
69 * @generated
70 */
71 void setElement(FunctionalElement value);
72
73} // FunctionalInterface
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/FunctionalOutput.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/FunctionalOutput.java
new file mode 100644
index 00000000..3a56b1dd
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/FunctionalOutput.java
@@ -0,0 +1,42 @@
1/**
2 */
3package hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture;
4
5import org.eclipse.emf.common.util.EList;
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Functional Output</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 * <p>
13 * The following features are supported:
14 * </p>
15 * <ul>
16 * <li>{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalOutput#getOutgoingLinks <em>Outgoing Links</em>}</li>
17 * </ul>
18 *
19 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalArchitecturePackage#getFunctionalOutput()
20 * @model
21 * @generated
22 */
23public interface FunctionalOutput extends FunctionalData {
24 /**
25 * Returns the value of the '<em><b>Outgoing Links</b></em>' containment reference list.
26 * The list contents are of type {@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.InformationLink}.
27 * It is bidirectional and its opposite is '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.InformationLink#getFrom <em>From</em>}'.
28 * <!-- begin-user-doc -->
29 * <p>
30 * If the meaning of the '<em>Outgoing Links</em>' containment reference list isn't clear,
31 * there really should be more of a description here...
32 * </p>
33 * <!-- end-user-doc -->
34 * @return the value of the '<em>Outgoing Links</em>' containment reference list.
35 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalArchitecturePackage#getFunctionalOutput_OutgoingLinks()
36 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.InformationLink#getFrom
37 * @model opposite="from" containment="true"
38 * @generated
39 */
40 EList<InformationLink> getOutgoingLinks();
41
42} // FunctionalOutput
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/InformationLink.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/InformationLink.java
new file mode 100644
index 00000000..29d452c3
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/InformationLink.java
@@ -0,0 +1,81 @@
1/**
2 */
3package hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture;
4
5import org.eclipse.emf.ecore.EObject;
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Information Link</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 * <p>
13 * The following features are supported:
14 * </p>
15 * <ul>
16 * <li>{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.InformationLink#getFrom <em>From</em>}</li>
17 * <li>{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.InformationLink#getTo <em>To</em>}</li>
18 * </ul>
19 *
20 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalArchitecturePackage#getInformationLink()
21 * @model
22 * @generated
23 */
24public interface InformationLink extends EObject {
25 /**
26 * Returns the value of the '<em><b>From</b></em>' container reference.
27 * It is bidirectional and its opposite is '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalOutput#getOutgoingLinks <em>Outgoing Links</em>}'.
28 * <!-- begin-user-doc -->
29 * <p>
30 * If the meaning of the '<em>From</em>' container reference isn't clear,
31 * there really should be more of a description here...
32 * </p>
33 * <!-- end-user-doc -->
34 * @return the value of the '<em>From</em>' container reference.
35 * @see #setFrom(FunctionalOutput)
36 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalArchitecturePackage#getInformationLink_From()
37 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalOutput#getOutgoingLinks
38 * @model opposite="outgoingLinks" transient="false"
39 * @generated
40 */
41 FunctionalOutput getFrom();
42
43 /**
44 * Sets the value of the '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.InformationLink#getFrom <em>From</em>}' container reference.
45 * <!-- begin-user-doc -->
46 * <!-- end-user-doc -->
47 * @param value the new value of the '<em>From</em>' container reference.
48 * @see #getFrom()
49 * @generated
50 */
51 void setFrom(FunctionalOutput value);
52
53 /**
54 * Returns the value of the '<em><b>To</b></em>' reference.
55 * It is bidirectional and its opposite is '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalInput#getIncomingLinks <em>Incoming Links</em>}'.
56 * <!-- begin-user-doc -->
57 * <p>
58 * If the meaning of the '<em>To</em>' reference isn't clear,
59 * there really should be more of a description here...
60 * </p>
61 * <!-- end-user-doc -->
62 * @return the value of the '<em>To</em>' reference.
63 * @see #setTo(FunctionalInput)
64 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalArchitecturePackage#getInformationLink_To()
65 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalInput#getIncomingLinks
66 * @model opposite="IncomingLinks" required="true"
67 * @generated
68 */
69 FunctionalInput getTo();
70
71 /**
72 * Sets the value of the '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.InformationLink#getTo <em>To</em>}' reference.
73 * <!-- begin-user-doc -->
74 * <!-- end-user-doc -->
75 * @param value the new value of the '<em>To</em>' reference.
76 * @see #getTo()
77 * @generated
78 */
79 void setTo(FunctionalInput value);
80
81} // InformationLink
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/impl/FAMTerminatorImpl.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/impl/FAMTerminatorImpl.java
new file mode 100644
index 00000000..b13fbde7
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/impl/FAMTerminatorImpl.java
@@ -0,0 +1,196 @@
1/**
2 */
3package hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl;
4
5import hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FAMTerminator;
6import hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalArchitecturePackage;
7import hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalData;
8
9import org.eclipse.emf.common.notify.Notification;
10import org.eclipse.emf.common.notify.NotificationChain;
11
12import org.eclipse.emf.ecore.EClass;
13import org.eclipse.emf.ecore.InternalEObject;
14
15import org.eclipse.emf.ecore.impl.ENotificationImpl;
16import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
17
18import org.eclipse.emf.ecore.util.EcoreUtil;
19
20/**
21 * <!-- begin-user-doc -->
22 * An implementation of the model object '<em><b>FAM Terminator</b></em>'.
23 * <!-- end-user-doc -->
24 * <p>
25 * The following features are implemented:
26 * </p>
27 * <ul>
28 * <li>{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FAMTerminatorImpl#getData <em>Data</em>}</li>
29 * </ul>
30 *
31 * @generated
32 */
33public class FAMTerminatorImpl extends MinimalEObjectImpl.Container implements FAMTerminator {
34 /**
35 * <!-- begin-user-doc -->
36 * <!-- end-user-doc -->
37 * @generated
38 */
39 protected FAMTerminatorImpl() {
40 super();
41 }
42
43 /**
44 * <!-- begin-user-doc -->
45 * <!-- end-user-doc -->
46 * @generated
47 */
48 @Override
49 protected EClass eStaticClass() {
50 return FunctionalArchitecturePackage.Literals.FAM_TERMINATOR;
51 }
52
53 /**
54 * <!-- begin-user-doc -->
55 * <!-- end-user-doc -->
56 * @generated
57 */
58 public FunctionalData getData() {
59 if (eContainerFeatureID() != FunctionalArchitecturePackage.FAM_TERMINATOR__DATA) return null;
60 return (FunctionalData)eInternalContainer();
61 }
62
63 /**
64 * <!-- begin-user-doc -->
65 * <!-- end-user-doc -->
66 * @generated
67 */
68 public NotificationChain basicSetData(FunctionalData newData, NotificationChain msgs) {
69 msgs = eBasicSetContainer((InternalEObject)newData, FunctionalArchitecturePackage.FAM_TERMINATOR__DATA, msgs);
70 return msgs;
71 }
72
73 /**
74 * <!-- begin-user-doc -->
75 * <!-- end-user-doc -->
76 * @generated
77 */
78 public void setData(FunctionalData newData) {
79 if (newData != eInternalContainer() || (eContainerFeatureID() != FunctionalArchitecturePackage.FAM_TERMINATOR__DATA && newData != null)) {
80 if (EcoreUtil.isAncestor(this, newData))
81 throw new IllegalArgumentException("Recursive containment not allowed for " + toString());
82 NotificationChain msgs = null;
83 if (eInternalContainer() != null)
84 msgs = eBasicRemoveFromContainer(msgs);
85 if (newData != null)
86 msgs = ((InternalEObject)newData).eInverseAdd(this, FunctionalArchitecturePackage.FUNCTIONAL_DATA__TERMINATOR, FunctionalData.class, msgs);
87 msgs = basicSetData(newData, msgs);
88 if (msgs != null) msgs.dispatch();
89 }
90 else if (eNotificationRequired())
91 eNotify(new ENotificationImpl(this, Notification.SET, FunctionalArchitecturePackage.FAM_TERMINATOR__DATA, newData, newData));
92 }
93
94 /**
95 * <!-- begin-user-doc -->
96 * <!-- end-user-doc -->
97 * @generated
98 */
99 @Override
100 public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
101 switch (featureID) {
102 case FunctionalArchitecturePackage.FAM_TERMINATOR__DATA:
103 if (eInternalContainer() != null)
104 msgs = eBasicRemoveFromContainer(msgs);
105 return basicSetData((FunctionalData)otherEnd, msgs);
106 }
107 return super.eInverseAdd(otherEnd, featureID, msgs);
108 }
109
110 /**
111 * <!-- begin-user-doc -->
112 * <!-- end-user-doc -->
113 * @generated
114 */
115 @Override
116 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
117 switch (featureID) {
118 case FunctionalArchitecturePackage.FAM_TERMINATOR__DATA:
119 return basicSetData(null, msgs);
120 }
121 return super.eInverseRemove(otherEnd, featureID, msgs);
122 }
123
124 /**
125 * <!-- begin-user-doc -->
126 * <!-- end-user-doc -->
127 * @generated
128 */
129 @Override
130 public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) {
131 switch (eContainerFeatureID()) {
132 case FunctionalArchitecturePackage.FAM_TERMINATOR__DATA:
133 return eInternalContainer().eInverseRemove(this, FunctionalArchitecturePackage.FUNCTIONAL_DATA__TERMINATOR, FunctionalData.class, msgs);
134 }
135 return super.eBasicRemoveFromContainerFeature(msgs);
136 }
137
138 /**
139 * <!-- begin-user-doc -->
140 * <!-- end-user-doc -->
141 * @generated
142 */
143 @Override
144 public Object eGet(int featureID, boolean resolve, boolean coreType) {
145 switch (featureID) {
146 case FunctionalArchitecturePackage.FAM_TERMINATOR__DATA:
147 return getData();
148 }
149 return super.eGet(featureID, resolve, coreType);
150 }
151
152 /**
153 * <!-- begin-user-doc -->
154 * <!-- end-user-doc -->
155 * @generated
156 */
157 @Override
158 public void eSet(int featureID, Object newValue) {
159 switch (featureID) {
160 case FunctionalArchitecturePackage.FAM_TERMINATOR__DATA:
161 setData((FunctionalData)newValue);
162 return;
163 }
164 super.eSet(featureID, newValue);
165 }
166
167 /**
168 * <!-- begin-user-doc -->
169 * <!-- end-user-doc -->
170 * @generated
171 */
172 @Override
173 public void eUnset(int featureID) {
174 switch (featureID) {
175 case FunctionalArchitecturePackage.FAM_TERMINATOR__DATA:
176 setData((FunctionalData)null);
177 return;
178 }
179 super.eUnset(featureID);
180 }
181
182 /**
183 * <!-- begin-user-doc -->
184 * <!-- end-user-doc -->
185 * @generated
186 */
187 @Override
188 public boolean eIsSet(int featureID) {
189 switch (featureID) {
190 case FunctionalArchitecturePackage.FAM_TERMINATOR__DATA:
191 return getData() != null;
192 }
193 return super.eIsSet(featureID);
194 }
195
196} //FAMTerminatorImpl
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/impl/FunctionImpl.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/impl/FunctionImpl.java
new file mode 100644
index 00000000..1b447c38
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/impl/FunctionImpl.java
@@ -0,0 +1,191 @@
1/**
2 */
3package hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl;
4
5import hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.Function;
6import hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionType;
7import hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalArchitecturePackage;
8import hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalElement;
9
10import java.util.Collection;
11
12import org.eclipse.emf.common.notify.NotificationChain;
13
14import org.eclipse.emf.common.util.EList;
15
16import org.eclipse.emf.ecore.EClass;
17import org.eclipse.emf.ecore.EStructuralFeature;
18import org.eclipse.emf.ecore.InternalEObject;
19
20import org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList;
21import org.eclipse.emf.ecore.util.InternalEList;
22
23/**
24 * <!-- begin-user-doc -->
25 * An implementation of the model object '<em><b>Function</b></em>'.
26 * <!-- end-user-doc -->
27 * <p>
28 * The following features are implemented:
29 * </p>
30 * <ul>
31 * <li>{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FunctionImpl#getSubElements <em>Sub Elements</em>}</li>
32 * <li>{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FunctionImpl#getType <em>Type</em>}</li>
33 * </ul>
34 *
35 * @generated
36 */
37public class FunctionImpl extends FunctionalElementImpl implements Function {
38 /**
39 * The cached value of the '{@link #getSubElements() <em>Sub Elements</em>}' containment reference list.
40 * <!-- begin-user-doc -->
41 * <!-- end-user-doc -->
42 * @see #getSubElements()
43 * @generated
44 * @ordered
45 */
46 protected EList<FunctionalElement> subElements;
47
48 /**
49 * The cached setting delegate for the '{@link #getType() <em>Type</em>}' attribute.
50 * <!-- begin-user-doc -->
51 * <!-- end-user-doc -->
52 * @see #getType()
53 * @generated
54 * @ordered
55 */
56 protected EStructuralFeature.Internal.SettingDelegate TYPE__ESETTING_DELEGATE = ((EStructuralFeature.Internal)FunctionalArchitecturePackage.Literals.FUNCTION__TYPE).getSettingDelegate();
57
58 /**
59 * <!-- begin-user-doc -->
60 * <!-- end-user-doc -->
61 * @generated
62 */
63 protected FunctionImpl() {
64 super();
65 }
66
67 /**
68 * <!-- begin-user-doc -->
69 * <!-- end-user-doc -->
70 * @generated
71 */
72 @Override
73 protected EClass eStaticClass() {
74 return FunctionalArchitecturePackage.Literals.FUNCTION;
75 }
76
77 /**
78 * <!-- begin-user-doc -->
79 * <!-- end-user-doc -->
80 * @generated
81 */
82 public EList<FunctionalElement> getSubElements() {
83 if (subElements == null) {
84 subElements = new EObjectContainmentWithInverseEList<FunctionalElement>(FunctionalElement.class, this, FunctionalArchitecturePackage.FUNCTION__SUB_ELEMENTS, FunctionalArchitecturePackage.FUNCTIONAL_ELEMENT__PARENT);
85 }
86 return subElements;
87 }
88
89 /**
90 * <!-- begin-user-doc -->
91 * <!-- end-user-doc -->
92 * @generated
93 */
94 public FunctionType getType() {
95 return (FunctionType)TYPE__ESETTING_DELEGATE.dynamicGet(this, null, 0, true, false);
96 }
97
98 /**
99 * <!-- begin-user-doc -->
100 * <!-- end-user-doc -->
101 * @generated
102 */
103 @SuppressWarnings("unchecked")
104 @Override
105 public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
106 switch (featureID) {
107 case FunctionalArchitecturePackage.FUNCTION__SUB_ELEMENTS:
108 return ((InternalEList<InternalEObject>)(InternalEList<?>)getSubElements()).basicAdd(otherEnd, msgs);
109 }
110 return super.eInverseAdd(otherEnd, featureID, msgs);
111 }
112
113 /**
114 * <!-- begin-user-doc -->
115 * <!-- end-user-doc -->
116 * @generated
117 */
118 @Override
119 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
120 switch (featureID) {
121 case FunctionalArchitecturePackage.FUNCTION__SUB_ELEMENTS:
122 return ((InternalEList<?>)getSubElements()).basicRemove(otherEnd, msgs);
123 }
124 return super.eInverseRemove(otherEnd, featureID, msgs);
125 }
126
127 /**
128 * <!-- begin-user-doc -->
129 * <!-- end-user-doc -->
130 * @generated
131 */
132 @Override
133 public Object eGet(int featureID, boolean resolve, boolean coreType) {
134 switch (featureID) {
135 case FunctionalArchitecturePackage.FUNCTION__SUB_ELEMENTS:
136 return getSubElements();
137 case FunctionalArchitecturePackage.FUNCTION__TYPE:
138 return getType();
139 }
140 return super.eGet(featureID, resolve, coreType);
141 }
142
143 /**
144 * <!-- begin-user-doc -->
145 * <!-- end-user-doc -->
146 * @generated
147 */
148 @SuppressWarnings("unchecked")
149 @Override
150 public void eSet(int featureID, Object newValue) {
151 switch (featureID) {
152 case FunctionalArchitecturePackage.FUNCTION__SUB_ELEMENTS:
153 getSubElements().clear();
154 getSubElements().addAll((Collection<? extends FunctionalElement>)newValue);
155 return;
156 }
157 super.eSet(featureID, newValue);
158 }
159
160 /**
161 * <!-- begin-user-doc -->
162 * <!-- end-user-doc -->
163 * @generated
164 */
165 @Override
166 public void eUnset(int featureID) {
167 switch (featureID) {
168 case FunctionalArchitecturePackage.FUNCTION__SUB_ELEMENTS:
169 getSubElements().clear();
170 return;
171 }
172 super.eUnset(featureID);
173 }
174
175 /**
176 * <!-- begin-user-doc -->
177 * <!-- end-user-doc -->
178 * @generated
179 */
180 @Override
181 public boolean eIsSet(int featureID) {
182 switch (featureID) {
183 case FunctionalArchitecturePackage.FUNCTION__SUB_ELEMENTS:
184 return subElements != null && !subElements.isEmpty();
185 case FunctionalArchitecturePackage.FUNCTION__TYPE:
186 return TYPE__ESETTING_DELEGATE.dynamicIsSet(this, null, 0);
187 }
188 return super.eIsSet(featureID);
189 }
190
191} //FunctionImpl
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/impl/FunctionalArchitectureFactoryImpl.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/impl/FunctionalArchitectureFactoryImpl.java
new file mode 100644
index 00000000..b47f7c58
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/impl/FunctionalArchitectureFactoryImpl.java
@@ -0,0 +1,213 @@
1/**
2 */
3package hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl;
4
5import hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.*;
6import hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalInterface;
7
8import org.eclipse.emf.ecore.EClass;
9import org.eclipse.emf.ecore.EDataType;
10import org.eclipse.emf.ecore.EObject;
11import org.eclipse.emf.ecore.EPackage;
12
13import org.eclipse.emf.ecore.impl.EFactoryImpl;
14
15import org.eclipse.emf.ecore.plugin.EcorePlugin;
16
17/**
18 * <!-- begin-user-doc -->
19 * An implementation of the model <b>Factory</b>.
20 * <!-- end-user-doc -->
21 * @generated
22 */
23public class FunctionalArchitectureFactoryImpl extends EFactoryImpl implements FunctionalArchitectureFactory {
24 /**
25 * Creates the default factory implementation.
26 * <!-- begin-user-doc -->
27 * <!-- end-user-doc -->
28 * @generated
29 */
30 public static FunctionalArchitectureFactory init() {
31 try {
32 FunctionalArchitectureFactory theFunctionalArchitectureFactory = (FunctionalArchitectureFactory)EPackage.Registry.INSTANCE.getEFactory(FunctionalArchitecturePackage.eNS_URI);
33 if (theFunctionalArchitectureFactory != null) {
34 return theFunctionalArchitectureFactory;
35 }
36 }
37 catch (Exception exception) {
38 EcorePlugin.INSTANCE.log(exception);
39 }
40 return new FunctionalArchitectureFactoryImpl();
41 }
42
43 /**
44 * Creates an instance of the factory.
45 * <!-- begin-user-doc -->
46 * <!-- end-user-doc -->
47 * @generated
48 */
49 public FunctionalArchitectureFactoryImpl() {
50 super();
51 }
52
53 /**
54 * <!-- begin-user-doc -->
55 * <!-- end-user-doc -->
56 * @generated
57 */
58 @Override
59 public EObject create(EClass eClass) {
60 switch (eClass.getClassifierID()) {
61 case FunctionalArchitecturePackage.FUNCTIONAL_ARCHITECTURE_MODEL: return createFunctionalArchitectureModel();
62 case FunctionalArchitecturePackage.FUNCTION: return createFunction();
63 case FunctionalArchitecturePackage.FAM_TERMINATOR: return createFAMTerminator();
64 case FunctionalArchitecturePackage.INFORMATION_LINK: return createInformationLink();
65 case FunctionalArchitecturePackage.FUNCTIONAL_INTERFACE: return createFunctionalInterface();
66 case FunctionalArchitecturePackage.FUNCTIONAL_INPUT: return createFunctionalInput();
67 case FunctionalArchitecturePackage.FUNCTIONAL_OUTPUT: return createFunctionalOutput();
68 default:
69 throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
70 }
71 }
72
73 /**
74 * <!-- begin-user-doc -->
75 * <!-- end-user-doc -->
76 * @generated
77 */
78 @Override
79 public Object createFromString(EDataType eDataType, String initialValue) {
80 switch (eDataType.getClassifierID()) {
81 case FunctionalArchitecturePackage.FUNCTION_TYPE:
82 return createFunctionTypeFromString(eDataType, initialValue);
83 default:
84 throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier");
85 }
86 }
87
88 /**
89 * <!-- begin-user-doc -->
90 * <!-- end-user-doc -->
91 * @generated
92 */
93 @Override
94 public String convertToString(EDataType eDataType, Object instanceValue) {
95 switch (eDataType.getClassifierID()) {
96 case FunctionalArchitecturePackage.FUNCTION_TYPE:
97 return convertFunctionTypeToString(eDataType, instanceValue);
98 default:
99 throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier");
100 }
101 }
102
103 /**
104 * <!-- begin-user-doc -->
105 * <!-- end-user-doc -->
106 * @generated
107 */
108 public FunctionalArchitectureModel createFunctionalArchitectureModel() {
109 FunctionalArchitectureModelImpl functionalArchitectureModel = new FunctionalArchitectureModelImpl();
110 return functionalArchitectureModel;
111 }
112
113 /**
114 * <!-- begin-user-doc -->
115 * <!-- end-user-doc -->
116 * @generated
117 */
118 public Function createFunction() {
119 FunctionImpl function = new FunctionImpl();
120 return function;
121 }
122
123 /**
124 * <!-- begin-user-doc -->
125 * <!-- end-user-doc -->
126 * @generated
127 */
128 public FAMTerminator createFAMTerminator() {
129 FAMTerminatorImpl famTerminator = new FAMTerminatorImpl();
130 return famTerminator;
131 }
132
133 /**
134 * <!-- begin-user-doc -->
135 * <!-- end-user-doc -->
136 * @generated
137 */
138 public InformationLink createInformationLink() {
139 InformationLinkImpl informationLink = new InformationLinkImpl();
140 return informationLink;
141 }
142
143 /**
144 * <!-- begin-user-doc -->
145 * <!-- end-user-doc -->
146 * @generated
147 */
148 public FunctionalInterface createFunctionalInterface() {
149 FunctionalInterfaceImpl functionalInterface = new FunctionalInterfaceImpl();
150 return functionalInterface;
151 }
152
153 /**
154 * <!-- begin-user-doc -->
155 * <!-- end-user-doc -->
156 * @generated
157 */
158 public FunctionalInput createFunctionalInput() {
159 FunctionalInputImpl functionalInput = new FunctionalInputImpl();
160 return functionalInput;
161 }
162
163 /**
164 * <!-- begin-user-doc -->
165 * <!-- end-user-doc -->
166 * @generated
167 */
168 public FunctionalOutput createFunctionalOutput() {
169 FunctionalOutputImpl functionalOutput = new FunctionalOutputImpl();
170 return functionalOutput;
171 }
172
173 /**
174 * <!-- begin-user-doc -->
175 * <!-- end-user-doc -->
176 * @generated
177 */
178 public FunctionType createFunctionTypeFromString(EDataType eDataType, String initialValue) {
179 FunctionType result = FunctionType.get(initialValue);
180 if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'");
181 return result;
182 }
183
184 /**
185 * <!-- begin-user-doc -->
186 * <!-- end-user-doc -->
187 * @generated
188 */
189 public String convertFunctionTypeToString(EDataType eDataType, Object instanceValue) {
190 return instanceValue == null ? null : instanceValue.toString();
191 }
192
193 /**
194 * <!-- begin-user-doc -->
195 * <!-- end-user-doc -->
196 * @generated
197 */
198 public FunctionalArchitecturePackage getFunctionalArchitecturePackage() {
199 return (FunctionalArchitecturePackage)getEPackage();
200 }
201
202 /**
203 * <!-- begin-user-doc -->
204 * <!-- end-user-doc -->
205 * @deprecated
206 * @generated
207 */
208 @Deprecated
209 public static FunctionalArchitecturePackage getPackage() {
210 return FunctionalArchitecturePackage.eINSTANCE;
211 }
212
213} //FunctionalArchitectureFactoryImpl
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/impl/FunctionalArchitectureModelImpl.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/impl/FunctionalArchitectureModelImpl.java
new file mode 100644
index 00000000..1f5f8232
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/impl/FunctionalArchitectureModelImpl.java
@@ -0,0 +1,152 @@
1/**
2 */
3package hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl;
4
5import hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalArchitectureModel;
6import hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalArchitecturePackage;
7import hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalElement;
8
9import java.util.Collection;
10
11import org.eclipse.emf.common.notify.NotificationChain;
12
13import org.eclipse.emf.common.util.EList;
14
15import org.eclipse.emf.ecore.EClass;
16import org.eclipse.emf.ecore.InternalEObject;
17
18import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
19
20import org.eclipse.emf.ecore.util.EObjectContainmentEList;
21import org.eclipse.emf.ecore.util.InternalEList;
22
23/**
24 * <!-- begin-user-doc -->
25 * An implementation of the model object '<em><b>Model</b></em>'.
26 * <!-- end-user-doc -->
27 * <p>
28 * The following features are implemented:
29 * </p>
30 * <ul>
31 * <li>{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FunctionalArchitectureModelImpl#getRootElements <em>Root Elements</em>}</li>
32 * </ul>
33 *
34 * @generated
35 */
36public class FunctionalArchitectureModelImpl extends MinimalEObjectImpl.Container implements FunctionalArchitectureModel {
37 /**
38 * The cached value of the '{@link #getRootElements() <em>Root Elements</em>}' containment reference list.
39 * <!-- begin-user-doc -->
40 * <!-- end-user-doc -->
41 * @see #getRootElements()
42 * @generated
43 * @ordered
44 */
45 protected EList<FunctionalElement> rootElements;
46
47 /**
48 * <!-- begin-user-doc -->
49 * <!-- end-user-doc -->
50 * @generated
51 */
52 protected FunctionalArchitectureModelImpl() {
53 super();
54 }
55
56 /**
57 * <!-- begin-user-doc -->
58 * <!-- end-user-doc -->
59 * @generated
60 */
61 @Override
62 protected EClass eStaticClass() {
63 return FunctionalArchitecturePackage.Literals.FUNCTIONAL_ARCHITECTURE_MODEL;
64 }
65
66 /**
67 * <!-- begin-user-doc -->
68 * <!-- end-user-doc -->
69 * @generated
70 */
71 public EList<FunctionalElement> getRootElements() {
72 if (rootElements == null) {
73 rootElements = new EObjectContainmentEList<FunctionalElement>(FunctionalElement.class, this, FunctionalArchitecturePackage.FUNCTIONAL_ARCHITECTURE_MODEL__ROOT_ELEMENTS);
74 }
75 return rootElements;
76 }
77
78 /**
79 * <!-- begin-user-doc -->
80 * <!-- end-user-doc -->
81 * @generated
82 */
83 @Override
84 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
85 switch (featureID) {
86 case FunctionalArchitecturePackage.FUNCTIONAL_ARCHITECTURE_MODEL__ROOT_ELEMENTS:
87 return ((InternalEList<?>)getRootElements()).basicRemove(otherEnd, msgs);
88 }
89 return super.eInverseRemove(otherEnd, featureID, msgs);
90 }
91
92 /**
93 * <!-- begin-user-doc -->
94 * <!-- end-user-doc -->
95 * @generated
96 */
97 @Override
98 public Object eGet(int featureID, boolean resolve, boolean coreType) {
99 switch (featureID) {
100 case FunctionalArchitecturePackage.FUNCTIONAL_ARCHITECTURE_MODEL__ROOT_ELEMENTS:
101 return getRootElements();
102 }
103 return super.eGet(featureID, resolve, coreType);
104 }
105
106 /**
107 * <!-- begin-user-doc -->
108 * <!-- end-user-doc -->
109 * @generated
110 */
111 @SuppressWarnings("unchecked")
112 @Override
113 public void eSet(int featureID, Object newValue) {
114 switch (featureID) {
115 case FunctionalArchitecturePackage.FUNCTIONAL_ARCHITECTURE_MODEL__ROOT_ELEMENTS:
116 getRootElements().clear();
117 getRootElements().addAll((Collection<? extends FunctionalElement>)newValue);
118 return;
119 }
120 super.eSet(featureID, newValue);
121 }
122
123 /**
124 * <!-- begin-user-doc -->
125 * <!-- end-user-doc -->
126 * @generated
127 */
128 @Override
129 public void eUnset(int featureID) {
130 switch (featureID) {
131 case FunctionalArchitecturePackage.FUNCTIONAL_ARCHITECTURE_MODEL__ROOT_ELEMENTS:
132 getRootElements().clear();
133 return;
134 }
135 super.eUnset(featureID);
136 }
137
138 /**
139 * <!-- begin-user-doc -->
140 * <!-- end-user-doc -->
141 * @generated
142 */
143 @Override
144 public boolean eIsSet(int featureID) {
145 switch (featureID) {
146 case FunctionalArchitecturePackage.FUNCTIONAL_ARCHITECTURE_MODEL__ROOT_ELEMENTS:
147 return rootElements != null && !rootElements.isEmpty();
148 }
149 return super.eIsSet(featureID);
150 }
151
152} //FunctionalArchitectureModelImpl
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/impl/FunctionalArchitecturePackageImpl.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/impl/FunctionalArchitecturePackageImpl.java
new file mode 100644
index 00000000..564e54c0
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/impl/FunctionalArchitecturePackageImpl.java
@@ -0,0 +1,574 @@
1/**
2 */
3package hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl;
4
5import hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FAMTerminator;
6import hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.Function;
7import hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionType;
8import hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalArchitectureFactory;
9import hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalArchitectureModel;
10import hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalArchitecturePackage;
11import hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalData;
12import hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalElement;
13import hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalInput;
14import hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalInterface;
15import hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalOutput;
16import hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.InformationLink;
17
18import org.eclipse.emf.ecore.EAttribute;
19import org.eclipse.emf.ecore.EClass;
20import org.eclipse.emf.ecore.EEnum;
21import org.eclipse.emf.ecore.EPackage;
22import org.eclipse.emf.ecore.EReference;
23
24import org.eclipse.emf.ecore.impl.EPackageImpl;
25
26/**
27 * <!-- begin-user-doc -->
28 * An implementation of the model <b>Package</b>.
29 * <!-- end-user-doc -->
30 * @generated
31 */
32public class FunctionalArchitecturePackageImpl extends EPackageImpl implements FunctionalArchitecturePackage {
33 /**
34 * <!-- begin-user-doc -->
35 * <!-- end-user-doc -->
36 * @generated
37 */
38 private EClass functionalElementEClass = null;
39
40 /**
41 * <!-- begin-user-doc -->
42 * <!-- end-user-doc -->
43 * @generated
44 */
45 private EClass functionalArchitectureModelEClass = null;
46
47 /**
48 * <!-- begin-user-doc -->
49 * <!-- end-user-doc -->
50 * @generated
51 */
52 private EClass functionEClass = null;
53
54 /**
55 * <!-- begin-user-doc -->
56 * <!-- end-user-doc -->
57 * @generated
58 */
59 private EClass famTerminatorEClass = null;
60
61 /**
62 * <!-- begin-user-doc -->
63 * <!-- end-user-doc -->
64 * @generated
65 */
66 private EClass informationLinkEClass = null;
67
68 /**
69 * <!-- begin-user-doc -->
70 * <!-- end-user-doc -->
71 * @generated
72 */
73 private EClass functionalInterfaceEClass = null;
74
75 /**
76 * <!-- begin-user-doc -->
77 * <!-- end-user-doc -->
78 * @generated
79 */
80 private EClass functionalInputEClass = null;
81
82 /**
83 * <!-- begin-user-doc -->
84 * <!-- end-user-doc -->
85 * @generated
86 */
87 private EClass functionalOutputEClass = null;
88
89 /**
90 * <!-- begin-user-doc -->
91 * <!-- end-user-doc -->
92 * @generated
93 */
94 private EClass functionalDataEClass = null;
95
96 /**
97 * <!-- begin-user-doc -->
98 * <!-- end-user-doc -->
99 * @generated
100 */
101 private EEnum functionTypeEEnum = null;
102
103 /**
104 * Creates an instance of the model <b>Package</b>, registered with
105 * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package
106 * package URI value.
107 * <p>Note: the correct way to create the package is via the static
108 * factory method {@link #init init()}, which also performs
109 * initialization of the package, or returns the registered package,
110 * if one already exists.
111 * <!-- begin-user-doc -->
112 * <!-- end-user-doc -->
113 * @see org.eclipse.emf.ecore.EPackage.Registry
114 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalArchitecturePackage#eNS_URI
115 * @see #init()
116 * @generated
117 */
118 private FunctionalArchitecturePackageImpl() {
119 super(eNS_URI, FunctionalArchitectureFactory.eINSTANCE);
120 }
121
122 /**
123 * <!-- begin-user-doc -->
124 * <!-- end-user-doc -->
125 * @generated
126 */
127 private static boolean isInited = false;
128
129 /**
130 * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends.
131 *
132 * <p>This method is used to initialize {@link FunctionalArchitecturePackage#eINSTANCE} when that field is accessed.
133 * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package.
134 * <!-- begin-user-doc -->
135 * <!-- end-user-doc -->
136 * @see #eNS_URI
137 * @see #createPackageContents()
138 * @see #initializePackageContents()
139 * @generated
140 */
141 public static FunctionalArchitecturePackage init() {
142 if (isInited) return (FunctionalArchitecturePackage)EPackage.Registry.INSTANCE.getEPackage(FunctionalArchitecturePackage.eNS_URI);
143
144 // Obtain or create and register package
145 FunctionalArchitecturePackageImpl theFunctionalArchitecturePackage = (FunctionalArchitecturePackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof FunctionalArchitecturePackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new FunctionalArchitecturePackageImpl());
146
147 isInited = true;
148
149 // Create package meta-data objects
150 theFunctionalArchitecturePackage.createPackageContents();
151
152 // Initialize created meta-data
153 theFunctionalArchitecturePackage.initializePackageContents();
154
155 // Mark meta-data to indicate it can't be changed
156 theFunctionalArchitecturePackage.freeze();
157
158
159 // Update the registry and return the package
160 EPackage.Registry.INSTANCE.put(FunctionalArchitecturePackage.eNS_URI, theFunctionalArchitecturePackage);
161 return theFunctionalArchitecturePackage;
162 }
163
164 /**
165 * <!-- begin-user-doc -->
166 * <!-- end-user-doc -->
167 * @generated
168 */
169 public EClass getFunctionalElement() {
170 return functionalElementEClass;
171 }
172
173 /**
174 * <!-- begin-user-doc -->
175 * <!-- end-user-doc -->
176 * @generated
177 */
178 public EReference getFunctionalElement_Interface() {
179 return (EReference)functionalElementEClass.getEStructuralFeatures().get(0);
180 }
181
182 /**
183 * <!-- begin-user-doc -->
184 * <!-- end-user-doc -->
185 * @generated
186 */
187 public EReference getFunctionalElement_Model() {
188 return (EReference)functionalElementEClass.getEStructuralFeatures().get(1);
189 }
190
191 /**
192 * <!-- begin-user-doc -->
193 * <!-- end-user-doc -->
194 * @generated
195 */
196 public EReference getFunctionalElement_Parent() {
197 return (EReference)functionalElementEClass.getEStructuralFeatures().get(2);
198 }
199
200 /**
201 * <!-- begin-user-doc -->
202 * <!-- end-user-doc -->
203 * @generated
204 */
205 public EClass getFunctionalArchitectureModel() {
206 return functionalArchitectureModelEClass;
207 }
208
209 /**
210 * <!-- begin-user-doc -->
211 * <!-- end-user-doc -->
212 * @generated
213 */
214 public EReference getFunctionalArchitectureModel_RootElements() {
215 return (EReference)functionalArchitectureModelEClass.getEStructuralFeatures().get(0);
216 }
217
218 /**
219 * <!-- begin-user-doc -->
220 * <!-- end-user-doc -->
221 * @generated
222 */
223 public EClass getFunction() {
224 return functionEClass;
225 }
226
227 /**
228 * <!-- begin-user-doc -->
229 * <!-- end-user-doc -->
230 * @generated
231 */
232 public EReference getFunction_SubElements() {
233 return (EReference)functionEClass.getEStructuralFeatures().get(0);
234 }
235
236 /**
237 * <!-- begin-user-doc -->
238 * <!-- end-user-doc -->
239 * @generated
240 */
241 public EAttribute getFunction_Type() {
242 return (EAttribute)functionEClass.getEStructuralFeatures().get(1);
243 }
244
245 /**
246 * <!-- begin-user-doc -->
247 * <!-- end-user-doc -->
248 * @generated
249 */
250 public EClass getFAMTerminator() {
251 return famTerminatorEClass;
252 }
253
254 /**
255 * <!-- begin-user-doc -->
256 * <!-- end-user-doc -->
257 * @generated
258 */
259 public EReference getFAMTerminator_Data() {
260 return (EReference)famTerminatorEClass.getEStructuralFeatures().get(0);
261 }
262
263 /**
264 * <!-- begin-user-doc -->
265 * <!-- end-user-doc -->
266 * @generated
267 */
268 public EClass getInformationLink() {
269 return informationLinkEClass;
270 }
271
272 /**
273 * <!-- begin-user-doc -->
274 * <!-- end-user-doc -->
275 * @generated
276 */
277 public EReference getInformationLink_From() {
278 return (EReference)informationLinkEClass.getEStructuralFeatures().get(0);
279 }
280
281 /**
282 * <!-- begin-user-doc -->
283 * <!-- end-user-doc -->
284 * @generated
285 */
286 public EReference getInformationLink_To() {
287 return (EReference)informationLinkEClass.getEStructuralFeatures().get(1);
288 }
289
290 /**
291 * <!-- begin-user-doc -->
292 * <!-- end-user-doc -->
293 * @generated
294 */
295 public EClass getFunctionalInterface() {
296 return functionalInterfaceEClass;
297 }
298
299 /**
300 * <!-- begin-user-doc -->
301 * <!-- end-user-doc -->
302 * @generated
303 */
304 public EReference getFunctionalInterface_Data() {
305 return (EReference)functionalInterfaceEClass.getEStructuralFeatures().get(0);
306 }
307
308 /**
309 * <!-- begin-user-doc -->
310 * <!-- end-user-doc -->
311 * @generated
312 */
313 public EReference getFunctionalInterface_Element() {
314 return (EReference)functionalInterfaceEClass.getEStructuralFeatures().get(1);
315 }
316
317 /**
318 * <!-- begin-user-doc -->
319 * <!-- end-user-doc -->
320 * @generated
321 */
322 public EClass getFunctionalInput() {
323 return functionalInputEClass;
324 }
325
326 /**
327 * <!-- begin-user-doc -->
328 * <!-- end-user-doc -->
329 * @generated
330 */
331 public EReference getFunctionalInput_IncomingLinks() {
332 return (EReference)functionalInputEClass.getEStructuralFeatures().get(0);
333 }
334
335 /**
336 * <!-- begin-user-doc -->
337 * <!-- end-user-doc -->
338 * @generated
339 */
340 public EClass getFunctionalOutput() {
341 return functionalOutputEClass;
342 }
343
344 /**
345 * <!-- begin-user-doc -->
346 * <!-- end-user-doc -->
347 * @generated
348 */
349 public EReference getFunctionalOutput_OutgoingLinks() {
350 return (EReference)functionalOutputEClass.getEStructuralFeatures().get(0);
351 }
352
353 /**
354 * <!-- begin-user-doc -->
355 * <!-- end-user-doc -->
356 * @generated
357 */
358 public EClass getFunctionalData() {
359 return functionalDataEClass;
360 }
361
362 /**
363 * <!-- begin-user-doc -->
364 * <!-- end-user-doc -->
365 * @generated
366 */
367 public EReference getFunctionalData_Terminator() {
368 return (EReference)functionalDataEClass.getEStructuralFeatures().get(0);
369 }
370
371 /**
372 * <!-- begin-user-doc -->
373 * <!-- end-user-doc -->
374 * @generated
375 */
376 public EReference getFunctionalData_Interface() {
377 return (EReference)functionalDataEClass.getEStructuralFeatures().get(1);
378 }
379
380 /**
381 * <!-- begin-user-doc -->
382 * <!-- end-user-doc -->
383 * @generated
384 */
385 public EEnum getFunctionType() {
386 return functionTypeEEnum;
387 }
388
389 /**
390 * <!-- begin-user-doc -->
391 * <!-- end-user-doc -->
392 * @generated
393 */
394 public FunctionalArchitectureFactory getFunctionalArchitectureFactory() {
395 return (FunctionalArchitectureFactory)getEFactoryInstance();
396 }
397
398 /**
399 * <!-- begin-user-doc -->
400 * <!-- end-user-doc -->
401 * @generated
402 */
403 private boolean isCreated = false;
404
405 /**
406 * Creates the meta-model objects for the package. This method is
407 * guarded to have no affect on any invocation but its first.
408 * <!-- begin-user-doc -->
409 * <!-- end-user-doc -->
410 * @generated
411 */
412 public void createPackageContents() {
413 if (isCreated) return;
414 isCreated = true;
415
416 // Create classes and their features
417 functionalElementEClass = createEClass(FUNCTIONAL_ELEMENT);
418 createEReference(functionalElementEClass, FUNCTIONAL_ELEMENT__INTERFACE);
419 createEReference(functionalElementEClass, FUNCTIONAL_ELEMENT__MODEL);
420 createEReference(functionalElementEClass, FUNCTIONAL_ELEMENT__PARENT);
421
422 functionalArchitectureModelEClass = createEClass(FUNCTIONAL_ARCHITECTURE_MODEL);
423 createEReference(functionalArchitectureModelEClass, FUNCTIONAL_ARCHITECTURE_MODEL__ROOT_ELEMENTS);
424
425 functionEClass = createEClass(FUNCTION);
426 createEReference(functionEClass, FUNCTION__SUB_ELEMENTS);
427 createEAttribute(functionEClass, FUNCTION__TYPE);
428
429 famTerminatorEClass = createEClass(FAM_TERMINATOR);
430 createEReference(famTerminatorEClass, FAM_TERMINATOR__DATA);
431
432 informationLinkEClass = createEClass(INFORMATION_LINK);
433 createEReference(informationLinkEClass, INFORMATION_LINK__FROM);
434 createEReference(informationLinkEClass, INFORMATION_LINK__TO);
435
436 functionalInterfaceEClass = createEClass(FUNCTIONAL_INTERFACE);
437 createEReference(functionalInterfaceEClass, FUNCTIONAL_INTERFACE__DATA);
438 createEReference(functionalInterfaceEClass, FUNCTIONAL_INTERFACE__ELEMENT);
439
440 functionalInputEClass = createEClass(FUNCTIONAL_INPUT);
441 createEReference(functionalInputEClass, FUNCTIONAL_INPUT__INCOMING_LINKS);
442
443 functionalOutputEClass = createEClass(FUNCTIONAL_OUTPUT);
444 createEReference(functionalOutputEClass, FUNCTIONAL_OUTPUT__OUTGOING_LINKS);
445
446 functionalDataEClass = createEClass(FUNCTIONAL_DATA);
447 createEReference(functionalDataEClass, FUNCTIONAL_DATA__TERMINATOR);
448 createEReference(functionalDataEClass, FUNCTIONAL_DATA__INTERFACE);
449
450 // Create enums
451 functionTypeEEnum = createEEnum(FUNCTION_TYPE);
452 }
453
454 /**
455 * <!-- begin-user-doc -->
456 * <!-- end-user-doc -->
457 * @generated
458 */
459 private boolean isInitialized = false;
460
461 /**
462 * Complete the initialization of the package and its meta-model. This
463 * method is guarded to have no affect on any invocation but its first.
464 * <!-- begin-user-doc -->
465 * <!-- end-user-doc -->
466 * @generated
467 */
468 public void initializePackageContents() {
469 if (isInitialized) return;
470 isInitialized = true;
471
472 // Initialize package
473 setName(eNAME);
474 setNsPrefix(eNS_PREFIX);
475 setNsURI(eNS_URI);
476
477 // Create type parameters
478
479 // Set bounds for type parameters
480
481 // Add supertypes to classes
482 functionEClass.getESuperTypes().add(this.getFunctionalElement());
483 functionalInputEClass.getESuperTypes().add(this.getFunctionalData());
484 functionalOutputEClass.getESuperTypes().add(this.getFunctionalData());
485
486 // Initialize classes and features; add operations and parameters
487 initEClass(functionalElementEClass, FunctionalElement.class, "FunctionalElement", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
488 initEReference(getFunctionalElement_Interface(), this.getFunctionalInterface(), this.getFunctionalInterface_Element(), "interface", null, 0, 1, FunctionalElement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
489 initEReference(getFunctionalElement_Model(), this.getFunctionalArchitectureModel(), null, "model", null, 1, 1, FunctionalElement.class, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, IS_ORDERED);
490 initEReference(getFunctionalElement_Parent(), this.getFunction(), this.getFunction_SubElements(), "parent", null, 0, 1, FunctionalElement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
491
492 initEClass(functionalArchitectureModelEClass, FunctionalArchitectureModel.class, "FunctionalArchitectureModel", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
493 initEReference(getFunctionalArchitectureModel_RootElements(), this.getFunctionalElement(), null, "rootElements", null, 0, -1, FunctionalArchitectureModel.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
494
495 initEClass(functionEClass, Function.class, "Function", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
496 initEReference(getFunction_SubElements(), this.getFunctionalElement(), this.getFunctionalElement_Parent(), "subElements", null, 0, -1, Function.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
497 initEAttribute(getFunction_Type(), this.getFunctionType(), "type", null, 1, 1, Function.class, IS_TRANSIENT, IS_VOLATILE, !IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, IS_ORDERED);
498
499 initEClass(famTerminatorEClass, FAMTerminator.class, "FAMTerminator", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
500 initEReference(getFAMTerminator_Data(), this.getFunctionalData(), this.getFunctionalData_Terminator(), "data", null, 0, 1, FAMTerminator.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
501
502 initEClass(informationLinkEClass, InformationLink.class, "InformationLink", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
503 initEReference(getInformationLink_From(), this.getFunctionalOutput(), this.getFunctionalOutput_OutgoingLinks(), "from", null, 0, 1, InformationLink.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
504 initEReference(getInformationLink_To(), this.getFunctionalInput(), this.getFunctionalInput_IncomingLinks(), "to", null, 1, 1, InformationLink.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
505
506 initEClass(functionalInterfaceEClass, FunctionalInterface.class, "FunctionalInterface", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
507 initEReference(getFunctionalInterface_Data(), this.getFunctionalData(), this.getFunctionalData_Interface(), "data", null, 0, -1, FunctionalInterface.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
508 initEReference(getFunctionalInterface_Element(), this.getFunctionalElement(), this.getFunctionalElement_Interface(), "element", null, 0, 1, FunctionalInterface.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
509
510 initEClass(functionalInputEClass, FunctionalInput.class, "FunctionalInput", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
511 initEReference(getFunctionalInput_IncomingLinks(), this.getInformationLink(), this.getInformationLink_To(), "IncomingLinks", null, 0, -1, FunctionalInput.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
512
513 initEClass(functionalOutputEClass, FunctionalOutput.class, "FunctionalOutput", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
514 initEReference(getFunctionalOutput_OutgoingLinks(), this.getInformationLink(), this.getInformationLink_From(), "outgoingLinks", null, 0, -1, FunctionalOutput.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
515
516 initEClass(functionalDataEClass, FunctionalData.class, "FunctionalData", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
517 initEReference(getFunctionalData_Terminator(), this.getFAMTerminator(), this.getFAMTerminator_Data(), "terminator", null, 0, 1, FunctionalData.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
518 initEReference(getFunctionalData_Interface(), this.getFunctionalInterface(), this.getFunctionalInterface_Data(), "interface", null, 0, 1, FunctionalData.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
519
520 // Initialize enums and add enum literals
521 initEEnum(functionTypeEEnum, FunctionType.class, "FunctionType");
522 addEEnumLiteral(functionTypeEEnum, FunctionType.ROOT);
523 addEEnumLiteral(functionTypeEEnum, FunctionType.INTERMEDIATE);
524 addEEnumLiteral(functionTypeEEnum, FunctionType.LEAF);
525
526 // Create resource
527 createResource(eNS_URI);
528
529 // Create annotations
530 // http://www.eclipse.org/emf/2002/Ecore
531 createEcoreAnnotations();
532 // org.eclipse.viatra.query.querybasedfeature
533 createOrgAnnotations();
534 }
535
536 /**
537 * Initializes the annotations for <b>http://www.eclipse.org/emf/2002/Ecore</b>.
538 * <!-- begin-user-doc -->
539 * <!-- end-user-doc -->
540 * @generated
541 */
542 protected void createEcoreAnnotations() {
543 String source = "http://www.eclipse.org/emf/2002/Ecore";
544 addAnnotation
545 (this,
546 source,
547 new String[] {
548 "settingDelegates", "org.eclipse.viatra.query.querybasedfeature"
549 });
550 }
551
552 /**
553 * Initializes the annotations for <b>org.eclipse.viatra.query.querybasedfeature</b>.
554 * <!-- begin-user-doc -->
555 * <!-- end-user-doc -->
556 * @generated
557 */
558 protected void createOrgAnnotations() {
559 String source = "org.eclipse.viatra.query.querybasedfeature";
560 addAnnotation
561 (getFunctionalElement_Model(),
562 source,
563 new String[] {
564 "patternFQN", "hu.bme.mit.inf.dslreasoner.domains.transima.fam.patterns.model"
565 });
566 addAnnotation
567 (getFunction_Type(),
568 source,
569 new String[] {
570 "patternFQN", "hu.bme.mit.inf.dslreasoner.domains.transima.fam.patterns.type"
571 });
572 }
573
574} //FunctionalArchitecturePackageImpl
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/impl/FunctionalDataImpl.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/impl/FunctionalDataImpl.java
new file mode 100644
index 00000000..8c04ed53
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/impl/FunctionalDataImpl.java
@@ -0,0 +1,275 @@
1/**
2 */
3package hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl;
4
5import hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FAMTerminator;
6import hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalArchitecturePackage;
7import hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalData;
8import hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalInterface;
9
10import java.util.Collection;
11
12import org.eclipse.emf.common.notify.Notification;
13import org.eclipse.emf.common.notify.NotificationChain;
14
15import org.eclipse.emf.common.util.EList;
16
17import org.eclipse.emf.ecore.EClass;
18import org.eclipse.emf.ecore.InternalEObject;
19
20import org.eclipse.emf.ecore.impl.ENotificationImpl;
21import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
22
23import org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList;
24import org.eclipse.emf.ecore.util.EcoreUtil;
25import org.eclipse.emf.ecore.util.InternalEList;
26
27/**
28 * <!-- begin-user-doc -->
29 * An implementation of the model object '<em><b>Functional Data</b></em>'.
30 * <!-- end-user-doc -->
31 * <p>
32 * The following features are implemented:
33 * </p>
34 * <ul>
35 * <li>{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FunctionalDataImpl#getTerminator <em>Terminator</em>}</li>
36 * <li>{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FunctionalDataImpl#getInterface <em>Interface</em>}</li>
37 * </ul>
38 *
39 * @generated
40 */
41public abstract class FunctionalDataImpl extends MinimalEObjectImpl.Container implements FunctionalData {
42 /**
43 * The cached value of the '{@link #getTerminator() <em>Terminator</em>}' containment reference.
44 * <!-- begin-user-doc -->
45 * <!-- end-user-doc -->
46 * @see #getTerminator()
47 * @generated
48 * @ordered
49 */
50 protected FAMTerminator terminator;
51
52 /**
53 * <!-- begin-user-doc -->
54 * <!-- end-user-doc -->
55 * @generated
56 */
57 protected FunctionalDataImpl() {
58 super();
59 }
60
61 /**
62 * <!-- begin-user-doc -->
63 * <!-- end-user-doc -->
64 * @generated
65 */
66 @Override
67 protected EClass eStaticClass() {
68 return FunctionalArchitecturePackage.Literals.FUNCTIONAL_DATA;
69 }
70
71 /**
72 * <!-- begin-user-doc -->
73 * <!-- end-user-doc -->
74 * @generated
75 */
76 public FAMTerminator getTerminator() {
77 return terminator;
78 }
79
80 /**
81 * <!-- begin-user-doc -->
82 * <!-- end-user-doc -->
83 * @generated
84 */
85 public NotificationChain basicSetTerminator(FAMTerminator newTerminator, NotificationChain msgs) {
86 FAMTerminator oldTerminator = terminator;
87 terminator = newTerminator;
88 if (eNotificationRequired()) {
89 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, FunctionalArchitecturePackage.FUNCTIONAL_DATA__TERMINATOR, oldTerminator, newTerminator);
90 if (msgs == null) msgs = notification; else msgs.add(notification);
91 }
92 return msgs;
93 }
94
95 /**
96 * <!-- begin-user-doc -->
97 * <!-- end-user-doc -->
98 * @generated
99 */
100 public void setTerminator(FAMTerminator newTerminator) {
101 if (newTerminator != terminator) {
102 NotificationChain msgs = null;
103 if (terminator != null)
104 msgs = ((InternalEObject)terminator).eInverseRemove(this, FunctionalArchitecturePackage.FAM_TERMINATOR__DATA, FAMTerminator.class, msgs);
105 if (newTerminator != null)
106 msgs = ((InternalEObject)newTerminator).eInverseAdd(this, FunctionalArchitecturePackage.FAM_TERMINATOR__DATA, FAMTerminator.class, msgs);
107 msgs = basicSetTerminator(newTerminator, msgs);
108 if (msgs != null) msgs.dispatch();
109 }
110 else if (eNotificationRequired())
111 eNotify(new ENotificationImpl(this, Notification.SET, FunctionalArchitecturePackage.FUNCTIONAL_DATA__TERMINATOR, newTerminator, newTerminator));
112 }
113
114 /**
115 * <!-- begin-user-doc -->
116 * <!-- end-user-doc -->
117 * @generated
118 */
119 public FunctionalInterface getInterface() {
120 if (eContainerFeatureID() != FunctionalArchitecturePackage.FUNCTIONAL_DATA__INTERFACE) return null;
121 return (FunctionalInterface)eInternalContainer();
122 }
123
124 /**
125 * <!-- begin-user-doc -->
126 * <!-- end-user-doc -->
127 * @generated
128 */
129 public NotificationChain basicSetInterface(FunctionalInterface newInterface, NotificationChain msgs) {
130 msgs = eBasicSetContainer((InternalEObject)newInterface, FunctionalArchitecturePackage.FUNCTIONAL_DATA__INTERFACE, msgs);
131 return msgs;
132 }
133
134 /**
135 * <!-- begin-user-doc -->
136 * <!-- end-user-doc -->
137 * @generated
138 */
139 public void setInterface(FunctionalInterface newInterface) {
140 if (newInterface != eInternalContainer() || (eContainerFeatureID() != FunctionalArchitecturePackage.FUNCTIONAL_DATA__INTERFACE && newInterface != null)) {
141 if (EcoreUtil.isAncestor(this, newInterface))
142 throw new IllegalArgumentException("Recursive containment not allowed for " + toString());
143 NotificationChain msgs = null;
144 if (eInternalContainer() != null)
145 msgs = eBasicRemoveFromContainer(msgs);
146 if (newInterface != null)
147 msgs = ((InternalEObject)newInterface).eInverseAdd(this, FunctionalArchitecturePackage.FUNCTIONAL_INTERFACE__DATA, FunctionalInterface.class, msgs);
148 msgs = basicSetInterface(newInterface, msgs);
149 if (msgs != null) msgs.dispatch();
150 }
151 else if (eNotificationRequired())
152 eNotify(new ENotificationImpl(this, Notification.SET, FunctionalArchitecturePackage.FUNCTIONAL_DATA__INTERFACE, newInterface, newInterface));
153 }
154
155 /**
156 * <!-- begin-user-doc -->
157 * <!-- end-user-doc -->
158 * @generated
159 */
160 @SuppressWarnings("unchecked")
161 @Override
162 public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
163 switch (featureID) {
164 case FunctionalArchitecturePackage.FUNCTIONAL_DATA__TERMINATOR:
165 if (terminator != null)
166 msgs = ((InternalEObject)terminator).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - FunctionalArchitecturePackage.FUNCTIONAL_DATA__TERMINATOR, null, msgs);
167 return basicSetTerminator((FAMTerminator)otherEnd, msgs);
168 case FunctionalArchitecturePackage.FUNCTIONAL_DATA__INTERFACE:
169 if (eInternalContainer() != null)
170 msgs = eBasicRemoveFromContainer(msgs);
171 return basicSetInterface((FunctionalInterface)otherEnd, msgs);
172 }
173 return super.eInverseAdd(otherEnd, featureID, msgs);
174 }
175
176 /**
177 * <!-- begin-user-doc -->
178 * <!-- end-user-doc -->
179 * @generated
180 */
181 @Override
182 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
183 switch (featureID) {
184 case FunctionalArchitecturePackage.FUNCTIONAL_DATA__TERMINATOR:
185 return basicSetTerminator(null, msgs);
186 case FunctionalArchitecturePackage.FUNCTIONAL_DATA__INTERFACE:
187 return basicSetInterface(null, msgs);
188 }
189 return super.eInverseRemove(otherEnd, featureID, msgs);
190 }
191
192 /**
193 * <!-- begin-user-doc -->
194 * <!-- end-user-doc -->
195 * @generated
196 */
197 @Override
198 public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) {
199 switch (eContainerFeatureID()) {
200 case FunctionalArchitecturePackage.FUNCTIONAL_DATA__INTERFACE:
201 return eInternalContainer().eInverseRemove(this, FunctionalArchitecturePackage.FUNCTIONAL_INTERFACE__DATA, FunctionalInterface.class, msgs);
202 }
203 return super.eBasicRemoveFromContainerFeature(msgs);
204 }
205
206 /**
207 * <!-- begin-user-doc -->
208 * <!-- end-user-doc -->
209 * @generated
210 */
211 @Override
212 public Object eGet(int featureID, boolean resolve, boolean coreType) {
213 switch (featureID) {
214 case FunctionalArchitecturePackage.FUNCTIONAL_DATA__TERMINATOR:
215 return getTerminator();
216 case FunctionalArchitecturePackage.FUNCTIONAL_DATA__INTERFACE:
217 return getInterface();
218 }
219 return super.eGet(featureID, resolve, coreType);
220 }
221
222 /**
223 * <!-- begin-user-doc -->
224 * <!-- end-user-doc -->
225 * @generated
226 */
227 @SuppressWarnings("unchecked")
228 @Override
229 public void eSet(int featureID, Object newValue) {
230 switch (featureID) {
231 case FunctionalArchitecturePackage.FUNCTIONAL_DATA__TERMINATOR:
232 setTerminator((FAMTerminator)newValue);
233 return;
234 case FunctionalArchitecturePackage.FUNCTIONAL_DATA__INTERFACE:
235 setInterface((FunctionalInterface)newValue);
236 return;
237 }
238 super.eSet(featureID, newValue);
239 }
240
241 /**
242 * <!-- begin-user-doc -->
243 * <!-- end-user-doc -->
244 * @generated
245 */
246 @Override
247 public void eUnset(int featureID) {
248 switch (featureID) {
249 case FunctionalArchitecturePackage.FUNCTIONAL_DATA__TERMINATOR:
250 setTerminator((FAMTerminator)null);
251 return;
252 case FunctionalArchitecturePackage.FUNCTIONAL_DATA__INTERFACE:
253 setInterface((FunctionalInterface)null);
254 return;
255 }
256 super.eUnset(featureID);
257 }
258
259 /**
260 * <!-- begin-user-doc -->
261 * <!-- end-user-doc -->
262 * @generated
263 */
264 @Override
265 public boolean eIsSet(int featureID) {
266 switch (featureID) {
267 case FunctionalArchitecturePackage.FUNCTIONAL_DATA__TERMINATOR:
268 return terminator != null;
269 case FunctionalArchitecturePackage.FUNCTIONAL_DATA__INTERFACE:
270 return getInterface() != null;
271 }
272 return super.eIsSet(featureID);
273 }
274
275} //FunctionalDataImpl
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/impl/FunctionalElementImpl.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/impl/FunctionalElementImpl.java
new file mode 100644
index 00000000..69d24ae1
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/impl/FunctionalElementImpl.java
@@ -0,0 +1,318 @@
1/**
2 */
3package hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl;
4
5import hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.Function;
6import hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalArchitectureModel;
7import hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalArchitecturePackage;
8import hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalElement;
9import hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalInterface;
10
11import org.eclipse.emf.common.notify.Notification;
12import org.eclipse.emf.common.notify.NotificationChain;
13
14import org.eclipse.emf.ecore.EClass;
15import org.eclipse.emf.ecore.EStructuralFeature;
16import org.eclipse.emf.ecore.InternalEObject;
17
18import org.eclipse.emf.ecore.impl.ENotificationImpl;
19import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
20
21import org.eclipse.emf.ecore.util.EcoreUtil;
22
23/**
24 * <!-- begin-user-doc -->
25 * An implementation of the model object '<em><b>Functional Element</b></em>'.
26 * <!-- end-user-doc -->
27 * <p>
28 * The following features are implemented:
29 * </p>
30 * <ul>
31 * <li>{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FunctionalElementImpl#getInterface <em>Interface</em>}</li>
32 * <li>{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FunctionalElementImpl#getModel <em>Model</em>}</li>
33 * <li>{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FunctionalElementImpl#getParent <em>Parent</em>}</li>
34 * </ul>
35 *
36 * @generated
37 */
38public abstract class FunctionalElementImpl extends MinimalEObjectImpl.Container implements FunctionalElement {
39 /**
40 * The cached value of the '{@link #getInterface() <em>Interface</em>}' containment reference.
41 * <!-- begin-user-doc -->
42 * <!-- end-user-doc -->
43 * @see #getInterface()
44 * @generated
45 * @ordered
46 */
47 protected FunctionalInterface interface_;
48
49 /**
50 * The cached setting delegate for the '{@link #getModel() <em>Model</em>}' reference.
51 * <!-- begin-user-doc -->
52 * <!-- end-user-doc -->
53 * @see #getModel()
54 * @generated
55 * @ordered
56 */
57 protected EStructuralFeature.Internal.SettingDelegate MODEL__ESETTING_DELEGATE = ((EStructuralFeature.Internal)FunctionalArchitecturePackage.Literals.FUNCTIONAL_ELEMENT__MODEL).getSettingDelegate();
58
59 /**
60 * <!-- begin-user-doc -->
61 * <!-- end-user-doc -->
62 * @generated
63 */
64 protected FunctionalElementImpl() {
65 super();
66 }
67
68 /**
69 * <!-- begin-user-doc -->
70 * <!-- end-user-doc -->
71 * @generated
72 */
73 @Override
74 protected EClass eStaticClass() {
75 return FunctionalArchitecturePackage.Literals.FUNCTIONAL_ELEMENT;
76 }
77
78 /**
79 * <!-- begin-user-doc -->
80 * <!-- end-user-doc -->
81 * @generated
82 */
83 public FunctionalInterface getInterface() {
84 return interface_;
85 }
86
87 /**
88 * <!-- begin-user-doc -->
89 * <!-- end-user-doc -->
90 * @generated
91 */
92 public NotificationChain basicSetInterface(FunctionalInterface newInterface, NotificationChain msgs) {
93 FunctionalInterface oldInterface = interface_;
94 interface_ = newInterface;
95 if (eNotificationRequired()) {
96 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, FunctionalArchitecturePackage.FUNCTIONAL_ELEMENT__INTERFACE, oldInterface, newInterface);
97 if (msgs == null) msgs = notification; else msgs.add(notification);
98 }
99 return msgs;
100 }
101
102 /**
103 * <!-- begin-user-doc -->
104 * <!-- end-user-doc -->
105 * @generated
106 */
107 public void setInterface(FunctionalInterface newInterface) {
108 if (newInterface != interface_) {
109 NotificationChain msgs = null;
110 if (interface_ != null)
111 msgs = ((InternalEObject)interface_).eInverseRemove(this, FunctionalArchitecturePackage.FUNCTIONAL_INTERFACE__ELEMENT, FunctionalInterface.class, msgs);
112 if (newInterface != null)
113 msgs = ((InternalEObject)newInterface).eInverseAdd(this, FunctionalArchitecturePackage.FUNCTIONAL_INTERFACE__ELEMENT, FunctionalInterface.class, msgs);
114 msgs = basicSetInterface(newInterface, msgs);
115 if (msgs != null) msgs.dispatch();
116 }
117 else if (eNotificationRequired())
118 eNotify(new ENotificationImpl(this, Notification.SET, FunctionalArchitecturePackage.FUNCTIONAL_ELEMENT__INTERFACE, newInterface, newInterface));
119 }
120
121 /**
122 * <!-- begin-user-doc -->
123 * <!-- end-user-doc -->
124 * @generated
125 */
126 public FunctionalArchitectureModel getModel() {
127 return (FunctionalArchitectureModel)MODEL__ESETTING_DELEGATE.dynamicGet(this, null, 0, true, false);
128 }
129
130 /**
131 * <!-- begin-user-doc -->
132 * <!-- end-user-doc -->
133 * @generated
134 */
135 public FunctionalArchitectureModel basicGetModel() {
136 return (FunctionalArchitectureModel)MODEL__ESETTING_DELEGATE.dynamicGet(this, null, 0, false, false);
137 }
138
139 /**
140 * <!-- begin-user-doc -->
141 * <!-- end-user-doc -->
142 * @generated
143 */
144 public void setModel(FunctionalArchitectureModel newModel) {
145 MODEL__ESETTING_DELEGATE.dynamicSet(this, null, 0, newModel);
146 }
147
148 /**
149 * <!-- begin-user-doc -->
150 * <!-- end-user-doc -->
151 * @generated
152 */
153 public Function getParent() {
154 if (eContainerFeatureID() != FunctionalArchitecturePackage.FUNCTIONAL_ELEMENT__PARENT) return null;
155 return (Function)eInternalContainer();
156 }
157
158 /**
159 * <!-- begin-user-doc -->
160 * <!-- end-user-doc -->
161 * @generated
162 */
163 public NotificationChain basicSetParent(Function newParent, NotificationChain msgs) {
164 msgs = eBasicSetContainer((InternalEObject)newParent, FunctionalArchitecturePackage.FUNCTIONAL_ELEMENT__PARENT, msgs);
165 return msgs;
166 }
167
168 /**
169 * <!-- begin-user-doc -->
170 * <!-- end-user-doc -->
171 * @generated
172 */
173 public void setParent(Function newParent) {
174 if (newParent != eInternalContainer() || (eContainerFeatureID() != FunctionalArchitecturePackage.FUNCTIONAL_ELEMENT__PARENT && newParent != null)) {
175 if (EcoreUtil.isAncestor(this, newParent))
176 throw new IllegalArgumentException("Recursive containment not allowed for " + toString());
177 NotificationChain msgs = null;
178 if (eInternalContainer() != null)
179 msgs = eBasicRemoveFromContainer(msgs);
180 if (newParent != null)
181 msgs = ((InternalEObject)newParent).eInverseAdd(this, FunctionalArchitecturePackage.FUNCTION__SUB_ELEMENTS, Function.class, msgs);
182 msgs = basicSetParent(newParent, msgs);
183 if (msgs != null) msgs.dispatch();
184 }
185 else if (eNotificationRequired())
186 eNotify(new ENotificationImpl(this, Notification.SET, FunctionalArchitecturePackage.FUNCTIONAL_ELEMENT__PARENT, newParent, newParent));
187 }
188
189 /**
190 * <!-- begin-user-doc -->
191 * <!-- end-user-doc -->
192 * @generated
193 */
194 @Override
195 public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
196 switch (featureID) {
197 case FunctionalArchitecturePackage.FUNCTIONAL_ELEMENT__INTERFACE:
198 if (interface_ != null)
199 msgs = ((InternalEObject)interface_).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - FunctionalArchitecturePackage.FUNCTIONAL_ELEMENT__INTERFACE, null, msgs);
200 return basicSetInterface((FunctionalInterface)otherEnd, msgs);
201 case FunctionalArchitecturePackage.FUNCTIONAL_ELEMENT__PARENT:
202 if (eInternalContainer() != null)
203 msgs = eBasicRemoveFromContainer(msgs);
204 return basicSetParent((Function)otherEnd, msgs);
205 }
206 return super.eInverseAdd(otherEnd, featureID, msgs);
207 }
208
209 /**
210 * <!-- begin-user-doc -->
211 * <!-- end-user-doc -->
212 * @generated
213 */
214 @Override
215 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
216 switch (featureID) {
217 case FunctionalArchitecturePackage.FUNCTIONAL_ELEMENT__INTERFACE:
218 return basicSetInterface(null, msgs);
219 case FunctionalArchitecturePackage.FUNCTIONAL_ELEMENT__PARENT:
220 return basicSetParent(null, msgs);
221 }
222 return super.eInverseRemove(otherEnd, featureID, msgs);
223 }
224
225 /**
226 * <!-- begin-user-doc -->
227 * <!-- end-user-doc -->
228 * @generated
229 */
230 @Override
231 public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) {
232 switch (eContainerFeatureID()) {
233 case FunctionalArchitecturePackage.FUNCTIONAL_ELEMENT__PARENT:
234 return eInternalContainer().eInverseRemove(this, FunctionalArchitecturePackage.FUNCTION__SUB_ELEMENTS, Function.class, msgs);
235 }
236 return super.eBasicRemoveFromContainerFeature(msgs);
237 }
238
239 /**
240 * <!-- begin-user-doc -->
241 * <!-- end-user-doc -->
242 * @generated
243 */
244 @Override
245 public Object eGet(int featureID, boolean resolve, boolean coreType) {
246 switch (featureID) {
247 case FunctionalArchitecturePackage.FUNCTIONAL_ELEMENT__INTERFACE:
248 return getInterface();
249 case FunctionalArchitecturePackage.FUNCTIONAL_ELEMENT__MODEL:
250 if (resolve) return getModel();
251 return basicGetModel();
252 case FunctionalArchitecturePackage.FUNCTIONAL_ELEMENT__PARENT:
253 return getParent();
254 }
255 return super.eGet(featureID, resolve, coreType);
256 }
257
258 /**
259 * <!-- begin-user-doc -->
260 * <!-- end-user-doc -->
261 * @generated
262 */
263 @Override
264 public void eSet(int featureID, Object newValue) {
265 switch (featureID) {
266 case FunctionalArchitecturePackage.FUNCTIONAL_ELEMENT__INTERFACE:
267 setInterface((FunctionalInterface)newValue);
268 return;
269 case FunctionalArchitecturePackage.FUNCTIONAL_ELEMENT__MODEL:
270 setModel((FunctionalArchitectureModel)newValue);
271 return;
272 case FunctionalArchitecturePackage.FUNCTIONAL_ELEMENT__PARENT:
273 setParent((Function)newValue);
274 return;
275 }
276 super.eSet(featureID, newValue);
277 }
278
279 /**
280 * <!-- begin-user-doc -->
281 * <!-- end-user-doc -->
282 * @generated
283 */
284 @Override
285 public void eUnset(int featureID) {
286 switch (featureID) {
287 case FunctionalArchitecturePackage.FUNCTIONAL_ELEMENT__INTERFACE:
288 setInterface((FunctionalInterface)null);
289 return;
290 case FunctionalArchitecturePackage.FUNCTIONAL_ELEMENT__MODEL:
291 setModel((FunctionalArchitectureModel)null);
292 return;
293 case FunctionalArchitecturePackage.FUNCTIONAL_ELEMENT__PARENT:
294 setParent((Function)null);
295 return;
296 }
297 super.eUnset(featureID);
298 }
299
300 /**
301 * <!-- begin-user-doc -->
302 * <!-- end-user-doc -->
303 * @generated
304 */
305 @Override
306 public boolean eIsSet(int featureID) {
307 switch (featureID) {
308 case FunctionalArchitecturePackage.FUNCTIONAL_ELEMENT__INTERFACE:
309 return interface_ != null;
310 case FunctionalArchitecturePackage.FUNCTIONAL_ELEMENT__MODEL:
311 return MODEL__ESETTING_DELEGATE.dynamicIsSet(this, null, 0);
312 case FunctionalArchitecturePackage.FUNCTIONAL_ELEMENT__PARENT:
313 return getParent() != null;
314 }
315 return super.eIsSet(featureID);
316 }
317
318} //FunctionalElementImpl
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/impl/FunctionalInputImpl.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/impl/FunctionalInputImpl.java
new file mode 100644
index 00000000..5dbd0b31
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/impl/FunctionalInputImpl.java
@@ -0,0 +1,165 @@
1/**
2 */
3package hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl;
4
5import hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalArchitecturePackage;
6import hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalInput;
7import hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.InformationLink;
8
9import java.util.Collection;
10
11import org.eclipse.emf.common.notify.NotificationChain;
12
13import org.eclipse.emf.common.util.EList;
14
15import org.eclipse.emf.ecore.EClass;
16import org.eclipse.emf.ecore.InternalEObject;
17
18import org.eclipse.emf.ecore.util.EObjectWithInverseResolvingEList;
19import org.eclipse.emf.ecore.util.InternalEList;
20
21/**
22 * <!-- begin-user-doc -->
23 * An implementation of the model object '<em><b>Functional Input</b></em>'.
24 * <!-- end-user-doc -->
25 * <p>
26 * The following features are implemented:
27 * </p>
28 * <ul>
29 * <li>{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FunctionalInputImpl#getIncomingLinks <em>Incoming Links</em>}</li>
30 * </ul>
31 *
32 * @generated
33 */
34public class FunctionalInputImpl extends FunctionalDataImpl implements FunctionalInput {
35 /**
36 * The cached value of the '{@link #getIncomingLinks() <em>Incoming Links</em>}' reference list.
37 * <!-- begin-user-doc -->
38 * <!-- end-user-doc -->
39 * @see #getIncomingLinks()
40 * @generated
41 * @ordered
42 */
43 protected EList<InformationLink> incomingLinks;
44
45 /**
46 * <!-- begin-user-doc -->
47 * <!-- end-user-doc -->
48 * @generated
49 */
50 protected FunctionalInputImpl() {
51 super();
52 }
53
54 /**
55 * <!-- begin-user-doc -->
56 * <!-- end-user-doc -->
57 * @generated
58 */
59 @Override
60 protected EClass eStaticClass() {
61 return FunctionalArchitecturePackage.Literals.FUNCTIONAL_INPUT;
62 }
63
64 /**
65 * <!-- begin-user-doc -->
66 * <!-- end-user-doc -->
67 * @generated
68 */
69 public EList<InformationLink> getIncomingLinks() {
70 if (incomingLinks == null) {
71 incomingLinks = new EObjectWithInverseResolvingEList<InformationLink>(InformationLink.class, this, FunctionalArchitecturePackage.FUNCTIONAL_INPUT__INCOMING_LINKS, FunctionalArchitecturePackage.INFORMATION_LINK__TO);
72 }
73 return incomingLinks;
74 }
75
76 /**
77 * <!-- begin-user-doc -->
78 * <!-- end-user-doc -->
79 * @generated
80 */
81 @SuppressWarnings("unchecked")
82 @Override
83 public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
84 switch (featureID) {
85 case FunctionalArchitecturePackage.FUNCTIONAL_INPUT__INCOMING_LINKS:
86 return ((InternalEList<InternalEObject>)(InternalEList<?>)getIncomingLinks()).basicAdd(otherEnd, msgs);
87 }
88 return super.eInverseAdd(otherEnd, featureID, msgs);
89 }
90
91 /**
92 * <!-- begin-user-doc -->
93 * <!-- end-user-doc -->
94 * @generated
95 */
96 @Override
97 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
98 switch (featureID) {
99 case FunctionalArchitecturePackage.FUNCTIONAL_INPUT__INCOMING_LINKS:
100 return ((InternalEList<?>)getIncomingLinks()).basicRemove(otherEnd, msgs);
101 }
102 return super.eInverseRemove(otherEnd, featureID, msgs);
103 }
104
105 /**
106 * <!-- begin-user-doc -->
107 * <!-- end-user-doc -->
108 * @generated
109 */
110 @Override
111 public Object eGet(int featureID, boolean resolve, boolean coreType) {
112 switch (featureID) {
113 case FunctionalArchitecturePackage.FUNCTIONAL_INPUT__INCOMING_LINKS:
114 return getIncomingLinks();
115 }
116 return super.eGet(featureID, resolve, coreType);
117 }
118
119 /**
120 * <!-- begin-user-doc -->
121 * <!-- end-user-doc -->
122 * @generated
123 */
124 @SuppressWarnings("unchecked")
125 @Override
126 public void eSet(int featureID, Object newValue) {
127 switch (featureID) {
128 case FunctionalArchitecturePackage.FUNCTIONAL_INPUT__INCOMING_LINKS:
129 getIncomingLinks().clear();
130 getIncomingLinks().addAll((Collection<? extends InformationLink>)newValue);
131 return;
132 }
133 super.eSet(featureID, newValue);
134 }
135
136 /**
137 * <!-- begin-user-doc -->
138 * <!-- end-user-doc -->
139 * @generated
140 */
141 @Override
142 public void eUnset(int featureID) {
143 switch (featureID) {
144 case FunctionalArchitecturePackage.FUNCTIONAL_INPUT__INCOMING_LINKS:
145 getIncomingLinks().clear();
146 return;
147 }
148 super.eUnset(featureID);
149 }
150
151 /**
152 * <!-- begin-user-doc -->
153 * <!-- end-user-doc -->
154 * @generated
155 */
156 @Override
157 public boolean eIsSet(int featureID) {
158 switch (featureID) {
159 case FunctionalArchitecturePackage.FUNCTIONAL_INPUT__INCOMING_LINKS:
160 return incomingLinks != null && !incomingLinks.isEmpty();
161 }
162 return super.eIsSet(featureID);
163 }
164
165} //FunctionalInputImpl
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/impl/FunctionalInterfaceImpl.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/impl/FunctionalInterfaceImpl.java
new file mode 100644
index 00000000..68c85b5b
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/impl/FunctionalInterfaceImpl.java
@@ -0,0 +1,243 @@
1/**
2 */
3package hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl;
4
5import hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalArchitecturePackage;
6import hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalData;
7import hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalElement;
8import hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalInterface;
9
10import java.util.Collection;
11
12import org.eclipse.emf.common.notify.Notification;
13import org.eclipse.emf.common.notify.NotificationChain;
14
15import org.eclipse.emf.common.util.EList;
16
17import org.eclipse.emf.ecore.EClass;
18import org.eclipse.emf.ecore.InternalEObject;
19
20import org.eclipse.emf.ecore.impl.ENotificationImpl;
21import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
22
23import org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList;
24import org.eclipse.emf.ecore.util.EcoreUtil;
25import org.eclipse.emf.ecore.util.InternalEList;
26
27/**
28 * <!-- begin-user-doc -->
29 * An implementation of the model object '<em><b>Functional Interface</b></em>'.
30 * <!-- end-user-doc -->
31 * <p>
32 * The following features are implemented:
33 * </p>
34 * <ul>
35 * <li>{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FunctionalInterfaceImpl#getData <em>Data</em>}</li>
36 * <li>{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FunctionalInterfaceImpl#getElement <em>Element</em>}</li>
37 * </ul>
38 *
39 * @generated
40 */
41public class FunctionalInterfaceImpl extends MinimalEObjectImpl.Container implements FunctionalInterface {
42 /**
43 * The cached value of the '{@link #getData() <em>Data</em>}' containment reference list.
44 * <!-- begin-user-doc -->
45 * <!-- end-user-doc -->
46 * @see #getData()
47 * @generated
48 * @ordered
49 */
50 protected EList<FunctionalData> data;
51
52 /**
53 * <!-- begin-user-doc -->
54 * <!-- end-user-doc -->
55 * @generated
56 */
57 protected FunctionalInterfaceImpl() {
58 super();
59 }
60
61 /**
62 * <!-- begin-user-doc -->
63 * <!-- end-user-doc -->
64 * @generated
65 */
66 @Override
67 protected EClass eStaticClass() {
68 return FunctionalArchitecturePackage.Literals.FUNCTIONAL_INTERFACE;
69 }
70
71 /**
72 * <!-- begin-user-doc -->
73 * <!-- end-user-doc -->
74 * @generated
75 */
76 public EList<FunctionalData> getData() {
77 if (data == null) {
78 data = new EObjectContainmentWithInverseEList<FunctionalData>(FunctionalData.class, this, FunctionalArchitecturePackage.FUNCTIONAL_INTERFACE__DATA, FunctionalArchitecturePackage.FUNCTIONAL_DATA__INTERFACE);
79 }
80 return data;
81 }
82
83 /**
84 * <!-- begin-user-doc -->
85 * <!-- end-user-doc -->
86 * @generated
87 */
88 public FunctionalElement getElement() {
89 if (eContainerFeatureID() != FunctionalArchitecturePackage.FUNCTIONAL_INTERFACE__ELEMENT) return null;
90 return (FunctionalElement)eInternalContainer();
91 }
92
93 /**
94 * <!-- begin-user-doc -->
95 * <!-- end-user-doc -->
96 * @generated
97 */
98 public NotificationChain basicSetElement(FunctionalElement newElement, NotificationChain msgs) {
99 msgs = eBasicSetContainer((InternalEObject)newElement, FunctionalArchitecturePackage.FUNCTIONAL_INTERFACE__ELEMENT, msgs);
100 return msgs;
101 }
102
103 /**
104 * <!-- begin-user-doc -->
105 * <!-- end-user-doc -->
106 * @generated
107 */
108 public void setElement(FunctionalElement newElement) {
109 if (newElement != eInternalContainer() || (eContainerFeatureID() != FunctionalArchitecturePackage.FUNCTIONAL_INTERFACE__ELEMENT && newElement != null)) {
110 if (EcoreUtil.isAncestor(this, newElement))
111 throw new IllegalArgumentException("Recursive containment not allowed for " + toString());
112 NotificationChain msgs = null;
113 if (eInternalContainer() != null)
114 msgs = eBasicRemoveFromContainer(msgs);
115 if (newElement != null)
116 msgs = ((InternalEObject)newElement).eInverseAdd(this, FunctionalArchitecturePackage.FUNCTIONAL_ELEMENT__INTERFACE, FunctionalElement.class, msgs);
117 msgs = basicSetElement(newElement, msgs);
118 if (msgs != null) msgs.dispatch();
119 }
120 else if (eNotificationRequired())
121 eNotify(new ENotificationImpl(this, Notification.SET, FunctionalArchitecturePackage.FUNCTIONAL_INTERFACE__ELEMENT, newElement, newElement));
122 }
123
124 /**
125 * <!-- begin-user-doc -->
126 * <!-- end-user-doc -->
127 * @generated
128 */
129 @SuppressWarnings("unchecked")
130 @Override
131 public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
132 switch (featureID) {
133 case FunctionalArchitecturePackage.FUNCTIONAL_INTERFACE__DATA:
134 return ((InternalEList<InternalEObject>)(InternalEList<?>)getData()).basicAdd(otherEnd, msgs);
135 case FunctionalArchitecturePackage.FUNCTIONAL_INTERFACE__ELEMENT:
136 if (eInternalContainer() != null)
137 msgs = eBasicRemoveFromContainer(msgs);
138 return basicSetElement((FunctionalElement)otherEnd, msgs);
139 }
140 return super.eInverseAdd(otherEnd, featureID, msgs);
141 }
142
143 /**
144 * <!-- begin-user-doc -->
145 * <!-- end-user-doc -->
146 * @generated
147 */
148 @Override
149 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
150 switch (featureID) {
151 case FunctionalArchitecturePackage.FUNCTIONAL_INTERFACE__DATA:
152 return ((InternalEList<?>)getData()).basicRemove(otherEnd, msgs);
153 case FunctionalArchitecturePackage.FUNCTIONAL_INTERFACE__ELEMENT:
154 return basicSetElement(null, msgs);
155 }
156 return super.eInverseRemove(otherEnd, featureID, msgs);
157 }
158
159 /**
160 * <!-- begin-user-doc -->
161 * <!-- end-user-doc -->
162 * @generated
163 */
164 @Override
165 public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) {
166 switch (eContainerFeatureID()) {
167 case FunctionalArchitecturePackage.FUNCTIONAL_INTERFACE__ELEMENT:
168 return eInternalContainer().eInverseRemove(this, FunctionalArchitecturePackage.FUNCTIONAL_ELEMENT__INTERFACE, FunctionalElement.class, msgs);
169 }
170 return super.eBasicRemoveFromContainerFeature(msgs);
171 }
172
173 /**
174 * <!-- begin-user-doc -->
175 * <!-- end-user-doc -->
176 * @generated
177 */
178 @Override
179 public Object eGet(int featureID, boolean resolve, boolean coreType) {
180 switch (featureID) {
181 case FunctionalArchitecturePackage.FUNCTIONAL_INTERFACE__DATA:
182 return getData();
183 case FunctionalArchitecturePackage.FUNCTIONAL_INTERFACE__ELEMENT:
184 return getElement();
185 }
186 return super.eGet(featureID, resolve, coreType);
187 }
188
189 /**
190 * <!-- begin-user-doc -->
191 * <!-- end-user-doc -->
192 * @generated
193 */
194 @SuppressWarnings("unchecked")
195 @Override
196 public void eSet(int featureID, Object newValue) {
197 switch (featureID) {
198 case FunctionalArchitecturePackage.FUNCTIONAL_INTERFACE__DATA:
199 getData().clear();
200 getData().addAll((Collection<? extends FunctionalData>)newValue);
201 return;
202 case FunctionalArchitecturePackage.FUNCTIONAL_INTERFACE__ELEMENT:
203 setElement((FunctionalElement)newValue);
204 return;
205 }
206 super.eSet(featureID, newValue);
207 }
208
209 /**
210 * <!-- begin-user-doc -->
211 * <!-- end-user-doc -->
212 * @generated
213 */
214 @Override
215 public void eUnset(int featureID) {
216 switch (featureID) {
217 case FunctionalArchitecturePackage.FUNCTIONAL_INTERFACE__DATA:
218 getData().clear();
219 return;
220 case FunctionalArchitecturePackage.FUNCTIONAL_INTERFACE__ELEMENT:
221 setElement((FunctionalElement)null);
222 return;
223 }
224 super.eUnset(featureID);
225 }
226
227 /**
228 * <!-- begin-user-doc -->
229 * <!-- end-user-doc -->
230 * @generated
231 */
232 @Override
233 public boolean eIsSet(int featureID) {
234 switch (featureID) {
235 case FunctionalArchitecturePackage.FUNCTIONAL_INTERFACE__DATA:
236 return data != null && !data.isEmpty();
237 case FunctionalArchitecturePackage.FUNCTIONAL_INTERFACE__ELEMENT:
238 return getElement() != null;
239 }
240 return super.eIsSet(featureID);
241 }
242
243} //FunctionalInterfaceImpl
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/impl/FunctionalOutputImpl.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/impl/FunctionalOutputImpl.java
new file mode 100644
index 00000000..6c59d003
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/impl/FunctionalOutputImpl.java
@@ -0,0 +1,165 @@
1/**
2 */
3package hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl;
4
5import hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalArchitecturePackage;
6import hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalOutput;
7import hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.InformationLink;
8
9import java.util.Collection;
10
11import org.eclipse.emf.common.notify.NotificationChain;
12
13import org.eclipse.emf.common.util.EList;
14
15import org.eclipse.emf.ecore.EClass;
16import org.eclipse.emf.ecore.InternalEObject;
17
18import org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList;
19import org.eclipse.emf.ecore.util.InternalEList;
20
21/**
22 * <!-- begin-user-doc -->
23 * An implementation of the model object '<em><b>Functional Output</b></em>'.
24 * <!-- end-user-doc -->
25 * <p>
26 * The following features are implemented:
27 * </p>
28 * <ul>
29 * <li>{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.FunctionalOutputImpl#getOutgoingLinks <em>Outgoing Links</em>}</li>
30 * </ul>
31 *
32 * @generated
33 */
34public class FunctionalOutputImpl extends FunctionalDataImpl implements FunctionalOutput {
35 /**
36 * The cached value of the '{@link #getOutgoingLinks() <em>Outgoing Links</em>}' containment reference list.
37 * <!-- begin-user-doc -->
38 * <!-- end-user-doc -->
39 * @see #getOutgoingLinks()
40 * @generated
41 * @ordered
42 */
43 protected EList<InformationLink> outgoingLinks;
44
45 /**
46 * <!-- begin-user-doc -->
47 * <!-- end-user-doc -->
48 * @generated
49 */
50 protected FunctionalOutputImpl() {
51 super();
52 }
53
54 /**
55 * <!-- begin-user-doc -->
56 * <!-- end-user-doc -->
57 * @generated
58 */
59 @Override
60 protected EClass eStaticClass() {
61 return FunctionalArchitecturePackage.Literals.FUNCTIONAL_OUTPUT;
62 }
63
64 /**
65 * <!-- begin-user-doc -->
66 * <!-- end-user-doc -->
67 * @generated
68 */
69 public EList<InformationLink> getOutgoingLinks() {
70 if (outgoingLinks == null) {
71 outgoingLinks = new EObjectContainmentWithInverseEList<InformationLink>(InformationLink.class, this, FunctionalArchitecturePackage.FUNCTIONAL_OUTPUT__OUTGOING_LINKS, FunctionalArchitecturePackage.INFORMATION_LINK__FROM);
72 }
73 return outgoingLinks;
74 }
75
76 /**
77 * <!-- begin-user-doc -->
78 * <!-- end-user-doc -->
79 * @generated
80 */
81 @SuppressWarnings("unchecked")
82 @Override
83 public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
84 switch (featureID) {
85 case FunctionalArchitecturePackage.FUNCTIONAL_OUTPUT__OUTGOING_LINKS:
86 return ((InternalEList<InternalEObject>)(InternalEList<?>)getOutgoingLinks()).basicAdd(otherEnd, msgs);
87 }
88 return super.eInverseAdd(otherEnd, featureID, msgs);
89 }
90
91 /**
92 * <!-- begin-user-doc -->
93 * <!-- end-user-doc -->
94 * @generated
95 */
96 @Override
97 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
98 switch (featureID) {
99 case FunctionalArchitecturePackage.FUNCTIONAL_OUTPUT__OUTGOING_LINKS:
100 return ((InternalEList<?>)getOutgoingLinks()).basicRemove(otherEnd, msgs);
101 }
102 return super.eInverseRemove(otherEnd, featureID, msgs);
103 }
104
105 /**
106 * <!-- begin-user-doc -->
107 * <!-- end-user-doc -->
108 * @generated
109 */
110 @Override
111 public Object eGet(int featureID, boolean resolve, boolean coreType) {
112 switch (featureID) {
113 case FunctionalArchitecturePackage.FUNCTIONAL_OUTPUT__OUTGOING_LINKS:
114 return getOutgoingLinks();
115 }
116 return super.eGet(featureID, resolve, coreType);
117 }
118
119 /**
120 * <!-- begin-user-doc -->
121 * <!-- end-user-doc -->
122 * @generated
123 */
124 @SuppressWarnings("unchecked")
125 @Override
126 public void eSet(int featureID, Object newValue) {
127 switch (featureID) {
128 case FunctionalArchitecturePackage.FUNCTIONAL_OUTPUT__OUTGOING_LINKS:
129 getOutgoingLinks().clear();
130 getOutgoingLinks().addAll((Collection<? extends InformationLink>)newValue);
131 return;
132 }
133 super.eSet(featureID, newValue);
134 }
135
136 /**
137 * <!-- begin-user-doc -->
138 * <!-- end-user-doc -->
139 * @generated
140 */
141 @Override
142 public void eUnset(int featureID) {
143 switch (featureID) {
144 case FunctionalArchitecturePackage.FUNCTIONAL_OUTPUT__OUTGOING_LINKS:
145 getOutgoingLinks().clear();
146 return;
147 }
148 super.eUnset(featureID);
149 }
150
151 /**
152 * <!-- begin-user-doc -->
153 * <!-- end-user-doc -->
154 * @generated
155 */
156 @Override
157 public boolean eIsSet(int featureID) {
158 switch (featureID) {
159 case FunctionalArchitecturePackage.FUNCTIONAL_OUTPUT__OUTGOING_LINKS:
160 return outgoingLinks != null && !outgoingLinks.isEmpty();
161 }
162 return super.eIsSet(featureID);
163 }
164
165} //FunctionalOutputImpl
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/impl/InformationLinkImpl.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/impl/InformationLinkImpl.java
new file mode 100644
index 00000000..136162f6
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/impl/InformationLinkImpl.java
@@ -0,0 +1,285 @@
1/**
2 */
3package hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl;
4
5import hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalArchitecturePackage;
6import hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalInput;
7import hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalOutput;
8import hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.InformationLink;
9
10import org.eclipse.emf.common.notify.Notification;
11import org.eclipse.emf.common.notify.NotificationChain;
12
13import org.eclipse.emf.ecore.EClass;
14import org.eclipse.emf.ecore.InternalEObject;
15
16import org.eclipse.emf.ecore.impl.ENotificationImpl;
17import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
18
19import org.eclipse.emf.ecore.util.EcoreUtil;
20
21/**
22 * <!-- begin-user-doc -->
23 * An implementation of the model object '<em><b>Information Link</b></em>'.
24 * <!-- end-user-doc -->
25 * <p>
26 * The following features are implemented:
27 * </p>
28 * <ul>
29 * <li>{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.InformationLinkImpl#getFrom <em>From</em>}</li>
30 * <li>{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.impl.InformationLinkImpl#getTo <em>To</em>}</li>
31 * </ul>
32 *
33 * @generated
34 */
35public class InformationLinkImpl extends MinimalEObjectImpl.Container implements InformationLink {
36 /**
37 * The cached value of the '{@link #getTo() <em>To</em>}' reference.
38 * <!-- begin-user-doc -->
39 * <!-- end-user-doc -->
40 * @see #getTo()
41 * @generated
42 * @ordered
43 */
44 protected FunctionalInput to;
45
46 /**
47 * <!-- begin-user-doc -->
48 * <!-- end-user-doc -->
49 * @generated
50 */
51 protected InformationLinkImpl() {
52 super();
53 }
54
55 /**
56 * <!-- begin-user-doc -->
57 * <!-- end-user-doc -->
58 * @generated
59 */
60 @Override
61 protected EClass eStaticClass() {
62 return FunctionalArchitecturePackage.Literals.INFORMATION_LINK;
63 }
64
65 /**
66 * <!-- begin-user-doc -->
67 * <!-- end-user-doc -->
68 * @generated
69 */
70 public FunctionalOutput getFrom() {
71 if (eContainerFeatureID() != FunctionalArchitecturePackage.INFORMATION_LINK__FROM) return null;
72 return (FunctionalOutput)eInternalContainer();
73 }
74
75 /**
76 * <!-- begin-user-doc -->
77 * <!-- end-user-doc -->
78 * @generated
79 */
80 public NotificationChain basicSetFrom(FunctionalOutput newFrom, NotificationChain msgs) {
81 msgs = eBasicSetContainer((InternalEObject)newFrom, FunctionalArchitecturePackage.INFORMATION_LINK__FROM, msgs);
82 return msgs;
83 }
84
85 /**
86 * <!-- begin-user-doc -->
87 * <!-- end-user-doc -->
88 * @generated
89 */
90 public void setFrom(FunctionalOutput newFrom) {
91 if (newFrom != eInternalContainer() || (eContainerFeatureID() != FunctionalArchitecturePackage.INFORMATION_LINK__FROM && newFrom != null)) {
92 if (EcoreUtil.isAncestor(this, newFrom))
93 throw new IllegalArgumentException("Recursive containment not allowed for " + toString());
94 NotificationChain msgs = null;
95 if (eInternalContainer() != null)
96 msgs = eBasicRemoveFromContainer(msgs);
97 if (newFrom != null)
98 msgs = ((InternalEObject)newFrom).eInverseAdd(this, FunctionalArchitecturePackage.FUNCTIONAL_OUTPUT__OUTGOING_LINKS, FunctionalOutput.class, msgs);
99 msgs = basicSetFrom(newFrom, msgs);
100 if (msgs != null) msgs.dispatch();
101 }
102 else if (eNotificationRequired())
103 eNotify(new ENotificationImpl(this, Notification.SET, FunctionalArchitecturePackage.INFORMATION_LINK__FROM, newFrom, newFrom));
104 }
105
106 /**
107 * <!-- begin-user-doc -->
108 * <!-- end-user-doc -->
109 * @generated
110 */
111 public FunctionalInput getTo() {
112 if (to != null && to.eIsProxy()) {
113 InternalEObject oldTo = (InternalEObject)to;
114 to = (FunctionalInput)eResolveProxy(oldTo);
115 if (to != oldTo) {
116 if (eNotificationRequired())
117 eNotify(new ENotificationImpl(this, Notification.RESOLVE, FunctionalArchitecturePackage.INFORMATION_LINK__TO, oldTo, to));
118 }
119 }
120 return to;
121 }
122
123 /**
124 * <!-- begin-user-doc -->
125 * <!-- end-user-doc -->
126 * @generated
127 */
128 public FunctionalInput basicGetTo() {
129 return to;
130 }
131
132 /**
133 * <!-- begin-user-doc -->
134 * <!-- end-user-doc -->
135 * @generated
136 */
137 public NotificationChain basicSetTo(FunctionalInput newTo, NotificationChain msgs) {
138 FunctionalInput oldTo = to;
139 to = newTo;
140 if (eNotificationRequired()) {
141 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, FunctionalArchitecturePackage.INFORMATION_LINK__TO, oldTo, newTo);
142 if (msgs == null) msgs = notification; else msgs.add(notification);
143 }
144 return msgs;
145 }
146
147 /**
148 * <!-- begin-user-doc -->
149 * <!-- end-user-doc -->
150 * @generated
151 */
152 public void setTo(FunctionalInput newTo) {
153 if (newTo != to) {
154 NotificationChain msgs = null;
155 if (to != null)
156 msgs = ((InternalEObject)to).eInverseRemove(this, FunctionalArchitecturePackage.FUNCTIONAL_INPUT__INCOMING_LINKS, FunctionalInput.class, msgs);
157 if (newTo != null)
158 msgs = ((InternalEObject)newTo).eInverseAdd(this, FunctionalArchitecturePackage.FUNCTIONAL_INPUT__INCOMING_LINKS, FunctionalInput.class, msgs);
159 msgs = basicSetTo(newTo, msgs);
160 if (msgs != null) msgs.dispatch();
161 }
162 else if (eNotificationRequired())
163 eNotify(new ENotificationImpl(this, Notification.SET, FunctionalArchitecturePackage.INFORMATION_LINK__TO, newTo, newTo));
164 }
165
166 /**
167 * <!-- begin-user-doc -->
168 * <!-- end-user-doc -->
169 * @generated
170 */
171 @Override
172 public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
173 switch (featureID) {
174 case FunctionalArchitecturePackage.INFORMATION_LINK__FROM:
175 if (eInternalContainer() != null)
176 msgs = eBasicRemoveFromContainer(msgs);
177 return basicSetFrom((FunctionalOutput)otherEnd, msgs);
178 case FunctionalArchitecturePackage.INFORMATION_LINK__TO:
179 if (to != null)
180 msgs = ((InternalEObject)to).eInverseRemove(this, FunctionalArchitecturePackage.FUNCTIONAL_INPUT__INCOMING_LINKS, FunctionalInput.class, msgs);
181 return basicSetTo((FunctionalInput)otherEnd, msgs);
182 }
183 return super.eInverseAdd(otherEnd, featureID, msgs);
184 }
185
186 /**
187 * <!-- begin-user-doc -->
188 * <!-- end-user-doc -->
189 * @generated
190 */
191 @Override
192 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
193 switch (featureID) {
194 case FunctionalArchitecturePackage.INFORMATION_LINK__FROM:
195 return basicSetFrom(null, msgs);
196 case FunctionalArchitecturePackage.INFORMATION_LINK__TO:
197 return basicSetTo(null, msgs);
198 }
199 return super.eInverseRemove(otherEnd, featureID, msgs);
200 }
201
202 /**
203 * <!-- begin-user-doc -->
204 * <!-- end-user-doc -->
205 * @generated
206 */
207 @Override
208 public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) {
209 switch (eContainerFeatureID()) {
210 case FunctionalArchitecturePackage.INFORMATION_LINK__FROM:
211 return eInternalContainer().eInverseRemove(this, FunctionalArchitecturePackage.FUNCTIONAL_OUTPUT__OUTGOING_LINKS, FunctionalOutput.class, msgs);
212 }
213 return super.eBasicRemoveFromContainerFeature(msgs);
214 }
215
216 /**
217 * <!-- begin-user-doc -->
218 * <!-- end-user-doc -->
219 * @generated
220 */
221 @Override
222 public Object eGet(int featureID, boolean resolve, boolean coreType) {
223 switch (featureID) {
224 case FunctionalArchitecturePackage.INFORMATION_LINK__FROM:
225 return getFrom();
226 case FunctionalArchitecturePackage.INFORMATION_LINK__TO:
227 if (resolve) return getTo();
228 return basicGetTo();
229 }
230 return super.eGet(featureID, resolve, coreType);
231 }
232
233 /**
234 * <!-- begin-user-doc -->
235 * <!-- end-user-doc -->
236 * @generated
237 */
238 @Override
239 public void eSet(int featureID, Object newValue) {
240 switch (featureID) {
241 case FunctionalArchitecturePackage.INFORMATION_LINK__FROM:
242 setFrom((FunctionalOutput)newValue);
243 return;
244 case FunctionalArchitecturePackage.INFORMATION_LINK__TO:
245 setTo((FunctionalInput)newValue);
246 return;
247 }
248 super.eSet(featureID, newValue);
249 }
250
251 /**
252 * <!-- begin-user-doc -->
253 * <!-- end-user-doc -->
254 * @generated
255 */
256 @Override
257 public void eUnset(int featureID) {
258 switch (featureID) {
259 case FunctionalArchitecturePackage.INFORMATION_LINK__FROM:
260 setFrom((FunctionalOutput)null);
261 return;
262 case FunctionalArchitecturePackage.INFORMATION_LINK__TO:
263 setTo((FunctionalInput)null);
264 return;
265 }
266 super.eUnset(featureID);
267 }
268
269 /**
270 * <!-- begin-user-doc -->
271 * <!-- end-user-doc -->
272 * @generated
273 */
274 @Override
275 public boolean eIsSet(int featureID) {
276 switch (featureID) {
277 case FunctionalArchitecturePackage.INFORMATION_LINK__FROM:
278 return getFrom() != null;
279 case FunctionalArchitecturePackage.INFORMATION_LINK__TO:
280 return to != null;
281 }
282 return super.eIsSet(featureID);
283 }
284
285} //InformationLinkImpl
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/util/FunctionalArchitectureAdapterFactory.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/util/FunctionalArchitectureAdapterFactory.java
new file mode 100644
index 00000000..83edda47
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/util/FunctionalArchitectureAdapterFactory.java
@@ -0,0 +1,265 @@
1/**
2 */
3package hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.util;
4
5import hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.*;
6import hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalInterface;
7
8import org.eclipse.emf.common.notify.Adapter;
9import org.eclipse.emf.common.notify.Notifier;
10
11import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
12
13import org.eclipse.emf.ecore.EObject;
14
15/**
16 * <!-- begin-user-doc -->
17 * The <b>Adapter Factory</b> for the model.
18 * It provides an adapter <code>createXXX</code> method for each class of the model.
19 * <!-- end-user-doc -->
20 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalArchitecturePackage
21 * @generated
22 */
23public class FunctionalArchitectureAdapterFactory extends AdapterFactoryImpl {
24 /**
25 * The cached model package.
26 * <!-- begin-user-doc -->
27 * <!-- end-user-doc -->
28 * @generated
29 */
30 protected static FunctionalArchitecturePackage modelPackage;
31
32 /**
33 * Creates an instance of the adapter factory.
34 * <!-- begin-user-doc -->
35 * <!-- end-user-doc -->
36 * @generated
37 */
38 public FunctionalArchitectureAdapterFactory() {
39 if (modelPackage == null) {
40 modelPackage = FunctionalArchitecturePackage.eINSTANCE;
41 }
42 }
43
44 /**
45 * Returns whether this factory is applicable for the type of the object.
46 * <!-- begin-user-doc -->
47 * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
48 * <!-- end-user-doc -->
49 * @return whether this factory is applicable for the type of the object.
50 * @generated
51 */
52 @Override
53 public boolean isFactoryForType(Object object) {
54 if (object == modelPackage) {
55 return true;
56 }
57 if (object instanceof EObject) {
58 return ((EObject)object).eClass().getEPackage() == modelPackage;
59 }
60 return false;
61 }
62
63 /**
64 * The switch that delegates to the <code>createXXX</code> methods.
65 * <!-- begin-user-doc -->
66 * <!-- end-user-doc -->
67 * @generated
68 */
69 protected FunctionalArchitectureSwitch<Adapter> modelSwitch =
70 new FunctionalArchitectureSwitch<Adapter>() {
71 @Override
72 public Adapter caseFunctionalElement(FunctionalElement object) {
73 return createFunctionalElementAdapter();
74 }
75 @Override
76 public Adapter caseFunctionalArchitectureModel(FunctionalArchitectureModel object) {
77 return createFunctionalArchitectureModelAdapter();
78 }
79 @Override
80 public Adapter caseFunction(Function object) {
81 return createFunctionAdapter();
82 }
83 @Override
84 public Adapter caseFAMTerminator(FAMTerminator object) {
85 return createFAMTerminatorAdapter();
86 }
87 @Override
88 public Adapter caseInformationLink(InformationLink object) {
89 return createInformationLinkAdapter();
90 }
91 @Override
92 public Adapter caseFunctionalInterface(FunctionalInterface object) {
93 return createFunctionalInterfaceAdapter();
94 }
95 @Override
96 public Adapter caseFunctionalInput(FunctionalInput object) {
97 return createFunctionalInputAdapter();
98 }
99 @Override
100 public Adapter caseFunctionalOutput(FunctionalOutput object) {
101 return createFunctionalOutputAdapter();
102 }
103 @Override
104 public Adapter caseFunctionalData(FunctionalData object) {
105 return createFunctionalDataAdapter();
106 }
107 @Override
108 public Adapter defaultCase(EObject object) {
109 return createEObjectAdapter();
110 }
111 };
112
113 /**
114 * Creates an adapter for the <code>target</code>.
115 * <!-- begin-user-doc -->
116 * <!-- end-user-doc -->
117 * @param target the object to adapt.
118 * @return the adapter for the <code>target</code>.
119 * @generated
120 */
121 @Override
122 public Adapter createAdapter(Notifier target) {
123 return modelSwitch.doSwitch((EObject)target);
124 }
125
126
127 /**
128 * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalElement <em>Functional Element</em>}'.
129 * <!-- begin-user-doc -->
130 * This default implementation returns null so that we can easily ignore cases;
131 * it's useful to ignore a case when inheritance will catch all the cases anyway.
132 * <!-- end-user-doc -->
133 * @return the new adapter.
134 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalElement
135 * @generated
136 */
137 public Adapter createFunctionalElementAdapter() {
138 return null;
139 }
140
141 /**
142 * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalArchitectureModel <em>Model</em>}'.
143 * <!-- begin-user-doc -->
144 * This default implementation returns null so that we can easily ignore cases;
145 * it's useful to ignore a case when inheritance will catch all the cases anyway.
146 * <!-- end-user-doc -->
147 * @return the new adapter.
148 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalArchitectureModel
149 * @generated
150 */
151 public Adapter createFunctionalArchitectureModelAdapter() {
152 return null;
153 }
154
155 /**
156 * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.Function <em>Function</em>}'.
157 * <!-- begin-user-doc -->
158 * This default implementation returns null so that we can easily ignore cases;
159 * it's useful to ignore a case when inheritance will catch all the cases anyway.
160 * <!-- end-user-doc -->
161 * @return the new adapter.
162 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.Function
163 * @generated
164 */
165 public Adapter createFunctionAdapter() {
166 return null;
167 }
168
169 /**
170 * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FAMTerminator <em>FAM Terminator</em>}'.
171 * <!-- begin-user-doc -->
172 * This default implementation returns null so that we can easily ignore cases;
173 * it's useful to ignore a case when inheritance will catch all the cases anyway.
174 * <!-- end-user-doc -->
175 * @return the new adapter.
176 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FAMTerminator
177 * @generated
178 */
179 public Adapter createFAMTerminatorAdapter() {
180 return null;
181 }
182
183 /**
184 * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.InformationLink <em>Information Link</em>}'.
185 * <!-- begin-user-doc -->
186 * This default implementation returns null so that we can easily ignore cases;
187 * it's useful to ignore a case when inheritance will catch all the cases anyway.
188 * <!-- end-user-doc -->
189 * @return the new adapter.
190 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.InformationLink
191 * @generated
192 */
193 public Adapter createInformationLinkAdapter() {
194 return null;
195 }
196
197 /**
198 * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalInterface <em>Functional Interface</em>}'.
199 * <!-- begin-user-doc -->
200 * This default implementation returns null so that we can easily ignore cases;
201 * it's useful to ignore a case when inheritance will catch all the cases anyway.
202 * <!-- end-user-doc -->
203 * @return the new adapter.
204 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalInterface
205 * @generated
206 */
207 public Adapter createFunctionalInterfaceAdapter() {
208 return null;
209 }
210
211 /**
212 * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalInput <em>Functional Input</em>}'.
213 * <!-- begin-user-doc -->
214 * This default implementation returns null so that we can easily ignore cases;
215 * it's useful to ignore a case when inheritance will catch all the cases anyway.
216 * <!-- end-user-doc -->
217 * @return the new adapter.
218 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalInput
219 * @generated
220 */
221 public Adapter createFunctionalInputAdapter() {
222 return null;
223 }
224
225 /**
226 * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalOutput <em>Functional Output</em>}'.
227 * <!-- begin-user-doc -->
228 * This default implementation returns null so that we can easily ignore cases;
229 * it's useful to ignore a case when inheritance will catch all the cases anyway.
230 * <!-- end-user-doc -->
231 * @return the new adapter.
232 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalOutput
233 * @generated
234 */
235 public Adapter createFunctionalOutputAdapter() {
236 return null;
237 }
238
239 /**
240 * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalData <em>Functional Data</em>}'.
241 * <!-- begin-user-doc -->
242 * This default implementation returns null so that we can easily ignore cases;
243 * it's useful to ignore a case when inheritance will catch all the cases anyway.
244 * <!-- end-user-doc -->
245 * @return the new adapter.
246 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalData
247 * @generated
248 */
249 public Adapter createFunctionalDataAdapter() {
250 return null;
251 }
252
253 /**
254 * Creates a new adapter for the default case.
255 * <!-- begin-user-doc -->
256 * This default implementation returns null.
257 * <!-- end-user-doc -->
258 * @return the new adapter.
259 * @generated
260 */
261 public Adapter createEObjectAdapter() {
262 return null;
263 }
264
265} //FunctionalArchitectureAdapterFactory
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/util/FunctionalArchitectureSwitch.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/util/FunctionalArchitectureSwitch.java
new file mode 100644
index 00000000..1eeafa21
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen/hu/bme/mit/inf/dslreasomer/domains/transima/fam/FunctionalArchitecture/util/FunctionalArchitectureSwitch.java
@@ -0,0 +1,282 @@
1/**
2 */
3package hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.util;
4
5import hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.*;
6import hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalInterface;
7
8import org.eclipse.emf.ecore.EObject;
9import org.eclipse.emf.ecore.EPackage;
10
11import org.eclipse.emf.ecore.util.Switch;
12
13/**
14 * <!-- begin-user-doc -->
15 * The <b>Switch</b> for the model's inheritance hierarchy.
16 * It supports the call {@link #doSwitch(EObject) doSwitch(object)}
17 * to invoke the <code>caseXXX</code> method for each class of the model,
18 * starting with the actual class of the object
19 * and proceeding up the inheritance hierarchy
20 * until a non-null result is returned,
21 * which is the result of the switch.
22 * <!-- end-user-doc -->
23 * @see hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalArchitecturePackage
24 * @generated
25 */
26public class FunctionalArchitectureSwitch<T> extends Switch<T> {
27 /**
28 * The cached model package
29 * <!-- begin-user-doc -->
30 * <!-- end-user-doc -->
31 * @generated
32 */
33 protected static FunctionalArchitecturePackage modelPackage;
34
35 /**
36 * Creates an instance of the switch.
37 * <!-- begin-user-doc -->
38 * <!-- end-user-doc -->
39 * @generated
40 */
41 public FunctionalArchitectureSwitch() {
42 if (modelPackage == null) {
43 modelPackage = FunctionalArchitecturePackage.eINSTANCE;
44 }
45 }
46
47 /**
48 * Checks whether this is a switch for the given package.
49 * <!-- begin-user-doc -->
50 * <!-- end-user-doc -->
51 * @param ePackage the package in question.
52 * @return whether this is a switch for the given package.
53 * @generated
54 */
55 @Override
56 protected boolean isSwitchFor(EPackage ePackage) {
57 return ePackage == modelPackage;
58 }
59
60 /**
61 * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
62 * <!-- begin-user-doc -->
63 * <!-- end-user-doc -->
64 * @return the first non-null result returned by a <code>caseXXX</code> call.
65 * @generated
66 */
67 @Override
68 protected T doSwitch(int classifierID, EObject theEObject) {
69 switch (classifierID) {
70 case FunctionalArchitecturePackage.FUNCTIONAL_ELEMENT: {
71 FunctionalElement functionalElement = (FunctionalElement)theEObject;
72 T result = caseFunctionalElement(functionalElement);
73 if (result == null) result = defaultCase(theEObject);
74 return result;
75 }
76 case FunctionalArchitecturePackage.FUNCTIONAL_ARCHITECTURE_MODEL: {
77 FunctionalArchitectureModel functionalArchitectureModel = (FunctionalArchitectureModel)theEObject;
78 T result = caseFunctionalArchitectureModel(functionalArchitectureModel);
79 if (result == null) result = defaultCase(theEObject);
80 return result;
81 }
82 case FunctionalArchitecturePackage.FUNCTION: {
83 Function function = (Function)theEObject;
84 T result = caseFunction(function);
85 if (result == null) result = caseFunctionalElement(function);
86 if (result == null) result = defaultCase(theEObject);
87 return result;
88 }
89 case FunctionalArchitecturePackage.FAM_TERMINATOR: {
90 FAMTerminator famTerminator = (FAMTerminator)theEObject;
91 T result = caseFAMTerminator(famTerminator);
92 if (result == null) result = defaultCase(theEObject);
93 return result;
94 }
95 case FunctionalArchitecturePackage.INFORMATION_LINK: {
96 InformationLink informationLink = (InformationLink)theEObject;
97 T result = caseInformationLink(informationLink);
98 if (result == null) result = defaultCase(theEObject);
99 return result;
100 }
101 case FunctionalArchitecturePackage.FUNCTIONAL_INTERFACE: {
102 FunctionalInterface functionalInterface = (FunctionalInterface)theEObject;
103 T result = caseFunctionalInterface(functionalInterface);
104 if (result == null) result = defaultCase(theEObject);
105 return result;
106 }
107 case FunctionalArchitecturePackage.FUNCTIONAL_INPUT: {
108 FunctionalInput functionalInput = (FunctionalInput)theEObject;
109 T result = caseFunctionalInput(functionalInput);
110 if (result == null) result = caseFunctionalData(functionalInput);
111 if (result == null) result = defaultCase(theEObject);
112 return result;
113 }
114 case FunctionalArchitecturePackage.FUNCTIONAL_OUTPUT: {
115 FunctionalOutput functionalOutput = (FunctionalOutput)theEObject;
116 T result = caseFunctionalOutput(functionalOutput);
117 if (result == null) result = caseFunctionalData(functionalOutput);
118 if (result == null) result = defaultCase(theEObject);
119 return result;
120 }
121 case FunctionalArchitecturePackage.FUNCTIONAL_DATA: {
122 FunctionalData functionalData = (FunctionalData)theEObject;
123 T result = caseFunctionalData(functionalData);
124 if (result == null) result = defaultCase(theEObject);
125 return result;
126 }
127 default: return defaultCase(theEObject);
128 }
129 }
130
131 /**
132 * Returns the result of interpreting the object as an instance of '<em>Functional Element</em>'.
133 * <!-- begin-user-doc -->
134 * This implementation returns null;
135 * returning a non-null result will terminate the switch.
136 * <!-- end-user-doc -->
137 * @param object the target of the switch.
138 * @return the result of interpreting the object as an instance of '<em>Functional Element</em>'.
139 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
140 * @generated
141 */
142 public T caseFunctionalElement(FunctionalElement object) {
143 return null;
144 }
145
146 /**
147 * Returns the result of interpreting the object as an instance of '<em>Model</em>'.
148 * <!-- begin-user-doc -->
149 * This implementation returns null;
150 * returning a non-null result will terminate the switch.
151 * <!-- end-user-doc -->
152 * @param object the target of the switch.
153 * @return the result of interpreting the object as an instance of '<em>Model</em>'.
154 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
155 * @generated
156 */
157 public T caseFunctionalArchitectureModel(FunctionalArchitectureModel object) {
158 return null;
159 }
160
161 /**
162 * Returns the result of interpreting the object as an instance of '<em>Function</em>'.
163 * <!-- begin-user-doc -->
164 * This implementation returns null;
165 * returning a non-null result will terminate the switch.
166 * <!-- end-user-doc -->
167 * @param object the target of the switch.
168 * @return the result of interpreting the object as an instance of '<em>Function</em>'.
169 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
170 * @generated
171 */
172 public T caseFunction(Function object) {
173 return null;
174 }
175
176 /**
177 * Returns the result of interpreting the object as an instance of '<em>FAM Terminator</em>'.
178 * <!-- begin-user-doc -->
179 * This implementation returns null;
180 * returning a non-null result will terminate the switch.
181 * <!-- end-user-doc -->
182 * @param object the target of the switch.
183 * @return the result of interpreting the object as an instance of '<em>FAM Terminator</em>'.
184 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
185 * @generated
186 */
187 public T caseFAMTerminator(FAMTerminator object) {
188 return null;
189 }
190
191 /**
192 * Returns the result of interpreting the object as an instance of '<em>Information Link</em>'.
193 * <!-- begin-user-doc -->
194 * This implementation returns null;
195 * returning a non-null result will terminate the switch.
196 * <!-- end-user-doc -->
197 * @param object the target of the switch.
198 * @return the result of interpreting the object as an instance of '<em>Information Link</em>'.
199 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
200 * @generated
201 */
202 public T caseInformationLink(InformationLink object) {
203 return null;
204 }
205
206 /**
207 * Returns the result of interpreting the object as an instance of '<em>Functional Interface</em>'.
208 * <!-- begin-user-doc -->
209 * This implementation returns null;
210 * returning a non-null result will terminate the switch.
211 * <!-- end-user-doc -->
212 * @param object the target of the switch.
213 * @return the result of interpreting the object as an instance of '<em>Functional Interface</em>'.
214 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
215 * @generated
216 */
217 public T caseFunctionalInterface(FunctionalInterface object) {
218 return null;
219 }
220
221 /**
222 * Returns the result of interpreting the object as an instance of '<em>Functional Input</em>'.
223 * <!-- begin-user-doc -->
224 * This implementation returns null;
225 * returning a non-null result will terminate the switch.
226 * <!-- end-user-doc -->
227 * @param object the target of the switch.
228 * @return the result of interpreting the object as an instance of '<em>Functional Input</em>'.
229 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
230 * @generated
231 */
232 public T caseFunctionalInput(FunctionalInput object) {
233 return null;
234 }
235
236 /**
237 * Returns the result of interpreting the object as an instance of '<em>Functional Output</em>'.
238 * <!-- begin-user-doc -->
239 * This implementation returns null;
240 * returning a non-null result will terminate the switch.
241 * <!-- end-user-doc -->
242 * @param object the target of the switch.
243 * @return the result of interpreting the object as an instance of '<em>Functional Output</em>'.
244 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
245 * @generated
246 */
247 public T caseFunctionalOutput(FunctionalOutput object) {
248 return null;
249 }
250
251 /**
252 * Returns the result of interpreting the object as an instance of '<em>Functional Data</em>'.
253 * <!-- begin-user-doc -->
254 * This implementation returns null;
255 * returning a non-null result will terminate the switch.
256 * <!-- end-user-doc -->
257 * @param object the target of the switch.
258 * @return the result of interpreting the object as an instance of '<em>Functional Data</em>'.
259 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
260 * @generated
261 */
262 public T caseFunctionalData(FunctionalData object) {
263 return null;
264 }
265
266 /**
267 * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
268 * <!-- begin-user-doc -->
269 * This implementation returns null;
270 * returning a non-null result will terminate the switch, but this is the last case anyway.
271 * <!-- end-user-doc -->
272 * @param object the target of the switch.
273 * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
274 * @see #doSwitch(org.eclipse.emf.ecore.EObject)
275 * @generated
276 */
277 @Override
278 public T defaultCase(EObject object) {
279 return null;
280 }
281
282} //FunctionalArchitectureSwitch
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/model/FAM.aird b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/model/FAM.aird
new file mode 100644
index 00000000..a80d022f
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/model/FAM.aird
@@ -0,0 +1,620 @@
1<?xml version="1.0" encoding="UTF-8"?>
2<viewpoint:DAnalysis xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:description="http://www.eclipse.org/sirius/description/1.1.0" xmlns:description_1="http://www.eclipse.org/sirius/diagram/description/1.1.0" xmlns:diagram="http://www.eclipse.org/sirius/diagram/1.1.0" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.2/notation" xmlns:style="http://www.eclipse.org/sirius/diagram/description/style/1.1.0" xmlns:viewpoint="http://www.eclipse.org/sirius/1.1.0" xsi:schemaLocation="http://www.eclipse.org/sirius/description/1.1.0 http://www.eclipse.org/sirius/1.1.0#//description http://www.eclipse.org/sirius/diagram/description/1.1.0 http://www.eclipse.org/sirius/diagram/1.1.0#//description http://www.eclipse.org/sirius/diagram/description/style/1.1.0 http://www.eclipse.org/sirius/diagram/1.1.0#//description/style" xmi:id="_k0NJ4OydEea9M--3ql7TdQ" selectedViews="_lN-70OydEea9M--3ql7TdQ _lOMXMOydEea9M--3ql7TdQ _lOQooOydEea9M--3ql7TdQ _lOeEAOydEea9M--3ql7TdQ" version="10.1.0.201509162000">
3 <semanticResources>FAM.ecore</semanticResources>
4 <ownedViews xmi:type="viewpoint:DRepresentationContainer" xmi:id="_lN-70OydEea9M--3ql7TdQ">
5 <ownedRepresentations xmi:type="diagram:DSemanticDiagram" xmi:id="_nOZUYOydEea9M--3ql7TdQ" name="FunctionalArchitecture class diagram">
6 <ownedAnnotationEntries xmi:type="description:AnnotationEntry" xmi:id="_nOZ7cOydEea9M--3ql7TdQ" source="DANNOTATION_CUSTOMIZATION_KEY">
7 <data xmi:type="diagram:ComputedStyleDescriptionRegistry" xmi:id="_nOZ7ceydEea9M--3ql7TdQ">
8 <computedStyleDescriptions xmi:type="style:EdgeStyleDescription" xmi:id="_HOc-QOyjEea9M--3ql7TdQ" sourceArrow="FillDiamond" routingStyle="manhattan">
9 <strokeColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
10 <beginLabelStyleDescription xmi:type="style:BeginLabelStyleDescription" xmi:id="_HOc-QeyjEea9M--3ql7TdQ" showIcon="false" labelExpression="service:renderEOpposite">
11 <labelColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
12 </beginLabelStyleDescription>
13 <endLabelStyleDescription xmi:type="style:EndLabelStyleDescription" xmi:id="_HOc-QuyjEea9M--3ql7TdQ" showIcon="false" labelExpression="service:render">
14 <labelColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
15 </endLabelStyleDescription>
16 </computedStyleDescriptions>
17 <computedStyleDescriptions xmi:type="style:EdgeStyleDescription" xmi:id="_tra50OyrEea9M--3ql7TdQ" sourceArrow="InputArrow" targetArrow="FillDiamond" routingStyle="manhattan">
18 <strokeColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
19 <beginLabelStyleDescription xmi:type="style:BeginLabelStyleDescription" xmi:id="_tra50eyrEea9M--3ql7TdQ" showIcon="false" labelExpression="service:renderEOpposite">
20 <labelColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
21 </beginLabelStyleDescription>
22 <endLabelStyleDescription xmi:type="style:EndLabelStyleDescription" xmi:id="_tra50uyrEea9M--3ql7TdQ" showIcon="false" labelExpression="service:render">
23 <labelColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
24 </endLabelStyleDescription>
25 </computedStyleDescriptions>
26 <computedStyleDescriptions xmi:type="style:EdgeStyleDescription" xmi:id="_VSJW8OytEea9M--3ql7TdQ" sourceArrow="FillDiamond" routingStyle="manhattan">
27 <strokeColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
28 <centerLabelStyleDescription xmi:type="style:CenterLabelStyleDescription" xmi:id="_VSJW8eytEea9M--3ql7TdQ" showIcon="false" labelExpression="service:render">
29 <labelColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
30 </centerLabelStyleDescription>
31 <endLabelStyleDescription xmi:type="style:EndLabelStyleDescription" xmi:id="_VSJW8uytEea9M--3ql7TdQ" labelSize="6" showIcon="false" labelExpression="service:eKeysLabel">
32 <labelColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='dark_blue']"/>
33 </endLabelStyleDescription>
34 </computedStyleDescriptions>
35 <computedStyleDescriptions xmi:type="style:BundledImageDescription" xmi:id="_Gm8tcO7UEea19YBiZCUo9w" labelExpression="service:render" labelAlignment="LEFT" tooltipExpression="service:renderTooltip" sizeComputationExpression="1">
36 <borderColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
37 <labelFormat>bold</labelFormat>
38 <labelColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='dark_blue']"/>
39 <color xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
40 </computedStyleDescriptions>
41 <computedStyleDescriptions xmi:type="style:EdgeStyleDescription" xmi:id="_L1yC0O8hEea19YBiZCUo9w" routingStyle="manhattan">
42 <strokeColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='blue']"/>
43 <centerLabelStyleDescription xmi:type="style:CenterLabelStyleDescription" xmi:id="_L1yC0e8hEea19YBiZCUo9w" showIcon="false" labelExpression="service:render">
44 <labelFormat>bold</labelFormat>
45 <labelColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='dark_blue']"/>
46 </centerLabelStyleDescription>
47 <endLabelStyleDescription xmi:type="style:EndLabelStyleDescription" xmi:id="_L1yC0u8hEea19YBiZCUo9w" labelSize="6" showIcon="false" labelExpression="service:eKeysLabel">
48 <labelColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='dark_blue']"/>
49 </endLabelStyleDescription>
50 </computedStyleDescriptions>
51 </data>
52 </ownedAnnotationEntries>
53 <ownedAnnotationEntries xmi:type="description:AnnotationEntry" xmi:id="_nO7f4OydEea9M--3ql7TdQ" source="GMF_DIAGRAMS">
54 <data xmi:type="notation:Diagram" xmi:id="_nO7f4eydEea9M--3ql7TdQ" type="Sirius" element="_nOZUYOydEea9M--3ql7TdQ" measurementUnit="Pixel">
55 <children xmi:type="notation:Node" xmi:id="_qaYIMOydEea9M--3ql7TdQ" type="2003" element="_qaFNQOydEea9M--3ql7TdQ">
56 <children xmi:type="notation:Node" xmi:id="_qaZWUOydEea9M--3ql7TdQ" type="5007"/>
57 <children xmi:type="notation:Node" xmi:id="_qacZoOydEea9M--3ql7TdQ" type="7004">
58 <styles xmi:type="notation:SortingStyle" xmi:id="_qacZoeydEea9M--3ql7TdQ"/>
59 <styles xmi:type="notation:FilteringStyle" xmi:id="_qacZouydEea9M--3ql7TdQ"/>
60 </children>
61 <styles xmi:type="notation:ShapeStyle" xmi:id="_qaYIMeydEea9M--3ql7TdQ" fontName="Segoe UI" fontHeight="8"/>
62 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_qaYIMuydEea9M--3ql7TdQ" x="110" y="135" width="120" height="35"/>
63 </children>
64 <children xmi:type="notation:Node" xmi:id="_t-ST0OydEea9M--3ql7TdQ" type="2003" element="_t-LmIOydEea9M--3ql7TdQ">
65 <children xmi:type="notation:Node" xmi:id="_t-S64OydEea9M--3ql7TdQ" type="5007"/>
66 <children xmi:type="notation:Node" xmi:id="_t-S64eydEea9M--3ql7TdQ" type="7004">
67 <styles xmi:type="notation:SortingStyle" xmi:id="_t-S64uydEea9M--3ql7TdQ"/>
68 <styles xmi:type="notation:FilteringStyle" xmi:id="_t-S64-ydEea9M--3ql7TdQ"/>
69 </children>
70 <styles xmi:type="notation:ShapeStyle" xmi:id="_t-ST0eydEea9M--3ql7TdQ" fontName="Segoe UI" fontHeight="8"/>
71 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_t-ST0uydEea9M--3ql7TdQ" x="85" y="65" width="188" height="37"/>
72 </children>
73 <children xmi:type="notation:Node" xmi:id="_9HlOMOydEea9M--3ql7TdQ" type="2003" element="_9Ha2IOydEea9M--3ql7TdQ">
74 <children xmi:type="notation:Node" xmi:id="_9HlOM-ydEea9M--3ql7TdQ" type="5007"/>
75 <children xmi:type="notation:Node" xmi:id="_9Hl1QOydEea9M--3ql7TdQ" type="7004">
76 <children xmi:type="notation:Node" xmi:id="_GnMlEO7UEea19YBiZCUo9w" type="3010" element="_Gm8GYO7UEea19YBiZCUo9w">
77 <styles xmi:type="notation:FontStyle" xmi:id="_GnMlEe7UEea19YBiZCUo9w" fontColor="7490599" fontName="Segoe UI" fontHeight="8" bold="true"/>
78 <layoutConstraint xmi:type="notation:Location" xmi:id="_GnMlEu7UEea19YBiZCUo9w"/>
79 </children>
80 <styles xmi:type="notation:SortingStyle" xmi:id="_9Hl1QeydEea9M--3ql7TdQ"/>
81 <styles xmi:type="notation:FilteringStyle" xmi:id="_9Hl1QuydEea9M--3ql7TdQ"/>
82 </children>
83 <styles xmi:type="notation:ShapeStyle" xmi:id="_9HlOMeydEea9M--3ql7TdQ" fontName="Segoe UI" fontHeight="8"/>
84 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_9HlOMuydEea9M--3ql7TdQ" x="140" y="210" width="188" height="53"/>
85 </children>
86 <children xmi:type="notation:Node" xmi:id="_BJC4gOyeEea9M--3ql7TdQ" type="2003" element="_BI5ukOyeEea9M--3ql7TdQ">
87 <children xmi:type="notation:Node" xmi:id="_BJDfkOyeEea9M--3ql7TdQ" type="5007"/>
88 <children xmi:type="notation:Node" xmi:id="_BJEGoOyeEea9M--3ql7TdQ" type="7004">
89 <styles xmi:type="notation:SortingStyle" xmi:id="_BJEGoeyeEea9M--3ql7TdQ"/>
90 <styles xmi:type="notation:FilteringStyle" xmi:id="_BJEGouyeEea9M--3ql7TdQ"/>
91 </children>
92 <styles xmi:type="notation:ShapeStyle" xmi:id="_BJC4geyeEea9M--3ql7TdQ" fontName="Segoe UI" fontHeight="8"/>
93 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_BJC4guyeEea9M--3ql7TdQ" x="790" y="135" width="120" height="28"/>
94 </children>
95 <children xmi:type="notation:Node" xmi:id="_CgIAMOyeEea9M--3ql7TdQ" type="2003" element="_CgBSgOyeEea9M--3ql7TdQ">
96 <children xmi:type="notation:Node" xmi:id="_CgInQOyeEea9M--3ql7TdQ" type="5007"/>
97 <children xmi:type="notation:Node" xmi:id="_CgInQeyeEea9M--3ql7TdQ" type="7004">
98 <styles xmi:type="notation:SortingStyle" xmi:id="_CgInQuyeEea9M--3ql7TdQ"/>
99 <styles xmi:type="notation:FilteringStyle" xmi:id="_CgInQ-yeEea9M--3ql7TdQ"/>
100 </children>
101 <styles xmi:type="notation:ShapeStyle" xmi:id="_CgIAMeyeEea9M--3ql7TdQ" fontName="Segoe UI" fontHeight="8"/>
102 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_CgIAMuyeEea9M--3ql7TdQ" x="560" y="210" width="120" height="18"/>
103 </children>
104 <children xmi:type="notation:Node" xmi:id="_D7Uy4OyeEea9M--3ql7TdQ" type="2003" element="_D7MQAOyeEea9M--3ql7TdQ">
105 <children xmi:type="notation:Node" xmi:id="_D7VZ8OyeEea9M--3ql7TdQ" type="5007"/>
106 <children xmi:type="notation:Node" xmi:id="_D7VZ8eyeEea9M--3ql7TdQ" type="7004">
107 <styles xmi:type="notation:SortingStyle" xmi:id="_D7VZ8uyeEea9M--3ql7TdQ"/>
108 <styles xmi:type="notation:FilteringStyle" xmi:id="_D7VZ8-yeEea9M--3ql7TdQ"/>
109 </children>
110 <styles xmi:type="notation:ShapeStyle" xmi:id="_D7Uy4eyeEea9M--3ql7TdQ" fontName="Segoe UI" fontHeight="8"/>
111 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_D7Uy4uyeEea9M--3ql7TdQ" x="330" y="135" width="128" height="8"/>
112 </children>
113 <children xmi:type="notation:Node" xmi:id="_EmQe4OyhEea9M--3ql7TdQ" type="2003" element="_EmHU8OyhEea9M--3ql7TdQ">
114 <children xmi:type="notation:Node" xmi:id="_EmRF8OyhEea9M--3ql7TdQ" type="5007"/>
115 <children xmi:type="notation:Node" xmi:id="_EmRtAOyhEea9M--3ql7TdQ" type="7004">
116 <styles xmi:type="notation:SortingStyle" xmi:id="_EmRtAeyhEea9M--3ql7TdQ"/>
117 <styles xmi:type="notation:FilteringStyle" xmi:id="_EmRtAuyhEea9M--3ql7TdQ"/>
118 </children>
119 <styles xmi:type="notation:ShapeStyle" xmi:id="_EmQe4eyhEea9M--3ql7TdQ" fontName="Segoe UI" fontHeight="8"/>
120 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_EmQe4uyhEea9M--3ql7TdQ" x="795" y="200" width="120" height="28"/>
121 </children>
122 <children xmi:type="notation:Node" xmi:id="_VQCUkOyhEea9M--3ql7TdQ" type="2003" element="_VP5KoOyhEea9M--3ql7TdQ">
123 <children xmi:type="notation:Node" xmi:id="_VQCUk-yhEea9M--3ql7TdQ" type="5007"/>
124 <children xmi:type="notation:Node" xmi:id="_VQCUlOyhEea9M--3ql7TdQ" type="7004">
125 <styles xmi:type="notation:SortingStyle" xmi:id="_VQCUleyhEea9M--3ql7TdQ"/>
126 <styles xmi:type="notation:FilteringStyle" xmi:id="_VQCUluyhEea9M--3ql7TdQ"/>
127 </children>
128 <styles xmi:type="notation:ShapeStyle" xmi:id="_VQCUkeyhEea9M--3ql7TdQ" fontName="Segoe UI" fontHeight="8"/>
129 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_VQCUkuyhEea9M--3ql7TdQ" x="334" y="210" width="120" height="28"/>
130 </children>
131 <children xmi:type="notation:Node" xmi:id="_Xs6msOyhEea9M--3ql7TdQ" type="2003" element="_Xsw1sOyhEea9M--3ql7TdQ">
132 <children xmi:type="notation:Node" xmi:id="_Xs7NwOyhEea9M--3ql7TdQ" type="5007"/>
133 <children xmi:type="notation:Node" xmi:id="_Xs7NweyhEea9M--3ql7TdQ" type="7004">
134 <styles xmi:type="notation:SortingStyle" xmi:id="_Xs7NwuyhEea9M--3ql7TdQ"/>
135 <styles xmi:type="notation:FilteringStyle" xmi:id="_Xs7Nw-yhEea9M--3ql7TdQ"/>
136 </children>
137 <styles xmi:type="notation:ShapeStyle" xmi:id="_Xs6mseyhEea9M--3ql7TdQ" fontName="Segoe UI" fontHeight="8"/>
138 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Xs6msuyhEea9M--3ql7TdQ" x="555" y="135" width="120" height="35"/>
139 </children>
140 <children xmi:type="notation:Node" xmi:id="_uWMNwOyuEea9M--3ql7TdQ" type="2003" element="_uV89MOyuEea9M--3ql7TdQ">
141 <children xmi:type="notation:Node" xmi:id="_uWMNw-yuEea9M--3ql7TdQ" type="5007"/>
142 <children xmi:type="notation:Node" xmi:id="_uWMNxOyuEea9M--3ql7TdQ" type="7004">
143 <children xmi:type="notation:Node" xmi:id="_vFgx4OyuEea9M--3ql7TdQ" type="3010" element="_vFTWgOyuEea9M--3ql7TdQ">
144 <styles xmi:type="notation:FontStyle" xmi:id="_vFgx4eyuEea9M--3ql7TdQ" fontName="Segoe UI" fontHeight="8"/>
145 <layoutConstraint xmi:type="notation:Location" xmi:id="_vFgx4uyuEea9M--3ql7TdQ"/>
146 </children>
147 <children xmi:type="notation:Node" xmi:id="_wO3moOyuEea9M--3ql7TdQ" type="3010" element="_wOvDwOyuEea9M--3ql7TdQ">
148 <styles xmi:type="notation:FontStyle" xmi:id="_wO3moeyuEea9M--3ql7TdQ" fontName="Segoe UI" fontHeight="8"/>
149 <layoutConstraint xmi:type="notation:Location" xmi:id="_wO3mouyuEea9M--3ql7TdQ"/>
150 </children>
151 <children xmi:type="notation:Node" xmi:id="_xKlA8OyuEea9M--3ql7TdQ" type="3010" element="_xKb3AOyuEea9M--3ql7TdQ">
152 <styles xmi:type="notation:FontStyle" xmi:id="_xKlA8eyuEea9M--3ql7TdQ" fontName="Segoe UI" fontHeight="8"/>
153 <layoutConstraint xmi:type="notation:Location" xmi:id="_xKlA8uyuEea9M--3ql7TdQ"/>
154 </children>
155 <styles xmi:type="notation:SortingStyle" xmi:id="_uWMNxeyuEea9M--3ql7TdQ"/>
156 <styles xmi:type="notation:FilteringStyle" xmi:id="_uWMNxuyuEea9M--3ql7TdQ"/>
157 </children>
158 <styles xmi:type="notation:ShapeStyle" xmi:id="_uWMNweyuEea9M--3ql7TdQ" fontName="Segoe UI" fontHeight="8"/>
159 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_uWMNwuyuEea9M--3ql7TdQ" x="35" y="184" width="98" height="79"/>
160 </children>
161 <styles xmi:type="notation:DiagramStyle" xmi:id="_nO7f4uydEea9M--3ql7TdQ"/>
162 <edges xmi:type="notation:Edge" xmi:id="_ZGXF4OyhEea9M--3ql7TdQ" type="4001" element="_ZGEyAOyhEea9M--3ql7TdQ" source="_EmQe4OyhEea9M--3ql7TdQ" target="_Xs6msOyhEea9M--3ql7TdQ">
163 <children xmi:type="notation:Node" xmi:id="_ZGYUAOyhEea9M--3ql7TdQ" type="6001">
164 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ZGYUAeyhEea9M--3ql7TdQ" y="-10"/>
165 </children>
166 <children xmi:type="notation:Node" xmi:id="_ZGY7EOyhEea9M--3ql7TdQ" type="6002">
167 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ZGY7EeyhEea9M--3ql7TdQ" y="10"/>
168 </children>
169 <children xmi:type="notation:Node" xmi:id="_ZGZiIOyhEea9M--3ql7TdQ" type="6003">
170 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ZGZiIeyhEea9M--3ql7TdQ" y="10"/>
171 </children>
172 <styles xmi:type="notation:ConnectorStyle" xmi:id="_ZGXF4eyhEea9M--3ql7TdQ" routing="Tree"/>
173 <styles xmi:type="notation:FontStyle" xmi:id="_ZGXF4uyhEea9M--3ql7TdQ" fontName="Segoe UI" fontHeight="8"/>
174 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_ZGXF4-yhEea9M--3ql7TdQ" points="[0, 0, -71, 91]$[71, -91, 0, 0]"/>
175 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ZGbXUOyhEea9M--3ql7TdQ" id="(0.5,0.0)"/>
176 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ZGb-YOyhEea9M--3ql7TdQ" id="(0.5,-0.48484848484848486)"/>
177 </edges>
178 <edges xmi:type="notation:Edge" xmi:id="_ZdX3sOyhEea9M--3ql7TdQ" type="4001" element="_ZdLDYOyhEea9M--3ql7TdQ" source="_VQCUkOyhEea9M--3ql7TdQ" target="_Xs6msOyhEea9M--3ql7TdQ">
179 <children xmi:type="notation:Node" xmi:id="_ZdYewOyhEea9M--3ql7TdQ" type="6001">
180 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ZdYeweyhEea9M--3ql7TdQ" y="-10"/>
181 </children>
182 <children xmi:type="notation:Node" xmi:id="_ZdYewuyhEea9M--3ql7TdQ" type="6002">
183 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ZdYew-yhEea9M--3ql7TdQ" y="10"/>
184 </children>
185 <children xmi:type="notation:Node" xmi:id="_ZdYexOyhEea9M--3ql7TdQ" type="6003">
186 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ZdYexeyhEea9M--3ql7TdQ" y="10"/>
187 </children>
188 <styles xmi:type="notation:ConnectorStyle" xmi:id="_ZdX3seyhEea9M--3ql7TdQ" routing="Tree"/>
189 <styles xmi:type="notation:FontStyle" xmi:id="_ZdX3suyhEea9M--3ql7TdQ" fontName="Segoe UI" fontHeight="8"/>
190 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_ZdX3s-yhEea9M--3ql7TdQ" points="[0, 0, 97, 42]$[-97, -42, 0, 0]"/>
191 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ZdZF0OyhEea9M--3ql7TdQ" id="(0.7372881355932204,0.0)"/>
192 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ZdZF0eyhEea9M--3ql7TdQ" id="(0.5,-0.48484848484848486)"/>
193 </edges>
194 <edges xmi:type="notation:Edge" xmi:id="_v742sOyiEea9M--3ql7TdQ" type="4001" element="_v7l7wOyiEea9M--3ql7TdQ" source="_VQCUkOyhEea9M--3ql7TdQ" target="_CgIAMOyeEea9M--3ql7TdQ">
195 <children xmi:type="notation:Node" xmi:id="_v75dwOyiEea9M--3ql7TdQ" type="6001">
196 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_v75dweyiEea9M--3ql7TdQ" y="-10"/>
197 </children>
198 <children xmi:type="notation:Node" xmi:id="_v76E0OyiEea9M--3ql7TdQ" type="6002">
199 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_v76E0eyiEea9M--3ql7TdQ" x="12" y="15"/>
200 </children>
201 <children xmi:type="notation:Node" xmi:id="_v76E0uyiEea9M--3ql7TdQ" type="6003">
202 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_v76E0-yiEea9M--3ql7TdQ" x="-34" y="-10"/>
203 </children>
204 <styles xmi:type="notation:ConnectorStyle" xmi:id="_v742seyiEea9M--3ql7TdQ" routing="Rectilinear"/>
205 <styles xmi:type="notation:FontStyle" xmi:id="_v742suyiEea9M--3ql7TdQ" fontName="Segoe UI" fontHeight="8"/>
206 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_v742s-yiEea9M--3ql7TdQ" points="[0, 4, -173, 19]$[108, 4, -65, 19]"/>
207 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_v76E1OyiEea9M--3ql7TdQ" id="(1.0,0.38461538461538464)"/>
208 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_v76E1eyiEea9M--3ql7TdQ" id="(0.5508474576271186,0.0)"/>
209 </edges>
210 <edges xmi:type="notation:Edge" xmi:id="_JlixcOyjEea9M--3ql7TdQ" type="4001" element="_JlTg4OyjEea9M--3ql7TdQ" source="_EmQe4OyhEea9M--3ql7TdQ" target="_CgIAMOyeEea9M--3ql7TdQ">
211 <children xmi:type="notation:Node" xmi:id="_JlixdOyjEea9M--3ql7TdQ" type="6001">
212 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_JlixdeyjEea9M--3ql7TdQ" y="10"/>
213 </children>
214 <children xmi:type="notation:Node" xmi:id="_JlixduyjEea9M--3ql7TdQ" type="6002">
215 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Jlixd-yjEea9M--3ql7TdQ" y="-10"/>
216 </children>
217 <children xmi:type="notation:Node" xmi:id="_JljYgOyjEea9M--3ql7TdQ" type="6003">
218 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_JljYgeyjEea9M--3ql7TdQ" x="-31" y="13"/>
219 </children>
220 <styles xmi:type="notation:ConnectorStyle" xmi:id="_JlixceyjEea9M--3ql7TdQ" routing="Rectilinear"/>
221 <styles xmi:type="notation:FontStyle" xmi:id="_JlixcuyjEea9M--3ql7TdQ" fontName="Segoe UI" fontHeight="8"/>
222 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Jlixc-yjEea9M--3ql7TdQ" points="[-59, 10, 176, 0]$[-176, 10, 59, 0]"/>
223 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JllNsOyjEea9M--3ql7TdQ" id="(0.5,0.5)"/>
224 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JllNseyjEea9M--3ql7TdQ" id="(0.5,0.5)"/>
225 </edges>
226 <edges xmi:type="notation:Edge" xmi:id="_vx5iUOykEea9M--3ql7TdQ" type="4001" element="_vxn1gOykEea9M--3ql7TdQ" source="_BJC4gOyeEea9M--3ql7TdQ" target="_Xs6msOyhEea9M--3ql7TdQ">
227 <children xmi:type="notation:Node" xmi:id="_vx6JYOykEea9M--3ql7TdQ" type="6001">
228 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_vx6JYeykEea9M--3ql7TdQ" x="14" y="-10"/>
229 </children>
230 <children xmi:type="notation:Node" xmi:id="_vx6JYuykEea9M--3ql7TdQ" type="6002">
231 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_vx6JY-ykEea9M--3ql7TdQ" x="29" y="12"/>
232 </children>
233 <children xmi:type="notation:Node" xmi:id="_vx6JZOykEea9M--3ql7TdQ" type="6003">
234 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_vx6JZeykEea9M--3ql7TdQ" x="-9" y="-9"/>
235 </children>
236 <styles xmi:type="notation:ConnectorStyle" xmi:id="_vx5iUeykEea9M--3ql7TdQ" routing="Rectilinear"/>
237 <styles xmi:type="notation:FontStyle" xmi:id="_vx5iUuykEea9M--3ql7TdQ" fontName="Segoe UI" fontHeight="8"/>
238 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_vx5iU-ykEea9M--3ql7TdQ" points="[-59, 4, 176, 5]$[-176, 4, 59, 5]"/>
239 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_vx6wcOykEea9M--3ql7TdQ" id="(0.5,0.5)"/>
240 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_vx6wceykEea9M--3ql7TdQ" id="(0.5,0.4857142857142857)"/>
241 </edges>
242 <edges xmi:type="notation:Edge" xmi:id="_znqS8OykEea9M--3ql7TdQ" type="4001" element="_znYmIOykEea9M--3ql7TdQ" source="_D7Uy4OyeEea9M--3ql7TdQ" target="_Xs6msOyhEea9M--3ql7TdQ">
243 <children xmi:type="notation:Node" xmi:id="_znq6AOykEea9M--3ql7TdQ" type="6001">
244 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_znq6AeykEea9M--3ql7TdQ" x="38" y="-10"/>
245 </children>
246 <children xmi:type="notation:Node" xmi:id="_znq6AuykEea9M--3ql7TdQ" type="6002">
247 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_znq6A-ykEea9M--3ql7TdQ" x="25" y="13"/>
248 </children>
249 <children xmi:type="notation:Node" xmi:id="_znq6BOykEea9M--3ql7TdQ" type="6003">
250 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_znq6BeykEea9M--3ql7TdQ" x="-16" y="-13"/>
251 </children>
252 <styles xmi:type="notation:ConnectorStyle" xmi:id="_znqS8eykEea9M--3ql7TdQ" routing="Rectilinear"/>
253 <styles xmi:type="notation:FontStyle" xmi:id="_znqS8uykEea9M--3ql7TdQ" fontName="Segoe UI" fontHeight="8"/>
254 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_znqS8-ykEea9M--3ql7TdQ" points="[0, 0, -99, 0]$[99, 0, 0, 0]"/>
255 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_znrhEOykEea9M--3ql7TdQ" id="(1.0,0.48717948717948717)"/>
256 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_znrhEeykEea9M--3ql7TdQ" id="(0.0,0.48717948717948717)"/>
257 </edges>
258 <edges xmi:type="notation:Edge" xmi:id="_6qPEMOysEea9M--3ql7TdQ" type="4001" element="_6qEFEOysEea9M--3ql7TdQ" source="_qaYIMOydEea9M--3ql7TdQ" target="_D7Uy4OyeEea9M--3ql7TdQ">
259 <children xmi:type="notation:Node" xmi:id="_6qPrQOysEea9M--3ql7TdQ" type="6001">
260 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_6qPrQeysEea9M--3ql7TdQ" x="8" y="-10"/>
261 </children>
262 <children xmi:type="notation:Node" xmi:id="_6qPrQuysEea9M--3ql7TdQ" type="6002">
263 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_6qPrQ-ysEea9M--3ql7TdQ" x="26" y="13"/>
264 </children>
265 <children xmi:type="notation:Node" xmi:id="_6qPrROysEea9M--3ql7TdQ" type="6003">
266 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_6qPrReysEea9M--3ql7TdQ" x="-24" y="-13"/>
267 </children>
268 <styles xmi:type="notation:ConnectorStyle" xmi:id="_6qPEMeysEea9M--3ql7TdQ" routing="Rectilinear"/>
269 <styles xmi:type="notation:FontStyle" xmi:id="_6qPEMuysEea9M--3ql7TdQ" fontName="Segoe UI" fontHeight="8"/>
270 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_6qPEM-ysEea9M--3ql7TdQ" points="[0, -29, -102, -29]$[102, -29, 0, -29]"/>
271 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_6qPrRuysEea9M--3ql7TdQ" id="(1.0,1.0)"/>
272 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_6qPrR-ysEea9M--3ql7TdQ" id="(0.0,1.0)"/>
273 </edges>
274 <edges xmi:type="notation:Edge" xmi:id="_NAb_cOytEea9M--3ql7TdQ" type="4001" element="_NARAUOytEea9M--3ql7TdQ" source="_9HlOMOydEea9M--3ql7TdQ" target="_qaYIMOydEea9M--3ql7TdQ">
275 <children xmi:type="notation:Node" xmi:id="_NAb_dOytEea9M--3ql7TdQ" type="6001">
276 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_NAb_deytEea9M--3ql7TdQ" x="-4"/>
277 </children>
278 <children xmi:type="notation:Node" xmi:id="_NAcmgOytEea9M--3ql7TdQ" type="6002">
279 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_NAcmgeytEea9M--3ql7TdQ" y="-10"/>
280 </children>
281 <children xmi:type="notation:Node" xmi:id="_NAcmguytEea9M--3ql7TdQ" type="6003">
282 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_NAcmg-ytEea9M--3ql7TdQ" x="-2" y="10"/>
283 </children>
284 <styles xmi:type="notation:ConnectorStyle" xmi:id="_NAb_ceytEea9M--3ql7TdQ" routing="Tree"/>
285 <styles xmi:type="notation:FontStyle" xmi:id="_NAb_cuytEea9M--3ql7TdQ" fontName="Segoe UI" fontHeight="8"/>
286 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_NAb_c-ytEea9M--3ql7TdQ" points="[0, -39, 29, 56]$[0, -39, 29, 56]$[-30, -39, -1, 56]$[-30, -75, -1, 20]"/>
287 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_NAcmhOytEea9M--3ql7TdQ" id="(0.3118279569892473,0.7647058823529411)"/>
288 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_NAcmheytEea9M--3ql7TdQ" id="(0.5,0.5)"/>
289 </edges>
290 <edges xmi:type="notation:Edge" xmi:id="_SWca0OytEea9M--3ql7TdQ" type="4001" element="_SWSCwOytEea9M--3ql7TdQ" source="_t-ST0OydEea9M--3ql7TdQ" target="_qaYIMOydEea9M--3ql7TdQ">
291 <children xmi:type="notation:Node" xmi:id="_SWca1OytEea9M--3ql7TdQ" type="6001">
292 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_SWca1eytEea9M--3ql7TdQ" x="-4" y="51"/>
293 </children>
294 <children xmi:type="notation:Node" xmi:id="_SWca1uytEea9M--3ql7TdQ" type="6002">
295 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_SWca1-ytEea9M--3ql7TdQ" x="78" y="-10"/>
296 </children>
297 <children xmi:type="notation:Node" xmi:id="_SWca2OytEea9M--3ql7TdQ" type="6003">
298 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_SWca2eytEea9M--3ql7TdQ" x="14" y="-10"/>
299 </children>
300 <styles xmi:type="notation:ConnectorStyle" xmi:id="_SWca0eytEea9M--3ql7TdQ" routing="Rectilinear"/>
301 <styles xmi:type="notation:FontStyle" xmi:id="_SWca0uytEea9M--3ql7TdQ" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/>
302 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_SWca0-ytEea9M--3ql7TdQ" points="[-103, 19, 13, -31]$[-103, 50, 13, 0]"/>
303 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_SWdB4OytEea9M--3ql7TdQ" id="(1.0,0.5128205128205128)"/>
304 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_SWdB4eytEea9M--3ql7TdQ" id="(0.3813559322033898,0.0)"/>
305 </edges>
306 <edges xmi:type="notation:Edge" xmi:id="_GT_1QOywEea9M--3ql7TdQ" type="4001" element="_GT02IOywEea9M--3ql7TdQ" source="_qaYIMOydEea9M--3ql7TdQ" target="_t-ST0OydEea9M--3ql7TdQ">
307 <children xmi:type="notation:Node" xmi:id="_GT_1ROywEea9M--3ql7TdQ" type="6001">
308 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GT_1ReywEea9M--3ql7TdQ" x="1" y="42" width="126" height="17"/>
309 </children>
310 <children xmi:type="notation:Node" xmi:id="_GUAcUOywEea9M--3ql7TdQ" type="6002">
311 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GUAcUeywEea9M--3ql7TdQ" x="24" y="-10"/>
312 </children>
313 <children xmi:type="notation:Node" xmi:id="_GUAcUuywEea9M--3ql7TdQ" type="6003">
314 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GUAcU-ywEea9M--3ql7TdQ" x="-71" y="-9"/>
315 </children>
316 <styles xmi:type="notation:ConnectorStyle" xmi:id="_GT_1QeywEea9M--3ql7TdQ" routing="Rectilinear"/>
317 <styles xmi:type="notation:FontStyle" xmi:id="_GT_1QuywEea9M--3ql7TdQ" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/>
318 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_GT_1Q-ywEea9M--3ql7TdQ" points="[0, -55, -85, -14]$[161, -55, 76, -14]"/>
319 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GUAcVOywEea9M--3ql7TdQ" id="(0.0,0.2564102564102564)"/>
320 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_GUAcVeywEea9M--3ql7TdQ" id="(0.5913978494623656,1.0)"/>
321 </edges>
322 <edges xmi:type="notation:Edge" xmi:id="_ZsWiwO6tEea19YBiZCUo9w" type="4001" element="_ZrxT8O6tEea19YBiZCUo9w" source="_9HlOMOydEea9M--3ql7TdQ" target="_qaYIMOydEea9M--3ql7TdQ">
323 <children xmi:type="notation:Node" xmi:id="_Zsd3gO6tEea19YBiZCUo9w" type="6001">
324 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Zsd3ge6tEea19YBiZCUo9w" y="-10"/>
325 </children>
326 <children xmi:type="notation:Node" xmi:id="_ZsfFoO6tEea19YBiZCUo9w" type="6002">
327 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ZsfFoe6tEea19YBiZCUo9w" x="4" y="40"/>
328 </children>
329 <children xmi:type="notation:Node" xmi:id="_ZsfssO6tEea19YBiZCUo9w" type="6003">
330 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Zsfsse6tEea19YBiZCUo9w" x="-6" y="55"/>
331 </children>
332 <styles xmi:type="notation:ConnectorStyle" xmi:id="_ZsWiwe6tEea19YBiZCUo9w" routing="Rectilinear"/>
333 <styles xmi:type="notation:FontStyle" xmi:id="_ZsWiwu6tEea19YBiZCUo9w" fontName="Segoe UI" fontHeight="8"/>
334 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_ZsWiw-6tEea19YBiZCUo9w" points="[0, 0, 21, 36]$[0, -36, 21, 0]"/>
335 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ZsgTwO6tEea19YBiZCUo9w" id="(0.2688172043010753,0.0)"/>
336 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ZsgTwe6tEea19YBiZCUo9w" id="(0.5,1.0)"/>
337 </edges>
338 </data>
339 </ownedAnnotationEntries>
340 <ownedDiagramElements xmi:type="diagram:DNodeList" xmi:id="_qaFNQOydEea9M--3ql7TdQ" name="FunctionalElement" tooltipText="" outgoingEdges="_6qEFEOysEea9M--3ql7TdQ _GT02IOywEea9M--3ql7TdQ" incomingEdges="_NARAUOytEea9M--3ql7TdQ _SWSCwOytEea9M--3ql7TdQ _ZrxT8O6tEea19YBiZCUo9w" width="12" height="10">
341 <target xmi:type="ecore:EClass" href="FAM.ecore#//FunctionalElement"/>
342 <semanticElements xmi:type="ecore:EClass" href="FAM.ecore#//FunctionalElement"/>
343 <arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
344 <arrangeConstraints>KEEP_SIZE</arrangeConstraints>
345 <arrangeConstraints>KEEP_RATIO</arrangeConstraints>
346 <ownedStyle xmi:type="diagram:FlatContainerStyle" xmi:id="_7r_Z8OydEea9M--3ql7TdQ" iconPath="/org.eclipse.emf.ecoretools.design/icons/full/obj16/EClass_abstract.gif" borderSize="1" borderSizeComputationExpression="1" borderColor="125,125,125" backgroundStyle="Liquid" foregroundColor="228,228,228">
347 <labelFormat>italic</labelFormat>
348 <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@conditionnalStyles.1/@style"/>
349 </ownedStyle>
350 <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/>
351 </ownedDiagramElements>
352 <ownedDiagramElements xmi:type="diagram:DNodeList" xmi:id="_t-LmIOydEea9M--3ql7TdQ" name="FunctionalArchitectureModel" tooltipText="" outgoingEdges="_SWSCwOytEea9M--3ql7TdQ" incomingEdges="_GT02IOywEea9M--3ql7TdQ" width="12" height="10">
353 <target xmi:type="ecore:EClass" href="FAM.ecore#//FunctionalArchitectureModel"/>
354 <semanticElements xmi:type="ecore:EClass" href="FAM.ecore#//FunctionalArchitectureModel"/>
355 <arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
356 <arrangeConstraints>KEEP_SIZE</arrangeConstraints>
357 <arrangeConstraints>KEEP_RATIO</arrangeConstraints>
358 <ownedStyle xmi:type="diagram:FlatContainerStyle" xmi:id="_t-MNMOydEea9M--3ql7TdQ" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216">
359 <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/>
360 </ownedStyle>
361 <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/>
362 </ownedDiagramElements>
363 <ownedDiagramElements xmi:type="diagram:DNodeList" xmi:id="_9Ha2IOydEea9M--3ql7TdQ" name="Function" tooltipText="" outgoingEdges="_NARAUOytEea9M--3ql7TdQ _ZrxT8O6tEea19YBiZCUo9w" width="12" height="10">
364 <target xmi:type="ecore:EClass" href="FAM.ecore#//Function"/>
365 <semanticElements xmi:type="ecore:EClass" href="FAM.ecore#//Function"/>
366 <arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
367 <arrangeConstraints>KEEP_SIZE</arrangeConstraints>
368 <arrangeConstraints>KEEP_RATIO</arrangeConstraints>
369 <ownedStyle xmi:type="diagram:FlatContainerStyle" xmi:id="_7IrzYOyvEea9M--3ql7TdQ" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216">
370 <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/>
371 </ownedStyle>
372 <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/>
373 <ownedElements xmi:type="diagram:DNodeListElement" xmi:id="_Gm8GYO7UEea19YBiZCUo9w" name="/type : FunctionType = Root" tooltipText="">
374 <target xmi:type="ecore:EAttribute" href="FAM.ecore#//Function/type"/>
375 <semanticElements xmi:type="ecore:EAttribute" href="FAM.ecore#//Function/type"/>
376 <ownedStyle xmi:type="diagram:BundledImage" xmi:id="_Gm97kO7UEea19YBiZCUo9w" labelColor="39,76,114" labelAlignment="LEFT" description="_Gm8tcO7UEea19YBiZCUo9w">
377 <labelFormat>bold</labelFormat>
378 </ownedStyle>
379 <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/>
380 </ownedElements>
381 </ownedDiagramElements>
382 <ownedDiagramElements xmi:type="diagram:DNodeList" xmi:id="_BI5ukOyeEea9M--3ql7TdQ" name="FAMTerminator" tooltipText="" outgoingEdges="_vxn1gOykEea9M--3ql7TdQ" width="12" height="10">
383 <target xmi:type="ecore:EClass" href="FAM.ecore#//FAMTerminator"/>
384 <semanticElements xmi:type="ecore:EClass" href="FAM.ecore#//FAMTerminator"/>
385 <arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
386 <arrangeConstraints>KEEP_SIZE</arrangeConstraints>
387 <arrangeConstraints>KEEP_RATIO</arrangeConstraints>
388 <ownedStyle xmi:type="diagram:FlatContainerStyle" xmi:id="_trOFgOyrEea9M--3ql7TdQ" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216">
389 <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/>
390 </ownedStyle>
391 <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/>
392 </ownedDiagramElements>
393 <ownedDiagramElements xmi:type="diagram:DNodeList" xmi:id="_CgBSgOyeEea9M--3ql7TdQ" name="InformationLink" tooltipText="" incomingEdges="_v7l7wOyiEea9M--3ql7TdQ _JlTg4OyjEea9M--3ql7TdQ" width="12" height="10">
394 <target xmi:type="ecore:EClass" href="FAM.ecore#//InformationLink"/>
395 <semanticElements xmi:type="ecore:EClass" href="FAM.ecore#//InformationLink"/>
396 <arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
397 <arrangeConstraints>KEEP_SIZE</arrangeConstraints>
398 <arrangeConstraints>KEEP_RATIO</arrangeConstraints>
399 <ownedStyle xmi:type="diagram:FlatContainerStyle" xmi:id="_CgB5kOyeEea9M--3ql7TdQ" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216">
400 <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/>
401 </ownedStyle>
402 <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/>
403 </ownedDiagramElements>
404 <ownedDiagramElements xmi:type="diagram:DNodeList" xmi:id="_D7MQAOyeEea9M--3ql7TdQ" name="FunctionalInterface" tooltipText="" outgoingEdges="_znYmIOykEea9M--3ql7TdQ" incomingEdges="_6qEFEOysEea9M--3ql7TdQ" width="12" height="10">
405 <target xmi:type="ecore:EClass" href="FAM.ecore#//FunctionalInterface"/>
406 <semanticElements xmi:type="ecore:EClass" href="FAM.ecore#//FunctionalInterface"/>
407 <arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
408 <arrangeConstraints>KEEP_SIZE</arrangeConstraints>
409 <arrangeConstraints>KEEP_RATIO</arrangeConstraints>
410 <ownedStyle xmi:type="diagram:FlatContainerStyle" xmi:id="_D7M3EOyeEea9M--3ql7TdQ" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216">
411 <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/>
412 </ownedStyle>
413 <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/>
414 </ownedDiagramElements>
415 <ownedDiagramElements xmi:type="diagram:DNodeList" xmi:id="_EmHU8OyhEea9M--3ql7TdQ" name="FunctionalInput" tooltipText="" outgoingEdges="_ZGEyAOyhEea9M--3ql7TdQ _JlTg4OyjEea9M--3ql7TdQ" width="12" height="10">
416 <target xmi:type="ecore:EClass" href="FAM.ecore#//FunctionalInput"/>
417 <semanticElements xmi:type="ecore:EClass" href="FAM.ecore#//FunctionalInput"/>
418 <arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
419 <arrangeConstraints>KEEP_SIZE</arrangeConstraints>
420 <arrangeConstraints>KEEP_RATIO</arrangeConstraints>
421 <ownedStyle xmi:type="diagram:FlatContainerStyle" xmi:id="_EmH8AOyhEea9M--3ql7TdQ" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216">
422 <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/>
423 </ownedStyle>
424 <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/>
425 </ownedDiagramElements>
426 <ownedDiagramElements xmi:type="diagram:DNodeList" xmi:id="_VP5KoOyhEea9M--3ql7TdQ" name="FunctionalOutput" tooltipText="" outgoingEdges="_ZdLDYOyhEea9M--3ql7TdQ _v7l7wOyiEea9M--3ql7TdQ" width="12" height="10">
427 <target xmi:type="ecore:EClass" href="FAM.ecore#//FunctionalOutput"/>
428 <semanticElements xmi:type="ecore:EClass" href="FAM.ecore#//FunctionalOutput"/>
429 <arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
430 <arrangeConstraints>KEEP_SIZE</arrangeConstraints>
431 <arrangeConstraints>KEEP_RATIO</arrangeConstraints>
432 <ownedStyle xmi:type="diagram:FlatContainerStyle" xmi:id="_VP5xsOyhEea9M--3ql7TdQ" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216">
433 <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/>
434 </ownedStyle>
435 <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/>
436 </ownedDiagramElements>
437 <ownedDiagramElements xmi:type="diagram:DNodeList" xmi:id="_Xsw1sOyhEea9M--3ql7TdQ" name="FunctionalData" tooltipText="" incomingEdges="_ZGEyAOyhEea9M--3ql7TdQ _ZdLDYOyhEea9M--3ql7TdQ _vxn1gOykEea9M--3ql7TdQ _znYmIOykEea9M--3ql7TdQ" width="12" height="10">
438 <target xmi:type="ecore:EClass" href="FAM.ecore#//FunctionalData"/>
439 <semanticElements xmi:type="ecore:EClass" href="FAM.ecore#//FunctionalData"/>
440 <arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
441 <arrangeConstraints>KEEP_SIZE</arrangeConstraints>
442 <arrangeConstraints>KEEP_RATIO</arrangeConstraints>
443 <ownedStyle xmi:type="diagram:FlatContainerStyle" xmi:id="_jw25sOyhEea9M--3ql7TdQ" iconPath="/org.eclipse.emf.ecoretools.design/icons/full/obj16/EClass_abstract.gif" borderSize="1" borderSizeComputationExpression="1" borderColor="125,125,125" backgroundStyle="Liquid" foregroundColor="228,228,228">
444 <labelFormat>italic</labelFormat>
445 <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@conditionnalStyles.1/@style"/>
446 </ownedStyle>
447 <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/>
448 </ownedDiagramElements>
449 <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_ZGEyAOyhEea9M--3ql7TdQ" sourceNode="_EmHU8OyhEea9M--3ql7TdQ" targetNode="_Xsw1sOyhEea9M--3ql7TdQ">
450 <target xmi:type="ecore:EClass" href="FAM.ecore#//FunctionalInput"/>
451 <semanticElements xmi:type="ecore:EGenericType" href="FAM.ecore#//FunctionalInput/@eGenericSuperTypes.0"/>
452 <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_ZGH1UOyhEea9M--3ql7TdQ" targetArrow="InputClosedArrow" routingStyle="tree">
453 <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@style"/>
454 <beginLabelStyle xmi:type="diagram:BeginLabelStyle" xmi:id="_ZGH1UeyhEea9M--3ql7TdQ" showIcon="false">
455 <labelFormat>italic</labelFormat>
456 </beginLabelStyle>
457 <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_ZGH1UuyhEea9M--3ql7TdQ" showIcon="false"/>
458 </ownedStyle>
459 <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/>
460 </ownedDiagramElements>
461 <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_ZdLDYOyhEea9M--3ql7TdQ" sourceNode="_VP5KoOyhEea9M--3ql7TdQ" targetNode="_Xsw1sOyhEea9M--3ql7TdQ">
462 <target xmi:type="ecore:EClass" href="FAM.ecore#//FunctionalOutput"/>
463 <semanticElements xmi:type="ecore:EGenericType" href="FAM.ecore#//FunctionalOutput/@eGenericSuperTypes.0"/>
464 <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_ZdLqcOyhEea9M--3ql7TdQ" targetArrow="InputClosedArrow" routingStyle="tree">
465 <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@style"/>
466 <beginLabelStyle xmi:type="diagram:BeginLabelStyle" xmi:id="_ZdLqceyhEea9M--3ql7TdQ" showIcon="false">
467 <labelFormat>italic</labelFormat>
468 </beginLabelStyle>
469 <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_ZdLqcuyhEea9M--3ql7TdQ" showIcon="false"/>
470 </ownedStyle>
471 <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/>
472 </ownedDiagramElements>
473 <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_v7l7wOyiEea9M--3ql7TdQ" sourceNode="_VP5KoOyhEea9M--3ql7TdQ" targetNode="_CgBSgOyeEea9M--3ql7TdQ" beginLabel="[0..1] from" endLabel="[0..*] outgoingLinks">
474 <target xmi:type="ecore:EReference" href="FAM.ecore#//FunctionalOutput/outgoingLinks"/>
475 <semanticElements xmi:type="ecore:EReference" href="FAM.ecore#//InformationLink/from"/>
476 <semanticElements xmi:type="ecore:EReference" href="FAM.ecore#//FunctionalOutput/outgoingLinks"/>
477 <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_HOc-Q-yjEea9M--3ql7TdQ" description="_HOc-QOyjEea9M--3ql7TdQ" sourceArrow="FillDiamond" routingStyle="manhattan" strokeColor="0,0,0">
478 <beginLabelStyle xmi:type="diagram:BeginLabelStyle" xmi:id="_HOc-ROyjEea9M--3ql7TdQ" showIcon="false"/>
479 <endLabelStyle xmi:type="diagram:EndLabelStyle" xmi:id="_HOc-ReyjEea9M--3ql7TdQ" showIcon="false"/>
480 </ownedStyle>
481 <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='Bi-directional%20EC_EReference%20']"/>
482 </ownedDiagramElements>
483 <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_JlTg4OyjEea9M--3ql7TdQ" sourceNode="_EmHU8OyhEea9M--3ql7TdQ" targetNode="_CgBSgOyeEea9M--3ql7TdQ" beginLabel="[1..1] to" endLabel="[0..*] IncomingLinks">
484 <target xmi:type="ecore:EReference" href="FAM.ecore#//FunctionalInput/IncomingLinks"/>
485 <semanticElements xmi:type="ecore:EReference" href="FAM.ecore#//FunctionalInput/IncomingLinks"/>
486 <semanticElements xmi:type="ecore:EReference" href="FAM.ecore#//InformationLink/to"/>
487 <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_JlUH8OyjEea9M--3ql7TdQ" sourceArrow="InputArrow" routingStyle="manhattan" strokeColor="0,0,0">
488 <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='Bi-directional%20EC_EReference%20']/@style"/>
489 <beginLabelStyle xmi:type="diagram:BeginLabelStyle" xmi:id="_JlUH8eyjEea9M--3ql7TdQ" showIcon="false"/>
490 <endLabelStyle xmi:type="diagram:EndLabelStyle" xmi:id="_JlUH8uyjEea9M--3ql7TdQ" showIcon="false"/>
491 </ownedStyle>
492 <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='Bi-directional%20EC_EReference%20']"/>
493 </ownedDiagramElements>
494 <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_vxn1gOykEea9M--3ql7TdQ" sourceNode="_BI5ukOyeEea9M--3ql7TdQ" targetNode="_Xsw1sOyhEea9M--3ql7TdQ" beginLabel="[0..1] terminator" endLabel="[0..1] data">
495 <target xmi:type="ecore:EReference" href="FAM.ecore#//FAMTerminator/data"/>
496 <semanticElements xmi:type="ecore:EReference" href="FAM.ecore#//FAMTerminator/data"/>
497 <semanticElements xmi:type="ecore:EReference" href="FAM.ecore#//FunctionalData/terminator"/>
498 <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_trbg4OyrEea9M--3ql7TdQ" description="_tra50OyrEea9M--3ql7TdQ" sourceArrow="InputArrow" targetArrow="FillDiamond" routingStyle="manhattan" strokeColor="0,0,0">
499 <beginLabelStyle xmi:type="diagram:BeginLabelStyle" xmi:id="_trbg4eyrEea9M--3ql7TdQ" showIcon="false"/>
500 <endLabelStyle xmi:type="diagram:EndLabelStyle" xmi:id="_trbg4uyrEea9M--3ql7TdQ" showIcon="false"/>
501 </ownedStyle>
502 <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='Bi-directional%20EC_EReference%20']"/>
503 </ownedDiagramElements>
504 <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_znYmIOykEea9M--3ql7TdQ" sourceNode="_D7MQAOyeEea9M--3ql7TdQ" targetNode="_Xsw1sOyhEea9M--3ql7TdQ" beginLabel="[0..1] interface" endLabel="[0..*] data">
505 <target xmi:type="ecore:EReference" href="FAM.ecore#//FunctionalInterface/data"/>
506 <semanticElements xmi:type="ecore:EReference" href="FAM.ecore#//FunctionalInterface/data"/>
507 <semanticElements xmi:type="ecore:EReference" href="FAM.ecore#//FunctionalData/interface"/>
508 <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_trcvAOyrEea9M--3ql7TdQ" description="_HOc-QOyjEea9M--3ql7TdQ" sourceArrow="FillDiamond" routingStyle="manhattan" strokeColor="0,0,0">
509 <beginLabelStyle xmi:type="diagram:BeginLabelStyle" xmi:id="_trcvAeyrEea9M--3ql7TdQ" showIcon="false"/>
510 <endLabelStyle xmi:type="diagram:EndLabelStyle" xmi:id="_trcvAuyrEea9M--3ql7TdQ" showIcon="false"/>
511 </ownedStyle>
512 <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='Bi-directional%20EC_EReference%20']"/>
513 </ownedDiagramElements>
514 <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_6qEFEOysEea9M--3ql7TdQ" sourceNode="_qaFNQOydEea9M--3ql7TdQ" targetNode="_D7MQAOyeEea9M--3ql7TdQ" beginLabel="[0..1] element" endLabel="[0..1] interface">
515 <target xmi:type="ecore:EReference" href="FAM.ecore#//FunctionalElement/interface"/>
516 <semanticElements xmi:type="ecore:EReference" href="FAM.ecore#//FunctionalInterface/element"/>
517 <semanticElements xmi:type="ecore:EReference" href="FAM.ecore#//FunctionalElement/interface"/>
518 <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_LFlcUOytEea9M--3ql7TdQ" description="_HOc-QOyjEea9M--3ql7TdQ" sourceArrow="FillDiamond" routingStyle="manhattan" strokeColor="0,0,0">
519 <beginLabelStyle xmi:type="diagram:BeginLabelStyle" xmi:id="_LFlcUeytEea9M--3ql7TdQ" showIcon="false"/>
520 <endLabelStyle xmi:type="diagram:EndLabelStyle" xmi:id="_LFlcUuytEea9M--3ql7TdQ" showIcon="false"/>
521 </ownedStyle>
522 <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='Bi-directional%20EC_EReference%20']"/>
523 </ownedDiagramElements>
524 <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_NARAUOytEea9M--3ql7TdQ" sourceNode="_9Ha2IOydEea9M--3ql7TdQ" targetNode="_qaFNQOydEea9M--3ql7TdQ">
525 <target xmi:type="ecore:EClass" href="FAM.ecore#//Function"/>
526 <semanticElements xmi:type="ecore:EGenericType" href="FAM.ecore#//Function/@eGenericSuperTypes.0"/>
527 <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_7IwE0OyvEea9M--3ql7TdQ" targetArrow="InputClosedArrow" routingStyle="tree">
528 <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@style"/>
529 <beginLabelStyle xmi:type="diagram:BeginLabelStyle" xmi:id="_7IwE0eyvEea9M--3ql7TdQ" showIcon="false">
530 <labelFormat>italic</labelFormat>
531 </beginLabelStyle>
532 <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_7IwE0uyvEea9M--3ql7TdQ" showIcon="false"/>
533 </ownedStyle>
534 <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/>
535 </ownedDiagramElements>
536 <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_SWSCwOytEea9M--3ql7TdQ" name="[0..*] rootElements" sourceNode="_t-LmIOydEea9M--3ql7TdQ" targetNode="_qaFNQOydEea9M--3ql7TdQ">
537 <target xmi:type="ecore:EReference" href="FAM.ecore#//FunctionalArchitectureModel/rootElements"/>
538 <semanticElements xmi:type="ecore:EReference" href="FAM.ecore#//FunctionalArchitectureModel/rootElements"/>
539 <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_VSJW8-ytEea9M--3ql7TdQ" description="_VSJW8OytEea9M--3ql7TdQ" sourceArrow="FillDiamond" routingStyle="manhattan" strokeColor="0,0,0">
540 <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_VSJW9OytEea9M--3ql7TdQ" showIcon="false"/>
541 <endLabelStyle xmi:type="diagram:EndLabelStyle" xmi:id="_VSJW9eytEea9M--3ql7TdQ" labelSize="6" showIcon="false" labelColor="39,76,114"/>
542 </ownedStyle>
543 <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/>
544 </ownedDiagramElements>
545 <ownedDiagramElements xmi:type="diagram:DNodeList" xmi:id="_uV89MOyuEea9M--3ql7TdQ" name="FunctionType" tooltipText="" width="12" height="10">
546 <target xmi:type="ecore:EEnum" href="FAM.ecore#//FunctionType"/>
547 <semanticElements xmi:type="ecore:EEnum" href="FAM.ecore#//FunctionType"/>
548 <arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
549 <arrangeConstraints>KEEP_SIZE</arrangeConstraints>
550 <arrangeConstraints>KEEP_RATIO</arrangeConstraints>
551 <ownedStyle xmi:type="diagram:FlatContainerStyle" xmi:id="_uV9kQOyuEea9M--3ql7TdQ" borderSize="1" borderSizeComputationExpression="1" borderColor="125,125,125" backgroundStyle="Liquid" foregroundColor="221,236,202">
552 <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EEnum']/@style"/>
553 </ownedStyle>
554 <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EEnum']"/>
555 <ownedElements xmi:type="diagram:DNodeListElement" xmi:id="_vFTWgOyuEea9M--3ql7TdQ" name="Root" tooltipText="">
556 <target xmi:type="ecore:EEnumLiteral" href="FAM.ecore#//FunctionType/Root"/>
557 <semanticElements xmi:type="ecore:EEnumLiteral" href="FAM.ecore#//FunctionType/Root"/>
558 <ownedStyle xmi:type="diagram:BundledImage" xmi:id="_vFVLsOyuEea9M--3ql7TdQ" labelAlignment="LEFT">
559 <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EEnum']/@subNodeMappings[name='EC%20EEnumLiteral']/@style"/>
560 </ownedStyle>
561 <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EEnum']/@subNodeMappings[name='EC%20EEnumLiteral']"/>
562 </ownedElements>
563 <ownedElements xmi:type="diagram:DNodeListElement" xmi:id="_wOvDwOyuEea9M--3ql7TdQ" name="Intermediate" tooltipText="">
564 <target xmi:type="ecore:EEnumLiteral" href="FAM.ecore#//FunctionType/Intermediate"/>
565 <semanticElements xmi:type="ecore:EEnumLiteral" href="FAM.ecore#//FunctionType/Intermediate"/>
566 <ownedStyle xmi:type="diagram:BundledImage" xmi:id="_wOvDweyuEea9M--3ql7TdQ" labelAlignment="LEFT">
567 <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EEnum']/@subNodeMappings[name='EC%20EEnumLiteral']/@style"/>
568 </ownedStyle>
569 <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EEnum']/@subNodeMappings[name='EC%20EEnumLiteral']"/>
570 </ownedElements>
571 <ownedElements xmi:type="diagram:DNodeListElement" xmi:id="_xKb3AOyuEea9M--3ql7TdQ" name="Leaf" tooltipText="">
572 <target xmi:type="ecore:EEnumLiteral" href="FAM.ecore#//FunctionType/Leaf"/>
573 <semanticElements xmi:type="ecore:EEnumLiteral" href="FAM.ecore#//FunctionType/Leaf"/>
574 <ownedStyle xmi:type="diagram:BundledImage" xmi:id="_xKceEOyuEea9M--3ql7TdQ" labelAlignment="LEFT">
575 <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EEnum']/@subNodeMappings[name='EC%20EEnumLiteral']/@style"/>
576 </ownedStyle>
577 <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EEnum']/@subNodeMappings[name='EC%20EEnumLiteral']"/>
578 </ownedElements>
579 </ownedDiagramElements>
580 <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_GT02IOywEea9M--3ql7TdQ" name="[1..1] /model" sourceNode="_qaFNQOydEea9M--3ql7TdQ" targetNode="_t-LmIOydEea9M--3ql7TdQ">
581 <target xmi:type="ecore:EReference" href="FAM.ecore#//FunctionalElement/model"/>
582 <semanticElements xmi:type="ecore:EReference" href="FAM.ecore#//FunctionalElement/model"/>
583 <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_L1yp4O8hEea19YBiZCUo9w" description="_L1yC0O8hEea19YBiZCUo9w" routingStyle="manhattan" strokeColor="114,159,207">
584 <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_L1yp4e8hEea19YBiZCUo9w" showIcon="false" labelColor="39,76,114">
585 <labelFormat>bold</labelFormat>
586 </centerLabelStyle>
587 <endLabelStyle xmi:type="diagram:EndLabelStyle" xmi:id="_L1yp4u8hEea19YBiZCUo9w" labelSize="6" showIcon="false" labelColor="39,76,114"/>
588 </ownedStyle>
589 <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/>
590 </ownedDiagramElements>
591 <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_ZrxT8O6tEea19YBiZCUo9w" sourceNode="_9Ha2IOydEea9M--3ql7TdQ" targetNode="_qaFNQOydEea9M--3ql7TdQ" beginLabel="[0..1] parent" endLabel="[0..*] subElements">
592 <target xmi:type="ecore:EReference" href="FAM.ecore#//Function/subElements"/>
593 <semanticElements xmi:type="ecore:EReference" href="FAM.ecore#//FunctionalElement/parent"/>
594 <semanticElements xmi:type="ecore:EReference" href="FAM.ecore#//Function/subElements"/>
595 <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_bjcnQO6tEea19YBiZCUo9w" description="_HOc-QOyjEea9M--3ql7TdQ" sourceArrow="FillDiamond" routingStyle="manhattan" strokeColor="0,0,0">
596 <beginLabelStyle xmi:type="diagram:BeginLabelStyle" xmi:id="_bjcnQe6tEea19YBiZCUo9w" showIcon="false"/>
597 <endLabelStyle xmi:type="diagram:EndLabelStyle" xmi:id="_bjcnQu6tEea19YBiZCUo9w" showIcon="false"/>
598 </ownedStyle>
599 <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='Bi-directional%20EC_EReference%20']"/>
600 </ownedDiagramElements>
601 <description xmi:type="description_1:DiagramDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']"/>
602 <filterVariableHistory xmi:type="diagram:FilterVariableHistory" xmi:id="_nOZ7dOydEea9M--3ql7TdQ"/>
603 <activatedLayers xmi:type="description_1:Layer" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer"/>
604 <activatedLayers xmi:type="description_1:AdditionalLayer" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@additionalLayers[name='Package']"/>
605 <activatedLayers xmi:type="description_1:AdditionalLayer" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@additionalLayers[name='Validation']"/>
606 <activatedLayers xmi:type="description_1:AdditionalLayer" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Archetype']/@ownedRepresentationExtensions[name='Entities%20With%20Archetypes']/@layers[name='Archetypes']"/>
607 <target xmi:type="ecore:EPackage" href="FAM.ecore#/"/>
608 </ownedRepresentations>
609 <viewpoint xmi:type="description:Viewpoint" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']"/>
610 </ownedViews>
611 <ownedViews xmi:type="viewpoint:DRepresentationContainer" xmi:id="_lOMXMOydEea9M--3ql7TdQ">
612 <viewpoint xmi:type="description:Viewpoint" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Review']"/>
613 </ownedViews>
614 <ownedViews xmi:type="viewpoint:DRepresentationContainer" xmi:id="_lOQooOydEea9M--3ql7TdQ">
615 <viewpoint xmi:type="description:Viewpoint" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Archetype']"/>
616 </ownedViews>
617 <ownedViews xmi:type="viewpoint:DRepresentationContainer" xmi:id="_lOeEAOydEea9M--3ql7TdQ">
618 <viewpoint xmi:type="description:Viewpoint" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Generation']"/>
619 </ownedViews>
620</viewpoint:DAnalysis>
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/model/FAM.ecore b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/model/FAM.ecore
new file mode 100644
index 00000000..521624cb
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/model/FAM.ecore
@@ -0,0 +1,68 @@
1<?xml version="1.0" encoding="UTF-8"?>
2<ecore:EPackage xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
3 xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="FunctionalArchitecture" nsURI="FAM" nsPrefix="fam">
4 <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore">
5 <details key="settingDelegates" value="org.eclipse.viatra.query.querybasedfeature"/>
6 </eAnnotations>
7 <eClassifiers xsi:type="ecore:EClass" name="FunctionalElement" abstract="true">
8 <eStructuralFeatures xsi:type="ecore:EReference" name="interface" eType="#//FunctionalInterface"
9 containment="true" eOpposite="#//FunctionalInterface/element"/>
10 <eStructuralFeatures xsi:type="ecore:EReference" name="model" lowerBound="1" eType="#//FunctionalArchitectureModel"
11 volatile="true" transient="true" derived="true">
12 <eAnnotations source="org.eclipse.viatra.query.querybasedfeature">
13 <details key="patternFQN" value="hu.bme.mit.inf.dslreasoner.domains.transima.fam.patterns.model"/>
14 </eAnnotations>
15 </eStructuralFeatures>
16 <eStructuralFeatures xsi:type="ecore:EReference" name="parent" eType="#//Function"
17 eOpposite="#//Function/subElements"/>
18 </eClassifiers>
19 <eClassifiers xsi:type="ecore:EClass" name="FunctionalArchitectureModel">
20 <eStructuralFeatures xsi:type="ecore:EReference" name="rootElements" upperBound="-1"
21 eType="#//FunctionalElement" containment="true"/>
22 </eClassifiers>
23 <eClassifiers xsi:type="ecore:EClass" name="Function" eSuperTypes="#//FunctionalElement">
24 <eStructuralFeatures xsi:type="ecore:EReference" name="subElements" upperBound="-1"
25 eType="#//FunctionalElement" containment="true" eOpposite="#//FunctionalElement/parent"/>
26 <eStructuralFeatures xsi:type="ecore:EAttribute" name="type" lowerBound="1" eType="#//FunctionType"
27 changeable="false" volatile="true" transient="true" derived="true">
28 <eAnnotations source="org.eclipse.viatra.query.querybasedfeature">
29 <details key="patternFQN" value="hu.bme.mit.inf.dslreasoner.domains.transima.fam.patterns.type"/>
30 </eAnnotations>
31 </eStructuralFeatures>
32 </eClassifiers>
33 <eClassifiers xsi:type="ecore:EClass" name="FAMTerminator">
34 <eStructuralFeatures xsi:type="ecore:EReference" name="data" eType="#//FunctionalData"
35 eOpposite="#//FunctionalData/terminator"/>
36 </eClassifiers>
37 <eClassifiers xsi:type="ecore:EClass" name="InformationLink">
38 <eStructuralFeatures xsi:type="ecore:EReference" name="from" eType="#//FunctionalOutput"
39 eOpposite="#//FunctionalOutput/outgoingLinks"/>
40 <eStructuralFeatures xsi:type="ecore:EReference" name="to" lowerBound="1" eType="#//FunctionalInput"
41 eOpposite="#//FunctionalInput/IncomingLinks"/>
42 </eClassifiers>
43 <eClassifiers xsi:type="ecore:EClass" name="FunctionalInterface">
44 <eStructuralFeatures xsi:type="ecore:EReference" name="data" upperBound="-1" eType="#//FunctionalData"
45 containment="true" eOpposite="#//FunctionalData/interface"/>
46 <eStructuralFeatures xsi:type="ecore:EReference" name="element" eType="#//FunctionalElement"
47 eOpposite="#//FunctionalElement/interface"/>
48 </eClassifiers>
49 <eClassifiers xsi:type="ecore:EClass" name="FunctionalInput" eSuperTypes="#//FunctionalData">
50 <eStructuralFeatures xsi:type="ecore:EReference" name="IncomingLinks" upperBound="-1"
51 eType="#//InformationLink" eOpposite="#//InformationLink/to"/>
52 </eClassifiers>
53 <eClassifiers xsi:type="ecore:EClass" name="FunctionalOutput" eSuperTypes="#//FunctionalData">
54 <eStructuralFeatures xsi:type="ecore:EReference" name="outgoingLinks" upperBound="-1"
55 eType="#//InformationLink" containment="true" eOpposite="#//InformationLink/from"/>
56 </eClassifiers>
57 <eClassifiers xsi:type="ecore:EClass" name="FunctionalData" abstract="true">
58 <eStructuralFeatures xsi:type="ecore:EReference" name="terminator" eType="#//FAMTerminator"
59 containment="true" eOpposite="#//FAMTerminator/data"/>
60 <eStructuralFeatures xsi:type="ecore:EReference" name="interface" eType="#//FunctionalInterface"
61 eOpposite="#//FunctionalInterface/data"/>
62 </eClassifiers>
63 <eClassifiers xsi:type="ecore:EEnum" name="FunctionType">
64 <eLiterals name="Root"/>
65 <eLiterals name="Intermediate" value="1"/>
66 <eLiterals name="Leaf" value="2"/>
67 </eClassifiers>
68</ecore:EPackage>
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/model/FAM.genmodel b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/model/FAM.genmodel
new file mode 100644
index 00000000..2fc02ec8
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/model/FAM.genmodel
@@ -0,0 +1,49 @@
1<?xml version="1.0" encoding="UTF-8"?>
2<genmodel:GenModel xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore"
3 xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" modelDirectory="/hu.bme.mit.inf.dslreasoner.domains.transima.fam/ecore-gen"
4 modelPluginID="hu.bme.mit.inf.dslreasoner.domains.transima.fam" forceOverwrite="true"
5 modelName="FAM" rootExtendsClass="org.eclipse.emf.ecore.impl.MinimalEObjectImpl$Container"
6 importerID="org.eclipse.emf.importer.ecore" complianceLevel="6.0" copyrightFields="false">
7 <foreignModel>FAM.ecore</foreignModel>
8 <genPackages prefix="FunctionalArchitecture" basePackage="hu.bme.mit.inf.dslreasomer.domains.transima.fam"
9 disposableProviderFactory="true" ecorePackage="FAM.ecore#/">
10 <genEnums typeSafeEnumCompatible="false" ecoreEnum="FAM.ecore#//FunctionType">
11 <genEnumLiterals ecoreEnumLiteral="FAM.ecore#//FunctionType/Root"/>
12 <genEnumLiterals ecoreEnumLiteral="FAM.ecore#//FunctionType/Intermediate"/>
13 <genEnumLiterals ecoreEnumLiteral="FAM.ecore#//FunctionType/Leaf"/>
14 </genEnums>
15 <genClasses image="false" ecoreClass="FAM.ecore#//FunctionalElement">
16 <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference FAM.ecore#//FunctionalElement/interface"/>
17 <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference FAM.ecore#//FunctionalElement/model"/>
18 <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference FAM.ecore#//FunctionalElement/parent"/>
19 </genClasses>
20 <genClasses ecoreClass="FAM.ecore#//FunctionalArchitectureModel">
21 <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference FAM.ecore#//FunctionalArchitectureModel/rootElements"/>
22 </genClasses>
23 <genClasses ecoreClass="FAM.ecore#//Function">
24 <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference FAM.ecore#//Function/subElements"/>
25 <genFeatures property="Readonly" createChild="false" ecoreFeature="ecore:EAttribute FAM.ecore#//Function/type"/>
26 </genClasses>
27 <genClasses ecoreClass="FAM.ecore#//FAMTerminator">
28 <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference FAM.ecore#//FAMTerminator/data"/>
29 </genClasses>
30 <genClasses ecoreClass="FAM.ecore#//InformationLink">
31 <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference FAM.ecore#//InformationLink/from"/>
32 <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference FAM.ecore#//InformationLink/to"/>
33 </genClasses>
34 <genClasses ecoreClass="FAM.ecore#//FunctionalInterface">
35 <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference FAM.ecore#//FunctionalInterface/data"/>
36 <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference FAM.ecore#//FunctionalInterface/element"/>
37 </genClasses>
38 <genClasses ecoreClass="FAM.ecore#//FunctionalInput">
39 <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference FAM.ecore#//FunctionalInput/IncomingLinks"/>
40 </genClasses>
41 <genClasses ecoreClass="FAM.ecore#//FunctionalOutput">
42 <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference FAM.ecore#//FunctionalOutput/outgoingLinks"/>
43 </genClasses>
44 <genClasses image="false" ecoreClass="FAM.ecore#//FunctionalData">
45 <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference FAM.ecore#//FunctionalData/terminator"/>
46 <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference FAM.ecore#//FunctionalData/interface"/>
47 </genClasses>
48 </genPackages>
49</genmodel:GenModel>
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/plugin.properties b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/plugin.properties
new file mode 100644
index 00000000..58c2dbb6
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/plugin.properties
@@ -0,0 +1,4 @@
1#
2
3pluginName = FAM Model
4providerName = www.example.org
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/plugin.xml b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/plugin.xml
new file mode 100644
index 00000000..ba289eaa
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/plugin.xml
@@ -0,0 +1,28 @@
1<?xml version="1.0" encoding="UTF-8"?><?eclipse version="3.0"?><!--
2--><plugin>
3 <extension id="extension.derived.hu.bme.mit.inf.dslreasoner.domains.transima.fam.patterns.model" point="org.eclipse.viatra.query.runtime.base.wellbehaving.derived.features">
4 <wellbehaving-derived-feature classifier-name="FunctionalElement" feature-name="model" package-nsUri="FAM"/>
5 </extension>
6 <extension id="extension.derived.hu.bme.mit.inf.dslreasoner.domains.transima.fam.patterns.type" point="org.eclipse.viatra.query.runtime.base.wellbehaving.derived.features">
7 <wellbehaving-derived-feature classifier-name="Function" feature-name="type" package-nsUri="FAM"/>
8 </extension>
9 <extension id="hu.bme.mit.inf.dslreasoner.domains.transima.fam.patterns.Pattern" point="org.eclipse.viatra.query.runtime.queryspecification">
10 <group group="org.eclipse.viatra.query.runtime.extensibility.SingletonExtensionFactory:hu.bme.mit.inf.dslreasoner.domains.transima.fam.patterns.Pattern" id="hu.bme.mit.inf.dslreasoner.domains.transima.fam.patterns.Pattern">
11 <query-specification fqn="hu.bme.mit.inf.dslreasoner.domains.transima.fam.patterns.terminatorAndInformation"/>
12 <query-specification fqn="hu.bme.mit.inf.dslreasoner.domains.transima.fam.patterns.type"/>
13 <query-specification fqn="hu.bme.mit.inf.dslreasoner.domains.transima.fam.patterns.rootElements"/>
14 <query-specification fqn="hu.bme.mit.inf.dslreasoner.domains.transima.fam.patterns.parent"/>
15 <query-specification fqn="hu.bme.mit.inf.dslreasoner.domains.transima.fam.patterns.model"/>
16 <query-specification fqn="hu.bme.mit.inf.dslreasoner.domains.transima.fam.patterns.hasRoot"/>
17 <query-specification fqn="hu.bme.mit.inf.dslreasoner.domains.transima.fam.patterns.hasInt"/>
18 <query-specification fqn="hu.bme.mit.inf.dslreasoner.domains.transima.fam.patterns.hasLeaf"/>
19 <query-specification fqn="hu.bme.mit.inf.dslreasoner.domains.transima.fam.patterns.noRoot"/>
20 <query-specification fqn="hu.bme.mit.inf.dslreasoner.domains.transima.fam.patterns.noInt"/>
21 <query-specification fqn="hu.bme.mit.inf.dslreasoner.domains.transima.fam.patterns.noLeaf"/>
22 </group>
23 </extension>
24 <extension point="org.eclipse.emf.ecore.generated_package">
25 <!-- @generated FAM -->
26 <package class="hu.bme.mit.inf.dslreasomer.domains.transima.fam.FunctionalArchitecture.FunctionalArchitecturePackage" genModel="model/FAM.genmodel" uri="FAM"/>
27 </extension>
28</plugin>
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/queries/hu/bme/mit/inf/dslreasoner/domains/transima/fam/patterns/pattern.vql b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/queries/hu/bme/mit/inf/dslreasoner/domains/transima/fam/patterns/pattern.vql
new file mode 100644
index 00000000..60df0bef
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.transima.fam/queries/hu/bme/mit/inf/dslreasoner/domains/transima/fam/patterns/pattern.vql
@@ -0,0 +1,114 @@
1package hu.bme.mit.inf.dslreasoner.domains.transima.fam.patterns
2
3import epackage "FAM";
4
5@Constraint(message="terminatorAndInformation", severity="error", key={T})
6pattern terminatorAndInformation(T : FAMTerminator, I : InformationLink) = {
7 FunctionalOutput.outgoingLinks(Out,I);
8 FunctionalOutput.terminator(Out,T);
9} or {
10 InformationLink.to(I,In);
11 FunctionalInput.terminator(In,T);
12}
13
14@QueryBasedFeature
15pattern type(This : Function, Target : FunctionType) = {
16 find rootElements(_Model, This);
17 Target == FunctionType::Root;
18} or {
19 neg find parent(_Child, This);
20 neg find rootElements(_Model, This);
21 Target == FunctionType::Leaf;
22} or {
23 find parent(This, _Par);
24 find parent(_Child, This);
25 Target == FunctionType::Intermediate;
26}
27
28pattern rootElements(Model: FunctionalArchitectureModel, Root : Function) = {
29 FunctionalArchitectureModel.rootElements(Model, Root);
30}
31
32pattern parent(Func : Function, Par : Function) = {
33 Function.parent(Func, Par);
34}
35
36@QueryBasedFeature
37pattern model(This:FunctionalElement, Target: FunctionalArchitectureModel) {
38 FunctionalElement(This);
39 FunctionalArchitectureModel(Target);
40}
41
42pattern hasRoot(F : Function) {
43 find rootElements(_Model, F);
44}
45pattern hasInt(F : Function) {
46 neg find parent(_Child, F);
47 neg find rootElements(_Model, F);
48}
49pattern hasLeaf(F : Function) {
50 find parent(F, _Par);
51 find parent(_Child, F);
52}
53
54@Constraint(message="noRoot", severity="error", key={fam})
55pattern noRoot(fam: FunctionalArchitectureModel) {
56 FunctionalArchitectureModel(fam);
57 neg find hasRoot(_);
58}
59@Constraint(message="noIntermediate", severity="error", key={fam})
60pattern noInt(fam: FunctionalArchitectureModel) {
61 FunctionalArchitectureModel(fam);
62 neg find hasInt(_);
63}
64@Constraint(message="noLeaf", severity="error", key={fam})
65pattern noLeaf(fam: FunctionalArchitectureModel) {
66 FunctionalArchitectureModel(fam);
67 neg find hasLeaf(_);
68}
69
70
71/*
72@QueryBasedFeature
73pattern model(This : FunctionalElement, Target : FunctionalArchitectureModel) = {
74 find parent+(This, Parent);
75 find rootElements(Target, Parent);
76} or {
77 find rootElements(Target, This);
78}
79
80pattern interfaceData(FI : FunctionalInterface, FD : FunctionalData) = {
81 FunctionalInterface.data(FI, FD);
82}
83
84@QueryBasedFeature
85pattern inputs(This : FunctionalInterface, Target : FunctionalInput) = {
86 find interfaceData(This, Target);
87}
88
89@QueryBasedFeature
90pattern outputs(This : FunctionalInterface, Target : FunctionalOutput) = {
91 find interfaceData(This, Target);
92}
93
94@QueryBasedFeature
95pattern outgoingLinks(This : FunctionalElement, Target : InformationLink) = {
96 FunctionalElement.interface.outputs(This, Output);
97 InformationLink.from(Target, Output);
98}
99
100@QueryBasedFeature
101pattern incomingLinks(This : FunctionalElement, Target : InformationLink) = {
102 FunctionalElement.interface.inputs(This, Input);
103 InformationLink.to(Target, Input);
104}
105
106@QueryBasedFeature
107pattern connects(This : FunctionalElement, Target : FunctionalElement) = {
108 FunctionalElement.outgoingLinks(This,Link);
109 FunctionalElement.incomingLinks(Target,Link);
110}*/
111
112/*pattern frequency(a: Function, b : EInt) {
113 Function.minimumFrequency(a,b);
114}*/
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/.classpath b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/.classpath
new file mode 100644
index 00000000..e97c71bb
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/.classpath
@@ -0,0 +1,10 @@
1<?xml version="1.0" encoding="UTF-8"?>
2<classpath>
3 <classpathentry kind="src" path="ecore-gen"/>
4 <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
5 <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
6 <classpathentry kind="src" path="src"/>
7 <classpathentry kind="src" path="queries"/>
8 <classpathentry kind="src" path="src-gen/"/>
9 <classpathentry kind="output" path="bin"/>
10</classpath>
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/.gitignore b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/.gitignore
new file mode 100644
index 00000000..8ae4e44d
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/.gitignore
@@ -0,0 +1,4 @@
1/bin/
2/src-gen/
3/vql-gen/
4/xtend-gen/
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/.project b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/.project
new file mode 100644
index 00000000..0f806852
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/.project
@@ -0,0 +1,40 @@
1<?xml version="1.0" encoding="UTF-8"?>
2<projectDescription>
3 <name>hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph</name>
4 <comment></comment>
5 <projects>
6 </projects>
7 <buildSpec>
8 <buildCommand>
9 <name>org.eclipse.viatra.query.tooling.ui.projectbuilder</name>
10 <arguments>
11 </arguments>
12 </buildCommand>
13 <buildCommand>
14 <name>org.eclipse.xtext.ui.shared.xtextBuilder</name>
15 <arguments>
16 </arguments>
17 </buildCommand>
18 <buildCommand>
19 <name>org.eclipse.jdt.core.javabuilder</name>
20 <arguments>
21 </arguments>
22 </buildCommand>
23 <buildCommand>
24 <name>org.eclipse.pde.ManifestBuilder</name>
25 <arguments>
26 </arguments>
27 </buildCommand>
28 <buildCommand>
29 <name>org.eclipse.pde.SchemaBuilder</name>
30 <arguments>
31 </arguments>
32 </buildCommand>
33 </buildSpec>
34 <natures>
35 <nature>org.eclipse.pde.PluginNature</nature>
36 <nature>org.eclipse.jdt.core.javanature</nature>
37 <nature>org.eclipse.xtext.ui.shared.xtextNature</nature>
38 <nature>org.eclipse.viatra.query.projectnature</nature>
39 </natures>
40</projectDescription>
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/.settings/org.eclipse.jdt.core.prefs b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 00000000..295926d9
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,7 @@
1eclipse.preferences.version=1
2org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
3org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
4org.eclipse.jdt.core.compiler.compliance=1.8
5org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
6org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
7org.eclipse.jdt.core.compiler.source=1.8
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/META-INF/MANIFEST.MF b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/META-INF/MANIFEST.MF
new file mode 100644
index 00000000..38e11091
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/META-INF/MANIFEST.MF
@@ -0,0 +1,20 @@
1Manifest-Version: 1.0
2Bundle-ManifestVersion: 2
3Bundle-Name: %pluginName
4Bundle-SymbolicName: hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph;singleton:=true
5Bundle-Version: 1.0.0.qualifier
6Bundle-ClassPath: .
7Bundle-Vendor: %providerName
8Bundle-Localization: plugin
9Export-Package: hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm,
10 hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl,
11 hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.util,
12 hu.bme.mit.inf.dslreasoner.partialsnapshot_mavo.yakindu,
13 hu.bme.mit.inf.dslreasoner.partialsnapshot_mavo.yakindu.util
14Require-Bundle: org.eclipse.viatra.query.runtime,
15 org.eclipse.core.runtime,
16 org.eclipse.emf.ecore;visibility:=reexport,
17 com.google.guava;bundle-version="15.0.0"
18Bundle-RequiredExecutionEnvironment: JavaSE-1.8
19Bundle-ActivationPolicy: lazy
20Import-Package: org.apache.log4j
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/build.properties b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/build.properties
new file mode 100644
index 00000000..aed85a48
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/build.properties
@@ -0,0 +1,5 @@
1bin.includes = META-INF/,\
2 .
3source.. = src/,\
4 src-gen/
5output.. = bin/
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/CompositeElement.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/CompositeElement.java
new file mode 100644
index 00000000..9d9cde17
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/CompositeElement.java
@@ -0,0 +1,42 @@
1/**
2 */
3package hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm;
4
5import org.eclipse.emf.common.util.EList;
6
7import org.eclipse.emf.ecore.EObject;
8
9/**
10 * <!-- begin-user-doc -->
11 * A representation of the model object '<em><b>Composite Element</b></em>'.
12 * <!-- end-user-doc -->
13 *
14 * <p>
15 * The following features are supported:
16 * </p>
17 * <ul>
18 * <li>{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.CompositeElement#getRegions <em>Regions</em>}</li>
19 * </ul>
20 *
21 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.YakindummPackage#getCompositeElement()
22 * @model abstract="true"
23 * @generated
24 */
25public interface CompositeElement extends EObject {
26 /**
27 * Returns the value of the '<em><b>Regions</b></em>' containment reference list.
28 * The list contents are of type {@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Region}.
29 * <!-- begin-user-doc -->
30 * <p>
31 * If the meaning of the '<em>Regions</em>' containment reference list isn't clear,
32 * there really should be more of a description here...
33 * </p>
34 * <!-- end-user-doc -->
35 * @return the value of the '<em>Regions</em>' containment reference list.
36 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.YakindummPackage#getCompositeElement_Regions()
37 * @model containment="true"
38 * @generated
39 */
40 EList<Region> getRegions();
41
42} // CompositeElement
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/Entry.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/Entry.java
new file mode 100644
index 00000000..de8cdb07
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/Entry.java
@@ -0,0 +1,17 @@
1/**
2 */
3package hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm;
4
5
6/**
7 * <!-- begin-user-doc -->
8 * A representation of the model object '<em><b>Entry</b></em>'.
9 * <!-- end-user-doc -->
10 *
11 *
12 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.YakindummPackage#getEntry()
13 * @model
14 * @generated
15 */
16public interface Entry extends Pseudostate {
17} // Entry
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/Pseudostate.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/Pseudostate.java
new file mode 100644
index 00000000..e02dccff
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/Pseudostate.java
@@ -0,0 +1,17 @@
1/**
2 */
3package hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm;
4
5
6/**
7 * <!-- begin-user-doc -->
8 * A representation of the model object '<em><b>Pseudostate</b></em>'.
9 * <!-- end-user-doc -->
10 *
11 *
12 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.YakindummPackage#getPseudostate()
13 * @model abstract="true"
14 * @generated
15 */
16public interface Pseudostate extends Vertex {
17} // Pseudostate
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/Region.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/Region.java
new file mode 100644
index 00000000..38dbd377
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/Region.java
@@ -0,0 +1,42 @@
1/**
2 */
3package hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm;
4
5import org.eclipse.emf.common.util.EList;
6
7import org.eclipse.emf.ecore.EObject;
8
9/**
10 * <!-- begin-user-doc -->
11 * A representation of the model object '<em><b>Region</b></em>'.
12 * <!-- end-user-doc -->
13 *
14 * <p>
15 * The following features are supported:
16 * </p>
17 * <ul>
18 * <li>{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Region#getVertices <em>Vertices</em>}</li>
19 * </ul>
20 *
21 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.YakindummPackage#getRegion()
22 * @model
23 * @generated
24 */
25public interface Region extends EObject {
26 /**
27 * Returns the value of the '<em><b>Vertices</b></em>' containment reference list.
28 * The list contents are of type {@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Vertex}.
29 * <!-- begin-user-doc -->
30 * <p>
31 * If the meaning of the '<em>Vertices</em>' containment reference list isn't clear,
32 * there really should be more of a description here...
33 * </p>
34 * <!-- end-user-doc -->
35 * @return the value of the '<em>Vertices</em>' containment reference list.
36 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.YakindummPackage#getRegion_Vertices()
37 * @model containment="true" ordered="false"
38 * @generated
39 */
40 EList<Vertex> getVertices();
41
42} // Region
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/RegularState.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/RegularState.java
new file mode 100644
index 00000000..e71b7371
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/RegularState.java
@@ -0,0 +1,17 @@
1/**
2 */
3package hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm;
4
5
6/**
7 * <!-- begin-user-doc -->
8 * A representation of the model object '<em><b>Regular State</b></em>'.
9 * <!-- end-user-doc -->
10 *
11 *
12 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.YakindummPackage#getRegularState()
13 * @model abstract="true"
14 * @generated
15 */
16public interface RegularState extends Vertex {
17} // RegularState
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/State.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/State.java
new file mode 100644
index 00000000..c01ea937
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/State.java
@@ -0,0 +1,17 @@
1/**
2 */
3package hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm;
4
5
6/**
7 * <!-- begin-user-doc -->
8 * A representation of the model object '<em><b>State</b></em>'.
9 * <!-- end-user-doc -->
10 *
11 *
12 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.YakindummPackage#getState()
13 * @model
14 * @generated
15 */
16public interface State extends RegularState, CompositeElement {
17} // State
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/Statechart.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/Statechart.java
new file mode 100644
index 00000000..b5950903
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/Statechart.java
@@ -0,0 +1,17 @@
1/**
2 */
3package hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm;
4
5
6/**
7 * <!-- begin-user-doc -->
8 * A representation of the model object '<em><b>Statechart</b></em>'.
9 * <!-- end-user-doc -->
10 *
11 *
12 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.YakindummPackage#getStatechart()
13 * @model
14 * @generated
15 */
16public interface Statechart extends CompositeElement {
17} // Statechart
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/Synchronization.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/Synchronization.java
new file mode 100644
index 00000000..0206a4fe
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/Synchronization.java
@@ -0,0 +1,17 @@
1/**
2 */
3package hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm;
4
5
6/**
7 * <!-- begin-user-doc -->
8 * A representation of the model object '<em><b>Synchronization</b></em>'.
9 * <!-- end-user-doc -->
10 *
11 *
12 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.YakindummPackage#getSynchronization()
13 * @model
14 * @generated
15 */
16public interface Synchronization extends Pseudostate {
17} // Synchronization
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/Transition.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/Transition.java
new file mode 100644
index 00000000..a27e46e8
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/Transition.java
@@ -0,0 +1,81 @@
1/**
2 */
3package hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm;
4
5import org.eclipse.emf.ecore.EObject;
6
7/**
8 * <!-- begin-user-doc -->
9 * A representation of the model object '<em><b>Transition</b></em>'.
10 * <!-- end-user-doc -->
11 *
12 * <p>
13 * The following features are supported:
14 * </p>
15 * <ul>
16 * <li>{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Transition#getTarget <em>Target</em>}</li>
17 * <li>{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Transition#getSource <em>Source</em>}</li>
18 * </ul>
19 *
20 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.YakindummPackage#getTransition()
21 * @model
22 * @generated
23 */
24public interface Transition extends EObject {
25 /**
26 * Returns the value of the '<em><b>Target</b></em>' reference.
27 * It is bidirectional and its opposite is '{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Vertex#getIncomingTransitions <em>Incoming Transitions</em>}'.
28 * <!-- begin-user-doc -->
29 * <p>
30 * If the meaning of the '<em>Target</em>' reference isn't clear,
31 * there really should be more of a description here...
32 * </p>
33 * <!-- end-user-doc -->
34 * @return the value of the '<em>Target</em>' reference.
35 * @see #setTarget(Vertex)
36 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.YakindummPackage#getTransition_Target()
37 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Vertex#getIncomingTransitions
38 * @model opposite="incomingTransitions" required="true" ordered="false"
39 * @generated
40 */
41 Vertex getTarget();
42
43 /**
44 * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Transition#getTarget <em>Target</em>}' reference.
45 * <!-- begin-user-doc -->
46 * <!-- end-user-doc -->
47 * @param value the new value of the '<em>Target</em>' reference.
48 * @see #getTarget()
49 * @generated
50 */
51 void setTarget(Vertex value);
52
53 /**
54 * Returns the value of the '<em><b>Source</b></em>' container reference.
55 * It is bidirectional and its opposite is '{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Vertex#getOutgoingTransitions <em>Outgoing Transitions</em>}'.
56 * <!-- begin-user-doc -->
57 * <p>
58 * If the meaning of the '<em>Source</em>' container reference isn't clear,
59 * there really should be more of a description here...
60 * </p>
61 * <!-- end-user-doc -->
62 * @return the value of the '<em>Source</em>' container reference.
63 * @see #setSource(Vertex)
64 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.YakindummPackage#getTransition_Source()
65 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Vertex#getOutgoingTransitions
66 * @model opposite="outgoingTransitions" required="true" transient="false" ordered="false"
67 * @generated
68 */
69 Vertex getSource();
70
71 /**
72 * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Transition#getSource <em>Source</em>}' container reference.
73 * <!-- begin-user-doc -->
74 * <!-- end-user-doc -->
75 * @param value the new value of the '<em>Source</em>' container reference.
76 * @see #getSource()
77 * @generated
78 */
79 void setSource(Vertex value);
80
81} // Transition
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/Vertex.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/Vertex.java
new file mode 100644
index 00000000..777cbd74
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/Vertex.java
@@ -0,0 +1,63 @@
1/**
2 */
3package hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm;
4
5import org.eclipse.emf.common.util.EList;
6
7import org.eclipse.emf.ecore.EObject;
8
9/**
10 * <!-- begin-user-doc -->
11 * A representation of the model object '<em><b>Vertex</b></em>'.
12 * <!-- end-user-doc -->
13 *
14 * <p>
15 * The following features are supported:
16 * </p>
17 * <ul>
18 * <li>{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Vertex#getIncomingTransitions <em>Incoming Transitions</em>}</li>
19 * <li>{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Vertex#getOutgoingTransitions <em>Outgoing Transitions</em>}</li>
20 * </ul>
21 *
22 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.YakindummPackage#getVertex()
23 * @model abstract="true"
24 * @generated
25 */
26public interface Vertex extends EObject {
27 /**
28 * Returns the value of the '<em><b>Incoming Transitions</b></em>' reference list.
29 * The list contents are of type {@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Transition}.
30 * It is bidirectional and its opposite is '{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Transition#getTarget <em>Target</em>}'.
31 * <!-- begin-user-doc -->
32 * <p>
33 * If the meaning of the '<em>Incoming Transitions</em>' reference list isn't clear,
34 * there really should be more of a description here...
35 * </p>
36 * <!-- end-user-doc -->
37 * @return the value of the '<em>Incoming Transitions</em>' reference list.
38 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.YakindummPackage#getVertex_IncomingTransitions()
39 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Transition#getTarget
40 * @model opposite="target" ordered="false"
41 * @generated
42 */
43 EList<Transition> getIncomingTransitions();
44
45 /**
46 * Returns the value of the '<em><b>Outgoing Transitions</b></em>' containment reference list.
47 * The list contents are of type {@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Transition}.
48 * It is bidirectional and its opposite is '{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Transition#getSource <em>Source</em>}'.
49 * <!-- begin-user-doc -->
50 * <p>
51 * If the meaning of the '<em>Outgoing Transitions</em>' containment reference list isn't clear,
52 * there really should be more of a description here...
53 * </p>
54 * <!-- end-user-doc -->
55 * @return the value of the '<em>Outgoing Transitions</em>' containment reference list.
56 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.YakindummPackage#getVertex_OutgoingTransitions()
57 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Transition#getSource
58 * @model opposite="source" containment="true" ordered="false"
59 * @generated
60 */
61 EList<Transition> getOutgoingTransitions();
62
63} // Vertex
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/YakindummFactory.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/YakindummFactory.java
new file mode 100644
index 00000000..51751f8c
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/YakindummFactory.java
@@ -0,0 +1,87 @@
1/**
2 */
3package hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm;
4
5import org.eclipse.emf.ecore.EFactory;
6
7/**
8 * <!-- begin-user-doc -->
9 * The <b>Factory</b> for the model.
10 * It provides a create method for each non-abstract class of the model.
11 * <!-- end-user-doc -->
12 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.YakindummPackage
13 * @generated
14 */
15public interface YakindummFactory extends EFactory {
16 /**
17 * The singleton instance of the factory.
18 * <!-- begin-user-doc -->
19 * <!-- end-user-doc -->
20 * @generated
21 */
22 YakindummFactory eINSTANCE = hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.YakindummFactoryImpl.init();
23
24 /**
25 * Returns a new object of class '<em>Region</em>'.
26 * <!-- begin-user-doc -->
27 * <!-- end-user-doc -->
28 * @return a new object of class '<em>Region</em>'.
29 * @generated
30 */
31 Region createRegion();
32
33 /**
34 * Returns a new object of class '<em>Transition</em>'.
35 * <!-- begin-user-doc -->
36 * <!-- end-user-doc -->
37 * @return a new object of class '<em>Transition</em>'.
38 * @generated
39 */
40 Transition createTransition();
41
42 /**
43 * Returns a new object of class '<em>Statechart</em>'.
44 * <!-- begin-user-doc -->
45 * <!-- end-user-doc -->
46 * @return a new object of class '<em>Statechart</em>'.
47 * @generated
48 */
49 Statechart createStatechart();
50
51 /**
52 * Returns a new object of class '<em>Entry</em>'.
53 * <!-- begin-user-doc -->
54 * <!-- end-user-doc -->
55 * @return a new object of class '<em>Entry</em>'.
56 * @generated
57 */
58 Entry createEntry();
59
60 /**
61 * Returns a new object of class '<em>Synchronization</em>'.
62 * <!-- begin-user-doc -->
63 * <!-- end-user-doc -->
64 * @return a new object of class '<em>Synchronization</em>'.
65 * @generated
66 */
67 Synchronization createSynchronization();
68
69 /**
70 * Returns a new object of class '<em>State</em>'.
71 * <!-- begin-user-doc -->
72 * <!-- end-user-doc -->
73 * @return a new object of class '<em>State</em>'.
74 * @generated
75 */
76 State createState();
77
78 /**
79 * Returns the package supported by this factory.
80 * <!-- begin-user-doc -->
81 * <!-- end-user-doc -->
82 * @return the package supported by this factory.
83 * @generated
84 */
85 YakindummPackage getYakindummPackage();
86
87} //YakindummFactory
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/YakindummPackage.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/YakindummPackage.java
new file mode 100644
index 00000000..01f62588
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/YakindummPackage.java
@@ -0,0 +1,840 @@
1/**
2 */
3package hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm;
4
5import org.eclipse.emf.ecore.EClass;
6import org.eclipse.emf.ecore.EPackage;
7import org.eclipse.emf.ecore.EReference;
8
9/**
10 * <!-- begin-user-doc -->
11 * The <b>Package</b> for the model.
12 * It contains accessors for the meta objects to represent
13 * <ul>
14 * <li>each class,</li>
15 * <li>each feature of each class,</li>
16 * <li>each operation of each class,</li>
17 * <li>each enum,</li>
18 * <li>and each data type</li>
19 * </ul>
20 * <!-- end-user-doc -->
21 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.YakindummFactory
22 * @model kind="package"
23 * @generated
24 */
25public interface YakindummPackage extends EPackage {
26 /**
27 * The package name.
28 * <!-- begin-user-doc -->
29 * <!-- end-user-doc -->
30 * @generated
31 */
32 String eNAME = "yakindumm";
33
34 /**
35 * The package namespace URI.
36 * <!-- begin-user-doc -->
37 * <!-- end-user-doc -->
38 * @generated
39 */
40 String eNS_URI = "hu.bme.mit.inf.yakindumm";
41
42 /**
43 * The package namespace name.
44 * <!-- begin-user-doc -->
45 * <!-- end-user-doc -->
46 * @generated
47 */
48 String eNS_PREFIX = "hu.bme.mit.inf.yakindumm";
49
50 /**
51 * The singleton instance of the package.
52 * <!-- begin-user-doc -->
53 * <!-- end-user-doc -->
54 * @generated
55 */
56 YakindummPackage eINSTANCE = hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.YakindummPackageImpl.init();
57
58 /**
59 * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.VertexImpl <em>Vertex</em>}' class.
60 * <!-- begin-user-doc -->
61 * <!-- end-user-doc -->
62 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.VertexImpl
63 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.YakindummPackageImpl#getVertex()
64 * @generated
65 */
66 int VERTEX = 1;
67
68 /**
69 * The feature id for the '<em><b>Incoming Transitions</b></em>' reference list.
70 * <!-- begin-user-doc -->
71 * <!-- end-user-doc -->
72 * @generated
73 * @ordered
74 */
75 int VERTEX__INCOMING_TRANSITIONS = 0;
76
77 /**
78 * The feature id for the '<em><b>Outgoing Transitions</b></em>' containment reference list.
79 * <!-- begin-user-doc -->
80 * <!-- end-user-doc -->
81 * @generated
82 * @ordered
83 */
84 int VERTEX__OUTGOING_TRANSITIONS = 1;
85
86 /**
87 * The number of structural features of the '<em>Vertex</em>' class.
88 * <!-- begin-user-doc -->
89 * <!-- end-user-doc -->
90 * @generated
91 * @ordered
92 */
93 int VERTEX_FEATURE_COUNT = 2;
94
95 /**
96 * The number of operations of the '<em>Vertex</em>' class.
97 * <!-- begin-user-doc -->
98 * <!-- end-user-doc -->
99 * @generated
100 * @ordered
101 */
102 int VERTEX_OPERATION_COUNT = 0;
103
104 /**
105 * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.PseudostateImpl <em>Pseudostate</em>}' class.
106 * <!-- begin-user-doc -->
107 * <!-- end-user-doc -->
108 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.PseudostateImpl
109 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.YakindummPackageImpl#getPseudostate()
110 * @generated
111 */
112 int PSEUDOSTATE = 0;
113
114 /**
115 * The feature id for the '<em><b>Incoming Transitions</b></em>' reference list.
116 * <!-- begin-user-doc -->
117 * <!-- end-user-doc -->
118 * @generated
119 * @ordered
120 */
121 int PSEUDOSTATE__INCOMING_TRANSITIONS = VERTEX__INCOMING_TRANSITIONS;
122
123 /**
124 * The feature id for the '<em><b>Outgoing Transitions</b></em>' containment reference list.
125 * <!-- begin-user-doc -->
126 * <!-- end-user-doc -->
127 * @generated
128 * @ordered
129 */
130 int PSEUDOSTATE__OUTGOING_TRANSITIONS = VERTEX__OUTGOING_TRANSITIONS;
131
132 /**
133 * The number of structural features of the '<em>Pseudostate</em>' class.
134 * <!-- begin-user-doc -->
135 * <!-- end-user-doc -->
136 * @generated
137 * @ordered
138 */
139 int PSEUDOSTATE_FEATURE_COUNT = VERTEX_FEATURE_COUNT + 0;
140
141 /**
142 * The number of operations of the '<em>Pseudostate</em>' class.
143 * <!-- begin-user-doc -->
144 * <!-- end-user-doc -->
145 * @generated
146 * @ordered
147 */
148 int PSEUDOSTATE_OPERATION_COUNT = VERTEX_OPERATION_COUNT + 0;
149
150 /**
151 * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.RegionImpl <em>Region</em>}' class.
152 * <!-- begin-user-doc -->
153 * <!-- end-user-doc -->
154 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.RegionImpl
155 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.YakindummPackageImpl#getRegion()
156 * @generated
157 */
158 int REGION = 2;
159
160 /**
161 * The feature id for the '<em><b>Vertices</b></em>' containment reference list.
162 * <!-- begin-user-doc -->
163 * <!-- end-user-doc -->
164 * @generated
165 * @ordered
166 */
167 int REGION__VERTICES = 0;
168
169 /**
170 * The number of structural features of the '<em>Region</em>' class.
171 * <!-- begin-user-doc -->
172 * <!-- end-user-doc -->
173 * @generated
174 * @ordered
175 */
176 int REGION_FEATURE_COUNT = 1;
177
178 /**
179 * The number of operations of the '<em>Region</em>' class.
180 * <!-- begin-user-doc -->
181 * <!-- end-user-doc -->
182 * @generated
183 * @ordered
184 */
185 int REGION_OPERATION_COUNT = 0;
186
187 /**
188 * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.TransitionImpl <em>Transition</em>}' class.
189 * <!-- begin-user-doc -->
190 * <!-- end-user-doc -->
191 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.TransitionImpl
192 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.YakindummPackageImpl#getTransition()
193 * @generated
194 */
195 int TRANSITION = 3;
196
197 /**
198 * The feature id for the '<em><b>Target</b></em>' reference.
199 * <!-- begin-user-doc -->
200 * <!-- end-user-doc -->
201 * @generated
202 * @ordered
203 */
204 int TRANSITION__TARGET = 0;
205
206 /**
207 * The feature id for the '<em><b>Source</b></em>' container reference.
208 * <!-- begin-user-doc -->
209 * <!-- end-user-doc -->
210 * @generated
211 * @ordered
212 */
213 int TRANSITION__SOURCE = 1;
214
215 /**
216 * The number of structural features of the '<em>Transition</em>' class.
217 * <!-- begin-user-doc -->
218 * <!-- end-user-doc -->
219 * @generated
220 * @ordered
221 */
222 int TRANSITION_FEATURE_COUNT = 2;
223
224 /**
225 * The number of operations of the '<em>Transition</em>' class.
226 * <!-- begin-user-doc -->
227 * <!-- end-user-doc -->
228 * @generated
229 * @ordered
230 */
231 int TRANSITION_OPERATION_COUNT = 0;
232
233 /**
234 * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.CompositeElementImpl <em>Composite Element</em>}' class.
235 * <!-- begin-user-doc -->
236 * <!-- end-user-doc -->
237 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.CompositeElementImpl
238 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.YakindummPackageImpl#getCompositeElement()
239 * @generated
240 */
241 int COMPOSITE_ELEMENT = 9;
242
243 /**
244 * The feature id for the '<em><b>Regions</b></em>' containment reference list.
245 * <!-- begin-user-doc -->
246 * <!-- end-user-doc -->
247 * @generated
248 * @ordered
249 */
250 int COMPOSITE_ELEMENT__REGIONS = 0;
251
252 /**
253 * The number of structural features of the '<em>Composite Element</em>' class.
254 * <!-- begin-user-doc -->
255 * <!-- end-user-doc -->
256 * @generated
257 * @ordered
258 */
259 int COMPOSITE_ELEMENT_FEATURE_COUNT = 1;
260
261 /**
262 * The number of operations of the '<em>Composite Element</em>' class.
263 * <!-- begin-user-doc -->
264 * <!-- end-user-doc -->
265 * @generated
266 * @ordered
267 */
268 int COMPOSITE_ELEMENT_OPERATION_COUNT = 0;
269
270 /**
271 * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.StatechartImpl <em>Statechart</em>}' class.
272 * <!-- begin-user-doc -->
273 * <!-- end-user-doc -->
274 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.StatechartImpl
275 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.YakindummPackageImpl#getStatechart()
276 * @generated
277 */
278 int STATECHART = 4;
279
280 /**
281 * The feature id for the '<em><b>Regions</b></em>' containment reference list.
282 * <!-- begin-user-doc -->
283 * <!-- end-user-doc -->
284 * @generated
285 * @ordered
286 */
287 int STATECHART__REGIONS = COMPOSITE_ELEMENT__REGIONS;
288
289 /**
290 * The number of structural features of the '<em>Statechart</em>' class.
291 * <!-- begin-user-doc -->
292 * <!-- end-user-doc -->
293 * @generated
294 * @ordered
295 */
296 int STATECHART_FEATURE_COUNT = COMPOSITE_ELEMENT_FEATURE_COUNT + 0;
297
298 /**
299 * The number of operations of the '<em>Statechart</em>' class.
300 * <!-- begin-user-doc -->
301 * <!-- end-user-doc -->
302 * @generated
303 * @ordered
304 */
305 int STATECHART_OPERATION_COUNT = COMPOSITE_ELEMENT_OPERATION_COUNT + 0;
306
307 /**
308 * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.EntryImpl <em>Entry</em>}' class.
309 * <!-- begin-user-doc -->
310 * <!-- end-user-doc -->
311 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.EntryImpl
312 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.YakindummPackageImpl#getEntry()
313 * @generated
314 */
315 int ENTRY = 5;
316
317 /**
318 * The feature id for the '<em><b>Incoming Transitions</b></em>' reference list.
319 * <!-- begin-user-doc -->
320 * <!-- end-user-doc -->
321 * @generated
322 * @ordered
323 */
324 int ENTRY__INCOMING_TRANSITIONS = PSEUDOSTATE__INCOMING_TRANSITIONS;
325
326 /**
327 * The feature id for the '<em><b>Outgoing Transitions</b></em>' containment reference list.
328 * <!-- begin-user-doc -->
329 * <!-- end-user-doc -->
330 * @generated
331 * @ordered
332 */
333 int ENTRY__OUTGOING_TRANSITIONS = PSEUDOSTATE__OUTGOING_TRANSITIONS;
334
335 /**
336 * The number of structural features of the '<em>Entry</em>' class.
337 * <!-- begin-user-doc -->
338 * <!-- end-user-doc -->
339 * @generated
340 * @ordered
341 */
342 int ENTRY_FEATURE_COUNT = PSEUDOSTATE_FEATURE_COUNT + 0;
343
344 /**
345 * The number of operations of the '<em>Entry</em>' class.
346 * <!-- begin-user-doc -->
347 * <!-- end-user-doc -->
348 * @generated
349 * @ordered
350 */
351 int ENTRY_OPERATION_COUNT = PSEUDOSTATE_OPERATION_COUNT + 0;
352
353 /**
354 * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.SynchronizationImpl <em>Synchronization</em>}' class.
355 * <!-- begin-user-doc -->
356 * <!-- end-user-doc -->
357 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.SynchronizationImpl
358 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.YakindummPackageImpl#getSynchronization()
359 * @generated
360 */
361 int SYNCHRONIZATION = 6;
362
363 /**
364 * The feature id for the '<em><b>Incoming Transitions</b></em>' reference list.
365 * <!-- begin-user-doc -->
366 * <!-- end-user-doc -->
367 * @generated
368 * @ordered
369 */
370 int SYNCHRONIZATION__INCOMING_TRANSITIONS = PSEUDOSTATE__INCOMING_TRANSITIONS;
371
372 /**
373 * The feature id for the '<em><b>Outgoing Transitions</b></em>' containment reference list.
374 * <!-- begin-user-doc -->
375 * <!-- end-user-doc -->
376 * @generated
377 * @ordered
378 */
379 int SYNCHRONIZATION__OUTGOING_TRANSITIONS = PSEUDOSTATE__OUTGOING_TRANSITIONS;
380
381 /**
382 * The number of structural features of the '<em>Synchronization</em>' class.
383 * <!-- begin-user-doc -->
384 * <!-- end-user-doc -->
385 * @generated
386 * @ordered
387 */
388 int SYNCHRONIZATION_FEATURE_COUNT = PSEUDOSTATE_FEATURE_COUNT + 0;
389
390 /**
391 * The number of operations of the '<em>Synchronization</em>' class.
392 * <!-- begin-user-doc -->
393 * <!-- end-user-doc -->
394 * @generated
395 * @ordered
396 */
397 int SYNCHRONIZATION_OPERATION_COUNT = PSEUDOSTATE_OPERATION_COUNT + 0;
398
399 /**
400 * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.RegularStateImpl <em>Regular State</em>}' class.
401 * <!-- begin-user-doc -->
402 * <!-- end-user-doc -->
403 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.RegularStateImpl
404 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.YakindummPackageImpl#getRegularState()
405 * @generated
406 */
407 int REGULAR_STATE = 8;
408
409 /**
410 * The feature id for the '<em><b>Incoming Transitions</b></em>' reference list.
411 * <!-- begin-user-doc -->
412 * <!-- end-user-doc -->
413 * @generated
414 * @ordered
415 */
416 int REGULAR_STATE__INCOMING_TRANSITIONS = VERTEX__INCOMING_TRANSITIONS;
417
418 /**
419 * The feature id for the '<em><b>Outgoing Transitions</b></em>' containment reference list.
420 * <!-- begin-user-doc -->
421 * <!-- end-user-doc -->
422 * @generated
423 * @ordered
424 */
425 int REGULAR_STATE__OUTGOING_TRANSITIONS = VERTEX__OUTGOING_TRANSITIONS;
426
427 /**
428 * The number of structural features of the '<em>Regular State</em>' class.
429 * <!-- begin-user-doc -->
430 * <!-- end-user-doc -->
431 * @generated
432 * @ordered
433 */
434 int REGULAR_STATE_FEATURE_COUNT = VERTEX_FEATURE_COUNT + 0;
435
436 /**
437 * The number of operations of the '<em>Regular State</em>' class.
438 * <!-- begin-user-doc -->
439 * <!-- end-user-doc -->
440 * @generated
441 * @ordered
442 */
443 int REGULAR_STATE_OPERATION_COUNT = VERTEX_OPERATION_COUNT + 0;
444
445 /**
446 * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.StateImpl <em>State</em>}' class.
447 * <!-- begin-user-doc -->
448 * <!-- end-user-doc -->
449 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.StateImpl
450 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.YakindummPackageImpl#getState()
451 * @generated
452 */
453 int STATE = 7;
454
455 /**
456 * The feature id for the '<em><b>Incoming Transitions</b></em>' reference list.
457 * <!-- begin-user-doc -->
458 * <!-- end-user-doc -->
459 * @generated
460 * @ordered
461 */
462 int STATE__INCOMING_TRANSITIONS = REGULAR_STATE__INCOMING_TRANSITIONS;
463
464 /**
465 * The feature id for the '<em><b>Outgoing Transitions</b></em>' containment reference list.
466 * <!-- begin-user-doc -->
467 * <!-- end-user-doc -->
468 * @generated
469 * @ordered
470 */
471 int STATE__OUTGOING_TRANSITIONS = REGULAR_STATE__OUTGOING_TRANSITIONS;
472
473 /**
474 * The feature id for the '<em><b>Regions</b></em>' containment reference list.
475 * <!-- begin-user-doc -->
476 * <!-- end-user-doc -->
477 * @generated
478 * @ordered
479 */
480 int STATE__REGIONS = REGULAR_STATE_FEATURE_COUNT + 0;
481
482 /**
483 * The number of structural features of the '<em>State</em>' class.
484 * <!-- begin-user-doc -->
485 * <!-- end-user-doc -->
486 * @generated
487 * @ordered
488 */
489 int STATE_FEATURE_COUNT = REGULAR_STATE_FEATURE_COUNT + 1;
490
491 /**
492 * The number of operations of the '<em>State</em>' class.
493 * <!-- begin-user-doc -->
494 * <!-- end-user-doc -->
495 * @generated
496 * @ordered
497 */
498 int STATE_OPERATION_COUNT = REGULAR_STATE_OPERATION_COUNT + 0;
499
500
501 /**
502 * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Pseudostate <em>Pseudostate</em>}'.
503 * <!-- begin-user-doc -->
504 * <!-- end-user-doc -->
505 * @return the meta object for class '<em>Pseudostate</em>'.
506 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Pseudostate
507 * @generated
508 */
509 EClass getPseudostate();
510
511 /**
512 * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Vertex <em>Vertex</em>}'.
513 * <!-- begin-user-doc -->
514 * <!-- end-user-doc -->
515 * @return the meta object for class '<em>Vertex</em>'.
516 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Vertex
517 * @generated
518 */
519 EClass getVertex();
520
521 /**
522 * Returns the meta object for the reference list '{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Vertex#getIncomingTransitions <em>Incoming Transitions</em>}'.
523 * <!-- begin-user-doc -->
524 * <!-- end-user-doc -->
525 * @return the meta object for the reference list '<em>Incoming Transitions</em>'.
526 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Vertex#getIncomingTransitions()
527 * @see #getVertex()
528 * @generated
529 */
530 EReference getVertex_IncomingTransitions();
531
532 /**
533 * Returns the meta object for the containment reference list '{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Vertex#getOutgoingTransitions <em>Outgoing Transitions</em>}'.
534 * <!-- begin-user-doc -->
535 * <!-- end-user-doc -->
536 * @return the meta object for the containment reference list '<em>Outgoing Transitions</em>'.
537 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Vertex#getOutgoingTransitions()
538 * @see #getVertex()
539 * @generated
540 */
541 EReference getVertex_OutgoingTransitions();
542
543 /**
544 * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Region <em>Region</em>}'.
545 * <!-- begin-user-doc -->
546 * <!-- end-user-doc -->
547 * @return the meta object for class '<em>Region</em>'.
548 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Region
549 * @generated
550 */
551 EClass getRegion();
552
553 /**
554 * Returns the meta object for the containment reference list '{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Region#getVertices <em>Vertices</em>}'.
555 * <!-- begin-user-doc -->
556 * <!-- end-user-doc -->
557 * @return the meta object for the containment reference list '<em>Vertices</em>'.
558 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Region#getVertices()
559 * @see #getRegion()
560 * @generated
561 */
562 EReference getRegion_Vertices();
563
564 /**
565 * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Transition <em>Transition</em>}'.
566 * <!-- begin-user-doc -->
567 * <!-- end-user-doc -->
568 * @return the meta object for class '<em>Transition</em>'.
569 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Transition
570 * @generated
571 */
572 EClass getTransition();
573
574 /**
575 * Returns the meta object for the reference '{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Transition#getTarget <em>Target</em>}'.
576 * <!-- begin-user-doc -->
577 * <!-- end-user-doc -->
578 * @return the meta object for the reference '<em>Target</em>'.
579 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Transition#getTarget()
580 * @see #getTransition()
581 * @generated
582 */
583 EReference getTransition_Target();
584
585 /**
586 * Returns the meta object for the container reference '{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Transition#getSource <em>Source</em>}'.
587 * <!-- begin-user-doc -->
588 * <!-- end-user-doc -->
589 * @return the meta object for the container reference '<em>Source</em>'.
590 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Transition#getSource()
591 * @see #getTransition()
592 * @generated
593 */
594 EReference getTransition_Source();
595
596 /**
597 * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Statechart <em>Statechart</em>}'.
598 * <!-- begin-user-doc -->
599 * <!-- end-user-doc -->
600 * @return the meta object for class '<em>Statechart</em>'.
601 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Statechart
602 * @generated
603 */
604 EClass getStatechart();
605
606 /**
607 * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Entry <em>Entry</em>}'.
608 * <!-- begin-user-doc -->
609 * <!-- end-user-doc -->
610 * @return the meta object for class '<em>Entry</em>'.
611 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Entry
612 * @generated
613 */
614 EClass getEntry();
615
616 /**
617 * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Synchronization <em>Synchronization</em>}'.
618 * <!-- begin-user-doc -->
619 * <!-- end-user-doc -->
620 * @return the meta object for class '<em>Synchronization</em>'.
621 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Synchronization
622 * @generated
623 */
624 EClass getSynchronization();
625
626 /**
627 * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.State <em>State</em>}'.
628 * <!-- begin-user-doc -->
629 * <!-- end-user-doc -->
630 * @return the meta object for class '<em>State</em>'.
631 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.State
632 * @generated
633 */
634 EClass getState();
635
636 /**
637 * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.RegularState <em>Regular State</em>}'.
638 * <!-- begin-user-doc -->
639 * <!-- end-user-doc -->
640 * @return the meta object for class '<em>Regular State</em>'.
641 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.RegularState
642 * @generated
643 */
644 EClass getRegularState();
645
646 /**
647 * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.CompositeElement <em>Composite Element</em>}'.
648 * <!-- begin-user-doc -->
649 * <!-- end-user-doc -->
650 * @return the meta object for class '<em>Composite Element</em>'.
651 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.CompositeElement
652 * @generated
653 */
654 EClass getCompositeElement();
655
656 /**
657 * Returns the meta object for the containment reference list '{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.CompositeElement#getRegions <em>Regions</em>}'.
658 * <!-- begin-user-doc -->
659 * <!-- end-user-doc -->
660 * @return the meta object for the containment reference list '<em>Regions</em>'.
661 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.CompositeElement#getRegions()
662 * @see #getCompositeElement()
663 * @generated
664 */
665 EReference getCompositeElement_Regions();
666
667 /**
668 * Returns the factory that creates the instances of the model.
669 * <!-- begin-user-doc -->
670 * <!-- end-user-doc -->
671 * @return the factory that creates the instances of the model.
672 * @generated
673 */
674 YakindummFactory getYakindummFactory();
675
676 /**
677 * <!-- begin-user-doc -->
678 * Defines literals for the meta objects that represent
679 * <ul>
680 * <li>each class,</li>
681 * <li>each feature of each class,</li>
682 * <li>each operation of each class,</li>
683 * <li>each enum,</li>
684 * <li>and each data type</li>
685 * </ul>
686 * <!-- end-user-doc -->
687 * @generated
688 */
689 interface Literals {
690 /**
691 * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.PseudostateImpl <em>Pseudostate</em>}' class.
692 * <!-- begin-user-doc -->
693 * <!-- end-user-doc -->
694 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.PseudostateImpl
695 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.YakindummPackageImpl#getPseudostate()
696 * @generated
697 */
698 EClass PSEUDOSTATE = eINSTANCE.getPseudostate();
699
700 /**
701 * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.VertexImpl <em>Vertex</em>}' class.
702 * <!-- begin-user-doc -->
703 * <!-- end-user-doc -->
704 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.VertexImpl
705 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.YakindummPackageImpl#getVertex()
706 * @generated
707 */
708 EClass VERTEX = eINSTANCE.getVertex();
709
710 /**
711 * The meta object literal for the '<em><b>Incoming Transitions</b></em>' reference list feature.
712 * <!-- begin-user-doc -->
713 * <!-- end-user-doc -->
714 * @generated
715 */
716 EReference VERTEX__INCOMING_TRANSITIONS = eINSTANCE.getVertex_IncomingTransitions();
717
718 /**
719 * The meta object literal for the '<em><b>Outgoing Transitions</b></em>' containment reference list feature.
720 * <!-- begin-user-doc -->
721 * <!-- end-user-doc -->
722 * @generated
723 */
724 EReference VERTEX__OUTGOING_TRANSITIONS = eINSTANCE.getVertex_OutgoingTransitions();
725
726 /**
727 * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.RegionImpl <em>Region</em>}' class.
728 * <!-- begin-user-doc -->
729 * <!-- end-user-doc -->
730 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.RegionImpl
731 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.YakindummPackageImpl#getRegion()
732 * @generated
733 */
734 EClass REGION = eINSTANCE.getRegion();
735
736 /**
737 * The meta object literal for the '<em><b>Vertices</b></em>' containment reference list feature.
738 * <!-- begin-user-doc -->
739 * <!-- end-user-doc -->
740 * @generated
741 */
742 EReference REGION__VERTICES = eINSTANCE.getRegion_Vertices();
743
744 /**
745 * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.TransitionImpl <em>Transition</em>}' class.
746 * <!-- begin-user-doc -->
747 * <!-- end-user-doc -->
748 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.TransitionImpl
749 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.YakindummPackageImpl#getTransition()
750 * @generated
751 */
752 EClass TRANSITION = eINSTANCE.getTransition();
753
754 /**
755 * The meta object literal for the '<em><b>Target</b></em>' reference feature.
756 * <!-- begin-user-doc -->
757 * <!-- end-user-doc -->
758 * @generated
759 */
760 EReference TRANSITION__TARGET = eINSTANCE.getTransition_Target();
761
762 /**
763 * The meta object literal for the '<em><b>Source</b></em>' container reference feature.
764 * <!-- begin-user-doc -->
765 * <!-- end-user-doc -->
766 * @generated
767 */
768 EReference TRANSITION__SOURCE = eINSTANCE.getTransition_Source();
769
770 /**
771 * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.StatechartImpl <em>Statechart</em>}' class.
772 * <!-- begin-user-doc -->
773 * <!-- end-user-doc -->
774 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.StatechartImpl
775 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.YakindummPackageImpl#getStatechart()
776 * @generated
777 */
778 EClass STATECHART = eINSTANCE.getStatechart();
779
780 /**
781 * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.EntryImpl <em>Entry</em>}' class.
782 * <!-- begin-user-doc -->
783 * <!-- end-user-doc -->
784 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.EntryImpl
785 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.YakindummPackageImpl#getEntry()
786 * @generated
787 */
788 EClass ENTRY = eINSTANCE.getEntry();
789
790 /**
791 * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.SynchronizationImpl <em>Synchronization</em>}' class.
792 * <!-- begin-user-doc -->
793 * <!-- end-user-doc -->
794 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.SynchronizationImpl
795 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.YakindummPackageImpl#getSynchronization()
796 * @generated
797 */
798 EClass SYNCHRONIZATION = eINSTANCE.getSynchronization();
799
800 /**
801 * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.StateImpl <em>State</em>}' class.
802 * <!-- begin-user-doc -->
803 * <!-- end-user-doc -->
804 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.StateImpl
805 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.YakindummPackageImpl#getState()
806 * @generated
807 */
808 EClass STATE = eINSTANCE.getState();
809
810 /**
811 * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.RegularStateImpl <em>Regular State</em>}' class.
812 * <!-- begin-user-doc -->
813 * <!-- end-user-doc -->
814 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.RegularStateImpl
815 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.YakindummPackageImpl#getRegularState()
816 * @generated
817 */
818 EClass REGULAR_STATE = eINSTANCE.getRegularState();
819
820 /**
821 * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.CompositeElementImpl <em>Composite Element</em>}' class.
822 * <!-- begin-user-doc -->
823 * <!-- end-user-doc -->
824 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.CompositeElementImpl
825 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.YakindummPackageImpl#getCompositeElement()
826 * @generated
827 */
828 EClass COMPOSITE_ELEMENT = eINSTANCE.getCompositeElement();
829
830 /**
831 * The meta object literal for the '<em><b>Regions</b></em>' containment reference list feature.
832 * <!-- begin-user-doc -->
833 * <!-- end-user-doc -->
834 * @generated
835 */
836 EReference COMPOSITE_ELEMENT__REGIONS = eINSTANCE.getCompositeElement_Regions();
837
838 }
839
840} //YakindummPackage
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/impl/CompositeElementImpl.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/impl/CompositeElementImpl.java
new file mode 100644
index 00000000..0e298b95
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/impl/CompositeElementImpl.java
@@ -0,0 +1,152 @@
1/**
2 */
3package hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl;
4
5import hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.CompositeElement;
6import hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Region;
7import hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.YakindummPackage;
8
9import java.util.Collection;
10
11import org.eclipse.emf.common.notify.NotificationChain;
12
13import org.eclipse.emf.common.util.EList;
14
15import org.eclipse.emf.ecore.EClass;
16import org.eclipse.emf.ecore.InternalEObject;
17
18import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
19
20import org.eclipse.emf.ecore.util.EObjectContainmentEList;
21import org.eclipse.emf.ecore.util.InternalEList;
22
23/**
24 * <!-- begin-user-doc -->
25 * An implementation of the model object '<em><b>Composite Element</b></em>'.
26 * <!-- end-user-doc -->
27 * <p>
28 * The following features are implemented:
29 * </p>
30 * <ul>
31 * <li>{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.CompositeElementImpl#getRegions <em>Regions</em>}</li>
32 * </ul>
33 *
34 * @generated
35 */
36public abstract class CompositeElementImpl extends MinimalEObjectImpl.Container implements CompositeElement {
37 /**
38 * The cached value of the '{@link #getRegions() <em>Regions</em>}' containment reference list.
39 * <!-- begin-user-doc -->
40 * <!-- end-user-doc -->
41 * @see #getRegions()
42 * @generated
43 * @ordered
44 */
45 protected EList<Region> regions;
46
47 /**
48 * <!-- begin-user-doc -->
49 * <!-- end-user-doc -->
50 * @generated
51 */
52 protected CompositeElementImpl() {
53 super();
54 }
55
56 /**
57 * <!-- begin-user-doc -->
58 * <!-- end-user-doc -->
59 * @generated
60 */
61 @Override
62 protected EClass eStaticClass() {
63 return YakindummPackage.Literals.COMPOSITE_ELEMENT;
64 }
65
66 /**
67 * <!-- begin-user-doc -->
68 * <!-- end-user-doc -->
69 * @generated
70 */
71 public EList<Region> getRegions() {
72 if (regions == null) {
73 regions = new EObjectContainmentEList<Region>(Region.class, this, YakindummPackage.COMPOSITE_ELEMENT__REGIONS);
74 }
75 return regions;
76 }
77
78 /**
79 * <!-- begin-user-doc -->
80 * <!-- end-user-doc -->
81 * @generated
82 */
83 @Override
84 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
85 switch (featureID) {
86 case YakindummPackage.COMPOSITE_ELEMENT__REGIONS:
87 return ((InternalEList<?>)getRegions()).basicRemove(otherEnd, msgs);
88 }
89 return super.eInverseRemove(otherEnd, featureID, msgs);
90 }
91
92 /**
93 * <!-- begin-user-doc -->
94 * <!-- end-user-doc -->
95 * @generated
96 */
97 @Override
98 public Object eGet(int featureID, boolean resolve, boolean coreType) {
99 switch (featureID) {
100 case YakindummPackage.COMPOSITE_ELEMENT__REGIONS:
101 return getRegions();
102 }
103 return super.eGet(featureID, resolve, coreType);
104 }
105
106 /**
107 * <!-- begin-user-doc -->
108 * <!-- end-user-doc -->
109 * @generated
110 */
111 @SuppressWarnings("unchecked")
112 @Override
113 public void eSet(int featureID, Object newValue) {
114 switch (featureID) {
115 case YakindummPackage.COMPOSITE_ELEMENT__REGIONS:
116 getRegions().clear();
117 getRegions().addAll((Collection<? extends Region>)newValue);
118 return;
119 }
120 super.eSet(featureID, newValue);
121 }
122
123 /**
124 * <!-- begin-user-doc -->
125 * <!-- end-user-doc -->
126 * @generated
127 */
128 @Override
129 public void eUnset(int featureID) {
130 switch (featureID) {
131 case YakindummPackage.COMPOSITE_ELEMENT__REGIONS:
132 getRegions().clear();
133 return;
134 }
135 super.eUnset(featureID);
136 }
137
138 /**
139 * <!-- begin-user-doc -->
140 * <!-- end-user-doc -->
141 * @generated
142 */
143 @Override
144 public boolean eIsSet(int featureID) {
145 switch (featureID) {
146 case YakindummPackage.COMPOSITE_ELEMENT__REGIONS:
147 return regions != null && !regions.isEmpty();
148 }
149 return super.eIsSet(featureID);
150 }
151
152} //CompositeElementImpl
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/impl/EntryImpl.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/impl/EntryImpl.java
new file mode 100644
index 00000000..35003e0d
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/impl/EntryImpl.java
@@ -0,0 +1,37 @@
1/**
2 */
3package hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl;
4
5import hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Entry;
6import hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.YakindummPackage;
7
8import org.eclipse.emf.ecore.EClass;
9
10/**
11 * <!-- begin-user-doc -->
12 * An implementation of the model object '<em><b>Entry</b></em>'.
13 * <!-- end-user-doc -->
14 *
15 * @generated
16 */
17public class EntryImpl extends PseudostateImpl implements Entry {
18 /**
19 * <!-- begin-user-doc -->
20 * <!-- end-user-doc -->
21 * @generated
22 */
23 protected EntryImpl() {
24 super();
25 }
26
27 /**
28 * <!-- begin-user-doc -->
29 * <!-- end-user-doc -->
30 * @generated
31 */
32 @Override
33 protected EClass eStaticClass() {
34 return YakindummPackage.Literals.ENTRY;
35 }
36
37} //EntryImpl
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/impl/PseudostateImpl.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/impl/PseudostateImpl.java
new file mode 100644
index 00000000..ac2c0058
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/impl/PseudostateImpl.java
@@ -0,0 +1,37 @@
1/**
2 */
3package hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl;
4
5import hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Pseudostate;
6import hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.YakindummPackage;
7
8import org.eclipse.emf.ecore.EClass;
9
10/**
11 * <!-- begin-user-doc -->
12 * An implementation of the model object '<em><b>Pseudostate</b></em>'.
13 * <!-- end-user-doc -->
14 *
15 * @generated
16 */
17public abstract class PseudostateImpl extends VertexImpl implements Pseudostate {
18 /**
19 * <!-- begin-user-doc -->
20 * <!-- end-user-doc -->
21 * @generated
22 */
23 protected PseudostateImpl() {
24 super();
25 }
26
27 /**
28 * <!-- begin-user-doc -->
29 * <!-- end-user-doc -->
30 * @generated
31 */
32 @Override
33 protected EClass eStaticClass() {
34 return YakindummPackage.Literals.PSEUDOSTATE;
35 }
36
37} //PseudostateImpl
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/impl/RegionImpl.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/impl/RegionImpl.java
new file mode 100644
index 00000000..232e5ab6
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/impl/RegionImpl.java
@@ -0,0 +1,152 @@
1/**
2 */
3package hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl;
4
5import hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Region;
6import hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Vertex;
7import hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.YakindummPackage;
8
9import java.util.Collection;
10
11import org.eclipse.emf.common.notify.NotificationChain;
12
13import org.eclipse.emf.common.util.EList;
14
15import org.eclipse.emf.ecore.EClass;
16import org.eclipse.emf.ecore.InternalEObject;
17
18import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
19
20import org.eclipse.emf.ecore.util.EObjectContainmentEList;
21import org.eclipse.emf.ecore.util.InternalEList;
22
23/**
24 * <!-- begin-user-doc -->
25 * An implementation of the model object '<em><b>Region</b></em>'.
26 * <!-- end-user-doc -->
27 * <p>
28 * The following features are implemented:
29 * </p>
30 * <ul>
31 * <li>{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.RegionImpl#getVertices <em>Vertices</em>}</li>
32 * </ul>
33 *
34 * @generated
35 */
36public class RegionImpl extends MinimalEObjectImpl.Container implements Region {
37 /**
38 * The cached value of the '{@link #getVertices() <em>Vertices</em>}' containment reference list.
39 * <!-- begin-user-doc -->
40 * <!-- end-user-doc -->
41 * @see #getVertices()
42 * @generated
43 * @ordered
44 */
45 protected EList<Vertex> vertices;
46
47 /**
48 * <!-- begin-user-doc -->
49 * <!-- end-user-doc -->
50 * @generated
51 */
52 protected RegionImpl() {
53 super();
54 }
55
56 /**
57 * <!-- begin-user-doc -->
58 * <!-- end-user-doc -->
59 * @generated
60 */
61 @Override
62 protected EClass eStaticClass() {
63 return YakindummPackage.Literals.REGION;
64 }
65
66 /**
67 * <!-- begin-user-doc -->
68 * <!-- end-user-doc -->
69 * @generated
70 */
71 public EList<Vertex> getVertices() {
72 if (vertices == null) {
73 vertices = new EObjectContainmentEList<Vertex>(Vertex.class, this, YakindummPackage.REGION__VERTICES);
74 }
75 return vertices;
76 }
77
78 /**
79 * <!-- begin-user-doc -->
80 * <!-- end-user-doc -->
81 * @generated
82 */
83 @Override
84 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
85 switch (featureID) {
86 case YakindummPackage.REGION__VERTICES:
87 return ((InternalEList<?>)getVertices()).basicRemove(otherEnd, msgs);
88 }
89 return super.eInverseRemove(otherEnd, featureID, msgs);
90 }
91
92 /**
93 * <!-- begin-user-doc -->
94 * <!-- end-user-doc -->
95 * @generated
96 */
97 @Override
98 public Object eGet(int featureID, boolean resolve, boolean coreType) {
99 switch (featureID) {
100 case YakindummPackage.REGION__VERTICES:
101 return getVertices();
102 }
103 return super.eGet(featureID, resolve, coreType);
104 }
105
106 /**
107 * <!-- begin-user-doc -->
108 * <!-- end-user-doc -->
109 * @generated
110 */
111 @SuppressWarnings("unchecked")
112 @Override
113 public void eSet(int featureID, Object newValue) {
114 switch (featureID) {
115 case YakindummPackage.REGION__VERTICES:
116 getVertices().clear();
117 getVertices().addAll((Collection<? extends Vertex>)newValue);
118 return;
119 }
120 super.eSet(featureID, newValue);
121 }
122
123 /**
124 * <!-- begin-user-doc -->
125 * <!-- end-user-doc -->
126 * @generated
127 */
128 @Override
129 public void eUnset(int featureID) {
130 switch (featureID) {
131 case YakindummPackage.REGION__VERTICES:
132 getVertices().clear();
133 return;
134 }
135 super.eUnset(featureID);
136 }
137
138 /**
139 * <!-- begin-user-doc -->
140 * <!-- end-user-doc -->
141 * @generated
142 */
143 @Override
144 public boolean eIsSet(int featureID) {
145 switch (featureID) {
146 case YakindummPackage.REGION__VERTICES:
147 return vertices != null && !vertices.isEmpty();
148 }
149 return super.eIsSet(featureID);
150 }
151
152} //RegionImpl
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/impl/RegularStateImpl.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/impl/RegularStateImpl.java
new file mode 100644
index 00000000..a7069bcb
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/impl/RegularStateImpl.java
@@ -0,0 +1,37 @@
1/**
2 */
3package hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl;
4
5import hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.RegularState;
6import hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.YakindummPackage;
7
8import org.eclipse.emf.ecore.EClass;
9
10/**
11 * <!-- begin-user-doc -->
12 * An implementation of the model object '<em><b>Regular State</b></em>'.
13 * <!-- end-user-doc -->
14 *
15 * @generated
16 */
17public abstract class RegularStateImpl extends VertexImpl implements RegularState {
18 /**
19 * <!-- begin-user-doc -->
20 * <!-- end-user-doc -->
21 * @generated
22 */
23 protected RegularStateImpl() {
24 super();
25 }
26
27 /**
28 * <!-- begin-user-doc -->
29 * <!-- end-user-doc -->
30 * @generated
31 */
32 @Override
33 protected EClass eStaticClass() {
34 return YakindummPackage.Literals.REGULAR_STATE;
35 }
36
37} //RegularStateImpl
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/impl/StateImpl.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/impl/StateImpl.java
new file mode 100644
index 00000000..6da0caec
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/impl/StateImpl.java
@@ -0,0 +1,183 @@
1/**
2 */
3package hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl;
4
5import hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.CompositeElement;
6import hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Region;
7import hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.State;
8import hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.YakindummPackage;
9
10import java.util.Collection;
11
12import org.eclipse.emf.common.notify.NotificationChain;
13
14import org.eclipse.emf.common.util.EList;
15
16import org.eclipse.emf.ecore.EClass;
17import org.eclipse.emf.ecore.InternalEObject;
18
19import org.eclipse.emf.ecore.util.EObjectContainmentEList;
20import org.eclipse.emf.ecore.util.InternalEList;
21
22/**
23 * <!-- begin-user-doc -->
24 * An implementation of the model object '<em><b>State</b></em>'.
25 * <!-- end-user-doc -->
26 * <p>
27 * The following features are implemented:
28 * </p>
29 * <ul>
30 * <li>{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.StateImpl#getRegions <em>Regions</em>}</li>
31 * </ul>
32 *
33 * @generated
34 */
35public class StateImpl extends RegularStateImpl implements State {
36 /**
37 * The cached value of the '{@link #getRegions() <em>Regions</em>}' containment reference list.
38 * <!-- begin-user-doc -->
39 * <!-- end-user-doc -->
40 * @see #getRegions()
41 * @generated
42 * @ordered
43 */
44 protected EList<Region> regions;
45
46 /**
47 * <!-- begin-user-doc -->
48 * <!-- end-user-doc -->
49 * @generated
50 */
51 protected StateImpl() {
52 super();
53 }
54
55 /**
56 * <!-- begin-user-doc -->
57 * <!-- end-user-doc -->
58 * @generated
59 */
60 @Override
61 protected EClass eStaticClass() {
62 return YakindummPackage.Literals.STATE;
63 }
64
65 /**
66 * <!-- begin-user-doc -->
67 * <!-- end-user-doc -->
68 * @generated
69 */
70 public EList<Region> getRegions() {
71 if (regions == null) {
72 regions = new EObjectContainmentEList<Region>(Region.class, this, YakindummPackage.STATE__REGIONS);
73 }
74 return regions;
75 }
76
77 /**
78 * <!-- begin-user-doc -->
79 * <!-- end-user-doc -->
80 * @generated
81 */
82 @Override
83 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
84 switch (featureID) {
85 case YakindummPackage.STATE__REGIONS:
86 return ((InternalEList<?>)getRegions()).basicRemove(otherEnd, msgs);
87 }
88 return super.eInverseRemove(otherEnd, featureID, msgs);
89 }
90
91 /**
92 * <!-- begin-user-doc -->
93 * <!-- end-user-doc -->
94 * @generated
95 */
96 @Override
97 public Object eGet(int featureID, boolean resolve, boolean coreType) {
98 switch (featureID) {
99 case YakindummPackage.STATE__REGIONS:
100 return getRegions();
101 }
102 return super.eGet(featureID, resolve, coreType);
103 }
104
105 /**
106 * <!-- begin-user-doc -->
107 * <!-- end-user-doc -->
108 * @generated
109 */
110 @SuppressWarnings("unchecked")
111 @Override
112 public void eSet(int featureID, Object newValue) {
113 switch (featureID) {
114 case YakindummPackage.STATE__REGIONS:
115 getRegions().clear();
116 getRegions().addAll((Collection<? extends Region>)newValue);
117 return;
118 }
119 super.eSet(featureID, newValue);
120 }
121
122 /**
123 * <!-- begin-user-doc -->
124 * <!-- end-user-doc -->
125 * @generated
126 */
127 @Override
128 public void eUnset(int featureID) {
129 switch (featureID) {
130 case YakindummPackage.STATE__REGIONS:
131 getRegions().clear();
132 return;
133 }
134 super.eUnset(featureID);
135 }
136
137 /**
138 * <!-- begin-user-doc -->
139 * <!-- end-user-doc -->
140 * @generated
141 */
142 @Override
143 public boolean eIsSet(int featureID) {
144 switch (featureID) {
145 case YakindummPackage.STATE__REGIONS:
146 return regions != null && !regions.isEmpty();
147 }
148 return super.eIsSet(featureID);
149 }
150
151 /**
152 * <!-- begin-user-doc -->
153 * <!-- end-user-doc -->
154 * @generated
155 */
156 @Override
157 public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
158 if (baseClass == CompositeElement.class) {
159 switch (derivedFeatureID) {
160 case YakindummPackage.STATE__REGIONS: return YakindummPackage.COMPOSITE_ELEMENT__REGIONS;
161 default: return -1;
162 }
163 }
164 return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
165 }
166
167 /**
168 * <!-- begin-user-doc -->
169 * <!-- end-user-doc -->
170 * @generated
171 */
172 @Override
173 public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
174 if (baseClass == CompositeElement.class) {
175 switch (baseFeatureID) {
176 case YakindummPackage.COMPOSITE_ELEMENT__REGIONS: return YakindummPackage.STATE__REGIONS;
177 default: return -1;
178 }
179 }
180 return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
181 }
182
183} //StateImpl
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/impl/StatechartImpl.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/impl/StatechartImpl.java
new file mode 100644
index 00000000..74a1388e
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/impl/StatechartImpl.java
@@ -0,0 +1,37 @@
1/**
2 */
3package hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl;
4
5import hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Statechart;
6import hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.YakindummPackage;
7
8import org.eclipse.emf.ecore.EClass;
9
10/**
11 * <!-- begin-user-doc -->
12 * An implementation of the model object '<em><b>Statechart</b></em>'.
13 * <!-- end-user-doc -->
14 *
15 * @generated
16 */
17public class StatechartImpl extends CompositeElementImpl implements Statechart {
18 /**
19 * <!-- begin-user-doc -->
20 * <!-- end-user-doc -->
21 * @generated
22 */
23 protected StatechartImpl() {
24 super();
25 }
26
27 /**
28 * <!-- begin-user-doc -->
29 * <!-- end-user-doc -->
30 * @generated
31 */
32 @Override
33 protected EClass eStaticClass() {
34 return YakindummPackage.Literals.STATECHART;
35 }
36
37} //StatechartImpl
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/impl/SynchronizationImpl.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/impl/SynchronizationImpl.java
new file mode 100644
index 00000000..2a08ccb3
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/impl/SynchronizationImpl.java
@@ -0,0 +1,37 @@
1/**
2 */
3package hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl;
4
5import hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Synchronization;
6import hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.YakindummPackage;
7
8import org.eclipse.emf.ecore.EClass;
9
10/**
11 * <!-- begin-user-doc -->
12 * An implementation of the model object '<em><b>Synchronization</b></em>'.
13 * <!-- end-user-doc -->
14 *
15 * @generated
16 */
17public class SynchronizationImpl extends PseudostateImpl implements Synchronization {
18 /**
19 * <!-- begin-user-doc -->
20 * <!-- end-user-doc -->
21 * @generated
22 */
23 protected SynchronizationImpl() {
24 super();
25 }
26
27 /**
28 * <!-- begin-user-doc -->
29 * <!-- end-user-doc -->
30 * @generated
31 */
32 @Override
33 protected EClass eStaticClass() {
34 return YakindummPackage.Literals.SYNCHRONIZATION;
35 }
36
37} //SynchronizationImpl
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/impl/TransitionImpl.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/impl/TransitionImpl.java
new file mode 100644
index 00000000..ff957869
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/impl/TransitionImpl.java
@@ -0,0 +1,284 @@
1/**
2 */
3package hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl;
4
5import hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Transition;
6import hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Vertex;
7import hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.YakindummPackage;
8
9import org.eclipse.emf.common.notify.Notification;
10import org.eclipse.emf.common.notify.NotificationChain;
11
12import org.eclipse.emf.ecore.EClass;
13import org.eclipse.emf.ecore.InternalEObject;
14
15import org.eclipse.emf.ecore.impl.ENotificationImpl;
16import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
17
18import org.eclipse.emf.ecore.util.EcoreUtil;
19
20/**
21 * <!-- begin-user-doc -->
22 * An implementation of the model object '<em><b>Transition</b></em>'.
23 * <!-- end-user-doc -->
24 * <p>
25 * The following features are implemented:
26 * </p>
27 * <ul>
28 * <li>{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.TransitionImpl#getTarget <em>Target</em>}</li>
29 * <li>{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.TransitionImpl#getSource <em>Source</em>}</li>
30 * </ul>
31 *
32 * @generated
33 */
34public class TransitionImpl extends MinimalEObjectImpl.Container implements Transition {
35 /**
36 * The cached value of the '{@link #getTarget() <em>Target</em>}' reference.
37 * <!-- begin-user-doc -->
38 * <!-- end-user-doc -->
39 * @see #getTarget()
40 * @generated
41 * @ordered
42 */
43 protected Vertex target;
44
45 /**
46 * <!-- begin-user-doc -->
47 * <!-- end-user-doc -->
48 * @generated
49 */
50 protected TransitionImpl() {
51 super();
52 }
53
54 /**
55 * <!-- begin-user-doc -->
56 * <!-- end-user-doc -->
57 * @generated
58 */
59 @Override
60 protected EClass eStaticClass() {
61 return YakindummPackage.Literals.TRANSITION;
62 }
63
64 /**
65 * <!-- begin-user-doc -->
66 * <!-- end-user-doc -->
67 * @generated
68 */
69 public Vertex getTarget() {
70 if (target != null && target.eIsProxy()) {
71 InternalEObject oldTarget = (InternalEObject)target;
72 target = (Vertex)eResolveProxy(oldTarget);
73 if (target != oldTarget) {
74 if (eNotificationRequired())
75 eNotify(new ENotificationImpl(this, Notification.RESOLVE, YakindummPackage.TRANSITION__TARGET, oldTarget, target));
76 }
77 }
78 return target;
79 }
80
81 /**
82 * <!-- begin-user-doc -->
83 * <!-- end-user-doc -->
84 * @generated
85 */
86 public Vertex basicGetTarget() {
87 return target;
88 }
89
90 /**
91 * <!-- begin-user-doc -->
92 * <!-- end-user-doc -->
93 * @generated
94 */
95 public NotificationChain basicSetTarget(Vertex newTarget, NotificationChain msgs) {
96 Vertex oldTarget = target;
97 target = newTarget;
98 if (eNotificationRequired()) {
99 ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, YakindummPackage.TRANSITION__TARGET, oldTarget, newTarget);
100 if (msgs == null) msgs = notification; else msgs.add(notification);
101 }
102 return msgs;
103 }
104
105 /**
106 * <!-- begin-user-doc -->
107 * <!-- end-user-doc -->
108 * @generated
109 */
110 public void setTarget(Vertex newTarget) {
111 if (newTarget != target) {
112 NotificationChain msgs = null;
113 if (target != null)
114 msgs = ((InternalEObject)target).eInverseRemove(this, YakindummPackage.VERTEX__INCOMING_TRANSITIONS, Vertex.class, msgs);
115 if (newTarget != null)
116 msgs = ((InternalEObject)newTarget).eInverseAdd(this, YakindummPackage.VERTEX__INCOMING_TRANSITIONS, Vertex.class, msgs);
117 msgs = basicSetTarget(newTarget, msgs);
118 if (msgs != null) msgs.dispatch();
119 }
120 else if (eNotificationRequired())
121 eNotify(new ENotificationImpl(this, Notification.SET, YakindummPackage.TRANSITION__TARGET, newTarget, newTarget));
122 }
123
124 /**
125 * <!-- begin-user-doc -->
126 * <!-- end-user-doc -->
127 * @generated
128 */
129 public Vertex getSource() {
130 if (eContainerFeatureID() != YakindummPackage.TRANSITION__SOURCE) return null;
131 return (Vertex)eInternalContainer();
132 }
133
134 /**
135 * <!-- begin-user-doc -->
136 * <!-- end-user-doc -->
137 * @generated
138 */
139 public NotificationChain basicSetSource(Vertex newSource, NotificationChain msgs) {
140 msgs = eBasicSetContainer((InternalEObject)newSource, YakindummPackage.TRANSITION__SOURCE, msgs);
141 return msgs;
142 }
143
144 /**
145 * <!-- begin-user-doc -->
146 * <!-- end-user-doc -->
147 * @generated
148 */
149 public void setSource(Vertex newSource) {
150 if (newSource != eInternalContainer() || (eContainerFeatureID() != YakindummPackage.TRANSITION__SOURCE && newSource != null)) {
151 if (EcoreUtil.isAncestor(this, newSource))
152 throw new IllegalArgumentException("Recursive containment not allowed for " + toString());
153 NotificationChain msgs = null;
154 if (eInternalContainer() != null)
155 msgs = eBasicRemoveFromContainer(msgs);
156 if (newSource != null)
157 msgs = ((InternalEObject)newSource).eInverseAdd(this, YakindummPackage.VERTEX__OUTGOING_TRANSITIONS, Vertex.class, msgs);
158 msgs = basicSetSource(newSource, msgs);
159 if (msgs != null) msgs.dispatch();
160 }
161 else if (eNotificationRequired())
162 eNotify(new ENotificationImpl(this, Notification.SET, YakindummPackage.TRANSITION__SOURCE, newSource, newSource));
163 }
164
165 /**
166 * <!-- begin-user-doc -->
167 * <!-- end-user-doc -->
168 * @generated
169 */
170 @Override
171 public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
172 switch (featureID) {
173 case YakindummPackage.TRANSITION__TARGET:
174 if (target != null)
175 msgs = ((InternalEObject)target).eInverseRemove(this, YakindummPackage.VERTEX__INCOMING_TRANSITIONS, Vertex.class, msgs);
176 return basicSetTarget((Vertex)otherEnd, msgs);
177 case YakindummPackage.TRANSITION__SOURCE:
178 if (eInternalContainer() != null)
179 msgs = eBasicRemoveFromContainer(msgs);
180 return basicSetSource((Vertex)otherEnd, msgs);
181 }
182 return super.eInverseAdd(otherEnd, featureID, msgs);
183 }
184
185 /**
186 * <!-- begin-user-doc -->
187 * <!-- end-user-doc -->
188 * @generated
189 */
190 @Override
191 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
192 switch (featureID) {
193 case YakindummPackage.TRANSITION__TARGET:
194 return basicSetTarget(null, msgs);
195 case YakindummPackage.TRANSITION__SOURCE:
196 return basicSetSource(null, msgs);
197 }
198 return super.eInverseRemove(otherEnd, featureID, msgs);
199 }
200
201 /**
202 * <!-- begin-user-doc -->
203 * <!-- end-user-doc -->
204 * @generated
205 */
206 @Override
207 public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) {
208 switch (eContainerFeatureID()) {
209 case YakindummPackage.TRANSITION__SOURCE:
210 return eInternalContainer().eInverseRemove(this, YakindummPackage.VERTEX__OUTGOING_TRANSITIONS, Vertex.class, msgs);
211 }
212 return super.eBasicRemoveFromContainerFeature(msgs);
213 }
214
215 /**
216 * <!-- begin-user-doc -->
217 * <!-- end-user-doc -->
218 * @generated
219 */
220 @Override
221 public Object eGet(int featureID, boolean resolve, boolean coreType) {
222 switch (featureID) {
223 case YakindummPackage.TRANSITION__TARGET:
224 if (resolve) return getTarget();
225 return basicGetTarget();
226 case YakindummPackage.TRANSITION__SOURCE:
227 return getSource();
228 }
229 return super.eGet(featureID, resolve, coreType);
230 }
231
232 /**
233 * <!-- begin-user-doc -->
234 * <!-- end-user-doc -->
235 * @generated
236 */
237 @Override
238 public void eSet(int featureID, Object newValue) {
239 switch (featureID) {
240 case YakindummPackage.TRANSITION__TARGET:
241 setTarget((Vertex)newValue);
242 return;
243 case YakindummPackage.TRANSITION__SOURCE:
244 setSource((Vertex)newValue);
245 return;
246 }
247 super.eSet(featureID, newValue);
248 }
249
250 /**
251 * <!-- begin-user-doc -->
252 * <!-- end-user-doc -->
253 * @generated
254 */
255 @Override
256 public void eUnset(int featureID) {
257 switch (featureID) {
258 case YakindummPackage.TRANSITION__TARGET:
259 setTarget((Vertex)null);
260 return;
261 case YakindummPackage.TRANSITION__SOURCE:
262 setSource((Vertex)null);
263 return;
264 }
265 super.eUnset(featureID);
266 }
267
268 /**
269 * <!-- begin-user-doc -->
270 * <!-- end-user-doc -->
271 * @generated
272 */
273 @Override
274 public boolean eIsSet(int featureID) {
275 switch (featureID) {
276 case YakindummPackage.TRANSITION__TARGET:
277 return target != null;
278 case YakindummPackage.TRANSITION__SOURCE:
279 return getSource() != null;
280 }
281 return super.eIsSet(featureID);
282 }
283
284} //TransitionImpl
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/impl/VertexImpl.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/impl/VertexImpl.java
new file mode 100644
index 00000000..13df20ee
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/impl/VertexImpl.java
@@ -0,0 +1,206 @@
1/**
2 */
3package hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl;
4
5import hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Transition;
6import hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Vertex;
7import hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.YakindummPackage;
8
9import java.util.Collection;
10
11import org.eclipse.emf.common.notify.NotificationChain;
12
13import org.eclipse.emf.common.util.EList;
14
15import org.eclipse.emf.ecore.EClass;
16import org.eclipse.emf.ecore.InternalEObject;
17
18import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
19
20import org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList;
21import org.eclipse.emf.ecore.util.EObjectWithInverseResolvingEList;
22import org.eclipse.emf.ecore.util.InternalEList;
23
24/**
25 * <!-- begin-user-doc -->
26 * An implementation of the model object '<em><b>Vertex</b></em>'.
27 * <!-- end-user-doc -->
28 * <p>
29 * The following features are implemented:
30 * </p>
31 * <ul>
32 * <li>{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.VertexImpl#getIncomingTransitions <em>Incoming Transitions</em>}</li>
33 * <li>{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl.VertexImpl#getOutgoingTransitions <em>Outgoing Transitions</em>}</li>
34 * </ul>
35 *
36 * @generated
37 */
38public abstract class VertexImpl extends MinimalEObjectImpl.Container implements Vertex {
39 /**
40 * The cached value of the '{@link #getIncomingTransitions() <em>Incoming Transitions</em>}' reference list.
41 * <!-- begin-user-doc -->
42 * <!-- end-user-doc -->
43 * @see #getIncomingTransitions()
44 * @generated
45 * @ordered
46 */
47 protected EList<Transition> incomingTransitions;
48
49 /**
50 * The cached value of the '{@link #getOutgoingTransitions() <em>Outgoing Transitions</em>}' containment reference list.
51 * <!-- begin-user-doc -->
52 * <!-- end-user-doc -->
53 * @see #getOutgoingTransitions()
54 * @generated
55 * @ordered
56 */
57 protected EList<Transition> outgoingTransitions;
58
59 /**
60 * <!-- begin-user-doc -->
61 * <!-- end-user-doc -->
62 * @generated
63 */
64 protected VertexImpl() {
65 super();
66 }
67
68 /**
69 * <!-- begin-user-doc -->
70 * <!-- end-user-doc -->
71 * @generated
72 */
73 @Override
74 protected EClass eStaticClass() {
75 return YakindummPackage.Literals.VERTEX;
76 }
77
78 /**
79 * <!-- begin-user-doc -->
80 * <!-- end-user-doc -->
81 * @generated
82 */
83 public EList<Transition> getIncomingTransitions() {
84 if (incomingTransitions == null) {
85 incomingTransitions = new EObjectWithInverseResolvingEList<Transition>(Transition.class, this, YakindummPackage.VERTEX__INCOMING_TRANSITIONS, YakindummPackage.TRANSITION__TARGET);
86 }
87 return incomingTransitions;
88 }
89
90 /**
91 * <!-- begin-user-doc -->
92 * <!-- end-user-doc -->
93 * @generated
94 */
95 public EList<Transition> getOutgoingTransitions() {
96 if (outgoingTransitions == null) {
97 outgoingTransitions = new EObjectContainmentWithInverseEList<Transition>(Transition.class, this, YakindummPackage.VERTEX__OUTGOING_TRANSITIONS, YakindummPackage.TRANSITION__SOURCE);
98 }
99 return outgoingTransitions;
100 }
101
102 /**
103 * <!-- begin-user-doc -->
104 * <!-- end-user-doc -->
105 * @generated
106 */
107 @SuppressWarnings("unchecked")
108 @Override
109 public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
110 switch (featureID) {
111 case YakindummPackage.VERTEX__INCOMING_TRANSITIONS:
112 return ((InternalEList<InternalEObject>)(InternalEList<?>)getIncomingTransitions()).basicAdd(otherEnd, msgs);
113 case YakindummPackage.VERTEX__OUTGOING_TRANSITIONS:
114 return ((InternalEList<InternalEObject>)(InternalEList<?>)getOutgoingTransitions()).basicAdd(otherEnd, msgs);
115 }
116 return super.eInverseAdd(otherEnd, featureID, msgs);
117 }
118
119 /**
120 * <!-- begin-user-doc -->
121 * <!-- end-user-doc -->
122 * @generated
123 */
124 @Override
125 public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
126 switch (featureID) {
127 case YakindummPackage.VERTEX__INCOMING_TRANSITIONS:
128 return ((InternalEList<?>)getIncomingTransitions()).basicRemove(otherEnd, msgs);
129 case YakindummPackage.VERTEX__OUTGOING_TRANSITIONS:
130 return ((InternalEList<?>)getOutgoingTransitions()).basicRemove(otherEnd, msgs);
131 }
132 return super.eInverseRemove(otherEnd, featureID, msgs);
133 }
134
135 /**
136 * <!-- begin-user-doc -->
137 * <!-- end-user-doc -->
138 * @generated
139 */
140 @Override
141 public Object eGet(int featureID, boolean resolve, boolean coreType) {
142 switch (featureID) {
143 case YakindummPackage.VERTEX__INCOMING_TRANSITIONS:
144 return getIncomingTransitions();
145 case YakindummPackage.VERTEX__OUTGOING_TRANSITIONS:
146 return getOutgoingTransitions();
147 }
148 return super.eGet(featureID, resolve, coreType);
149 }
150
151 /**
152 * <!-- begin-user-doc -->
153 * <!-- end-user-doc -->
154 * @generated
155 */
156 @SuppressWarnings("unchecked")
157 @Override
158 public void eSet(int featureID, Object newValue) {
159 switch (featureID) {
160 case YakindummPackage.VERTEX__INCOMING_TRANSITIONS:
161 getIncomingTransitions().clear();
162 getIncomingTransitions().addAll((Collection<? extends Transition>)newValue);
163 return;
164 case YakindummPackage.VERTEX__OUTGOING_TRANSITIONS:
165 getOutgoingTransitions().clear();
166 getOutgoingTransitions().addAll((Collection<? extends Transition>)newValue);
167 return;
168 }
169 super.eSet(featureID, newValue);
170 }
171
172 /**
173 * <!-- begin-user-doc -->
174 * <!-- end-user-doc -->
175 * @generated
176 */
177 @Override
178 public void eUnset(int featureID) {
179 switch (featureID) {
180 case YakindummPackage.VERTEX__INCOMING_TRANSITIONS:
181 getIncomingTransitions().clear();
182 return;
183 case YakindummPackage.VERTEX__OUTGOING_TRANSITIONS:
184 getOutgoingTransitions().clear();
185 return;
186 }
187 super.eUnset(featureID);
188 }
189
190 /**
191 * <!-- begin-user-doc -->
192 * <!-- end-user-doc -->
193 * @generated
194 */
195 @Override
196 public boolean eIsSet(int featureID) {
197 switch (featureID) {
198 case YakindummPackage.VERTEX__INCOMING_TRANSITIONS:
199 return incomingTransitions != null && !incomingTransitions.isEmpty();
200 case YakindummPackage.VERTEX__OUTGOING_TRANSITIONS:
201 return outgoingTransitions != null && !outgoingTransitions.isEmpty();
202 }
203 return super.eIsSet(featureID);
204 }
205
206} //VertexImpl
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/impl/YakindummFactoryImpl.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/impl/YakindummFactoryImpl.java
new file mode 100644
index 00000000..3578e66a
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/impl/YakindummFactoryImpl.java
@@ -0,0 +1,150 @@
1/**
2 */
3package hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl;
4
5import hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.*;
6
7import org.eclipse.emf.ecore.EClass;
8import org.eclipse.emf.ecore.EObject;
9import org.eclipse.emf.ecore.EPackage;
10
11import org.eclipse.emf.ecore.impl.EFactoryImpl;
12
13import org.eclipse.emf.ecore.plugin.EcorePlugin;
14
15/**
16 * <!-- begin-user-doc -->
17 * An implementation of the model <b>Factory</b>.
18 * <!-- end-user-doc -->
19 * @generated
20 */
21public class YakindummFactoryImpl extends EFactoryImpl implements YakindummFactory {
22 /**
23 * Creates the default factory implementation.
24 * <!-- begin-user-doc -->
25 * <!-- end-user-doc -->
26 * @generated
27 */
28 public static YakindummFactory init() {
29 try {
30 YakindummFactory theYakindummFactory = (YakindummFactory)EPackage.Registry.INSTANCE.getEFactory(YakindummPackage.eNS_URI);
31 if (theYakindummFactory != null) {
32 return theYakindummFactory;
33 }
34 }
35 catch (Exception exception) {
36 EcorePlugin.INSTANCE.log(exception);
37 }
38 return new YakindummFactoryImpl();
39 }
40
41 /**
42 * Creates an instance of the factory.
43 * <!-- begin-user-doc -->
44 * <!-- end-user-doc -->
45 * @generated
46 */
47 public YakindummFactoryImpl() {
48 super();
49 }
50
51 /**
52 * <!-- begin-user-doc -->
53 * <!-- end-user-doc -->
54 * @generated
55 */
56 @Override
57 public EObject create(EClass eClass) {
58 switch (eClass.getClassifierID()) {
59 case YakindummPackage.REGION: return createRegion();
60 case YakindummPackage.TRANSITION: return createTransition();
61 case YakindummPackage.STATECHART: return createStatechart();
62 case YakindummPackage.ENTRY: return createEntry();
63 case YakindummPackage.SYNCHRONIZATION: return createSynchronization();
64 case YakindummPackage.STATE: return createState();
65 default:
66 throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
67 }
68 }
69
70 /**
71 * <!-- begin-user-doc -->
72 * <!-- end-user-doc -->
73 * @generated
74 */
75 public Region createRegion() {
76 RegionImpl region = new RegionImpl();
77 return region;
78 }
79
80 /**
81 * <!-- begin-user-doc -->
82 * <!-- end-user-doc -->
83 * @generated
84 */
85 public Transition createTransition() {
86 TransitionImpl transition = new TransitionImpl();
87 return transition;
88 }
89
90 /**
91 * <!-- begin-user-doc -->
92 * <!-- end-user-doc -->
93 * @generated
94 */
95 public Statechart createStatechart() {
96 StatechartImpl statechart = new StatechartImpl();
97 return statechart;
98 }
99
100 /**
101 * <!-- begin-user-doc -->
102 * <!-- end-user-doc -->
103 * @generated
104 */
105 public Entry createEntry() {
106 EntryImpl entry = new EntryImpl();
107 return entry;
108 }
109
110 /**
111 * <!-- begin-user-doc -->
112 * <!-- end-user-doc -->
113 * @generated
114 */
115 public Synchronization createSynchronization() {
116 SynchronizationImpl synchronization = new SynchronizationImpl();
117 return synchronization;
118 }
119
120 /**
121 * <!-- begin-user-doc -->
122 * <!-- end-user-doc -->
123 * @generated
124 */
125 public State createState() {
126 StateImpl state = new StateImpl();
127 return state;
128 }
129
130 /**
131 * <!-- begin-user-doc -->
132 * <!-- end-user-doc -->
133 * @generated
134 */
135 public YakindummPackage getYakindummPackage() {
136 return (YakindummPackage)getEPackage();
137 }
138
139 /**
140 * <!-- begin-user-doc -->
141 * <!-- end-user-doc -->
142 * @deprecated
143 * @generated
144 */
145 @Deprecated
146 public static YakindummPackage getPackage() {
147 return YakindummPackage.eINSTANCE;
148 }
149
150} //YakindummFactoryImpl
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/impl/YakindummPackageImpl.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/impl/YakindummPackageImpl.java
new file mode 100644
index 00000000..2d8abfab
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/impl/YakindummPackageImpl.java
@@ -0,0 +1,428 @@
1/**
2 */
3package hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.impl;
4
5import hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.CompositeElement;
6import hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Entry;
7import hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Pseudostate;
8import hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Region;
9import hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.RegularState;
10import hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.State;
11import hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Statechart;
12import hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Synchronization;
13import hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Transition;
14import hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Vertex;
15import hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.YakindummFactory;
16import hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.YakindummPackage;
17
18import org.eclipse.emf.ecore.EClass;
19import org.eclipse.emf.ecore.EPackage;
20import org.eclipse.emf.ecore.EReference;
21
22import org.eclipse.emf.ecore.impl.EPackageImpl;
23
24/**
25 * <!-- begin-user-doc -->
26 * An implementation of the model <b>Package</b>.
27 * <!-- end-user-doc -->
28 * @generated
29 */
30public class YakindummPackageImpl extends EPackageImpl implements YakindummPackage {
31 /**
32 * <!-- begin-user-doc -->
33 * <!-- end-user-doc -->
34 * @generated
35 */
36 private EClass pseudostateEClass = null;
37
38 /**
39 * <!-- begin-user-doc -->
40 * <!-- end-user-doc -->
41 * @generated
42 */
43 private EClass vertexEClass = null;
44
45 /**
46 * <!-- begin-user-doc -->
47 * <!-- end-user-doc -->
48 * @generated
49 */
50 private EClass regionEClass = null;
51
52 /**
53 * <!-- begin-user-doc -->
54 * <!-- end-user-doc -->
55 * @generated
56 */
57 private EClass transitionEClass = null;
58
59 /**
60 * <!-- begin-user-doc -->
61 * <!-- end-user-doc -->
62 * @generated
63 */
64 private EClass statechartEClass = null;
65
66 /**
67 * <!-- begin-user-doc -->
68 * <!-- end-user-doc -->
69 * @generated
70 */
71 private EClass entryEClass = null;
72
73 /**
74 * <!-- begin-user-doc -->
75 * <!-- end-user-doc -->
76 * @generated
77 */
78 private EClass synchronizationEClass = null;
79
80 /**
81 * <!-- begin-user-doc -->
82 * <!-- end-user-doc -->
83 * @generated
84 */
85 private EClass stateEClass = null;
86
87 /**
88 * <!-- begin-user-doc -->
89 * <!-- end-user-doc -->
90 * @generated
91 */
92 private EClass regularStateEClass = null;
93
94 /**
95 * <!-- begin-user-doc -->
96 * <!-- end-user-doc -->
97 * @generated
98 */
99 private EClass compositeElementEClass = null;
100
101 /**
102 * Creates an instance of the model <b>Package</b>, registered with
103 * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package
104 * package URI value.
105 * <p>Note: the correct way to create the package is via the static
106 * factory method {@link #init init()}, which also performs
107 * initialization of the package, or returns the registered package,
108 * if one already exists.
109 * <!-- begin-user-doc -->
110 * <!-- end-user-doc -->
111 * @see org.eclipse.emf.ecore.EPackage.Registry
112 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.YakindummPackage#eNS_URI
113 * @see #init()
114 * @generated
115 */
116 private YakindummPackageImpl() {
117 super(eNS_URI, YakindummFactory.eINSTANCE);
118 }
119
120 /**
121 * <!-- begin-user-doc -->
122 * <!-- end-user-doc -->
123 * @generated
124 */
125 private static boolean isInited = false;
126
127 /**
128 * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends.
129 *
130 * <p>This method is used to initialize {@link YakindummPackage#eINSTANCE} when that field is accessed.
131 * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package.
132 * <!-- begin-user-doc -->
133 * <!-- end-user-doc -->
134 * @see #eNS_URI
135 * @see #createPackageContents()
136 * @see #initializePackageContents()
137 * @generated
138 */
139 public static YakindummPackage init() {
140 if (isInited) return (YakindummPackage)EPackage.Registry.INSTANCE.getEPackage(YakindummPackage.eNS_URI);
141
142 // Obtain or create and register package
143 YakindummPackageImpl theYakindummPackage = (YakindummPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof YakindummPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new YakindummPackageImpl());
144
145 isInited = true;
146
147 // Create package meta-data objects
148 theYakindummPackage.createPackageContents();
149
150 // Initialize created meta-data
151 theYakindummPackage.initializePackageContents();
152
153 // Mark meta-data to indicate it can't be changed
154 theYakindummPackage.freeze();
155
156
157 // Update the registry and return the package
158 EPackage.Registry.INSTANCE.put(YakindummPackage.eNS_URI, theYakindummPackage);
159 return theYakindummPackage;
160 }
161
162 /**
163 * <!-- begin-user-doc -->
164 * <!-- end-user-doc -->
165 * @generated
166 */
167 public EClass getPseudostate() {
168 return pseudostateEClass;
169 }
170
171 /**
172 * <!-- begin-user-doc -->
173 * <!-- end-user-doc -->
174 * @generated
175 */
176 public EClass getVertex() {
177 return vertexEClass;
178 }
179
180 /**
181 * <!-- begin-user-doc -->
182 * <!-- end-user-doc -->
183 * @generated
184 */
185 public EReference getVertex_IncomingTransitions() {
186 return (EReference)vertexEClass.getEStructuralFeatures().get(0);
187 }
188
189 /**
190 * <!-- begin-user-doc -->
191 * <!-- end-user-doc -->
192 * @generated
193 */
194 public EReference getVertex_OutgoingTransitions() {
195 return (EReference)vertexEClass.getEStructuralFeatures().get(1);
196 }
197
198 /**
199 * <!-- begin-user-doc -->
200 * <!-- end-user-doc -->
201 * @generated
202 */
203 public EClass getRegion() {
204 return regionEClass;
205 }
206
207 /**
208 * <!-- begin-user-doc -->
209 * <!-- end-user-doc -->
210 * @generated
211 */
212 public EReference getRegion_Vertices() {
213 return (EReference)regionEClass.getEStructuralFeatures().get(0);
214 }
215
216 /**
217 * <!-- begin-user-doc -->
218 * <!-- end-user-doc -->
219 * @generated
220 */
221 public EClass getTransition() {
222 return transitionEClass;
223 }
224
225 /**
226 * <!-- begin-user-doc -->
227 * <!-- end-user-doc -->
228 * @generated
229 */
230 public EReference getTransition_Target() {
231 return (EReference)transitionEClass.getEStructuralFeatures().get(0);
232 }
233
234 /**
235 * <!-- begin-user-doc -->
236 * <!-- end-user-doc -->
237 * @generated
238 */
239 public EReference getTransition_Source() {
240 return (EReference)transitionEClass.getEStructuralFeatures().get(1);
241 }
242
243 /**
244 * <!-- begin-user-doc -->
245 * <!-- end-user-doc -->
246 * @generated
247 */
248 public EClass getStatechart() {
249 return statechartEClass;
250 }
251
252 /**
253 * <!-- begin-user-doc -->
254 * <!-- end-user-doc -->
255 * @generated
256 */
257 public EClass getEntry() {
258 return entryEClass;
259 }
260
261 /**
262 * <!-- begin-user-doc -->
263 * <!-- end-user-doc -->
264 * @generated
265 */
266 public EClass getSynchronization() {
267 return synchronizationEClass;
268 }
269
270 /**
271 * <!-- begin-user-doc -->
272 * <!-- end-user-doc -->
273 * @generated
274 */
275 public EClass getState() {
276 return stateEClass;
277 }
278
279 /**
280 * <!-- begin-user-doc -->
281 * <!-- end-user-doc -->
282 * @generated
283 */
284 public EClass getRegularState() {
285 return regularStateEClass;
286 }
287
288 /**
289 * <!-- begin-user-doc -->
290 * <!-- end-user-doc -->
291 * @generated
292 */
293 public EClass getCompositeElement() {
294 return compositeElementEClass;
295 }
296
297 /**
298 * <!-- begin-user-doc -->
299 * <!-- end-user-doc -->
300 * @generated
301 */
302 public EReference getCompositeElement_Regions() {
303 return (EReference)compositeElementEClass.getEStructuralFeatures().get(0);
304 }
305
306 /**
307 * <!-- begin-user-doc -->
308 * <!-- end-user-doc -->
309 * @generated
310 */
311 public YakindummFactory getYakindummFactory() {
312 return (YakindummFactory)getEFactoryInstance();
313 }
314
315 /**
316 * <!-- begin-user-doc -->
317 * <!-- end-user-doc -->
318 * @generated
319 */
320 private boolean isCreated = false;
321
322 /**
323 * Creates the meta-model objects for the package. This method is
324 * guarded to have no affect on any invocation but its first.
325 * <!-- begin-user-doc -->
326 * <!-- end-user-doc -->
327 * @generated
328 */
329 public void createPackageContents() {
330 if (isCreated) return;
331 isCreated = true;
332
333 // Create classes and their features
334 pseudostateEClass = createEClass(PSEUDOSTATE);
335
336 vertexEClass = createEClass(VERTEX);
337 createEReference(vertexEClass, VERTEX__INCOMING_TRANSITIONS);
338 createEReference(vertexEClass, VERTEX__OUTGOING_TRANSITIONS);
339
340 regionEClass = createEClass(REGION);
341 createEReference(regionEClass, REGION__VERTICES);
342
343 transitionEClass = createEClass(TRANSITION);
344 createEReference(transitionEClass, TRANSITION__TARGET);
345 createEReference(transitionEClass, TRANSITION__SOURCE);
346
347 statechartEClass = createEClass(STATECHART);
348
349 entryEClass = createEClass(ENTRY);
350
351 synchronizationEClass = createEClass(SYNCHRONIZATION);
352
353 stateEClass = createEClass(STATE);
354
355 regularStateEClass = createEClass(REGULAR_STATE);
356
357 compositeElementEClass = createEClass(COMPOSITE_ELEMENT);
358 createEReference(compositeElementEClass, COMPOSITE_ELEMENT__REGIONS);
359 }
360
361 /**
362 * <!-- begin-user-doc -->
363 * <!-- end-user-doc -->
364 * @generated
365 */
366 private boolean isInitialized = false;
367
368 /**
369 * Complete the initialization of the package and its meta-model. This
370 * method is guarded to have no affect on any invocation but its first.
371 * <!-- begin-user-doc -->
372 * <!-- end-user-doc -->
373 * @generated
374 */
375 public void initializePackageContents() {
376 if (isInitialized) return;
377 isInitialized = true;
378
379 // Initialize package
380 setName(eNAME);
381 setNsPrefix(eNS_PREFIX);
382 setNsURI(eNS_URI);
383
384 // Create type parameters
385
386 // Set bounds for type parameters
387
388 // Add supertypes to classes
389 pseudostateEClass.getESuperTypes().add(this.getVertex());
390 statechartEClass.getESuperTypes().add(this.getCompositeElement());
391 entryEClass.getESuperTypes().add(this.getPseudostate());
392 synchronizationEClass.getESuperTypes().add(this.getPseudostate());
393 stateEClass.getESuperTypes().add(this.getRegularState());
394 stateEClass.getESuperTypes().add(this.getCompositeElement());
395 regularStateEClass.getESuperTypes().add(this.getVertex());
396
397 // Initialize classes, features, and operations; add parameters
398 initEClass(pseudostateEClass, Pseudostate.class, "Pseudostate", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
399
400 initEClass(vertexEClass, Vertex.class, "Vertex", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
401 initEReference(getVertex_IncomingTransitions(), this.getTransition(), this.getTransition_Target(), "incomingTransitions", null, 0, -1, Vertex.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
402 initEReference(getVertex_OutgoingTransitions(), this.getTransition(), this.getTransition_Source(), "outgoingTransitions", null, 0, -1, Vertex.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
403
404 initEClass(regionEClass, Region.class, "Region", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
405 initEReference(getRegion_Vertices(), this.getVertex(), null, "vertices", null, 0, -1, Region.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
406
407 initEClass(transitionEClass, Transition.class, "Transition", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
408 initEReference(getTransition_Target(), this.getVertex(), this.getVertex_IncomingTransitions(), "target", null, 1, 1, Transition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
409 initEReference(getTransition_Source(), this.getVertex(), this.getVertex_OutgoingTransitions(), "source", null, 1, 1, Transition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
410
411 initEClass(statechartEClass, Statechart.class, "Statechart", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
412
413 initEClass(entryEClass, Entry.class, "Entry", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
414
415 initEClass(synchronizationEClass, Synchronization.class, "Synchronization", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
416
417 initEClass(stateEClass, State.class, "State", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
418
419 initEClass(regularStateEClass, RegularState.class, "RegularState", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
420
421 initEClass(compositeElementEClass, CompositeElement.class, "CompositeElement", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
422 initEReference(getCompositeElement_Regions(), this.getRegion(), null, "regions", null, 0, -1, CompositeElement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
423
424 // Create resource
425 createResource(eNS_URI);
426 }
427
428} //YakindummPackageImpl
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/util/YakindummAdapterFactory.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/util/YakindummAdapterFactory.java
new file mode 100644
index 00000000..06393ef6
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/util/YakindummAdapterFactory.java
@@ -0,0 +1,282 @@
1/**
2 */
3package hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.util;
4
5import hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.*;
6
7import org.eclipse.emf.common.notify.Adapter;
8import org.eclipse.emf.common.notify.Notifier;
9
10import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
11
12import org.eclipse.emf.ecore.EObject;
13
14/**
15 * <!-- begin-user-doc -->
16 * The <b>Adapter Factory</b> for the model.
17 * It provides an adapter <code>createXXX</code> method for each class of the model.
18 * <!-- end-user-doc -->
19 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.YakindummPackage
20 * @generated
21 */
22public class YakindummAdapterFactory extends AdapterFactoryImpl {
23 /**
24 * The cached model package.
25 * <!-- begin-user-doc -->
26 * <!-- end-user-doc -->
27 * @generated
28 */
29 protected static YakindummPackage modelPackage;
30
31 /**
32 * Creates an instance of the adapter factory.
33 * <!-- begin-user-doc -->
34 * <!-- end-user-doc -->
35 * @generated
36 */
37 public YakindummAdapterFactory() {
38 if (modelPackage == null) {
39 modelPackage = YakindummPackage.eINSTANCE;
40 }
41 }
42
43 /**
44 * Returns whether this factory is applicable for the type of the object.
45 * <!-- begin-user-doc -->
46 * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
47 * <!-- end-user-doc -->
48 * @return whether this factory is applicable for the type of the object.
49 * @generated
50 */
51 @Override
52 public boolean isFactoryForType(Object object) {
53 if (object == modelPackage) {
54 return true;
55 }
56 if (object instanceof EObject) {
57 return ((EObject)object).eClass().getEPackage() == modelPackage;
58 }
59 return false;
60 }
61
62 /**
63 * The switch that delegates to the <code>createXXX</code> methods.
64 * <!-- begin-user-doc -->
65 * <!-- end-user-doc -->
66 * @generated
67 */
68 protected YakindummSwitch<Adapter> modelSwitch =
69 new YakindummSwitch<Adapter>() {
70 @Override
71 public Adapter casePseudostate(Pseudostate object) {
72 return createPseudostateAdapter();
73 }
74 @Override
75 public Adapter caseVertex(Vertex object) {
76 return createVertexAdapter();
77 }
78 @Override
79 public Adapter caseRegion(Region object) {
80 return createRegionAdapter();
81 }
82 @Override
83 public Adapter caseTransition(Transition object) {
84 return createTransitionAdapter();
85 }
86 @Override
87 public Adapter caseStatechart(Statechart object) {
88 return createStatechartAdapter();
89 }
90 @Override
91 public Adapter caseEntry(Entry object) {
92 return createEntryAdapter();
93 }
94 @Override
95 public Adapter caseSynchronization(Synchronization object) {
96 return createSynchronizationAdapter();
97 }
98 @Override
99 public Adapter caseState(State object) {
100 return createStateAdapter();
101 }
102 @Override
103 public Adapter caseRegularState(RegularState object) {
104 return createRegularStateAdapter();
105 }
106 @Override
107 public Adapter caseCompositeElement(CompositeElement object) {
108 return createCompositeElementAdapter();
109 }
110 @Override
111 public Adapter defaultCase(EObject object) {
112 return createEObjectAdapter();
113 }
114 };
115
116 /**
117 * Creates an adapter for the <code>target</code>.
118 * <!-- begin-user-doc -->
119 * <!-- end-user-doc -->
120 * @param target the object to adapt.
121 * @return the adapter for the <code>target</code>.
122 * @generated
123 */
124 @Override
125 public Adapter createAdapter(Notifier target) {
126 return modelSwitch.doSwitch((EObject)target);
127 }
128
129
130 /**
131 * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Pseudostate <em>Pseudostate</em>}'.
132 * <!-- begin-user-doc -->
133 * This default implementation returns null so that we can easily ignore cases;
134 * it's useful to ignore a case when inheritance will catch all the cases anyway.
135 * <!-- end-user-doc -->
136 * @return the new adapter.
137 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Pseudostate
138 * @generated
139 */
140 public Adapter createPseudostateAdapter() {
141 return null;
142 }
143
144 /**
145 * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Vertex <em>Vertex</em>}'.
146 * <!-- begin-user-doc -->
147 * This default implementation returns null so that we can easily ignore cases;
148 * it's useful to ignore a case when inheritance will catch all the cases anyway.
149 * <!-- end-user-doc -->
150 * @return the new adapter.
151 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Vertex
152 * @generated
153 */
154 public Adapter createVertexAdapter() {
155 return null;
156 }
157
158 /**
159 * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Region <em>Region</em>}'.
160 * <!-- begin-user-doc -->
161 * This default implementation returns null so that we can easily ignore cases;
162 * it's useful to ignore a case when inheritance will catch all the cases anyway.
163 * <!-- end-user-doc -->
164 * @return the new adapter.
165 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Region
166 * @generated
167 */
168 public Adapter createRegionAdapter() {
169 return null;
170 }
171
172 /**
173 * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Transition <em>Transition</em>}'.
174 * <!-- begin-user-doc -->
175 * This default implementation returns null so that we can easily ignore cases;
176 * it's useful to ignore a case when inheritance will catch all the cases anyway.
177 * <!-- end-user-doc -->
178 * @return the new adapter.
179 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Transition
180 * @generated
181 */
182 public Adapter createTransitionAdapter() {
183 return null;
184 }
185
186 /**
187 * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Statechart <em>Statechart</em>}'.
188 * <!-- begin-user-doc -->
189 * This default implementation returns null so that we can easily ignore cases;
190 * it's useful to ignore a case when inheritance will catch all the cases anyway.
191 * <!-- end-user-doc -->
192 * @return the new adapter.
193 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Statechart
194 * @generated
195 */
196 public Adapter createStatechartAdapter() {
197 return null;
198 }
199
200 /**
201 * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Entry <em>Entry</em>}'.
202 * <!-- begin-user-doc -->
203 * This default implementation returns null so that we can easily ignore cases;
204 * it's useful to ignore a case when inheritance will catch all the cases anyway.
205 * <!-- end-user-doc -->
206 * @return the new adapter.
207 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Entry
208 * @generated
209 */
210 public Adapter createEntryAdapter() {
211 return null;
212 }
213
214 /**
215 * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Synchronization <em>Synchronization</em>}'.
216 * <!-- begin-user-doc -->
217 * This default implementation returns null so that we can easily ignore cases;
218 * it's useful to ignore a case when inheritance will catch all the cases anyway.
219 * <!-- end-user-doc -->
220 * @return the new adapter.
221 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.Synchronization
222 * @generated
223 */
224 public Adapter createSynchronizationAdapter() {
225 return null;
226 }
227
228 /**
229 * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.State <em>State</em>}'.
230 * <!-- begin-user-doc -->
231 * This default implementation returns null so that we can easily ignore cases;
232 * it's useful to ignore a case when inheritance will catch all the cases anyway.
233 * <!-- end-user-doc -->
234 * @return the new adapter.
235 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.State
236 * @generated
237 */
238 public Adapter createStateAdapter() {
239 return null;
240 }
241
242 /**
243 * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.RegularState <em>Regular State</em>}'.
244 * <!-- begin-user-doc -->
245 * This default implementation returns null so that we can easily ignore cases;
246 * it's useful to ignore a case when inheritance will catch all the cases anyway.
247 * <!-- end-user-doc -->
248 * @return the new adapter.
249 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.RegularState
250 * @generated
251 */
252 public Adapter createRegularStateAdapter() {
253 return null;
254 }
255
256 /**
257 * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.CompositeElement <em>Composite Element</em>}'.
258 * <!-- begin-user-doc -->
259 * This default implementation returns null so that we can easily ignore cases;
260 * it's useful to ignore a case when inheritance will catch all the cases anyway.
261 * <!-- end-user-doc -->
262 * @return the new adapter.
263 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.CompositeElement
264 * @generated
265 */
266 public Adapter createCompositeElementAdapter() {
267 return null;
268 }
269
270 /**
271 * Creates a new adapter for the default case.
272 * <!-- begin-user-doc -->
273 * This default implementation returns null.
274 * <!-- end-user-doc -->
275 * @return the new adapter.
276 * @generated
277 */
278 public Adapter createEObjectAdapter() {
279 return null;
280 }
281
282} //YakindummAdapterFactory
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/util/YakindummSwitch.java b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/util/YakindummSwitch.java
new file mode 100644
index 00000000..269486fb
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen/hu/bme/mit/inf/dslreasoner/domains/yakindu/sgraph/yakindumm/util/YakindummSwitch.java
@@ -0,0 +1,309 @@
1/**
2 */
3package hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.util;
4
5import hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.*;
6
7import org.eclipse.emf.ecore.EObject;
8import org.eclipse.emf.ecore.EPackage;
9
10import org.eclipse.emf.ecore.util.Switch;
11
12/**
13 * <!-- begin-user-doc -->
14 * The <b>Switch</b> for the model's inheritance hierarchy.
15 * It supports the call {@link #doSwitch(EObject) doSwitch(object)}
16 * to invoke the <code>caseXXX</code> method for each class of the model,
17 * starting with the actual class of the object
18 * and proceeding up the inheritance hierarchy
19 * until a non-null result is returned,
20 * which is the result of the switch.
21 * <!-- end-user-doc -->
22 * @see hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.YakindummPackage
23 * @generated
24 */
25public class YakindummSwitch<T> extends Switch<T> {
26 /**
27 * The cached model package
28 * <!-- begin-user-doc -->
29 * <!-- end-user-doc -->
30 * @generated
31 */
32 protected static YakindummPackage modelPackage;
33
34 /**
35 * Creates an instance of the switch.
36 * <!-- begin-user-doc -->
37 * <!-- end-user-doc -->
38 * @generated
39 */
40 public YakindummSwitch() {
41 if (modelPackage == null) {
42 modelPackage = YakindummPackage.eINSTANCE;
43 }
44 }
45
46 /**
47 * Checks whether this is a switch for the given package.
48 * <!-- begin-user-doc -->
49 * <!-- end-user-doc -->
50 * @param ePackage the package in question.
51 * @return whether this is a switch for the given package.
52 * @generated
53 */
54 @Override
55 protected boolean isSwitchFor(EPackage ePackage) {
56 return ePackage == modelPackage;
57 }
58
59 /**
60 * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
61 * <!-- begin-user-doc -->
62 * <!-- end-user-doc -->
63 * @return the first non-null result returned by a <code>caseXXX</code> call.
64 * @generated
65 */
66 @Override
67 protected T doSwitch(int classifierID, EObject theEObject) {
68 switch (classifierID) {
69 case YakindummPackage.PSEUDOSTATE: {
70 Pseudostate pseudostate = (Pseudostate)theEObject;
71 T result = casePseudostate(pseudostate);
72 if (result == null) result = caseVertex(pseudostate);
73 if (result == null) result = defaultCase(theEObject);
74 return result;
75 }
76 case YakindummPackage.VERTEX: {
77 Vertex vertex = (Vertex)theEObject;
78 T result = caseVertex(vertex);
79 if (result == null) result = defaultCase(theEObject);
80 return result;
81 }
82 case YakindummPackage.REGION: {
83 Region region = (Region)theEObject;
84 T result = caseRegion(region);
85 if (result == null) result = defaultCase(theEObject);
86 return result;
87 }
88 case YakindummPackage.TRANSITION: {
89 Transition transition = (Transition)theEObject;
90 T result = caseTransition(transition);
91 if (result == null) result = defaultCase(theEObject);
92 return result;
93 }
94 case YakindummPackage.STATECHART: {
95 Statechart statechart = (Statechart)theEObject;
96 T result = caseStatechart(statechart);
97 if (result == null) result = caseCompositeElement(statechart);
98 if (result == null) result = defaultCase(theEObject);
99 return result;
100 }
101 case YakindummPackage.ENTRY: {
102 Entry entry = (Entry)theEObject;
103 T result = caseEntry(entry);
104 if (result == null) result = casePseudostate(entry);
105 if (result == null) result = caseVertex(entry);
106 if (result == null) result = defaultCase(theEObject);
107 return result;
108 }
109 case YakindummPackage.SYNCHRONIZATION: {
110 Synchronization synchronization = (Synchronization)theEObject;
111 T result = caseSynchronization(synchronization);
112 if (result == null) result = casePseudostate(synchronization);
113 if (result == null) result = caseVertex(synchronization);
114 if (result == null) result = defaultCase(theEObject);
115 return result;
116 }
117 case YakindummPackage.STATE: {
118 State state = (State)theEObject;
119 T result = caseState(state);
120 if (result == null) result = caseRegularState(state);
121 if (result == null) result = caseCompositeElement(state);
122 if (result == null) result = caseVertex(state);
123 if (result == null) result = defaultCase(theEObject);
124 return result;
125 }
126 case YakindummPackage.REGULAR_STATE: {
127 RegularState regularState = (RegularState)theEObject;
128 T result = caseRegularState(regularState);
129 if (result == null) result = caseVertex(regularState);
130 if (result == null) result = defaultCase(theEObject);
131 return result;
132 }
133 case YakindummPackage.COMPOSITE_ELEMENT: {
134 CompositeElement compositeElement = (CompositeElement)theEObject;
135 T result = caseCompositeElement(compositeElement);
136 if (result == null) result = defaultCase(theEObject);
137 return result;
138 }
139 default: return defaultCase(theEObject);
140 }
141 }
142
143 /**
144 * Returns the result of interpreting the object as an instance of '<em>Pseudostate</em>'.
145 * <!-- begin-user-doc -->
146 * This implementation returns null;
147 * returning a non-null result will terminate the switch.
148 * <!-- end-user-doc -->
149 * @param object the target of the switch.
150 * @return the result of interpreting the object as an instance of '<em>Pseudostate</em>'.
151 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
152 * @generated
153 */
154 public T casePseudostate(Pseudostate object) {
155 return null;
156 }
157
158 /**
159 * Returns the result of interpreting the object as an instance of '<em>Vertex</em>'.
160 * <!-- begin-user-doc -->
161 * This implementation returns null;
162 * returning a non-null result will terminate the switch.
163 * <!-- end-user-doc -->
164 * @param object the target of the switch.
165 * @return the result of interpreting the object as an instance of '<em>Vertex</em>'.
166 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
167 * @generated
168 */
169 public T caseVertex(Vertex object) {
170 return null;
171 }
172
173 /**
174 * Returns the result of interpreting the object as an instance of '<em>Region</em>'.
175 * <!-- begin-user-doc -->
176 * This implementation returns null;
177 * returning a non-null result will terminate the switch.
178 * <!-- end-user-doc -->
179 * @param object the target of the switch.
180 * @return the result of interpreting the object as an instance of '<em>Region</em>'.
181 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
182 * @generated
183 */
184 public T caseRegion(Region object) {
185 return null;
186 }
187
188 /**
189 * Returns the result of interpreting the object as an instance of '<em>Transition</em>'.
190 * <!-- begin-user-doc -->
191 * This implementation returns null;
192 * returning a non-null result will terminate the switch.
193 * <!-- end-user-doc -->
194 * @param object the target of the switch.
195 * @return the result of interpreting the object as an instance of '<em>Transition</em>'.
196 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
197 * @generated
198 */
199 public T caseTransition(Transition object) {
200 return null;
201 }
202
203 /**
204 * Returns the result of interpreting the object as an instance of '<em>Statechart</em>'.
205 * <!-- begin-user-doc -->
206 * This implementation returns null;
207 * returning a non-null result will terminate the switch.
208 * <!-- end-user-doc -->
209 * @param object the target of the switch.
210 * @return the result of interpreting the object as an instance of '<em>Statechart</em>'.
211 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
212 * @generated
213 */
214 public T caseStatechart(Statechart object) {
215 return null;
216 }
217
218 /**
219 * Returns the result of interpreting the object as an instance of '<em>Entry</em>'.
220 * <!-- begin-user-doc -->
221 * This implementation returns null;
222 * returning a non-null result will terminate the switch.
223 * <!-- end-user-doc -->
224 * @param object the target of the switch.
225 * @return the result of interpreting the object as an instance of '<em>Entry</em>'.
226 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
227 * @generated
228 */
229 public T caseEntry(Entry object) {
230 return null;
231 }
232
233 /**
234 * Returns the result of interpreting the object as an instance of '<em>Synchronization</em>'.
235 * <!-- begin-user-doc -->
236 * This implementation returns null;
237 * returning a non-null result will terminate the switch.
238 * <!-- end-user-doc -->
239 * @param object the target of the switch.
240 * @return the result of interpreting the object as an instance of '<em>Synchronization</em>'.
241 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
242 * @generated
243 */
244 public T caseSynchronization(Synchronization object) {
245 return null;
246 }
247
248 /**
249 * Returns the result of interpreting the object as an instance of '<em>State</em>'.
250 * <!-- begin-user-doc -->
251 * This implementation returns null;
252 * returning a non-null result will terminate the switch.
253 * <!-- end-user-doc -->
254 * @param object the target of the switch.
255 * @return the result of interpreting the object as an instance of '<em>State</em>'.
256 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
257 * @generated
258 */
259 public T caseState(State object) {
260 return null;
261 }
262
263 /**
264 * Returns the result of interpreting the object as an instance of '<em>Regular State</em>'.
265 * <!-- begin-user-doc -->
266 * This implementation returns null;
267 * returning a non-null result will terminate the switch.
268 * <!-- end-user-doc -->
269 * @param object the target of the switch.
270 * @return the result of interpreting the object as an instance of '<em>Regular State</em>'.
271 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
272 * @generated
273 */
274 public T caseRegularState(RegularState object) {
275 return null;
276 }
277
278 /**
279 * Returns the result of interpreting the object as an instance of '<em>Composite Element</em>'.
280 * <!-- begin-user-doc -->
281 * This implementation returns null;
282 * returning a non-null result will terminate the switch.
283 * <!-- end-user-doc -->
284 * @param object the target of the switch.
285 * @return the result of interpreting the object as an instance of '<em>Composite Element</em>'.
286 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
287 * @generated
288 */
289 public T caseCompositeElement(CompositeElement object) {
290 return null;
291 }
292
293 /**
294 * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
295 * <!-- begin-user-doc -->
296 * This implementation returns null;
297 * returning a non-null result will terminate the switch, but this is the last case anyway.
298 * <!-- end-user-doc -->
299 * @param object the target of the switch.
300 * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
301 * @see #doSwitch(org.eclipse.emf.ecore.EObject)
302 * @generated
303 */
304 @Override
305 public T defaultCase(EObject object) {
306 return null;
307 }
308
309} //YakindummSwitch
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/model/yakindu_simplified.aird b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/model/yakindu_simplified.aird
new file mode 100644
index 00000000..544c3d4e
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/model/yakindu_simplified.aird
@@ -0,0 +1,1167 @@
1<?xml version="1.0" encoding="UTF-8"?>
2<viewpoint:DAnalysis xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:description="http://www.eclipse.org/sirius/description/1.1.0" xmlns:description_1="http://www.eclipse.org/sirius/diagram/description/1.1.0" xmlns:diagram="http://www.eclipse.org/sirius/diagram/1.1.0" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.2/notation" xmlns:style="http://www.eclipse.org/sirius/diagram/description/style/1.1.0" xmlns:viewpoint="http://www.eclipse.org/sirius/1.1.0" xsi:schemaLocation="http://www.eclipse.org/sirius/description/1.1.0 http://www.eclipse.org/sirius/1.1.0#//description http://www.eclipse.org/sirius/diagram/description/1.1.0 http://www.eclipse.org/sirius/diagram/1.1.0#//description http://www.eclipse.org/sirius/diagram/description/style/1.1.0 http://www.eclipse.org/sirius/diagram/1.1.0#//description/style" xmi:id="_4BLrgG6uEeaxlsDSOll0vg" selectedViews="_4C5iwG6uEeaxlsDSOll0vg _4DCFoG6uEeaxlsDSOll0vg _4DHlMG6uEeaxlsDSOll0vg _4DO58G6uEeaxlsDSOll0vg" version="10.1.0.201509162000">
3 <semanticResources>yakindu_simplified.ecore</semanticResources>
4 <ownedViews xmi:type="viewpoint:DRepresentationContainer" xmi:id="_4C5iwG6uEeaxlsDSOll0vg">
5 <ownedRepresentations xmi:type="diagram:DSemanticDiagram" xmi:id="_427AsG6uEeaxlsDSOll0vg" name="yakindumm class diagram">
6 <ownedAnnotationEntries xmi:type="description:AnnotationEntry" xmi:id="_427AsW6uEeaxlsDSOll0vg" source="DANNOTATION_CUSTOMIZATION_KEY">
7 <data xmi:type="diagram:ComputedStyleDescriptionRegistry" xmi:id="_427Asm6uEeaxlsDSOll0vg">
8 <computedStyleDescriptions xmi:type="style:EdgeStyleDescription" xmi:id="_5T20UG6uEeaxlsDSOll0vg" sourceArrow="FillDiamond" routingStyle="manhattan">
9 <strokeColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
10 <centerLabelStyleDescription xmi:type="style:CenterLabelStyleDescription" xmi:id="_5T20UW6uEeaxlsDSOll0vg" showIcon="false" labelExpression="service:render">
11 <labelColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
12 </centerLabelStyleDescription>
13 <endLabelStyleDescription xmi:type="style:EndLabelStyleDescription" xmi:id="_5T20Um6uEeaxlsDSOll0vg" labelSize="6" showIcon="false" labelExpression="service:eKeysLabel">
14 <labelColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='dark_blue']"/>
15 </endLabelStyleDescription>
16 </computedStyleDescriptions>
17 <computedStyleDescriptions xmi:type="style:EdgeStyleDescription" xmi:id="_5T8T4W6uEeaxlsDSOll0vg" sourceArrow="FillDiamond" routingStyle="manhattan">
18 <strokeColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
19 <beginLabelStyleDescription xmi:type="style:BeginLabelStyleDescription" xmi:id="_5T8T4m6uEeaxlsDSOll0vg" showIcon="false" labelExpression="service:renderEOpposite">
20 <labelColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
21 </beginLabelStyleDescription>
22 <endLabelStyleDescription xmi:type="style:EndLabelStyleDescription" xmi:id="_5T8T426uEeaxlsDSOll0vg" showIcon="false" labelExpression="service:render">
23 <labelColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
24 </endLabelStyleDescription>
25 </computedStyleDescriptions>
26 </data>
27 </ownedAnnotationEntries>
28 <ownedAnnotationEntries xmi:type="description:AnnotationEntry" xmi:id="_427Atm6uEeaxlsDSOll0vg" source="GMF_DIAGRAMS">
29 <data xmi:type="notation:Diagram" xmi:id="_427At26uEeaxlsDSOll0vg" type="Sirius" element="_427AsG6uEeaxlsDSOll0vg" measurementUnit="Pixel">
30 <children xmi:type="notation:Node" xmi:id="_5T-JEG6uEeaxlsDSOll0vg" type="2003" element="_5Tox4G6uEeaxlsDSOll0vg">
31 <children xmi:type="notation:Node" xmi:id="_5T-JE26uEeaxlsDSOll0vg" type="5007"/>
32 <children xmi:type="notation:Node" xmi:id="_5T-JFG6uEeaxlsDSOll0vg" type="7004">
33 <styles xmi:type="notation:SortingStyle" xmi:id="_5T-JFW6uEeaxlsDSOll0vg"/>
34 <styles xmi:type="notation:FilteringStyle" xmi:id="_5T-JFm6uEeaxlsDSOll0vg"/>
35 </children>
36 <styles xmi:type="notation:ShapeStyle" xmi:id="_5T-JEW6uEeaxlsDSOll0vg" fontName="Segoe UI" fontHeight="8" italic="true"/>
37 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5T-JEm6uEeaxlsDSOll0vg" x="380" y="570" height="28"/>
38 </children>
39 <children xmi:type="notation:Node" xmi:id="_5T-JF26uEeaxlsDSOll0vg" type="2003" element="_5TqAAG6uEeaxlsDSOll0vg">
40 <children xmi:type="notation:Node" xmi:id="_5T-wIG6uEeaxlsDSOll0vg" type="5007"/>
41 <children xmi:type="notation:Node" xmi:id="_5T-wIW6uEeaxlsDSOll0vg" type="7004">
42 <styles xmi:type="notation:SortingStyle" xmi:id="_5T-wIm6uEeaxlsDSOll0vg"/>
43 <styles xmi:type="notation:FilteringStyle" xmi:id="_5T-wI26uEeaxlsDSOll0vg"/>
44 </children>
45 <styles xmi:type="notation:ShapeStyle" xmi:id="_5T-JGG6uEeaxlsDSOll0vg" fontName="Segoe UI" fontHeight="8" bold="true" italic="true" fillColor="10265827"/>
46 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5T-JGW6uEeaxlsDSOll0vg" x="625" y="505" height="28"/>
47 </children>
48 <children xmi:type="notation:Node" xmi:id="_5T-wJG6uEeaxlsDSOll0vg" type="2003" element="_5TqnEW6uEeaxlsDSOll0vg">
49 <children xmi:type="notation:Node" xmi:id="_5T_XMG6uEeaxlsDSOll0vg" type="5007"/>
50 <children xmi:type="notation:Node" xmi:id="_5T_XMW6uEeaxlsDSOll0vg" type="7004">
51 <styles xmi:type="notation:SortingStyle" xmi:id="_5T_XMm6uEeaxlsDSOll0vg"/>
52 <styles xmi:type="notation:FilteringStyle" xmi:id="_5T_XM26uEeaxlsDSOll0vg"/>
53 </children>
54 <styles xmi:type="notation:ShapeStyle" xmi:id="_5T-wJW6uEeaxlsDSOll0vg" fontName="Segoe UI" fontHeight="8"/>
55 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5T-wJm6uEeaxlsDSOll0vg" x="818" y="505" height="28"/>
56 </children>
57 <children xmi:type="notation:Node" xmi:id="_5T_XNG6uEeaxlsDSOll0vg" type="2003" element="_5TrOIW6uEeaxlsDSOll0vg">
58 <children xmi:type="notation:Node" xmi:id="_5T_-QG6uEeaxlsDSOll0vg" type="5007"/>
59 <children xmi:type="notation:Node" xmi:id="_5T_-QW6uEeaxlsDSOll0vg" type="7004">
60 <styles xmi:type="notation:SortingStyle" xmi:id="_5T_-Qm6uEeaxlsDSOll0vg"/>
61 <styles xmi:type="notation:FilteringStyle" xmi:id="_5T_-Q26uEeaxlsDSOll0vg"/>
62 </children>
63 <styles xmi:type="notation:ShapeStyle" xmi:id="_5T_XNW6uEeaxlsDSOll0vg" fontName="Segoe UI" fontHeight="8" bold="true" fillColor="10265827"/>
64 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5T_XNm6uEeaxlsDSOll0vg" x="290" y="505" height="28"/>
65 </children>
66 <children xmi:type="notation:Node" xmi:id="_5UAlUG6uEeaxlsDSOll0vg" type="2003" element="_5TscQG6uEeaxlsDSOll0vg">
67 <children xmi:type="notation:Node" xmi:id="_5UBMYG6uEeaxlsDSOll0vg" type="5007"/>
68 <children xmi:type="notation:Node" xmi:id="_5UBzcG6uEeaxlsDSOll0vg" type="7004">
69 <styles xmi:type="notation:SortingStyle" xmi:id="_5UBzcW6uEeaxlsDSOll0vg"/>
70 <styles xmi:type="notation:FilteringStyle" xmi:id="_5UBzcm6uEeaxlsDSOll0vg"/>
71 </children>
72 <styles xmi:type="notation:ShapeStyle" xmi:id="_5UAlUW6uEeaxlsDSOll0vg" fontName="Segoe UI" fontHeight="8"/>
73 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5UAlUm6uEeaxlsDSOll0vg" x="818" y="635" height="28"/>
74 </children>
75 <children xmi:type="notation:Node" xmi:id="_5UBzc26uEeaxlsDSOll0vg" type="2003" element="_5TtqYG6uEeaxlsDSOll0vg">
76 <children xmi:type="notation:Node" xmi:id="_5UBzdm6uEeaxlsDSOll0vg" type="5007"/>
77 <children xmi:type="notation:Node" xmi:id="_5UCagG6uEeaxlsDSOll0vg" type="7004">
78 <styles xmi:type="notation:SortingStyle" xmi:id="_5UCagW6uEeaxlsDSOll0vg"/>
79 <styles xmi:type="notation:FilteringStyle" xmi:id="_5UCagm6uEeaxlsDSOll0vg"/>
80 </children>
81 <styles xmi:type="notation:ShapeStyle" xmi:id="_5UBzdG6uEeaxlsDSOll0vg" fontName="Segoe UI" fontHeight="8"/>
82 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5UBzdW6uEeaxlsDSOll0vg" x="295" y="635" height="28"/>
83 </children>
84 <children xmi:type="notation:Node" xmi:id="_5UCag26uEeaxlsDSOll0vg" type="2003" element="_5TuRcW6uEeaxlsDSOll0vg">
85 <children xmi:type="notation:Node" xmi:id="_5UCahm6uEeaxlsDSOll0vg" type="5007"/>
86 <children xmi:type="notation:Node" xmi:id="_5UCah26uEeaxlsDSOll0vg" type="7004">
87 <styles xmi:type="notation:SortingStyle" xmi:id="_5UCaiG6uEeaxlsDSOll0vg"/>
88 <styles xmi:type="notation:FilteringStyle" xmi:id="_5UCaiW6uEeaxlsDSOll0vg"/>
89 </children>
90 <styles xmi:type="notation:ShapeStyle" xmi:id="_5UCahG6uEeaxlsDSOll0vg" fontName="Segoe UI" fontHeight="8" bold="true" fillColor="10265827"/>
91 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5UCahW6uEeaxlsDSOll0vg" x="465" y="635" height="28"/>
92 </children>
93 <children xmi:type="notation:Node" xmi:id="_5UCaim6uEeaxlsDSOll0vg" type="2003" element="_5TvfkG6uEeaxlsDSOll0vg">
94 <children xmi:type="notation:Node" xmi:id="_5UDBkG6uEeaxlsDSOll0vg" type="5007"/>
95 <children xmi:type="notation:Node" xmi:id="_5UDBkW6uEeaxlsDSOll0vg" type="7004">
96 <styles xmi:type="notation:SortingStyle" xmi:id="_5UDBkm6uEeaxlsDSOll0vg"/>
97 <styles xmi:type="notation:FilteringStyle" xmi:id="_5UDBk26uEeaxlsDSOll0vg"/>
98 </children>
99 <styles xmi:type="notation:ShapeStyle" xmi:id="_5UCai26uEeaxlsDSOll0vg" fontName="Segoe UI" fontHeight="8"/>
100 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5UCajG6uEeaxlsDSOll0vg" x="635" y="635" height="28"/>
101 </children>
102 <children xmi:type="notation:Node" xmi:id="_5UDBlG6uEeaxlsDSOll0vg" type="2003" element="_5TwGoG6uEeaxlsDSOll0vg">
103 <children xmi:type="notation:Node" xmi:id="_5UDBl26uEeaxlsDSOll0vg" type="5007"/>
104 <children xmi:type="notation:Node" xmi:id="_5UDooG6uEeaxlsDSOll0vg" type="7004">
105 <styles xmi:type="notation:SortingStyle" xmi:id="_5UDooW6uEeaxlsDSOll0vg"/>
106 <styles xmi:type="notation:FilteringStyle" xmi:id="_5UDoom6uEeaxlsDSOll0vg"/>
107 </children>
108 <styles xmi:type="notation:ShapeStyle" xmi:id="_5UDBlW6uEeaxlsDSOll0vg" fontName="Segoe UI" fontHeight="8" italic="true"/>
109 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5UDBlm6uEeaxlsDSOll0vg" x="635" y="570" height="28"/>
110 </children>
111 <children xmi:type="notation:Node" xmi:id="_5UDoo26uEeaxlsDSOll0vg" type="2003" element="_5TwGom6uEeaxlsDSOll0vg">
112 <children xmi:type="notation:Node" xmi:id="_5UDopm6uEeaxlsDSOll0vg" type="5007"/>
113 <children xmi:type="notation:Node" xmi:id="_5UDop26uEeaxlsDSOll0vg" type="7004">
114 <styles xmi:type="notation:SortingStyle" xmi:id="_5UDoqG6uEeaxlsDSOll0vg"/>
115 <styles xmi:type="notation:FilteringStyle" xmi:id="_5UDoqW6uEeaxlsDSOll0vg"/>
116 </children>
117 <styles xmi:type="notation:ShapeStyle" xmi:id="_5UDopG6uEeaxlsDSOll0vg" fontName="Segoe UI" fontHeight="8" italic="true"/>
118 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5UDopW6uEeaxlsDSOll0vg" x="818" y="570" height="28"/>
119 </children>
120 <styles xmi:type="notation:DiagramStyle" xmi:id="_427AuG6uEeaxlsDSOll0vg"/>
121 <edges xmi:type="notation:Edge" xmi:id="_5UEPsG6uEeaxlsDSOll0vg" type="4001" element="_5T2NQG6uEeaxlsDSOll0vg" source="_5T-wJG6uEeaxlsDSOll0vg" target="_5T-JF26uEeaxlsDSOll0vg">
122 <children xmi:type="notation:Node" xmi:id="_5UE2wG6uEeaxlsDSOll0vg" type="6001">
123 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5UE2wW6uEeaxlsDSOll0vg" x="-2" y="13"/>
124 </children>
125 <children xmi:type="notation:Node" xmi:id="_5UE2wm6uEeaxlsDSOll0vg" type="6002">
126 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5UE2w26uEeaxlsDSOll0vg" x="10" y="-10"/>
127 </children>
128 <children xmi:type="notation:Node" xmi:id="_5UE2xG6uEeaxlsDSOll0vg" type="6003">
129 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5UE2xW6uEeaxlsDSOll0vg" x="1" y="-10"/>
130 </children>
131 <styles xmi:type="notation:ConnectorStyle" xmi:id="_5UEPsW6uEeaxlsDSOll0vg" routing="Rectilinear"/>
132 <styles xmi:type="notation:FontStyle" xmi:id="_5UEPsm6uEeaxlsDSOll0vg" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/>
133 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_5UEPs26uEeaxlsDSOll0vg" points="[-59, 19, 134, -128]$[-134, 19, 59, -128]"/>
134 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5UE2xm6uEeaxlsDSOll0vg" id="(0.5,0.0)"/>
135 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5UE2x26uEeaxlsDSOll0vg" id="(0.5,3.769230769230769)"/>
136 </edges>
137 <edges xmi:type="notation:Edge" xmi:id="_5UE2yG6uEeaxlsDSOll0vg" type="4001" element="_5T3bYG6uEeaxlsDSOll0vg" source="_5UDoo26uEeaxlsDSOll0vg" target="_5T-wJG6uEeaxlsDSOll0vg">
138 <children xmi:type="notation:Node" xmi:id="_5UFd0G6uEeaxlsDSOll0vg" type="6001">
139 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5UFd0W6uEeaxlsDSOll0vg" x="1" y="36"/>
140 </children>
141 <children xmi:type="notation:Node" xmi:id="_5UGE4G6uEeaxlsDSOll0vg" type="6002">
142 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5UGE4W6uEeaxlsDSOll0vg" x="7" y="10"/>
143 </children>
144 <children xmi:type="notation:Node" xmi:id="_5UGE4m6uEeaxlsDSOll0vg" type="6003">
145 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5UGE426uEeaxlsDSOll0vg" x="-2" y="10"/>
146 </children>
147 <styles xmi:type="notation:ConnectorStyle" xmi:id="_5UE2yW6uEeaxlsDSOll0vg" routing="Rectilinear"/>
148 <styles xmi:type="notation:FontStyle" xmi:id="_5UE2ym6uEeaxlsDSOll0vg" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/>
149 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_5UE2y26uEeaxlsDSOll0vg" points="[-37, 0, -37, -82]$[-37, -26, -37, -108]"/>
150 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5UGE5G6uEeaxlsDSOll0vg" id="(0.5,0.0)"/>
151 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5UGE5W6uEeaxlsDSOll0vg" id="(0.5,3.769230769230769)"/>
152 </edges>
153 <edges xmi:type="notation:Edge" xmi:id="_5UGr-G6uEeaxlsDSOll0vg" type="4001" element="_5T4pgG6uEeaxlsDSOll0vg" source="_5T-JEG6uEeaxlsDSOll0vg" target="_5T-JF26uEeaxlsDSOll0vg">
154 <children xmi:type="notation:Node" xmi:id="_5UHTAG6uEeaxlsDSOll0vg" type="6001">
155 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5UHTAW6uEeaxlsDSOll0vg" x="5" y="-10"/>
156 </children>
157 <children xmi:type="notation:Node" xmi:id="_5UHTAm6uEeaxlsDSOll0vg" type="6002">
158 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5UHTA26uEeaxlsDSOll0vg" x="3" y="10"/>
159 </children>
160 <children xmi:type="notation:Node" xmi:id="_5UHTBG6uEeaxlsDSOll0vg" type="6003">
161 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5UHTBW6uEeaxlsDSOll0vg" x="7" y="10"/>
162 </children>
163 <styles xmi:type="notation:ConnectorStyle" xmi:id="_5UGr-W6uEeaxlsDSOll0vg" routing="Tree"/>
164 <styles xmi:type="notation:FontStyle" xmi:id="_5UGr-m6uEeaxlsDSOll0vg" fontName="Segoe UI" fontHeight="8"/>
165 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_5UGr-26uEeaxlsDSOll0vg" points="[0, 0, -135, -92]$[0, -5, -135, -97]$[136, -5, 1, -97]$[136, -16, 1, -108]"/>
166 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5UHTBm6uEeaxlsDSOll0vg" id="(0.5,0.0)"/>
167 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5UHTB26uEeaxlsDSOll0vg" id="(0.5,3.769230769230769)"/>
168 </edges>
169 <edges xmi:type="notation:Edge" xmi:id="_5UHTCG6uEeaxlsDSOll0vg" type="4001" element="_5T5Qk26uEeaxlsDSOll0vg" source="_5UAlUG6uEeaxlsDSOll0vg" target="_5UDoo26uEeaxlsDSOll0vg">
170 <children xmi:type="notation:Node" xmi:id="_5UH6EG6uEeaxlsDSOll0vg" type="6001">
171 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5UH6EW6uEeaxlsDSOll0vg" x="1" y="3"/>
172 </children>
173 <children xmi:type="notation:Node" xmi:id="_5UH6Em6uEeaxlsDSOll0vg" type="6002">
174 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5UH6E26uEeaxlsDSOll0vg" x="-2" y="10"/>
175 </children>
176 <children xmi:type="notation:Node" xmi:id="_5UH6FG6uEeaxlsDSOll0vg" type="6003">
177 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5UH6FW6uEeaxlsDSOll0vg" x="-12" y="22"/>
178 </children>
179 <styles xmi:type="notation:ConnectorStyle" xmi:id="_5UHTCW6uEeaxlsDSOll0vg" routing="Tree"/>
180 <styles xmi:type="notation:FontStyle" xmi:id="_5UHTCm6uEeaxlsDSOll0vg" fontName="Segoe UI" fontHeight="8"/>
181 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_5UHTC26uEeaxlsDSOll0vg" points="[0, 0, 0, -82]$[0, -10, 0, -92]$[-12, -10, -12, -92]$[-12, -26, -12, -108]"/>
182 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5UH6Fm6uEeaxlsDSOll0vg" id="(0.5,0.0)"/>
183 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5UH6F26uEeaxlsDSOll0vg" id="(0.5,3.769230769230769)"/>
184 </edges>
185 <edges xmi:type="notation:Edge" xmi:id="_5UIhIG6uEeaxlsDSOll0vg" type="4001" element="_5T53oG6uEeaxlsDSOll0vg" source="_5UBzc26uEeaxlsDSOll0vg" target="_5T-JEG6uEeaxlsDSOll0vg">
186 <children xmi:type="notation:Node" xmi:id="_5UIhJG6uEeaxlsDSOll0vg" type="6001">
187 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5UIhJW6uEeaxlsDSOll0vg" y="-10"/>
188 </children>
189 <children xmi:type="notation:Node" xmi:id="_5UIhJm6uEeaxlsDSOll0vg" type="6002">
190 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5UIhJ26uEeaxlsDSOll0vg" y="10"/>
191 </children>
192 <children xmi:type="notation:Node" xmi:id="_5UIhKG6uEeaxlsDSOll0vg" type="6003">
193 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5UIhKW6uEeaxlsDSOll0vg" y="10"/>
194 </children>
195 <styles xmi:type="notation:ConnectorStyle" xmi:id="_5UIhIW6uEeaxlsDSOll0vg" routing="Tree"/>
196 <styles xmi:type="notation:FontStyle" xmi:id="_5UIhIm6uEeaxlsDSOll0vg" fontName="Segoe UI" fontHeight="8"/>
197 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_5UIhI26uEeaxlsDSOll0vg" points="[0, 0, -105, 60]$[105, -60, 0, 0]"/>
198 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5UJIMG6uEeaxlsDSOll0vg" id="(0.5,0.0)"/>
199 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5UJIMW6uEeaxlsDSOll0vg" id="(0.5,3.769230769230769)"/>
200 </edges>
201 <edges xmi:type="notation:Edge" xmi:id="_5UJIMm6uEeaxlsDSOll0vg" type="4001" element="_5T53pG6uEeaxlsDSOll0vg" source="_5UCag26uEeaxlsDSOll0vg" target="_5T-JEG6uEeaxlsDSOll0vg">
202 <children xmi:type="notation:Node" xmi:id="_5UJINm6uEeaxlsDSOll0vg" type="6001">
203 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5UJIN26uEeaxlsDSOll0vg" y="-10"/>
204 </children>
205 <children xmi:type="notation:Node" xmi:id="_5UJIOG6uEeaxlsDSOll0vg" type="6002">
206 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5UJIOW6uEeaxlsDSOll0vg" y="10"/>
207 </children>
208 <children xmi:type="notation:Node" xmi:id="_5UJIOm6uEeaxlsDSOll0vg" type="6003">
209 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5UJIO26uEeaxlsDSOll0vg" y="10"/>
210 </children>
211 <styles xmi:type="notation:ConnectorStyle" xmi:id="_5UJIM26uEeaxlsDSOll0vg" routing="Tree"/>
212 <styles xmi:type="notation:FontStyle" xmi:id="_5UJING6uEeaxlsDSOll0vg" fontName="Segoe UI" fontHeight="8"/>
213 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_5UJINW6uEeaxlsDSOll0vg" points="[0, 0, 75, 60]$[-75, -60, 0, 0]"/>
214 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5UJvQG6uEeaxlsDSOll0vg" id="(0.5,0.0)"/>
215 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5UJvQW6uEeaxlsDSOll0vg" id="(0.5,3.769230769230769)"/>
216 </edges>
217 <edges xmi:type="notation:Edge" xmi:id="_5UJvQm6uEeaxlsDSOll0vg" type="4001" element="_5T6esG6uEeaxlsDSOll0vg" source="_5UCaim6uEeaxlsDSOll0vg" target="_5UDBlG6uEeaxlsDSOll0vg">
218 <children xmi:type="notation:Node" xmi:id="_5UJvRm6uEeaxlsDSOll0vg" type="6001">
219 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5UJvR26uEeaxlsDSOll0vg" x="-5" y="5"/>
220 </children>
221 <children xmi:type="notation:Node" xmi:id="_5UJvSG6uEeaxlsDSOll0vg" type="6002">
222 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5UJvSW6uEeaxlsDSOll0vg" x="-3" y="10"/>
223 </children>
224 <children xmi:type="notation:Node" xmi:id="_5UJvSm6uEeaxlsDSOll0vg" type="6003">
225 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5UJvS26uEeaxlsDSOll0vg" x="3" y="10"/>
226 </children>
227 <styles xmi:type="notation:ConnectorStyle" xmi:id="_5UJvQ26uEeaxlsDSOll0vg" routing="Tree"/>
228 <styles xmi:type="notation:FontStyle" xmi:id="_5UJvRG6uEeaxlsDSOll0vg" fontName="Segoe UI" fontHeight="8"/>
229 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_5UJvRW6uEeaxlsDSOll0vg" points="[0, 0, 0, -82]$[0, -10, 0, -92]$[-22, -10, -22, -92]$[-22, -26, -22, -108]"/>
230 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5UKWUG6uEeaxlsDSOll0vg" id="(0.5,0.0)"/>
231 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5UKWUW6uEeaxlsDSOll0vg" id="(0.5,3.769230769230769)"/>
232 </edges>
233 <edges xmi:type="notation:Edge" xmi:id="_5UKWUm6uEeaxlsDSOll0vg" type="4001" element="_5T6etG6uEeaxlsDSOll0vg" source="_5UCaim6uEeaxlsDSOll0vg" target="_5UDoo26uEeaxlsDSOll0vg">
234 <children xmi:type="notation:Node" xmi:id="_5UKWVm6uEeaxlsDSOll0vg" type="6001">
235 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5UKWV26uEeaxlsDSOll0vg" x="-28" y="-10"/>
236 </children>
237 <children xmi:type="notation:Node" xmi:id="_5UKWWG6uEeaxlsDSOll0vg" type="6002">
238 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5UKWWW6uEeaxlsDSOll0vg" x="-4" y="8"/>
239 </children>
240 <children xmi:type="notation:Node" xmi:id="_5UKWWm6uEeaxlsDSOll0vg" type="6003">
241 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5UKWW26uEeaxlsDSOll0vg" x="-3" y="10"/>
242 </children>
243 <styles xmi:type="notation:ConnectorStyle" xmi:id="_5UKWU26uEeaxlsDSOll0vg" routing="Tree"/>
244 <styles xmi:type="notation:FontStyle" xmi:id="_5UKWVG6uEeaxlsDSOll0vg" fontName="Segoe UI" fontHeight="8"/>
245 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_5UKWVW6uEeaxlsDSOll0vg" points="[0, 0, -145, -82]$[0, -10, -145, -92]$[118, -10, -27, -92]$[118, -26, -27, -108]"/>
246 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5UKWXG6uEeaxlsDSOll0vg" id="(0.5,0.0)"/>
247 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5UKWXW6uEeaxlsDSOll0vg" id="(0.5,3.769230769230769)"/>
248 </edges>
249 <edges xmi:type="notation:Edge" xmi:id="_5UKWXm6uEeaxlsDSOll0vg" type="4001" element="_5T7Fw26uEeaxlsDSOll0vg" source="_5UDBlG6uEeaxlsDSOll0vg" target="_5T-JF26uEeaxlsDSOll0vg">
250 <children xmi:type="notation:Node" xmi:id="_5UK9YG6uEeaxlsDSOll0vg" type="6001">
251 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5UK9YW6uEeaxlsDSOll0vg" y="-10"/>
252 </children>
253 <children xmi:type="notation:Node" xmi:id="_5UK9Ym6uEeaxlsDSOll0vg" type="6002">
254 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5UK9Y26uEeaxlsDSOll0vg" y="10"/>
255 </children>
256 <children xmi:type="notation:Node" xmi:id="_5UK9ZG6uEeaxlsDSOll0vg" type="6003">
257 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5UK9ZW6uEeaxlsDSOll0vg" y="10"/>
258 </children>
259 <styles xmi:type="notation:ConnectorStyle" xmi:id="_5UKWX26uEeaxlsDSOll0vg" routing="Tree"/>
260 <styles xmi:type="notation:FontStyle" xmi:id="_5UKWYG6uEeaxlsDSOll0vg" fontName="Segoe UI" fontHeight="8"/>
261 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_5UKWYW6uEeaxlsDSOll0vg" points="[0, 0, 0, 60]$[0, -60, 0, 0]"/>
262 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5UK9Zm6uEeaxlsDSOll0vg" id="(0.5,0.0)"/>
263 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5UK9Z26uEeaxlsDSOll0vg" id="(0.5,3.769230769230769)"/>
264 </edges>
265 <edges xmi:type="notation:Edge" xmi:id="_5UK9aG6uEeaxlsDSOll0vg" type="4001" element="_5T7s0G6uEeaxlsDSOll0vg" source="_5T-JF26uEeaxlsDSOll0vg" target="_5T_XNG6uEeaxlsDSOll0vg">
266 <children xmi:type="notation:Node" xmi:id="_5UK9bG6uEeaxlsDSOll0vg" type="6001">
267 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5UK9bW6uEeaxlsDSOll0vg" x="-5" y="10"/>
268 </children>
269 <children xmi:type="notation:Node" xmi:id="_5UK9bm6uEeaxlsDSOll0vg" type="6002">
270 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5UK9b26uEeaxlsDSOll0vg" x="-2" y="-11"/>
271 </children>
272 <children xmi:type="notation:Node" xmi:id="_5UK9cG6uEeaxlsDSOll0vg" type="6003">
273 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5UK9cW6uEeaxlsDSOll0vg" x="-33" y="-11"/>
274 </children>
275 <styles xmi:type="notation:ConnectorStyle" xmi:id="_5UK9aW6uEeaxlsDSOll0vg" routing="Rectilinear" lineColor="10265827"/>
276 <styles xmi:type="notation:FontStyle" xmi:id="_5UK9am6uEeaxlsDSOll0vg" fontName="Segoe UI" fontHeight="8"/>
277 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_5UK9a26uEeaxlsDSOll0vg" points="[-59, 30, 276, -117]$[-276, 30, 59, -117]"/>
278 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5ULkcG6uEeaxlsDSOll0vg" id="(0.5,0.0)"/>
279 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5ULkcW6uEeaxlsDSOll0vg" id="(0.5,3.769230769230769)"/>
280 </edges>
281 <edges xmi:type="notation:Edge" xmi:id="_5ULkcm6uEeaxlsDSOll0vg" type="4001" element="_5T8T4G6uEeaxlsDSOll0vg" source="_5T-JF26uEeaxlsDSOll0vg" target="_5T_XNG6uEeaxlsDSOll0vg">
282 <children xmi:type="notation:Node" xmi:id="_5ULkdm6uEeaxlsDSOll0vg" type="6001">
283 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5ULkd26uEeaxlsDSOll0vg" x="-5" y="10"/>
284 </children>
285 <children xmi:type="notation:Node" xmi:id="_5ULkeG6uEeaxlsDSOll0vg" type="6002">
286 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5ULkeW6uEeaxlsDSOll0vg" x="-1" y="9"/>
287 </children>
288 <children xmi:type="notation:Node" xmi:id="_5ULkem6uEeaxlsDSOll0vg" type="6003">
289 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5ULke26uEeaxlsDSOll0vg" x="-34" y="9"/>
290 </children>
291 <styles xmi:type="notation:ConnectorStyle" xmi:id="_5ULkc26uEeaxlsDSOll0vg" routing="Rectilinear" lineColor="10265827"/>
292 <styles xmi:type="notation:FontStyle" xmi:id="_5ULkdG6uEeaxlsDSOll0vg" fontName="Segoe UI" fontHeight="8"/>
293 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_5ULkdW6uEeaxlsDSOll0vg" points="[-59, 10, 276, -137]$[-276, 10, 59, -137]"/>
294 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5ULkfG6uEeaxlsDSOll0vg" id="(0.5,0.0)"/>
295 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5ULkfW6uEeaxlsDSOll0vg" id="(0.5,3.769230769230769)"/>
296 </edges>
297 </data>
298 </ownedAnnotationEntries>
299 <ownedDiagramElements xmi:type="diagram:DNodeList" xmi:id="_5Tox4G6uEeaxlsDSOll0vg" name="Pseudostate" tooltipText="" outgoingEdges="_5T4pgG6uEeaxlsDSOll0vg" incomingEdges="_5T53oG6uEeaxlsDSOll0vg _5T53pG6uEeaxlsDSOll0vg" width="12" height="10">
300 <target xmi:type="ecore:EClass" href="yakindu_simplified.ecore#//Pseudostate"/>
301 <semanticElements xmi:type="ecore:EClass" href="yakindu_simplified.ecore#//Pseudostate"/>
302 <arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
303 <arrangeConstraints>KEEP_SIZE</arrangeConstraints>
304 <arrangeConstraints>KEEP_RATIO</arrangeConstraints>
305 <ownedStyle xmi:type="diagram:FlatContainerStyle" xmi:id="_5TpY8G6uEeaxlsDSOll0vg" iconPath="/org.eclipse.emf.ecoretools.design/icons/full/obj16/EClass_abstract.gif" borderSize="1" borderSizeComputationExpression="1" borderColor="125,125,125" backgroundStyle="Liquid" foregroundColor="228,228,228">
306 <labelFormat>italic</labelFormat>
307 <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@conditionnalStyles.1/@style"/>
308 </ownedStyle>
309 <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/>
310 </ownedDiagramElements>
311 <ownedDiagramElements xmi:type="diagram:DNodeList" xmi:id="_5TqAAG6uEeaxlsDSOll0vg" name="Vertex" tooltipText="" outgoingEdges="_5T7s0G6uEeaxlsDSOll0vg _5T8T4G6uEeaxlsDSOll0vg" incomingEdges="_5T2NQG6uEeaxlsDSOll0vg _5T4pgG6uEeaxlsDSOll0vg _5T7Fw26uEeaxlsDSOll0vg" width="12" height="10">
312 <target xmi:type="ecore:EClass" href="yakindu_simplified.ecore#//Vertex"/>
313 <semanticElements xmi:type="ecore:EClass" href="yakindu_simplified.ecore#//Vertex"/>
314 <arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
315 <arrangeConstraints>KEEP_SIZE</arrangeConstraints>
316 <arrangeConstraints>KEEP_RATIO</arrangeConstraints>
317 <ownedStyle xmi:type="diagram:FlatContainerStyle" xmi:id="_5TqnEG6uEeaxlsDSOll0vg" iconPath="/org.eclipse.emf.ecoretools.design/icons/full/obj16/EClass_abstract.gif" borderSize="1" borderSizeComputationExpression="1" borderColor="125,125,125" backgroundStyle="Liquid" backgroundColor="227,164,156" foregroundColor="227,164,156">
318 <customFeatures>labelFormat</customFeatures>
319 <customFeatures>backgroundColor</customFeatures>
320 <customFeatures>foregroundColor</customFeatures>
321 <labelFormat>italic</labelFormat>
322 <labelFormat>bold</labelFormat>
323 <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@conditionnalStyles.1/@style"/>
324 </ownedStyle>
325 <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/>
326 </ownedDiagramElements>
327 <ownedDiagramElements xmi:type="diagram:DNodeList" xmi:id="_5TqnEW6uEeaxlsDSOll0vg" name="Region" tooltipText="" outgoingEdges="_5T2NQG6uEeaxlsDSOll0vg" incomingEdges="_5T3bYG6uEeaxlsDSOll0vg" width="12" height="10">
328 <target xmi:type="ecore:EClass" href="yakindu_simplified.ecore#//Region"/>
329 <semanticElements xmi:type="ecore:EClass" href="yakindu_simplified.ecore#//Region"/>
330 <arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
331 <arrangeConstraints>KEEP_SIZE</arrangeConstraints>
332 <arrangeConstraints>KEEP_RATIO</arrangeConstraints>
333 <ownedStyle xmi:type="diagram:FlatContainerStyle" xmi:id="_5TrOIG6uEeaxlsDSOll0vg" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216">
334 <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/>
335 </ownedStyle>
336 <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/>
337 </ownedDiagramElements>
338 <ownedDiagramElements xmi:type="diagram:DNodeList" xmi:id="_5TrOIW6uEeaxlsDSOll0vg" name="Transition" tooltipText="" incomingEdges="_5T7s0G6uEeaxlsDSOll0vg _5T8T4G6uEeaxlsDSOll0vg" width="12" height="10">
339 <target xmi:type="ecore:EClass" href="yakindu_simplified.ecore#//Transition"/>
340 <semanticElements xmi:type="ecore:EClass" href="yakindu_simplified.ecore#//Transition"/>
341 <arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
342 <arrangeConstraints>KEEP_SIZE</arrangeConstraints>
343 <arrangeConstraints>KEEP_RATIO</arrangeConstraints>
344 <ownedStyle xmi:type="diagram:FlatContainerStyle" xmi:id="_5Tr1MG6uEeaxlsDSOll0vg" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" backgroundColor="227,164,156" foregroundColor="227,164,156">
345 <customFeatures>labelFormat</customFeatures>
346 <customFeatures>backgroundColor</customFeatures>
347 <customFeatures>foregroundColor</customFeatures>
348 <labelFormat>bold</labelFormat>
349 <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/>
350 </ownedStyle>
351 <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/>
352 </ownedDiagramElements>
353 <ownedDiagramElements xmi:type="diagram:DNodeList" xmi:id="_5TscQG6uEeaxlsDSOll0vg" name="Statechart" tooltipText="" outgoingEdges="_5T5Qk26uEeaxlsDSOll0vg" width="12" height="10">
354 <target xmi:type="ecore:EClass" href="yakindu_simplified.ecore#//Statechart"/>
355 <semanticElements xmi:type="ecore:EClass" href="yakindu_simplified.ecore#//Statechart"/>
356 <arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
357 <arrangeConstraints>KEEP_SIZE</arrangeConstraints>
358 <arrangeConstraints>KEEP_RATIO</arrangeConstraints>
359 <ownedStyle xmi:type="diagram:FlatContainerStyle" xmi:id="_5TscQW6uEeaxlsDSOll0vg" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216">
360 <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/>
361 </ownedStyle>
362 <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/>
363 </ownedDiagramElements>
364 <ownedDiagramElements xmi:type="diagram:DNodeList" xmi:id="_5TtqYG6uEeaxlsDSOll0vg" name="Entry" tooltipText="" outgoingEdges="_5T53oG6uEeaxlsDSOll0vg" width="12" height="10">
365 <target xmi:type="ecore:EClass" href="yakindu_simplified.ecore#//Entry"/>
366 <semanticElements xmi:type="ecore:EClass" href="yakindu_simplified.ecore#//Entry"/>
367 <arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
368 <arrangeConstraints>KEEP_SIZE</arrangeConstraints>
369 <arrangeConstraints>KEEP_RATIO</arrangeConstraints>
370 <ownedStyle xmi:type="diagram:FlatContainerStyle" xmi:id="_5TuRcG6uEeaxlsDSOll0vg" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216">
371 <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/>
372 </ownedStyle>
373 <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/>
374 </ownedDiagramElements>
375 <ownedDiagramElements xmi:type="diagram:DNodeList" xmi:id="_5TuRcW6uEeaxlsDSOll0vg" name="Synchronization" tooltipText="" outgoingEdges="_5T53pG6uEeaxlsDSOll0vg" width="12" height="10">
376 <target xmi:type="ecore:EClass" href="yakindu_simplified.ecore#//Synchronization"/>
377 <semanticElements xmi:type="ecore:EClass" href="yakindu_simplified.ecore#//Synchronization"/>
378 <arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
379 <arrangeConstraints>KEEP_SIZE</arrangeConstraints>
380 <arrangeConstraints>KEEP_RATIO</arrangeConstraints>
381 <ownedStyle xmi:type="diagram:FlatContainerStyle" xmi:id="_5Tu4gG6uEeaxlsDSOll0vg" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" backgroundColor="227,164,156" foregroundColor="227,164,156">
382 <customFeatures>labelFormat</customFeatures>
383 <customFeatures>backgroundColor</customFeatures>
384 <customFeatures>foregroundColor</customFeatures>
385 <labelFormat>bold</labelFormat>
386 <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/>
387 </ownedStyle>
388 <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/>
389 </ownedDiagramElements>
390 <ownedDiagramElements xmi:type="diagram:DNodeList" xmi:id="_5TvfkG6uEeaxlsDSOll0vg" name="State" tooltipText="" outgoingEdges="_5T6esG6uEeaxlsDSOll0vg _5T6etG6uEeaxlsDSOll0vg" width="12" height="10">
391 <target xmi:type="ecore:EClass" href="yakindu_simplified.ecore#//State"/>
392 <semanticElements xmi:type="ecore:EClass" href="yakindu_simplified.ecore#//State"/>
393 <arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
394 <arrangeConstraints>KEEP_SIZE</arrangeConstraints>
395 <arrangeConstraints>KEEP_RATIO</arrangeConstraints>
396 <ownedStyle xmi:type="diagram:FlatContainerStyle" xmi:id="_5TvfkW6uEeaxlsDSOll0vg" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216">
397 <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/>
398 </ownedStyle>
399 <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/>
400 </ownedDiagramElements>
401 <ownedDiagramElements xmi:type="diagram:DNodeList" xmi:id="_5TwGoG6uEeaxlsDSOll0vg" name="RegularState" tooltipText="" outgoingEdges="_5T7Fw26uEeaxlsDSOll0vg" incomingEdges="_5T6esG6uEeaxlsDSOll0vg" width="12" height="10">
402 <target xmi:type="ecore:EClass" href="yakindu_simplified.ecore#//RegularState"/>
403 <semanticElements xmi:type="ecore:EClass" href="yakindu_simplified.ecore#//RegularState"/>
404 <arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
405 <arrangeConstraints>KEEP_SIZE</arrangeConstraints>
406 <arrangeConstraints>KEEP_RATIO</arrangeConstraints>
407 <ownedStyle xmi:type="diagram:FlatContainerStyle" xmi:id="_5TwGoW6uEeaxlsDSOll0vg" iconPath="/org.eclipse.emf.ecoretools.design/icons/full/obj16/EClass_abstract.gif" borderSize="1" borderSizeComputationExpression="1" borderColor="125,125,125" backgroundStyle="Liquid" foregroundColor="228,228,228">
408 <labelFormat>italic</labelFormat>
409 <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@conditionnalStyles.1/@style"/>
410 </ownedStyle>
411 <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/>
412 </ownedDiagramElements>
413 <ownedDiagramElements xmi:type="diagram:DNodeList" xmi:id="_5TwGom6uEeaxlsDSOll0vg" name="CompositeElement" tooltipText="" outgoingEdges="_5T3bYG6uEeaxlsDSOll0vg" incomingEdges="_5T5Qk26uEeaxlsDSOll0vg _5T6etG6uEeaxlsDSOll0vg" width="12" height="10">
414 <target xmi:type="ecore:EClass" href="yakindu_simplified.ecore#//CompositeElement"/>
415 <semanticElements xmi:type="ecore:EClass" href="yakindu_simplified.ecore#//CompositeElement"/>
416 <arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
417 <arrangeConstraints>KEEP_SIZE</arrangeConstraints>
418 <arrangeConstraints>KEEP_RATIO</arrangeConstraints>
419 <ownedStyle xmi:type="diagram:FlatContainerStyle" xmi:id="_5TwtsG6uEeaxlsDSOll0vg" iconPath="/org.eclipse.emf.ecoretools.design/icons/full/obj16/EClass_abstract.gif" borderSize="1" borderSizeComputationExpression="1" borderColor="125,125,125" backgroundStyle="Liquid" foregroundColor="228,228,228">
420 <labelFormat>italic</labelFormat>
421 <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@conditionnalStyles.1/@style"/>
422 </ownedStyle>
423 <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/>
424 </ownedDiagramElements>
425 <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_5T2NQG6uEeaxlsDSOll0vg" name="[0..*] vertices" sourceNode="_5TqnEW6uEeaxlsDSOll0vg" targetNode="_5TqAAG6uEeaxlsDSOll0vg">
426 <target xmi:type="ecore:EReference" href="yakindu_simplified.ecore#//Region/vertices"/>
427 <semanticElements xmi:type="ecore:EReference" href="yakindu_simplified.ecore#//Region/vertices"/>
428 <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_5T20U26uEeaxlsDSOll0vg" description="_5T20UG6uEeaxlsDSOll0vg" sourceArrow="FillDiamond" routingStyle="manhattan" strokeColor="0,0,0">
429 <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_5T20VG6uEeaxlsDSOll0vg" showIcon="false">
430 <customFeatures>labelSize</customFeatures>
431 </centerLabelStyle>
432 <endLabelStyle xmi:type="diagram:EndLabelStyle" xmi:id="_5T20VW6uEeaxlsDSOll0vg" showIcon="false" labelColor="39,76,114">
433 <customFeatures>labelSize</customFeatures>
434 </endLabelStyle>
435 </ownedStyle>
436 <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/>
437 </ownedDiagramElements>
438 <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_5T3bYG6uEeaxlsDSOll0vg" name="[0..*] regions" sourceNode="_5TwGom6uEeaxlsDSOll0vg" targetNode="_5TqnEW6uEeaxlsDSOll0vg">
439 <target xmi:type="ecore:EReference" href="yakindu_simplified.ecore#//CompositeElement/regions"/>
440 <semanticElements xmi:type="ecore:EReference" href="yakindu_simplified.ecore#//CompositeElement/regions"/>
441 <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_5T4CcG6uEeaxlsDSOll0vg" description="_5T20UG6uEeaxlsDSOll0vg" sourceArrow="FillDiamond" routingStyle="manhattan" strokeColor="0,0,0">
442 <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_5T4CcW6uEeaxlsDSOll0vg" showIcon="false">
443 <customFeatures>labelSize</customFeatures>
444 </centerLabelStyle>
445 <endLabelStyle xmi:type="diagram:EndLabelStyle" xmi:id="_5T4Ccm6uEeaxlsDSOll0vg" showIcon="false" labelColor="39,76,114">
446 <customFeatures>labelSize</customFeatures>
447 </endLabelStyle>
448 </ownedStyle>
449 <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/>
450 </ownedDiagramElements>
451 <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_5T4pgG6uEeaxlsDSOll0vg" sourceNode="_5Tox4G6uEeaxlsDSOll0vg" targetNode="_5TqAAG6uEeaxlsDSOll0vg">
452 <target xmi:type="ecore:EClass" href="yakindu_simplified.ecore#//Pseudostate"/>
453 <semanticElements xmi:type="ecore:EGenericType" href="yakindu_simplified.ecore#//Pseudostate/@eGenericSuperTypes.0"/>
454 <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_5T5QkG6uEeaxlsDSOll0vg" targetArrow="InputClosedArrow" routingStyle="tree">
455 <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@style"/>
456 <beginLabelStyle xmi:type="diagram:BeginLabelStyle" xmi:id="_5T5QkW6uEeaxlsDSOll0vg" showIcon="false">
457 <labelFormat>italic</labelFormat>
458 </beginLabelStyle>
459 <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_5T5Qkm6uEeaxlsDSOll0vg" showIcon="false"/>
460 </ownedStyle>
461 <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/>
462 </ownedDiagramElements>
463 <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_5T5Qk26uEeaxlsDSOll0vg" sourceNode="_5TscQG6uEeaxlsDSOll0vg" targetNode="_5TwGom6uEeaxlsDSOll0vg">
464 <target xmi:type="ecore:EClass" href="yakindu_simplified.ecore#//Statechart"/>
465 <semanticElements xmi:type="ecore:EGenericType" href="yakindu_simplified.ecore#//Statechart/@eGenericSuperTypes.0"/>
466 <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_5T5QlG6uEeaxlsDSOll0vg" targetArrow="InputClosedArrow" routingStyle="tree">
467 <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@style"/>
468 <beginLabelStyle xmi:type="diagram:BeginLabelStyle" xmi:id="_5T5QlW6uEeaxlsDSOll0vg" showIcon="false">
469 <labelFormat>italic</labelFormat>
470 </beginLabelStyle>
471 <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_5T5Qlm6uEeaxlsDSOll0vg" showIcon="false"/>
472 </ownedStyle>
473 <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/>
474 </ownedDiagramElements>
475 <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_5T53oG6uEeaxlsDSOll0vg" sourceNode="_5TtqYG6uEeaxlsDSOll0vg" targetNode="_5Tox4G6uEeaxlsDSOll0vg">
476 <target xmi:type="ecore:EClass" href="yakindu_simplified.ecore#//Entry"/>
477 <semanticElements xmi:type="ecore:EGenericType" href="yakindu_simplified.ecore#//Entry/@eGenericSuperTypes.0"/>
478 <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_5T53oW6uEeaxlsDSOll0vg" targetArrow="InputClosedArrow" routingStyle="tree">
479 <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@style"/>
480 <beginLabelStyle xmi:type="diagram:BeginLabelStyle" xmi:id="_5T53om6uEeaxlsDSOll0vg" showIcon="false">
481 <labelFormat>italic</labelFormat>
482 </beginLabelStyle>
483 <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_5T53o26uEeaxlsDSOll0vg" showIcon="false"/>
484 </ownedStyle>
485 <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/>
486 </ownedDiagramElements>
487 <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_5T53pG6uEeaxlsDSOll0vg" sourceNode="_5TuRcW6uEeaxlsDSOll0vg" targetNode="_5Tox4G6uEeaxlsDSOll0vg">
488 <target xmi:type="ecore:EClass" href="yakindu_simplified.ecore#//Synchronization"/>
489 <semanticElements xmi:type="ecore:EGenericType" href="yakindu_simplified.ecore#//Synchronization/@eGenericSuperTypes.0"/>
490 <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_5T53pW6uEeaxlsDSOll0vg" targetArrow="InputClosedArrow" routingStyle="tree">
491 <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@style"/>
492 <beginLabelStyle xmi:type="diagram:BeginLabelStyle" xmi:id="_5T53pm6uEeaxlsDSOll0vg" showIcon="false">
493 <labelFormat>italic</labelFormat>
494 </beginLabelStyle>
495 <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_5T53p26uEeaxlsDSOll0vg" showIcon="false"/>
496 </ownedStyle>
497 <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/>
498 </ownedDiagramElements>
499 <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_5T6esG6uEeaxlsDSOll0vg" sourceNode="_5TvfkG6uEeaxlsDSOll0vg" targetNode="_5TwGoG6uEeaxlsDSOll0vg">
500 <target xmi:type="ecore:EClass" href="yakindu_simplified.ecore#//State"/>
501 <semanticElements xmi:type="ecore:EGenericType" href="yakindu_simplified.ecore#//State/@eGenericSuperTypes.0"/>
502 <semanticElements xmi:type="ecore:EGenericType" href="yakindu_simplified.ecore#//State/@eGenericSuperTypes.1"/>
503 <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_5T6esW6uEeaxlsDSOll0vg" targetArrow="InputClosedArrow" routingStyle="tree">
504 <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@style"/>
505 <beginLabelStyle xmi:type="diagram:BeginLabelStyle" xmi:id="_5T6esm6uEeaxlsDSOll0vg" showIcon="false">
506 <labelFormat>italic</labelFormat>
507 </beginLabelStyle>
508 <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_5T6es26uEeaxlsDSOll0vg" showIcon="false"/>
509 </ownedStyle>
510 <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/>
511 </ownedDiagramElements>
512 <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_5T6etG6uEeaxlsDSOll0vg" sourceNode="_5TvfkG6uEeaxlsDSOll0vg" targetNode="_5TwGom6uEeaxlsDSOll0vg">
513 <target xmi:type="ecore:EClass" href="yakindu_simplified.ecore#//State"/>
514 <semanticElements xmi:type="ecore:EGenericType" href="yakindu_simplified.ecore#//State/@eGenericSuperTypes.0"/>
515 <semanticElements xmi:type="ecore:EGenericType" href="yakindu_simplified.ecore#//State/@eGenericSuperTypes.1"/>
516 <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_5T7FwG6uEeaxlsDSOll0vg" targetArrow="InputClosedArrow" routingStyle="tree">
517 <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@style"/>
518 <beginLabelStyle xmi:type="diagram:BeginLabelStyle" xmi:id="_5T7FwW6uEeaxlsDSOll0vg" showIcon="false">
519 <labelFormat>italic</labelFormat>
520 </beginLabelStyle>
521 <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_5T7Fwm6uEeaxlsDSOll0vg" showIcon="false"/>
522 </ownedStyle>
523 <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/>
524 </ownedDiagramElements>
525 <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_5T7Fw26uEeaxlsDSOll0vg" sourceNode="_5TwGoG6uEeaxlsDSOll0vg" targetNode="_5TqAAG6uEeaxlsDSOll0vg">
526 <target xmi:type="ecore:EClass" href="yakindu_simplified.ecore#//RegularState"/>
527 <semanticElements xmi:type="ecore:EGenericType" href="yakindu_simplified.ecore#//RegularState/@eGenericSuperTypes.0"/>
528 <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_5T7FxG6uEeaxlsDSOll0vg" targetArrow="InputClosedArrow" routingStyle="tree">
529 <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@style"/>
530 <beginLabelStyle xmi:type="diagram:BeginLabelStyle" xmi:id="_5T7FxW6uEeaxlsDSOll0vg" showIcon="false">
531 <labelFormat>italic</labelFormat>
532 </beginLabelStyle>
533 <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_5T7Fxm6uEeaxlsDSOll0vg" showIcon="false"/>
534 </ownedStyle>
535 <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/>
536 </ownedDiagramElements>
537 <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_5T7s0G6uEeaxlsDSOll0vg" sourceNode="_5TqAAG6uEeaxlsDSOll0vg" targetNode="_5TrOIW6uEeaxlsDSOll0vg" beginLabel="[1..1] target" endLabel="[0..*] incomingTransitions">
538 <target xmi:type="ecore:EReference" href="yakindu_simplified.ecore#//Vertex/incomingTransitions"/>
539 <semanticElements xmi:type="ecore:EReference" href="yakindu_simplified.ecore#//Vertex/incomingTransitions"/>
540 <semanticElements xmi:type="ecore:EReference" href="yakindu_simplified.ecore#//Transition/target"/>
541 <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_5T7s0W6uEeaxlsDSOll0vg" sourceArrow="InputArrow" size="3" routingStyle="manhattan" strokeColor="227,164,156">
542 <customFeatures>strokeColor</customFeatures>
543 <customFeatures>size</customFeatures>
544 <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='Bi-directional%20EC_EReference%20']/@style"/>
545 <beginLabelStyle xmi:type="diagram:BeginLabelStyle" xmi:id="_5T7s0m6uEeaxlsDSOll0vg" showIcon="false">
546 <customFeatures>labelFormat</customFeatures>
547 </beginLabelStyle>
548 <endLabelStyle xmi:type="diagram:EndLabelStyle" xmi:id="_5T7s026uEeaxlsDSOll0vg" showIcon="false">
549 <customFeatures>labelFormat</customFeatures>
550 </endLabelStyle>
551 </ownedStyle>
552 <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='Bi-directional%20EC_EReference%20']"/>
553 </ownedDiagramElements>
554 <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_5T8T4G6uEeaxlsDSOll0vg" sourceNode="_5TqAAG6uEeaxlsDSOll0vg" targetNode="_5TrOIW6uEeaxlsDSOll0vg" beginLabel="[0..1] source" endLabel="[0..*] outgoingTransitions">
555 <target xmi:type="ecore:EReference" href="yakindu_simplified.ecore#//Vertex/outgoingTransitions"/>
556 <semanticElements xmi:type="ecore:EReference" href="yakindu_simplified.ecore#//Vertex/outgoingTransitions"/>
557 <semanticElements xmi:type="ecore:EReference" href="yakindu_simplified.ecore#//Transition/source"/>
558 <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_5T8T5G6uEeaxlsDSOll0vg" description="_5T8T4W6uEeaxlsDSOll0vg" sourceArrow="FillDiamond" size="3" routingStyle="manhattan" strokeColor="227,164,156">
559 <customFeatures>strokeColor</customFeatures>
560 <customFeatures>size</customFeatures>
561 <beginLabelStyle xmi:type="diagram:BeginLabelStyle" xmi:id="_5T8T5W6uEeaxlsDSOll0vg" showIcon="false">
562 <customFeatures>labelFormat</customFeatures>
563 </beginLabelStyle>
564 <endLabelStyle xmi:type="diagram:EndLabelStyle" xmi:id="_5T8T5m6uEeaxlsDSOll0vg" showIcon="false">
565 <customFeatures>labelFormat</customFeatures>
566 </endLabelStyle>
567 </ownedStyle>
568 <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='Bi-directional%20EC_EReference%20']"/>
569 </ownedDiagramElements>
570 <description xmi:type="description_1:DiagramDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']"/>
571 <filterVariableHistory xmi:type="diagram:FilterVariableHistory" xmi:id="_427AtW6uEeaxlsDSOll0vg"/>
572 <activatedLayers xmi:type="description_1:Layer" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer"/>
573 <activatedLayers xmi:type="description_1:AdditionalLayer" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@additionalLayers[name='Package']"/>
574 <activatedLayers xmi:type="description_1:AdditionalLayer" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@additionalLayers[name='Validation']"/>
575 <activatedLayers xmi:type="description_1:AdditionalLayer" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Archetype']/@ownedRepresentationExtensions[name='Entities%20With%20Archetypes']/@layers[name='Archetypes']"/>
576 <target xmi:type="ecore:EPackage" href="yakindu_simplified.ecore#/"/>
577 </ownedRepresentations>
578 <ownedRepresentations xmi:type="diagram:DSemanticDiagram" xmi:id="_XL-bgDJrEeePYJD6fP7hdw" name="onecol">
579 <ownedAnnotationEntries xmi:type="description:AnnotationEntry" xmi:id="_XL_CkDJrEeePYJD6fP7hdw" source="DANNOTATION_CUSTOMIZATION_KEY">
580 <data xmi:type="diagram:ComputedStyleDescriptionRegistry" xmi:id="_XL_CkTJrEeePYJD6fP7hdw">
581 <computedStyleDescriptions xmi:type="style:EdgeStyleDescription" xmi:id="_XL_CkjJrEeePYJD6fP7hdw" sourceArrow="FillDiamond" routingStyle="manhattan">
582 <strokeColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
583 <centerLabelStyleDescription xmi:type="style:CenterLabelStyleDescription" xmi:id="_XL_CkzJrEeePYJD6fP7hdw" showIcon="false" labelExpression="service:render">
584 <labelColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
585 </centerLabelStyleDescription>
586 <endLabelStyleDescription xmi:type="style:EndLabelStyleDescription" xmi:id="_XL_ClDJrEeePYJD6fP7hdw" labelSize="6" showIcon="false" labelExpression="service:eKeysLabel">
587 <labelColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='dark_blue']"/>
588 </endLabelStyleDescription>
589 </computedStyleDescriptions>
590 <computedStyleDescriptions xmi:type="style:EdgeStyleDescription" xmi:id="_XL_ClTJrEeePYJD6fP7hdw" sourceArrow="FillDiamond" routingStyle="manhattan">
591 <strokeColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
592 <beginLabelStyleDescription xmi:type="style:BeginLabelStyleDescription" xmi:id="_XL_CljJrEeePYJD6fP7hdw" showIcon="false" labelExpression="service:renderEOpposite">
593 <labelColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
594 </beginLabelStyleDescription>
595 <endLabelStyleDescription xmi:type="style:EndLabelStyleDescription" xmi:id="_XL_ClzJrEeePYJD6fP7hdw" showIcon="false" labelExpression="service:render">
596 <labelColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/>
597 </endLabelStyleDescription>
598 </computedStyleDescriptions>
599 </data>
600 </ownedAnnotationEntries>
601 <ownedAnnotationEntries xmi:type="description:AnnotationEntry" xmi:id="_XL_CmDJrEeePYJD6fP7hdw" source="GMF_DIAGRAMS">
602 <data xmi:type="notation:Diagram" xmi:id="_XL_CmTJrEeePYJD6fP7hdw" type="Sirius" element="_XL-bgDJrEeePYJD6fP7hdw" measurementUnit="Pixel">
603 <children xmi:type="notation:Node" xmi:id="_XL_CmjJrEeePYJD6fP7hdw" type="2003" element="_XL_p9jJrEeePYJD6fP7hdw">
604 <children xmi:type="notation:Node" xmi:id="_XL_CmzJrEeePYJD6fP7hdw" type="5007"/>
605 <children xmi:type="notation:Node" xmi:id="_XL_CnDJrEeePYJD6fP7hdw" type="7004">
606 <styles xmi:type="notation:SortingStyle" xmi:id="_XL_CnTJrEeePYJD6fP7hdw"/>
607 <styles xmi:type="notation:FilteringStyle" xmi:id="_XL_CnjJrEeePYJD6fP7hdw"/>
608 </children>
609 <styles xmi:type="notation:ShapeStyle" xmi:id="_XL_CnzJrEeePYJD6fP7hdw" fontName="Segoe UI" fontHeight="8" italic="true"/>
610 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XL_CoDJrEeePYJD6fP7hdw" x="460" y="570" width="102" height="28"/>
611 </children>
612 <children xmi:type="notation:Node" xmi:id="_XL_CoTJrEeePYJD6fP7hdw" type="2003" element="_XL_p-DJrEeePYJD6fP7hdw">
613 <children xmi:type="notation:Node" xmi:id="_XL_CojJrEeePYJD6fP7hdw" type="5007"/>
614 <children xmi:type="notation:Node" xmi:id="_XL_CozJrEeePYJD6fP7hdw" type="7004">
615 <styles xmi:type="notation:SortingStyle" xmi:id="_XL_CpDJrEeePYJD6fP7hdw"/>
616 <styles xmi:type="notation:FilteringStyle" xmi:id="_XL_CpTJrEeePYJD6fP7hdw"/>
617 </children>
618 <styles xmi:type="notation:ShapeStyle" xmi:id="_XL_CpjJrEeePYJD6fP7hdw" fontName="Segoe UI" fontHeight="8" italic="true"/>
619 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XL_CpzJrEeePYJD6fP7hdw" x="635" y="505" width="90" height="28"/>
620 </children>
621 <children xmi:type="notation:Node" xmi:id="_XL_CqDJrEeePYJD6fP7hdw" type="2003" element="_XL_p-jJrEeePYJD6fP7hdw">
622 <children xmi:type="notation:Node" xmi:id="_XL_CqTJrEeePYJD6fP7hdw" type="5007"/>
623 <children xmi:type="notation:Node" xmi:id="_XL_CqjJrEeePYJD6fP7hdw" type="7004">
624 <styles xmi:type="notation:SortingStyle" xmi:id="_XL_CqzJrEeePYJD6fP7hdw"/>
625 <styles xmi:type="notation:FilteringStyle" xmi:id="_XL_CrDJrEeePYJD6fP7hdw"/>
626 </children>
627 <styles xmi:type="notation:ShapeStyle" xmi:id="_XL_CrTJrEeePYJD6fP7hdw" fontName="Segoe UI" fontHeight="8"/>
628 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XL_CrjJrEeePYJD6fP7hdw" x="762" y="505" width="93" height="28"/>
629 </children>
630 <children xmi:type="notation:Node" xmi:id="_XL_CrzJrEeePYJD6fP7hdw" type="2003" element="_XL_p_DJrEeePYJD6fP7hdw">
631 <children xmi:type="notation:Node" xmi:id="_XL_CsDJrEeePYJD6fP7hdw" type="5007"/>
632 <children xmi:type="notation:Node" xmi:id="_XL_CsTJrEeePYJD6fP7hdw" type="7004">
633 <styles xmi:type="notation:SortingStyle" xmi:id="_XL_CsjJrEeePYJD6fP7hdw"/>
634 <styles xmi:type="notation:FilteringStyle" xmi:id="_XL_CszJrEeePYJD6fP7hdw"/>
635 </children>
636 <styles xmi:type="notation:ShapeStyle" xmi:id="_XL_CtDJrEeePYJD6fP7hdw" fontName="Segoe UI" fontHeight="8"/>
637 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XL_CtTJrEeePYJD6fP7hdw" x="460" y="505" width="90" height="28"/>
638 </children>
639 <children xmi:type="notation:Node" xmi:id="_XL_CtjJrEeePYJD6fP7hdw" type="2003" element="_XL_p_jJrEeePYJD6fP7hdw">
640 <children xmi:type="notation:Node" xmi:id="_XL_CtzJrEeePYJD6fP7hdw" type="5007"/>
641 <children xmi:type="notation:Node" xmi:id="_XL_CuDJrEeePYJD6fP7hdw" type="7004">
642 <styles xmi:type="notation:SortingStyle" xmi:id="_XL_CuTJrEeePYJD6fP7hdw"/>
643 <styles xmi:type="notation:FilteringStyle" xmi:id="_XL_CujJrEeePYJD6fP7hdw"/>
644 </children>
645 <styles xmi:type="notation:ShapeStyle" xmi:id="_XL_CuzJrEeePYJD6fP7hdw" fontName="Segoe UI" fontHeight="8"/>
646 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XL_CvDJrEeePYJD6fP7hdw" x="765" y="635" width="88" height="28"/>
647 </children>
648 <children xmi:type="notation:Node" xmi:id="_XL_CvTJrEeePYJD6fP7hdw" type="2003" element="_XL_qADJrEeePYJD6fP7hdw">
649 <children xmi:type="notation:Node" xmi:id="_XL_CvjJrEeePYJD6fP7hdw" type="5007"/>
650 <children xmi:type="notation:Node" xmi:id="_XL_CvzJrEeePYJD6fP7hdw" type="7004">
651 <styles xmi:type="notation:SortingStyle" xmi:id="_XL_CwDJrEeePYJD6fP7hdw"/>
652 <styles xmi:type="notation:FilteringStyle" xmi:id="_XL_CwTJrEeePYJD6fP7hdw"/>
653 </children>
654 <styles xmi:type="notation:ShapeStyle" xmi:id="_XL_CwjJrEeePYJD6fP7hdw" fontName="Segoe UI" fontHeight="8"/>
655 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XL_CwzJrEeePYJD6fP7hdw" x="460" y="635" width="77" height="28"/>
656 </children>
657 <children xmi:type="notation:Node" xmi:id="_XL_CxDJrEeePYJD6fP7hdw" type="2003" element="_XL_qAjJrEeePYJD6fP7hdw">
658 <children xmi:type="notation:Node" xmi:id="_XL_CxTJrEeePYJD6fP7hdw" type="5007"/>
659 <children xmi:type="notation:Node" xmi:id="_XL_CxjJrEeePYJD6fP7hdw" type="7004">
660 <styles xmi:type="notation:SortingStyle" xmi:id="_XL_CxzJrEeePYJD6fP7hdw"/>
661 <styles xmi:type="notation:FilteringStyle" xmi:id="_XL_CyDJrEeePYJD6fP7hdw"/>
662 </children>
663 <styles xmi:type="notation:ShapeStyle" xmi:id="_XL_CyTJrEeePYJD6fP7hdw" fontName="Segoe UI" fontHeight="8"/>
664 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XL_CyjJrEeePYJD6fP7hdw" x="545" y="635" height="28"/>
665 </children>
666 <children xmi:type="notation:Node" xmi:id="_XL_CyzJrEeePYJD6fP7hdw" type="2003" element="_XL_qBDJrEeePYJD6fP7hdw">
667 <children xmi:type="notation:Node" xmi:id="_XL_CzDJrEeePYJD6fP7hdw" type="5007"/>
668 <children xmi:type="notation:Node" xmi:id="_XL_CzTJrEeePYJD6fP7hdw" type="7004">
669 <styles xmi:type="notation:SortingStyle" xmi:id="_XL_CzjJrEeePYJD6fP7hdw"/>
670 <styles xmi:type="notation:FilteringStyle" xmi:id="_XL_CzzJrEeePYJD6fP7hdw"/>
671 </children>
672 <styles xmi:type="notation:ShapeStyle" xmi:id="_XL_C0DJrEeePYJD6fP7hdw" fontName="Segoe UI" fontHeight="8"/>
673 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XL_C0TJrEeePYJD6fP7hdw" x="675" y="635" width="80" height="28"/>
674 </children>
675 <children xmi:type="notation:Node" xmi:id="_XL_C0jJrEeePYJD6fP7hdw" type="2003" element="_XL_qBjJrEeePYJD6fP7hdw">
676 <children xmi:type="notation:Node" xmi:id="_XL_C0zJrEeePYJD6fP7hdw" type="5007"/>
677 <children xmi:type="notation:Node" xmi:id="_XL_C1DJrEeePYJD6fP7hdw" type="7004">
678 <styles xmi:type="notation:SortingStyle" xmi:id="_XL_C1TJrEeePYJD6fP7hdw"/>
679 <styles xmi:type="notation:FilteringStyle" xmi:id="_XL_C1jJrEeePYJD6fP7hdw"/>
680 </children>
681 <styles xmi:type="notation:ShapeStyle" xmi:id="_XL_C1zJrEeePYJD6fP7hdw" fontName="Segoe UI" fontHeight="8" italic="true"/>
682 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XL_C2DJrEeePYJD6fP7hdw" x="605" y="570" width="105" height="28"/>
683 </children>
684 <children xmi:type="notation:Node" xmi:id="_XL_C2TJrEeePYJD6fP7hdw" type="2003" element="_XL_qCDJrEeePYJD6fP7hdw">
685 <children xmi:type="notation:Node" xmi:id="_XL_C2jJrEeePYJD6fP7hdw" type="5007"/>
686 <children xmi:type="notation:Node" xmi:id="_XL_C2zJrEeePYJD6fP7hdw" type="7004">
687 <styles xmi:type="notation:SortingStyle" xmi:id="_XL_C3DJrEeePYJD6fP7hdw"/>
688 <styles xmi:type="notation:FilteringStyle" xmi:id="_XL_C3TJrEeePYJD6fP7hdw"/>
689 </children>
690 <styles xmi:type="notation:ShapeStyle" xmi:id="_XL_C3jJrEeePYJD6fP7hdw" fontName="Segoe UI" fontHeight="8" italic="true"/>
691 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XL_C3zJrEeePYJD6fP7hdw" x="733" y="570" height="28"/>
692 </children>
693 <styles xmi:type="notation:DiagramStyle" xmi:id="_XL_C4DJrEeePYJD6fP7hdw"/>
694 <edges xmi:type="notation:Edge" xmi:id="_XL_C4TJrEeePYJD6fP7hdw" type="4001" element="_XL_qCjJrEeePYJD6fP7hdw" source="_XL_CqDJrEeePYJD6fP7hdw" target="_XL_CoTJrEeePYJD6fP7hdw">
695 <children xmi:type="notation:Node" xmi:id="_XL_C4jJrEeePYJD6fP7hdw" type="6001">
696 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XL_C4zJrEeePYJD6fP7hdw" x="3" y="28"/>
697 </children>
698 <children xmi:type="notation:Node" xmi:id="_XL_C5DJrEeePYJD6fP7hdw" type="6002">
699 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XL_C5TJrEeePYJD6fP7hdw" x="-2" y="-10"/>
700 </children>
701 <children xmi:type="notation:Node" xmi:id="_XL_C5jJrEeePYJD6fP7hdw" type="6003">
702 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XL_C5zJrEeePYJD6fP7hdw" x="-24" y="-10"/>
703 </children>
704 <styles xmi:type="notation:ConnectorStyle" xmi:id="_XL_C6DJrEeePYJD6fP7hdw" routing="Rectilinear"/>
705 <styles xmi:type="notation:FontStyle" xmi:id="_XL_C6TJrEeePYJD6fP7hdw" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/>
706 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_XL_C6jJrEeePYJD6fP7hdw" points="[-59, 19, 98, -128]$[-98, 19, 59, -128]"/>
707 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_XL_C6zJrEeePYJD6fP7hdw" id="(0.6483516483516483,0.0)"/>
708 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_XL_C7DJrEeePYJD6fP7hdw" id="(0.32954545454545453,3.769230769230769)"/>
709 </edges>
710 <edges xmi:type="notation:Edge" xmi:id="_XL_C7TJrEeePYJD6fP7hdw" type="4001" element="_XL_qDjJrEeePYJD6fP7hdw" source="_XL_C2TJrEeePYJD6fP7hdw" target="_XL_CqDJrEeePYJD6fP7hdw">
711 <children xmi:type="notation:Node" xmi:id="_XL_C7jJrEeePYJD6fP7hdw" type="6001">
712 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XL_C7zJrEeePYJD6fP7hdw" x="1" y="40"/>
713 </children>
714 <children xmi:type="notation:Node" xmi:id="_XL_C8DJrEeePYJD6fP7hdw" type="6002">
715 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XL_C8TJrEeePYJD6fP7hdw" x="-10"/>
716 </children>
717 <children xmi:type="notation:Node" xmi:id="_XL_C8jJrEeePYJD6fP7hdw" type="6003">
718 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XL_C8zJrEeePYJD6fP7hdw" x="-7" y="-5"/>
719 </children>
720 <styles xmi:type="notation:ConnectorStyle" xmi:id="_XL_C9DJrEeePYJD6fP7hdw" routing="Rectilinear"/>
721 <styles xmi:type="notation:FontStyle" xmi:id="_XL_C9TJrEeePYJD6fP7hdw" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/>
722 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_XL_C9jJrEeePYJD6fP7hdw" points="[-14, 0, -43, -82]$[-14, -26, -43, -108]"/>
723 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_XL_C9zJrEeePYJD6fP7hdw" id="(0.5,0.0)"/>
724 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_XL_C-DJrEeePYJD6fP7hdw" id="(0.6483516483516483,3.769230769230769)"/>
725 </edges>
726 <edges xmi:type="notation:Edge" xmi:id="_XL_C-TJrEeePYJD6fP7hdw" type="4001" element="_XL_qEjJrEeePYJD6fP7hdw" source="_XL_CmjJrEeePYJD6fP7hdw" target="_XL_CoTJrEeePYJD6fP7hdw">
727 <children xmi:type="notation:Node" xmi:id="_XL_C-jJrEeePYJD6fP7hdw" type="6001">
728 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XL_C-zJrEeePYJD6fP7hdw" x="5" y="-10"/>
729 </children>
730 <children xmi:type="notation:Node" xmi:id="_XL_C_DJrEeePYJD6fP7hdw" type="6002">
731 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XL_C_TJrEeePYJD6fP7hdw" x="3" y="10"/>
732 </children>
733 <children xmi:type="notation:Node" xmi:id="_XL_C_jJrEeePYJD6fP7hdw" type="6003">
734 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XL_C_zJrEeePYJD6fP7hdw" x="7" y="10"/>
735 </children>
736 <styles xmi:type="notation:ConnectorStyle" xmi:id="_XL_DADJrEeePYJD6fP7hdw" routing="Tree"/>
737 <styles xmi:type="notation:FontStyle" xmi:id="_XL_DATJrEeePYJD6fP7hdw" fontName="Segoe UI" fontHeight="8"/>
738 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_XL_DAjJrEeePYJD6fP7hdw" points="[0, 0, -135, -92]$[0, -5, -135, -97]$[136, -5, 1, -97]$[136, -16, 1, -108]"/>
739 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_XL_DAzJrEeePYJD6fP7hdw" id="(0.41,0.0)"/>
740 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_XL_DBDJrEeePYJD6fP7hdw" id="(0.32954545454545453,3.769230769230769)"/>
741 </edges>
742 <edges xmi:type="notation:Edge" xmi:id="_XL_DBTJrEeePYJD6fP7hdw" type="4001" element="_XL_qFjJrEeePYJD6fP7hdw" source="_XL_CtjJrEeePYJD6fP7hdw" target="_XL_C2TJrEeePYJD6fP7hdw">
743 <children xmi:type="notation:Node" xmi:id="_XL_DBjJrEeePYJD6fP7hdw" type="6001">
744 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XL_DBzJrEeePYJD6fP7hdw" x="-3"/>
745 </children>
746 <children xmi:type="notation:Node" xmi:id="_XL_DCDJrEeePYJD6fP7hdw" type="6002">
747 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XL_DCTJrEeePYJD6fP7hdw" x="7" y="10"/>
748 </children>
749 <children xmi:type="notation:Node" xmi:id="_XL_DCjJrEeePYJD6fP7hdw" type="6003">
750 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XL_DCzJrEeePYJD6fP7hdw" x="-21"/>
751 </children>
752 <styles xmi:type="notation:ConnectorStyle" xmi:id="_XL_DDDJrEeePYJD6fP7hdw" routing="Tree"/>
753 <styles xmi:type="notation:FontStyle" xmi:id="_XL_DDTJrEeePYJD6fP7hdw" fontName="Segoe UI" fontHeight="8"/>
754 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_XL_DDjJrEeePYJD6fP7hdw" points="[0, 0, 32, -82]$[0, -10, 32, -92]$[-1, -10, 31, -92]$[-1, -26, 31, -108]"/>
755 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_XL_poDJrEeePYJD6fP7hdw" id="(0.686046511627907,0.0)"/>
756 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_XL_poTJrEeePYJD6fP7hdw" id="(0.5,3.769230769230769)"/>
757 </edges>
758 <edges xmi:type="notation:Edge" xmi:id="_XL_pojJrEeePYJD6fP7hdw" type="4001" element="_XL_qGjJrEeePYJD6fP7hdw" source="_XL_CvTJrEeePYJD6fP7hdw" target="_XL_CmjJrEeePYJD6fP7hdw">
759 <children xmi:type="notation:Node" xmi:id="_XL_pozJrEeePYJD6fP7hdw" type="6001">
760 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XL_ppDJrEeePYJD6fP7hdw" y="-10"/>
761 </children>
762 <children xmi:type="notation:Node" xmi:id="_XL_ppTJrEeePYJD6fP7hdw" type="6002">
763 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XL_ppjJrEeePYJD6fP7hdw" y="10"/>
764 </children>
765 <children xmi:type="notation:Node" xmi:id="_XL_ppzJrEeePYJD6fP7hdw" type="6003">
766 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XL_pqDJrEeePYJD6fP7hdw" y="10"/>
767 </children>
768 <styles xmi:type="notation:ConnectorStyle" xmi:id="_XL_pqTJrEeePYJD6fP7hdw" routing="Tree"/>
769 <styles xmi:type="notation:FontStyle" xmi:id="_XL_pqjJrEeePYJD6fP7hdw" fontName="Segoe UI" fontHeight="8"/>
770 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_XL_pqzJrEeePYJD6fP7hdw" points="[0, 0, -105, 60]$[105, -60, 0, 0]"/>
771 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_XL_prDJrEeePYJD6fP7hdw" id="(0.21333333333333335,0.0)"/>
772 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_XL_prTJrEeePYJD6fP7hdw" id="(0.41,3.769230769230769)"/>
773 </edges>
774 <edges xmi:type="notation:Edge" xmi:id="_XL_prjJrEeePYJD6fP7hdw" type="4001" element="_XL_qHjJrEeePYJD6fP7hdw" source="_XL_CxDJrEeePYJD6fP7hdw" target="_XL_CmjJrEeePYJD6fP7hdw">
775 <children xmi:type="notation:Node" xmi:id="_XL_przJrEeePYJD6fP7hdw" type="6001">
776 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XL_psDJrEeePYJD6fP7hdw" y="-10"/>
777 </children>
778 <children xmi:type="notation:Node" xmi:id="_XL_psTJrEeePYJD6fP7hdw" type="6002">
779 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XL_psjJrEeePYJD6fP7hdw" y="10"/>
780 </children>
781 <children xmi:type="notation:Node" xmi:id="_XL_pszJrEeePYJD6fP7hdw" type="6003">
782 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XL_ptDJrEeePYJD6fP7hdw" y="10"/>
783 </children>
784 <styles xmi:type="notation:ConnectorStyle" xmi:id="_XL_ptTJrEeePYJD6fP7hdw" routing="Tree"/>
785 <styles xmi:type="notation:FontStyle" xmi:id="_XL_ptjJrEeePYJD6fP7hdw" fontName="Segoe UI" fontHeight="8"/>
786 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_XL_ptzJrEeePYJD6fP7hdw" points="[0, 0, 75, 60]$[-75, -60, 0, 0]"/>
787 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_XL_puDJrEeePYJD6fP7hdw" id="(0.5,0.0)"/>
788 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_XL_puTJrEeePYJD6fP7hdw" id="(0.41,3.769230769230769)"/>
789 </edges>
790 <edges xmi:type="notation:Edge" xmi:id="_XL_pujJrEeePYJD6fP7hdw" type="4001" element="_XL_qIjJrEeePYJD6fP7hdw" source="_XL_CyzJrEeePYJD6fP7hdw" target="_XL_C0jJrEeePYJD6fP7hdw">
791 <children xmi:type="notation:Node" xmi:id="_XL_puzJrEeePYJD6fP7hdw" type="6001">
792 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XL_pvDJrEeePYJD6fP7hdw" x="7" y="5"/>
793 </children>
794 <children xmi:type="notation:Node" xmi:id="_XL_pvTJrEeePYJD6fP7hdw" type="6002">
795 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XL_pvjJrEeePYJD6fP7hdw" y="10"/>
796 </children>
797 <children xmi:type="notation:Node" xmi:id="_XL_pvzJrEeePYJD6fP7hdw" type="6003">
798 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XL_pwDJrEeePYJD6fP7hdw" y="6"/>
799 </children>
800 <styles xmi:type="notation:ConnectorStyle" xmi:id="_XL_pwTJrEeePYJD6fP7hdw" routing="Tree"/>
801 <styles xmi:type="notation:FontStyle" xmi:id="_XL_pwjJrEeePYJD6fP7hdw" fontName="Segoe UI" fontHeight="8"/>
802 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_XL_pwzJrEeePYJD6fP7hdw" points="[0, 0, 45, -82]$[0, -10, 45, -92]$[-46, -10, -1, -92]$[-46, -26, -1, -108]"/>
803 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_XL_pxDJrEeePYJD6fP7hdw" id="(0.24358974358974358,0.0)"/>
804 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_XL_pxTJrEeePYJD6fP7hdw" id="(0.42718446601941745,3.769230769230769)"/>
805 </edges>
806 <edges xmi:type="notation:Edge" xmi:id="_XL_pxjJrEeePYJD6fP7hdw" type="4001" element="_XL_qJjJrEeePYJD6fP7hdw" source="_XL_CyzJrEeePYJD6fP7hdw" target="_XL_C2TJrEeePYJD6fP7hdw">
807 <children xmi:type="notation:Node" xmi:id="_XL_pxzJrEeePYJD6fP7hdw" type="6001">
808 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XL_pyDJrEeePYJD6fP7hdw" x="-37" y="-10"/>
809 </children>
810 <children xmi:type="notation:Node" xmi:id="_XL_pyTJrEeePYJD6fP7hdw" type="6002">
811 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XL_pyjJrEeePYJD6fP7hdw" x="-7" y="8"/>
812 </children>
813 <children xmi:type="notation:Node" xmi:id="_XL_pyzJrEeePYJD6fP7hdw" type="6003">
814 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XL_pzDJrEeePYJD6fP7hdw" y="-7"/>
815 </children>
816 <styles xmi:type="notation:ConnectorStyle" xmi:id="_XL_pzTJrEeePYJD6fP7hdw" routing="Tree"/>
817 <styles xmi:type="notation:FontStyle" xmi:id="_XL_pzjJrEeePYJD6fP7hdw" fontName="Segoe UI" fontHeight="8"/>
818 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_XL_pzzJrEeePYJD6fP7hdw" points="[0, 0, -81, 29]$[0, -10, -81, 19]$[71, -10, -10, 19]$[71, -26, -10, 3]"/>
819 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_XL_p0DJrEeePYJD6fP7hdw" id="(0.24358974358974358,0.0)"/>
820 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_XL_p0TJrEeePYJD6fP7hdw" id="(0.35833333333333334,0.926829268292683)"/>
821 </edges>
822 <edges xmi:type="notation:Edge" xmi:id="_XL_p0jJrEeePYJD6fP7hdw" type="4001" element="_XL_qKjJrEeePYJD6fP7hdw" source="_XL_C0jJrEeePYJD6fP7hdw" target="_XL_CoTJrEeePYJD6fP7hdw">
823 <children xmi:type="notation:Node" xmi:id="_XL_p0zJrEeePYJD6fP7hdw" type="6001">
824 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XL_p1DJrEeePYJD6fP7hdw" x="7" y="-13"/>
825 </children>
826 <children xmi:type="notation:Node" xmi:id="_XL_p1TJrEeePYJD6fP7hdw" type="6002">
827 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XL_p1jJrEeePYJD6fP7hdw" x="6" y="2"/>
828 </children>
829 <children xmi:type="notation:Node" xmi:id="_XL_p1zJrEeePYJD6fP7hdw" type="6003">
830 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XL_p2DJrEeePYJD6fP7hdw" x="3" y="10"/>
831 </children>
832 <styles xmi:type="notation:ConnectorStyle" xmi:id="_XL_p2TJrEeePYJD6fP7hdw" routing="Tree"/>
833 <styles xmi:type="notation:FontStyle" xmi:id="_XL_p2jJrEeePYJD6fP7hdw" fontName="Segoe UI" fontHeight="8"/>
834 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_XL_p2zJrEeePYJD6fP7hdw" points="[0, 0, -15, -82]$[0, -5, -15, -87]$[36, -5, 21, -87]$[36, -26, 21, -108]"/>
835 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_XL_p3DJrEeePYJD6fP7hdw" id="(0.42718446601941745,0.0)"/>
836 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_XL_p3TJrEeePYJD6fP7hdw" id="(0.32954545454545453,3.769230769230769)"/>
837 </edges>
838 <edges xmi:type="notation:Edge" xmi:id="_XL_p3jJrEeePYJD6fP7hdw" type="4001" element="_XL_qLjJrEeePYJD6fP7hdw" source="_XL_CoTJrEeePYJD6fP7hdw" target="_XL_CrzJrEeePYJD6fP7hdw">
839 <children xmi:type="notation:Node" xmi:id="_XL_p3zJrEeePYJD6fP7hdw" type="6001">
840 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XL_p4DJrEeePYJD6fP7hdw" x="19" y="10"/>
841 </children>
842 <children xmi:type="notation:Node" xmi:id="_XL_p4TJrEeePYJD6fP7hdw" type="6002">
843 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XL_p4jJrEeePYJD6fP7hdw" x="-22" y="-14"/>
844 </children>
845 <children xmi:type="notation:Node" xmi:id="_XL_p4zJrEeePYJD6fP7hdw" type="6003">
846 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XL_p5DJrEeePYJD6fP7hdw" x="20" y="-14"/>
847 </children>
848 <styles xmi:type="notation:ConnectorStyle" xmi:id="_XL_p5TJrEeePYJD6fP7hdw" routing="Rectilinear" lineColor="0"/>
849 <styles xmi:type="notation:FontStyle" xmi:id="_XL_p5jJrEeePYJD6fP7hdw" fontName="Segoe UI" fontHeight="8"/>
850 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_XL_p5zJrEeePYJD6fP7hdw" points="[-29, 30, 146, -117]$[-116, 30, 59, -117]"/>
851 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_XL_p6DJrEeePYJD6fP7hdw" id="(0.32954545454545453,0.0)"/>
852 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_XL_p6TJrEeePYJD6fP7hdw" id="(0.32954545454545453,3.769230769230769)"/>
853 </edges>
854 <edges xmi:type="notation:Edge" xmi:id="_XL_p6jJrEeePYJD6fP7hdw" type="4001" element="_XL_qMjJrEeePYJD6fP7hdw" source="_XL_CoTJrEeePYJD6fP7hdw" target="_XL_CrzJrEeePYJD6fP7hdw">
855 <children xmi:type="notation:Node" xmi:id="_XL_p6zJrEeePYJD6fP7hdw" type="6001">
856 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XL_p7DJrEeePYJD6fP7hdw" x="19" y="10"/>
857 </children>
858 <children xmi:type="notation:Node" xmi:id="_XL_p7TJrEeePYJD6fP7hdw" type="6002">
859 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XL_p7jJrEeePYJD6fP7hdw" x="-23" y="19"/>
860 </children>
861 <children xmi:type="notation:Node" xmi:id="_XL_p7zJrEeePYJD6fP7hdw" type="6003">
862 <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XL_p8DJrEeePYJD6fP7hdw" x="20" y="19"/>
863 </children>
864 <styles xmi:type="notation:ConnectorStyle" xmi:id="_XL_p8TJrEeePYJD6fP7hdw" routing="Rectilinear" lineColor="0"/>
865 <styles xmi:type="notation:FontStyle" xmi:id="_XL_p8jJrEeePYJD6fP7hdw" fontName="Segoe UI" fontHeight="8"/>
866 <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_XL_p8zJrEeePYJD6fP7hdw" points="[-29, 10, 146, -137]$[-116, 10, 59, -137]"/>
867 <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_XL_p9DJrEeePYJD6fP7hdw" id="(0.32954545454545453,0.0)"/>
868 <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_XL_p9TJrEeePYJD6fP7hdw" id="(0.32954545454545453,3.769230769230769)"/>
869 </edges>
870 </data>
871 </ownedAnnotationEntries>
872 <ownedDiagramElements xmi:type="diagram:DNodeList" xmi:id="_XL_p9jJrEeePYJD6fP7hdw" name="Pseudostate" tooltipText="" outgoingEdges="_XL_qEjJrEeePYJD6fP7hdw" incomingEdges="_XL_qGjJrEeePYJD6fP7hdw _XL_qHjJrEeePYJD6fP7hdw" width="12" height="10">
873 <target xmi:type="ecore:EClass" href="yakindu_simplified.ecore#//Pseudostate"/>
874 <semanticElements xmi:type="ecore:EClass" href="yakindu_simplified.ecore#//Pseudostate"/>
875 <arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
876 <arrangeConstraints>KEEP_SIZE</arrangeConstraints>
877 <arrangeConstraints>KEEP_RATIO</arrangeConstraints>
878 <ownedStyle xmi:type="diagram:FlatContainerStyle" xmi:id="_XL_p9zJrEeePYJD6fP7hdw" iconPath="/org.eclipse.emf.ecoretools.design/icons/full/obj16/EClass_abstract.gif" borderSize="1" borderSizeComputationExpression="1" borderColor="125,125,125" backgroundStyle="Liquid" foregroundColor="228,228,228">
879 <labelFormat>italic</labelFormat>
880 <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@conditionnalStyles.1/@style"/>
881 </ownedStyle>
882 <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/>
883 </ownedDiagramElements>
884 <ownedDiagramElements xmi:type="diagram:DNodeList" xmi:id="_XL_p-DJrEeePYJD6fP7hdw" name="Vertex" tooltipText="" outgoingEdges="_XL_qLjJrEeePYJD6fP7hdw _XL_qMjJrEeePYJD6fP7hdw" incomingEdges="_XL_qCjJrEeePYJD6fP7hdw _XL_qEjJrEeePYJD6fP7hdw _XL_qKjJrEeePYJD6fP7hdw" width="12" height="10">
885 <target xmi:type="ecore:EClass" href="yakindu_simplified.ecore#//Vertex"/>
886 <semanticElements xmi:type="ecore:EClass" href="yakindu_simplified.ecore#//Vertex"/>
887 <arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
888 <arrangeConstraints>KEEP_SIZE</arrangeConstraints>
889 <arrangeConstraints>KEEP_RATIO</arrangeConstraints>
890 <ownedStyle xmi:type="diagram:FlatContainerStyle" xmi:id="_XL_p-TJrEeePYJD6fP7hdw" iconPath="/org.eclipse.emf.ecoretools.design/icons/full/obj16/EClass_abstract.gif" borderSize="1" borderSizeComputationExpression="1" borderColor="125,125,125" backgroundStyle="Liquid" foregroundColor="255,255,255">
891 <customFeatures>labelFormat</customFeatures>
892 <customFeatures>backgroundColor</customFeatures>
893 <customFeatures>foregroundColor</customFeatures>
894 <labelFormat>italic</labelFormat>
895 <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@conditionnalStyles.1/@style"/>
896 </ownedStyle>
897 <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/>
898 </ownedDiagramElements>
899 <ownedDiagramElements xmi:type="diagram:DNodeList" xmi:id="_XL_p-jJrEeePYJD6fP7hdw" name="Region" tooltipText="" outgoingEdges="_XL_qCjJrEeePYJD6fP7hdw" incomingEdges="_XL_qDjJrEeePYJD6fP7hdw" width="12" height="10">
900 <target xmi:type="ecore:EClass" href="yakindu_simplified.ecore#//Region"/>
901 <semanticElements xmi:type="ecore:EClass" href="yakindu_simplified.ecore#//Region"/>
902 <arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
903 <arrangeConstraints>KEEP_SIZE</arrangeConstraints>
904 <arrangeConstraints>KEEP_RATIO</arrangeConstraints>
905 <ownedStyle xmi:type="diagram:FlatContainerStyle" xmi:id="_XL_p-zJrEeePYJD6fP7hdw" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,255,255">
906 <customFeatures>backgroundColor</customFeatures>
907 <customFeatures>foregroundColor</customFeatures>
908 <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/>
909 </ownedStyle>
910 <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/>
911 </ownedDiagramElements>
912 <ownedDiagramElements xmi:type="diagram:DNodeList" xmi:id="_XL_p_DJrEeePYJD6fP7hdw" name="Transition" tooltipText="" incomingEdges="_XL_qLjJrEeePYJD6fP7hdw _XL_qMjJrEeePYJD6fP7hdw" width="12" height="10">
913 <target xmi:type="ecore:EClass" href="yakindu_simplified.ecore#//Transition"/>
914 <semanticElements xmi:type="ecore:EClass" href="yakindu_simplified.ecore#//Transition"/>
915 <arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
916 <arrangeConstraints>KEEP_SIZE</arrangeConstraints>
917 <arrangeConstraints>KEEP_RATIO</arrangeConstraints>
918 <ownedStyle xmi:type="diagram:FlatContainerStyle" xmi:id="_XL_p_TJrEeePYJD6fP7hdw" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,255,255">
919 <customFeatures>labelFormat</customFeatures>
920 <customFeatures>backgroundColor</customFeatures>
921 <customFeatures>foregroundColor</customFeatures>
922 <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/>
923 </ownedStyle>
924 <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/>
925 </ownedDiagramElements>
926 <ownedDiagramElements xmi:type="diagram:DNodeList" xmi:id="_XL_p_jJrEeePYJD6fP7hdw" name="Statechart" tooltipText="" outgoingEdges="_XL_qFjJrEeePYJD6fP7hdw" width="12" height="10">
927 <target xmi:type="ecore:EClass" href="yakindu_simplified.ecore#//Statechart"/>
928 <semanticElements xmi:type="ecore:EClass" href="yakindu_simplified.ecore#//Statechart"/>
929 <arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
930 <arrangeConstraints>KEEP_SIZE</arrangeConstraints>
931 <arrangeConstraints>KEEP_RATIO</arrangeConstraints>
932 <ownedStyle xmi:type="diagram:FlatContainerStyle" xmi:id="_XL_p_zJrEeePYJD6fP7hdw" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,255,255">
933 <customFeatures>backgroundColor</customFeatures>
934 <customFeatures>foregroundColor</customFeatures>
935 <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/>
936 </ownedStyle>
937 <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/>
938 </ownedDiagramElements>
939 <ownedDiagramElements xmi:type="diagram:DNodeList" xmi:id="_XL_qADJrEeePYJD6fP7hdw" name="Entry" tooltipText="" outgoingEdges="_XL_qGjJrEeePYJD6fP7hdw" width="12" height="10">
940 <target xmi:type="ecore:EClass" href="yakindu_simplified.ecore#//Entry"/>
941 <semanticElements xmi:type="ecore:EClass" href="yakindu_simplified.ecore#//Entry"/>
942 <arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
943 <arrangeConstraints>KEEP_SIZE</arrangeConstraints>
944 <arrangeConstraints>KEEP_RATIO</arrangeConstraints>
945 <ownedStyle xmi:type="diagram:FlatContainerStyle" xmi:id="_XL_qATJrEeePYJD6fP7hdw" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,255,255">
946 <customFeatures>backgroundColor</customFeatures>
947 <customFeatures>foregroundColor</customFeatures>
948 <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/>
949 </ownedStyle>
950 <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/>
951 </ownedDiagramElements>
952 <ownedDiagramElements xmi:type="diagram:DNodeList" xmi:id="_XL_qAjJrEeePYJD6fP7hdw" name="Synchronization" tooltipText="" outgoingEdges="_XL_qHjJrEeePYJD6fP7hdw" width="12" height="10">
953 <target xmi:type="ecore:EClass" href="yakindu_simplified.ecore#//Synchronization"/>
954 <semanticElements xmi:type="ecore:EClass" href="yakindu_simplified.ecore#//Synchronization"/>
955 <arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
956 <arrangeConstraints>KEEP_SIZE</arrangeConstraints>
957 <arrangeConstraints>KEEP_RATIO</arrangeConstraints>
958 <ownedStyle xmi:type="diagram:FlatContainerStyle" xmi:id="_XL_qAzJrEeePYJD6fP7hdw" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,255,255">
959 <customFeatures>labelFormat</customFeatures>
960 <customFeatures>backgroundColor</customFeatures>
961 <customFeatures>foregroundColor</customFeatures>
962 <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/>
963 </ownedStyle>
964 <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/>
965 </ownedDiagramElements>
966 <ownedDiagramElements xmi:type="diagram:DNodeList" xmi:id="_XL_qBDJrEeePYJD6fP7hdw" name="State" tooltipText="" outgoingEdges="_XL_qIjJrEeePYJD6fP7hdw _XL_qJjJrEeePYJD6fP7hdw" width="12" height="10">
967 <target xmi:type="ecore:EClass" href="yakindu_simplified.ecore#//State"/>
968 <semanticElements xmi:type="ecore:EClass" href="yakindu_simplified.ecore#//State"/>
969 <arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
970 <arrangeConstraints>KEEP_SIZE</arrangeConstraints>
971 <arrangeConstraints>KEEP_RATIO</arrangeConstraints>
972 <ownedStyle xmi:type="diagram:FlatContainerStyle" xmi:id="_XL_qBTJrEeePYJD6fP7hdw" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,255,255">
973 <customFeatures>backgroundColor</customFeatures>
974 <customFeatures>foregroundColor</customFeatures>
975 <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/>
976 </ownedStyle>
977 <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/>
978 </ownedDiagramElements>
979 <ownedDiagramElements xmi:type="diagram:DNodeList" xmi:id="_XL_qBjJrEeePYJD6fP7hdw" name="RegularState" tooltipText="" outgoingEdges="_XL_qKjJrEeePYJD6fP7hdw" incomingEdges="_XL_qIjJrEeePYJD6fP7hdw" width="12" height="10">
980 <target xmi:type="ecore:EClass" href="yakindu_simplified.ecore#//RegularState"/>
981 <semanticElements xmi:type="ecore:EClass" href="yakindu_simplified.ecore#//RegularState"/>
982 <arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
983 <arrangeConstraints>KEEP_SIZE</arrangeConstraints>
984 <arrangeConstraints>KEEP_RATIO</arrangeConstraints>
985 <ownedStyle xmi:type="diagram:FlatContainerStyle" xmi:id="_XL_qBzJrEeePYJD6fP7hdw" iconPath="/org.eclipse.emf.ecoretools.design/icons/full/obj16/EClass_abstract.gif" borderSize="1" borderSizeComputationExpression="1" borderColor="125,125,125" backgroundStyle="Liquid" foregroundColor="228,228,228">
986 <labelFormat>italic</labelFormat>
987 <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@conditionnalStyles.1/@style"/>
988 </ownedStyle>
989 <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/>
990 </ownedDiagramElements>
991 <ownedDiagramElements xmi:type="diagram:DNodeList" xmi:id="_XL_qCDJrEeePYJD6fP7hdw" name="CompositeElement" tooltipText="" outgoingEdges="_XL_qDjJrEeePYJD6fP7hdw" incomingEdges="_XL_qFjJrEeePYJD6fP7hdw _XL_qJjJrEeePYJD6fP7hdw" width="12" height="10">
992 <target xmi:type="ecore:EClass" href="yakindu_simplified.ecore#//CompositeElement"/>
993 <semanticElements xmi:type="ecore:EClass" href="yakindu_simplified.ecore#//CompositeElement"/>
994 <arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
995 <arrangeConstraints>KEEP_SIZE</arrangeConstraints>
996 <arrangeConstraints>KEEP_RATIO</arrangeConstraints>
997 <ownedStyle xmi:type="diagram:FlatContainerStyle" xmi:id="_XL_qCTJrEeePYJD6fP7hdw" iconPath="/org.eclipse.emf.ecoretools.design/icons/full/obj16/EClass_abstract.gif" borderSize="1" borderSizeComputationExpression="1" borderColor="125,125,125" backgroundStyle="Liquid" foregroundColor="228,228,228">
998 <labelFormat>italic</labelFormat>
999 <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@conditionnalStyles.1/@style"/>
1000 </ownedStyle>
1001 <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/>
1002 </ownedDiagramElements>
1003 <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_XL_qCjJrEeePYJD6fP7hdw" name="[0..*] vertices" sourceNode="_XL_p-jJrEeePYJD6fP7hdw" targetNode="_XL_p-DJrEeePYJD6fP7hdw">
1004 <target xmi:type="ecore:EReference" href="yakindu_simplified.ecore#//Region/vertices"/>
1005 <semanticElements xmi:type="ecore:EReference" href="yakindu_simplified.ecore#//Region/vertices"/>
1006 <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_XL_qCzJrEeePYJD6fP7hdw" description="_XL_CkjJrEeePYJD6fP7hdw" sourceArrow="FillDiamond" routingStyle="manhattan" strokeColor="0,0,0">
1007 <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_XL_qDDJrEeePYJD6fP7hdw" showIcon="false">
1008 <customFeatures>labelSize</customFeatures>
1009 </centerLabelStyle>
1010 <endLabelStyle xmi:type="diagram:EndLabelStyle" xmi:id="_XL_qDTJrEeePYJD6fP7hdw" showIcon="false" labelColor="39,76,114">
1011 <customFeatures>labelSize</customFeatures>
1012 </endLabelStyle>
1013 </ownedStyle>
1014 <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/>
1015 </ownedDiagramElements>
1016 <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_XL_qDjJrEeePYJD6fP7hdw" name="[0..*] regions" sourceNode="_XL_qCDJrEeePYJD6fP7hdw" targetNode="_XL_p-jJrEeePYJD6fP7hdw">
1017 <target xmi:type="ecore:EReference" href="yakindu_simplified.ecore#//CompositeElement/regions"/>
1018 <semanticElements xmi:type="ecore:EReference" href="yakindu_simplified.ecore#//CompositeElement/regions"/>
1019 <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_XL_qDzJrEeePYJD6fP7hdw" description="_XL_CkjJrEeePYJD6fP7hdw" sourceArrow="FillDiamond" routingStyle="manhattan" strokeColor="0,0,0">
1020 <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_XL_qEDJrEeePYJD6fP7hdw" showIcon="false">
1021 <customFeatures>labelSize</customFeatures>
1022 </centerLabelStyle>
1023 <endLabelStyle xmi:type="diagram:EndLabelStyle" xmi:id="_XL_qETJrEeePYJD6fP7hdw" showIcon="false" labelColor="39,76,114">
1024 <customFeatures>labelSize</customFeatures>
1025 </endLabelStyle>
1026 </ownedStyle>
1027 <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/>
1028 </ownedDiagramElements>
1029 <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_XL_qEjJrEeePYJD6fP7hdw" sourceNode="_XL_p9jJrEeePYJD6fP7hdw" targetNode="_XL_p-DJrEeePYJD6fP7hdw">
1030 <target xmi:type="ecore:EClass" href="yakindu_simplified.ecore#//Pseudostate"/>
1031 <semanticElements xmi:type="ecore:EGenericType" href="yakindu_simplified.ecore#//Pseudostate/@eGenericSuperTypes.0"/>
1032 <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_XL_qEzJrEeePYJD6fP7hdw" targetArrow="InputClosedArrow" routingStyle="tree">
1033 <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@style"/>
1034 <beginLabelStyle xmi:type="diagram:BeginLabelStyle" xmi:id="_XL_qFDJrEeePYJD6fP7hdw" showIcon="false">
1035 <labelFormat>italic</labelFormat>
1036 </beginLabelStyle>
1037 <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_XL_qFTJrEeePYJD6fP7hdw" showIcon="false"/>
1038 </ownedStyle>
1039 <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/>
1040 </ownedDiagramElements>
1041 <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_XL_qFjJrEeePYJD6fP7hdw" sourceNode="_XL_p_jJrEeePYJD6fP7hdw" targetNode="_XL_qCDJrEeePYJD6fP7hdw">
1042 <target xmi:type="ecore:EClass" href="yakindu_simplified.ecore#//Statechart"/>
1043 <semanticElements xmi:type="ecore:EGenericType" href="yakindu_simplified.ecore#//Statechart/@eGenericSuperTypes.0"/>
1044 <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_XL_qFzJrEeePYJD6fP7hdw" targetArrow="InputClosedArrow" routingStyle="tree">
1045 <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@style"/>
1046 <beginLabelStyle xmi:type="diagram:BeginLabelStyle" xmi:id="_XL_qGDJrEeePYJD6fP7hdw" showIcon="false">
1047 <labelFormat>italic</labelFormat>
1048 </beginLabelStyle>
1049 <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_XL_qGTJrEeePYJD6fP7hdw" showIcon="false"/>
1050 </ownedStyle>
1051 <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/>
1052 </ownedDiagramElements>
1053 <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_XL_qGjJrEeePYJD6fP7hdw" sourceNode="_XL_qADJrEeePYJD6fP7hdw" targetNode="_XL_p9jJrEeePYJD6fP7hdw">
1054 <target xmi:type="ecore:EClass" href="yakindu_simplified.ecore#//Entry"/>
1055 <semanticElements xmi:type="ecore:EGenericType" href="yakindu_simplified.ecore#//Entry/@eGenericSuperTypes.0"/>
1056 <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_XL_qGzJrEeePYJD6fP7hdw" targetArrow="InputClosedArrow" routingStyle="tree">
1057 <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@style"/>
1058 <beginLabelStyle xmi:type="diagram:BeginLabelStyle" xmi:id="_XL_qHDJrEeePYJD6fP7hdw" showIcon="false">
1059 <labelFormat>italic</labelFormat>
1060 </beginLabelStyle>
1061 <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_XL_qHTJrEeePYJD6fP7hdw" showIcon="false"/>
1062 </ownedStyle>
1063 <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/>
1064 </ownedDiagramElements>
1065 <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_XL_qHjJrEeePYJD6fP7hdw" sourceNode="_XL_qAjJrEeePYJD6fP7hdw" targetNode="_XL_p9jJrEeePYJD6fP7hdw">
1066 <target xmi:type="ecore:EClass" href="yakindu_simplified.ecore#//Synchronization"/>
1067 <semanticElements xmi:type="ecore:EGenericType" href="yakindu_simplified.ecore#//Synchronization/@eGenericSuperTypes.0"/>
1068 <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_XL_qHzJrEeePYJD6fP7hdw" targetArrow="InputClosedArrow" routingStyle="tree">
1069 <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@style"/>
1070 <beginLabelStyle xmi:type="diagram:BeginLabelStyle" xmi:id="_XL_qIDJrEeePYJD6fP7hdw" showIcon="false">
1071 <labelFormat>italic</labelFormat>
1072 </beginLabelStyle>
1073 <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_XL_qITJrEeePYJD6fP7hdw" showIcon="false"/>
1074 </ownedStyle>
1075 <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/>
1076 </ownedDiagramElements>
1077 <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_XL_qIjJrEeePYJD6fP7hdw" sourceNode="_XL_qBDJrEeePYJD6fP7hdw" targetNode="_XL_qBjJrEeePYJD6fP7hdw">
1078 <target xmi:type="ecore:EClass" href="yakindu_simplified.ecore#//State"/>
1079 <semanticElements xmi:type="ecore:EGenericType" href="yakindu_simplified.ecore#//State/@eGenericSuperTypes.0"/>
1080 <semanticElements xmi:type="ecore:EGenericType" href="yakindu_simplified.ecore#//State/@eGenericSuperTypes.1"/>
1081 <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_XL_qIzJrEeePYJD6fP7hdw" targetArrow="InputClosedArrow" routingStyle="tree">
1082 <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@style"/>
1083 <beginLabelStyle xmi:type="diagram:BeginLabelStyle" xmi:id="_XL_qJDJrEeePYJD6fP7hdw" showIcon="false">
1084 <labelFormat>italic</labelFormat>
1085 </beginLabelStyle>
1086 <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_XL_qJTJrEeePYJD6fP7hdw" showIcon="false"/>
1087 </ownedStyle>
1088 <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/>
1089 </ownedDiagramElements>
1090 <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_XL_qJjJrEeePYJD6fP7hdw" sourceNode="_XL_qBDJrEeePYJD6fP7hdw" targetNode="_XL_qCDJrEeePYJD6fP7hdw">
1091 <target xmi:type="ecore:EClass" href="yakindu_simplified.ecore#//State"/>
1092 <semanticElements xmi:type="ecore:EGenericType" href="yakindu_simplified.ecore#//State/@eGenericSuperTypes.0"/>
1093 <semanticElements xmi:type="ecore:EGenericType" href="yakindu_simplified.ecore#//State/@eGenericSuperTypes.1"/>
1094 <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_XL_qJzJrEeePYJD6fP7hdw" targetArrow="InputClosedArrow" routingStyle="tree">
1095 <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@style"/>
1096 <beginLabelStyle xmi:type="diagram:BeginLabelStyle" xmi:id="_XL_qKDJrEeePYJD6fP7hdw" showIcon="false">
1097 <labelFormat>italic</labelFormat>
1098 </beginLabelStyle>
1099 <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_XL_qKTJrEeePYJD6fP7hdw" showIcon="false"/>
1100 </ownedStyle>
1101 <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/>
1102 </ownedDiagramElements>
1103 <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_XL_qKjJrEeePYJD6fP7hdw" sourceNode="_XL_qBjJrEeePYJD6fP7hdw" targetNode="_XL_p-DJrEeePYJD6fP7hdw">
1104 <target xmi:type="ecore:EClass" href="yakindu_simplified.ecore#//RegularState"/>
1105 <semanticElements xmi:type="ecore:EGenericType" href="yakindu_simplified.ecore#//RegularState/@eGenericSuperTypes.0"/>
1106 <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_XL_qKzJrEeePYJD6fP7hdw" targetArrow="InputClosedArrow" routingStyle="tree">
1107 <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@style"/>
1108 <beginLabelStyle xmi:type="diagram:BeginLabelStyle" xmi:id="_XL_qLDJrEeePYJD6fP7hdw" showIcon="false">
1109 <labelFormat>italic</labelFormat>
1110 </beginLabelStyle>
1111 <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_XL_qLTJrEeePYJD6fP7hdw" showIcon="false"/>
1112 </ownedStyle>
1113 <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/>
1114 </ownedDiagramElements>
1115 <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_XL_qLjJrEeePYJD6fP7hdw" sourceNode="_XL_p-DJrEeePYJD6fP7hdw" targetNode="_XL_p_DJrEeePYJD6fP7hdw" beginLabel="[1..1] target" endLabel="[0..*] incomingTransitions">
1116 <target xmi:type="ecore:EReference" href="yakindu_simplified.ecore#//Vertex/incomingTransitions"/>
1117 <semanticElements xmi:type="ecore:EReference" href="yakindu_simplified.ecore#//Vertex/incomingTransitions"/>
1118 <semanticElements xmi:type="ecore:EReference" href="yakindu_simplified.ecore#//Transition/target"/>
1119 <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_XL_qLzJrEeePYJD6fP7hdw" sourceArrow="InputArrow" routingStyle="manhattan" strokeColor="0,0,0">
1120 <customFeatures>strokeColor</customFeatures>
1121 <customFeatures>size</customFeatures>
1122 <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='Bi-directional%20EC_EReference%20']/@style"/>
1123 <beginLabelStyle xmi:type="diagram:BeginLabelStyle" xmi:id="_XL_qMDJrEeePYJD6fP7hdw" showIcon="false">
1124 <customFeatures>labelFormat</customFeatures>
1125 </beginLabelStyle>
1126 <endLabelStyle xmi:type="diagram:EndLabelStyle" xmi:id="_XL_qMTJrEeePYJD6fP7hdw" showIcon="false">
1127 <customFeatures>labelFormat</customFeatures>
1128 </endLabelStyle>
1129 </ownedStyle>
1130 <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='Bi-directional%20EC_EReference%20']"/>
1131 </ownedDiagramElements>
1132 <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_XL_qMjJrEeePYJD6fP7hdw" sourceNode="_XL_p-DJrEeePYJD6fP7hdw" targetNode="_XL_p_DJrEeePYJD6fP7hdw" beginLabel="[0..1] source" endLabel="[0..*] outgoingTransitions">
1133 <target xmi:type="ecore:EReference" href="yakindu_simplified.ecore#//Vertex/outgoingTransitions"/>
1134 <semanticElements xmi:type="ecore:EReference" href="yakindu_simplified.ecore#//Vertex/outgoingTransitions"/>
1135 <semanticElements xmi:type="ecore:EReference" href="yakindu_simplified.ecore#//Transition/source"/>
1136 <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_XL_qMzJrEeePYJD6fP7hdw" description="_XL_ClTJrEeePYJD6fP7hdw" sourceArrow="FillDiamond" routingStyle="manhattan" strokeColor="0,0,0">
1137 <customFeatures>strokeColor</customFeatures>
1138 <customFeatures>size</customFeatures>
1139 <beginLabelStyle xmi:type="diagram:BeginLabelStyle" xmi:id="_XL_qNDJrEeePYJD6fP7hdw" showIcon="false">
1140 <customFeatures>labelFormat</customFeatures>
1141 </beginLabelStyle>
1142 <endLabelStyle xmi:type="diagram:EndLabelStyle" xmi:id="_XL_qNTJrEeePYJD6fP7hdw" showIcon="false">
1143 <customFeatures>labelFormat</customFeatures>
1144 </endLabelStyle>
1145 </ownedStyle>
1146 <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='Bi-directional%20EC_EReference%20']"/>
1147 </ownedDiagramElements>
1148 <description xmi:type="description_1:DiagramDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']"/>
1149 <filterVariableHistory xmi:type="diagram:FilterVariableHistory" xmi:id="_XL_qNjJrEeePYJD6fP7hdw"/>
1150 <activatedLayers xmi:type="description_1:Layer" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer"/>
1151 <activatedLayers xmi:type="description_1:AdditionalLayer" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@additionalLayers[name='Package']"/>
1152 <activatedLayers xmi:type="description_1:AdditionalLayer" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@additionalLayers[name='Validation']"/>
1153 <activatedLayers xmi:type="description_1:AdditionalLayer" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Archetype']/@ownedRepresentationExtensions[name='Entities%20With%20Archetypes']/@layers[name='Archetypes']"/>
1154 <target xmi:type="ecore:EPackage" href="yakindu_simplified.ecore#/"/>
1155 </ownedRepresentations>
1156 <viewpoint xmi:type="description:Viewpoint" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']"/>
1157 </ownedViews>
1158 <ownedViews xmi:type="viewpoint:DRepresentationContainer" xmi:id="_4DCFoG6uEeaxlsDSOll0vg">
1159 <viewpoint xmi:type="description:Viewpoint" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Review']"/>
1160 </ownedViews>
1161 <ownedViews xmi:type="viewpoint:DRepresentationContainer" xmi:id="_4DHlMG6uEeaxlsDSOll0vg">
1162 <viewpoint xmi:type="description:Viewpoint" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Archetype']"/>
1163 </ownedViews>
1164 <ownedViews xmi:type="viewpoint:DRepresentationContainer" xmi:id="_4DO58G6uEeaxlsDSOll0vg">
1165 <viewpoint xmi:type="description:Viewpoint" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Generation']"/>
1166 </ownedViews>
1167</viewpoint:DAnalysis>
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/model/yakindu_simplified.ecore b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/model/yakindu_simplified.ecore
new file mode 100644
index 00000000..109ec1a7
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/model/yakindu_simplified.ecore
@@ -0,0 +1,30 @@
1<?xml version="1.0" encoding="UTF-8"?>
2<ecore:EPackage xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
3 xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="yakindumm" nsURI="hu.bme.mit.inf.yakindumm" nsPrefix="hu.bme.mit.inf.yakindumm">
4 <eClassifiers xsi:type="ecore:EClass" name="Pseudostate" abstract="true" eSuperTypes="#//Vertex"/>
5 <eClassifiers xsi:type="ecore:EClass" name="Vertex" abstract="true">
6 <eStructuralFeatures xsi:type="ecore:EReference" name="incomingTransitions" ordered="false"
7 upperBound="-1" eType="#//Transition" eOpposite="#//Transition/target"/>
8 <eStructuralFeatures xsi:type="ecore:EReference" name="outgoingTransitions" ordered="false"
9 upperBound="-1" eType="#//Transition" containment="true" eOpposite="#//Transition/source"/>
10 </eClassifiers>
11 <eClassifiers xsi:type="ecore:EClass" name="Region">
12 <eStructuralFeatures xsi:type="ecore:EReference" name="vertices" ordered="false"
13 upperBound="-1" eType="#//Vertex" containment="true"/>
14 </eClassifiers>
15 <eClassifiers xsi:type="ecore:EClass" name="Transition">
16 <eStructuralFeatures xsi:type="ecore:EReference" name="target" ordered="false"
17 lowerBound="1" eType="#//Vertex" eOpposite="#//Vertex/incomingTransitions"/>
18 <eStructuralFeatures xsi:type="ecore:EReference" name="source" ordered="false"
19 eType="#//Vertex" eOpposite="#//Vertex/outgoingTransitions"/>
20 </eClassifiers>
21 <eClassifiers xsi:type="ecore:EClass" name="Statechart" eSuperTypes="#//CompositeElement"/>
22 <eClassifiers xsi:type="ecore:EClass" name="Entry" eSuperTypes="#//Pseudostate"/>
23 <eClassifiers xsi:type="ecore:EClass" name="Synchronization" eSuperTypes="#//Pseudostate"/>
24 <eClassifiers xsi:type="ecore:EClass" name="State" eSuperTypes="#//RegularState #//CompositeElement"/>
25 <eClassifiers xsi:type="ecore:EClass" name="RegularState" abstract="true" eSuperTypes="#//Vertex"/>
26 <eClassifiers xsi:type="ecore:EClass" name="CompositeElement" abstract="true">
27 <eStructuralFeatures xsi:type="ecore:EReference" name="regions" upperBound="-1"
28 eType="#//Region" containment="true"/>
29 </eClassifiers>
30</ecore:EPackage>
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/model/yakindu_simplified.genmodel b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/model/yakindu_simplified.genmodel
new file mode 100644
index 00000000..e894efb8
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/model/yakindu_simplified.genmodel
@@ -0,0 +1,31 @@
1<?xml version="1.0" encoding="UTF-8"?>
2<genmodel:GenModel xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore"
3 xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" modelDirectory="/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/ecore-gen"
4 modelPluginID="hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph" modelName="Yakindu_simplified"
5 rootExtendsClass="org.eclipse.emf.ecore.impl.MinimalEObjectImpl$Container" importerID="org.eclipse.emf.importer.ecore"
6 complianceLevel="8.0" copyrightFields="false" operationReflection="true" importOrganizing="true">
7 <foreignModel>yakindu_simplified.ecore</foreignModel>
8 <genPackages prefix="Yakindumm" basePackage="hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph"
9 disposableProviderFactory="true" ecorePackage="yakindu_simplified.ecore#/">
10 <genClasses image="false" ecoreClass="yakindu_simplified.ecore#//Pseudostate"/>
11 <genClasses image="false" ecoreClass="yakindu_simplified.ecore#//Vertex">
12 <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference yakindu_simplified.ecore#//Vertex/incomingTransitions"/>
13 <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference yakindu_simplified.ecore#//Vertex/outgoingTransitions"/>
14 </genClasses>
15 <genClasses ecoreClass="yakindu_simplified.ecore#//Region">
16 <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference yakindu_simplified.ecore#//Region/vertices"/>
17 </genClasses>
18 <genClasses ecoreClass="yakindu_simplified.ecore#//Transition">
19 <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference yakindu_simplified.ecore#//Transition/target"/>
20 <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference yakindu_simplified.ecore#//Transition/source"/>
21 </genClasses>
22 <genClasses ecoreClass="yakindu_simplified.ecore#//Statechart"/>
23 <genClasses ecoreClass="yakindu_simplified.ecore#//Entry"/>
24 <genClasses ecoreClass="yakindu_simplified.ecore#//Synchronization"/>
25 <genClasses ecoreClass="yakindu_simplified.ecore#//State"/>
26 <genClasses image="false" ecoreClass="yakindu_simplified.ecore#//RegularState"/>
27 <genClasses image="false" ecoreClass="yakindu_simplified.ecore#//CompositeElement">
28 <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference yakindu_simplified.ecore#//CompositeElement/regions"/>
29 </genClasses>
30 </genPackages>
31</genmodel:GenModel>
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/model/yakindumm class diagram.pdf b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/model/yakindumm class diagram.pdf
new file mode 100644
index 00000000..f271de98
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/model/yakindumm class diagram.pdf
Binary files differ
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/model/yakindumm class diagram.svg b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/model/yakindumm class diagram.svg
new file mode 100644
index 00000000..ec1eec69
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/model/yakindumm class diagram.svg
@@ -0,0 +1,350 @@
1<?xml version="1.0" encoding="UTF-8"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" stroke-dasharray="none" shape-rendering="auto" font-family="'Dialog'" width="668" text-rendering="auto" fill-opacity="1" contentScriptType="text/ecmascript" color-interpolation="auto" color-rendering="auto" preserveAspectRatio="xMidYMid meet" font-size="12" viewBox="0 0 668 209" fill="black" stroke="black" image-rendering="auto" stroke-miterlimit="10" zoomAndPan="magnify" version="1.0" stroke-linecap="square" stroke-linejoin="miter" contentStyleType="text/css" font-style="normal" height="209" stroke-width="1" stroke-dashoffset="0" font-weight="normal" stroke-opacity="1">
2<!--Generated by the Batik Graphics2D SVG Generator-->
3<defs id="genericDefs"/>
4<g>
5<defs id="defs1">
6<clipPath clipPathUnits="userSpaceOnUse" id="clipPath1">
7<path d="M99 92 L221 92 L221 135 L99 135 L99 92 Z"/>
8</clipPath>
9<clipPath clipPathUnits="userSpaceOnUse" id="clipPath2">
10<path d="M99 92 L219 92 L219 133 L99 133 L99 92 Z"/>
11</clipPath>
12<clipPath clipPathUnits="userSpaceOnUse" id="clipPath3">
13<path d="M120 97 L197 97 L197 115 L120 115 L120 97 Z"/>
14</clipPath>
15<clipPath clipPathUnits="userSpaceOnUse" id="clipPath4">
16<path d="M120 97 L199 97 L199 115 L120 115 L120 97 Z"/>
17</clipPath>
18<clipPath clipPathUnits="userSpaceOnUse" id="clipPath5">
19<path d="M100 118 L218 118 L218 132 L100 132 L100 118 Z"/>
20</clipPath>
21<clipPath clipPathUnits="userSpaceOnUse" id="clipPath6">
22<path d="M344 27 L466 27 L466 70 L344 70 L344 27 Z"/>
23</clipPath>
24<clipPath clipPathUnits="userSpaceOnUse" id="clipPath7">
25<path d="M344 27 L464 27 L464 68 L344 68 L344 27 Z"/>
26</clipPath>
27<clipPath clipPathUnits="userSpaceOnUse" id="clipPath8">
28<path d="M378 32 L429 32 L429 50 L378 50 L378 32 Z"/>
29</clipPath>
30<clipPath clipPathUnits="userSpaceOnUse" id="clipPath9">
31<path d="M378 32 L431 32 L431 50 L378 50 L378 32 Z"/>
32</clipPath>
33<clipPath clipPathUnits="userSpaceOnUse" id="clipPath10">
34<path d="M345 53 L463 53 L463 67 L345 67 L345 53 Z"/>
35</clipPath>
36<clipPath clipPathUnits="userSpaceOnUse" id="clipPath11">
37<path d="M537 27 L659 27 L659 70 L537 70 L537 27 Z"/>
38</clipPath>
39<clipPath clipPathUnits="userSpaceOnUse" id="clipPath12">
40<path d="M537 27 L657 27 L657 68 L537 68 L537 27 Z"/>
41</clipPath>
42<clipPath clipPathUnits="userSpaceOnUse" id="clipPath13">
43<path d="M568 32 L626 32 L626 50 L568 50 L568 32 Z"/>
44</clipPath>
45<clipPath clipPathUnits="userSpaceOnUse" id="clipPath14">
46<path d="M568 32 L629 32 L629 50 L568 50 L568 32 Z"/>
47</clipPath>
48<clipPath clipPathUnits="userSpaceOnUse" id="clipPath15">
49<path d="M538 53 L656 53 L656 67 L538 67 L538 53 Z"/>
50</clipPath>
51<clipPath clipPathUnits="userSpaceOnUse" id="clipPath16">
52<path d="M9 27 L131 27 L131 70 L9 70 L9 27 Z"/>
53</clipPath>
54<clipPath clipPathUnits="userSpaceOnUse" id="clipPath17">
55<path d="M9 27 L129 27 L129 68 L9 68 L9 27 Z"/>
56</clipPath>
57<clipPath clipPathUnits="userSpaceOnUse" id="clipPath18">
58<path d="M33 32 L104 32 L104 50 L33 50 L33 32 Z"/>
59</clipPath>
60<clipPath clipPathUnits="userSpaceOnUse" id="clipPath19">
61<path d="M33 32 L106 32 L106 50 L33 50 L33 32 Z"/>
62</clipPath>
63<clipPath clipPathUnits="userSpaceOnUse" id="clipPath20">
64<path d="M10 53 L128 53 L128 67 L10 67 L10 53 Z"/>
65</clipPath>
66<clipPath clipPathUnits="userSpaceOnUse" id="clipPath21">
67<path d="M537 157 L659 157 L659 200 L537 200 L537 157 Z"/>
68</clipPath>
69<clipPath clipPathUnits="userSpaceOnUse" id="clipPath22">
70<path d="M537 157 L657 157 L657 198 L537 198 L537 157 Z"/>
71</clipPath>
72<clipPath clipPathUnits="userSpaceOnUse" id="clipPath23">
73<path d="M560 162 L633 162 L633 180 L560 180 L560 162 Z"/>
74</clipPath>
75<clipPath clipPathUnits="userSpaceOnUse" id="clipPath24">
76<path d="M560 162 L635 162 L635 180 L560 180 L560 162 Z"/>
77</clipPath>
78<clipPath clipPathUnits="userSpaceOnUse" id="clipPath25">
79<path d="M538 183 L656 183 L656 197 L538 197 L538 183 Z"/>
80</clipPath>
81<clipPath clipPathUnits="userSpaceOnUse" id="clipPath26">
82<path d="M14 157 L136 157 L136 200 L14 200 L14 157 Z"/>
83</clipPath>
84<clipPath clipPathUnits="userSpaceOnUse" id="clipPath27">
85<path d="M14 157 L134 157 L134 198 L14 198 L14 157 Z"/>
86</clipPath>
87<clipPath clipPathUnits="userSpaceOnUse" id="clipPath28">
88<path d="M50 162 L97 162 L97 180 L50 180 L50 162 Z"/>
89</clipPath>
90<clipPath clipPathUnits="userSpaceOnUse" id="clipPath29">
91<path d="M50 162 L99 162 L99 180 L50 180 L50 162 Z"/>
92</clipPath>
93<clipPath clipPathUnits="userSpaceOnUse" id="clipPath30">
94<path d="M15 183 L133 183 L133 197 L15 197 L15 183 Z"/>
95</clipPath>
96<clipPath clipPathUnits="userSpaceOnUse" id="clipPath31">
97<path d="M184 157 L306 157 L306 200 L184 200 L184 157 Z"/>
98</clipPath>
99<clipPath clipPathUnits="userSpaceOnUse" id="clipPath32">
100<path d="M184 157 L304 157 L304 198 L184 198 L184 157 Z"/>
101</clipPath>
102<clipPath clipPathUnits="userSpaceOnUse" id="clipPath33">
103<path d="M192 162 L296 162 L296 180 L192 180 L192 162 Z"/>
104</clipPath>
105<clipPath clipPathUnits="userSpaceOnUse" id="clipPath34">
106<path d="M192 162 L298 162 L298 180 L192 180 L192 162 Z"/>
107</clipPath>
108<clipPath clipPathUnits="userSpaceOnUse" id="clipPath35">
109<path d="M185 183 L303 183 L303 197 L185 197 L185 183 Z"/>
110</clipPath>
111<clipPath clipPathUnits="userSpaceOnUse" id="clipPath36">
112<path d="M354 157 L476 157 L476 200 L354 200 L354 157 Z"/>
113</clipPath>
114<clipPath clipPathUnits="userSpaceOnUse" id="clipPath37">
115<path d="M354 157 L474 157 L474 198 L354 198 L354 157 Z"/>
116</clipPath>
117<clipPath clipPathUnits="userSpaceOnUse" id="clipPath38">
118<path d="M390 162 L437 162 L437 180 L390 180 L390 162 Z"/>
119</clipPath>
120<clipPath clipPathUnits="userSpaceOnUse" id="clipPath39">
121<path d="M390 162 L439 162 L439 180 L390 180 L390 162 Z"/>
122</clipPath>
123<clipPath clipPathUnits="userSpaceOnUse" id="clipPath40">
124<path d="M355 183 L473 183 L473 197 L355 197 L355 183 Z"/>
125</clipPath>
126<clipPath clipPathUnits="userSpaceOnUse" id="clipPath41">
127<path d="M354 92 L476 92 L476 135 L354 135 L354 92 Z"/>
128</clipPath>
129<clipPath clipPathUnits="userSpaceOnUse" id="clipPath42">
130<path d="M354 92 L474 92 L474 133 L354 133 L354 92 Z"/>
131</clipPath>
132<clipPath clipPathUnits="userSpaceOnUse" id="clipPath43">
133<path d="M373 97 L454 97 L454 115 L373 115 L373 97 Z"/>
134</clipPath>
135<clipPath clipPathUnits="userSpaceOnUse" id="clipPath44">
136<path d="M373 97 L456 97 L456 115 L373 115 L373 97 Z"/>
137</clipPath>
138<clipPath clipPathUnits="userSpaceOnUse" id="clipPath45">
139<path d="M355 118 L473 118 L473 132 L355 132 L355 118 Z"/>
140</clipPath>
141<clipPath clipPathUnits="userSpaceOnUse" id="clipPath46">
142<path d="M537 92 L659 92 L659 135 L537 135 L537 92 Z"/>
143</clipPath>
144<clipPath clipPathUnits="userSpaceOnUse" id="clipPath47">
145<path d="M537 92 L657 92 L657 133 L537 133 L537 92 Z"/>
146</clipPath>
147<clipPath clipPathUnits="userSpaceOnUse" id="clipPath48">
148<path d="M543 97 L651 97 L651 115 L543 115 L543 97 Z"/>
149</clipPath>
150<clipPath clipPathUnits="userSpaceOnUse" id="clipPath49">
151<path d="M543 97 L653 97 L653 115 L543 115 L543 97 Z"/>
152</clipPath>
153<clipPath clipPathUnits="userSpaceOnUse" id="clipPath50">
154<path d="M538 118 L656 118 L656 132 L538 132 L538 118 Z"/>
155</clipPath>
156<clipPath clipPathUnits="userSpaceOnUse" id="clipPath51">
157<path d="M-1 -1 L669 -1 L669 210 L-1 210 L-1 -1 Z"/>
158</clipPath>
159<clipPath clipPathUnits="userSpaceOnUse" id="clipPath52">
160<path d="M469 27 L537 27 L537 42 L469 42 L469 27 Z"/>
161</clipPath>
162<clipPath clipPathUnits="userSpaceOnUse" id="clipPath53">
163<path d="M525 43 L540 43 L540 52 L525 52 L525 43 Z"/>
164</clipPath>
165<clipPath clipPathUnits="userSpaceOnUse" id="clipPath54">
166<path d="M462 43 L472 43 L472 52 L462 52 L462 43 Z"/>
167</clipPath>
168<clipPath clipPathUnits="userSpaceOnUse" id="clipPath55">
169<path d="M563 72 L632 72 L632 87 L563 87 L563 72 Z"/>
170</clipPath>
171<clipPath clipPathUnits="userSpaceOnUse" id="clipPath56">
172<path d="M556 80 L565 80 L565 95 L556 95 L556 80 Z"/>
173</clipPath>
174<clipPath clipPathUnits="userSpaceOnUse" id="clipPath57">
175<path d="M556 66 L565 66 L565 76 L556 76 L556 66 Z"/>
176</clipPath>
177<clipPath clipPathUnits="userSpaceOnUse" id="clipPath58">
178<path d="M400 66 L411 66 L411 77 L400 77 L400 66 Z"/>
179</clipPath>
180<clipPath clipPathUnits="userSpaceOnUse" id="clipPath59">
181<path d="M565 131 L576 131 L576 142 L565 142 L565 131 Z"/>
182</clipPath>
183<clipPath clipPathUnits="userSpaceOnUse" id="clipPath60">
184<path d="M155 131 L166 131 L166 142 L155 142 L155 131 Z"/>
185</clipPath>
186<clipPath clipPathUnits="userSpaceOnUse" id="clipPath61">
187<path d="M387 131 L398 131 L398 142 L387 142 L387 131 Z"/>
188</clipPath>
189<clipPath clipPathUnits="userSpaceOnUse" id="clipPath62">
190<path d="M284 62 L346 62 L346 77 L284 77 L284 62 Z"/>
191</clipPath>
192<clipPath clipPathUnits="userSpaceOnUse" id="clipPath63">
193<path d="M129 62 L262 62 L262 77 L129 77 L129 62 Z"/>
194</clipPath>
195<clipPath clipPathUnits="userSpaceOnUse" id="clipPath64">
196<path d="M337 54 L347 54 L347 63 L337 63 L337 54 Z"/>
197</clipPath>
198<clipPath clipPathUnits="userSpaceOnUse" id="clipPath65">
199<path d="M127 54 L137 54 L137 63 L127 63 L127 54 Z"/>
200</clipPath>
201<clipPath clipPathUnits="userSpaceOnUse" id="clipPath66">
202<path d="M282 22 L347 22 L347 37 L282 37 L282 22 Z"/>
203</clipPath>
204<clipPath clipPathUnits="userSpaceOnUse" id="clipPath67">
205<path d="M129 22 L263 22 L263 37 L129 37 L129 22 Z"/>
206</clipPath>
207<clipPath clipPathUnits="userSpaceOnUse" id="clipPath68">
208<path d="M332 34 L347 34 L347 43 L332 43 L332 34 Z"/>
209</clipPath>
210<clipPath clipPathUnits="userSpaceOnUse" id="clipPath69">
211<path d="M127 34 L137 34 L137 43 L127 43 L127 34 Z"/>
212</clipPath>
213</defs>
214<g font-size="11" fill="rgb(131,122,133)" font-family="'Segoe UI'" stroke-linejoin="round" font-style="italic" stroke="rgb(131,122,133)" stroke-width="0" stroke-miterlimit="0">
215<rect x="101" y="94" clip-path="url(#clipPath1)" width="118" rx="4" opacity="0.2549" ry="4" height="39" stroke="none"/>
216<rect x="102" y="95" clip-path="url(#clipPath1)" width="118" rx="4" opacity="0.2549" ry="4" height="39" stroke="none"/>
217<rect x="100" y="93" clip-path="url(#clipPath2)" fill="white" width="118" rx="4" ry="4" height="39" stroke="none"/>
218</g>
219<g stroke-linecap="butt" font-size="11" fill="rgb(125,125,125)" font-family="'Segoe UI'" font-style="italic" stroke="rgb(125,125,125)" stroke-width="1.1">
220<rect x="100" y="93" clip-path="url(#clipPath2)" fill="none" width="117" rx="4" ry="4" height="38"/>
221<image x="121" y="98" clip-path="url(#clipPath3)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAA2UlEQVR42mP8//8/&#13;&#10;AyWABUQwMjKimAI0lJFYAxgh6lFdATSQYW6NPk5NSc0XGFFcANMEtR1MR9cuwqp5&#13;&#10;aXMcpheQNRIC/9B8h9MF//+zMjDC1P6HeZaB4c9f7IEIDzhYgK5cMA2rC/78Z0I1&#13;&#10;AD3E+0pNGLJa5uL0wrSaEyh8JnQFv/8y4Q0DdHkWdAW//jKC/Q/xDmYYgOTxGvAb&#13;&#10;qKC7bzVEE7YwIGjAPyaGquIAnF5oLNxJIAz+EQiDfwTC4A+BMCDohb/AeC7OysTp&#13;&#10;AmYmAi6YNPsAIynZGQCn3VpKGCzVQQAAAABJRU5ErkJggg==" xlink:type="simple" xlink:actuate="onLoad" height="16" preserveAspectRatio="none" xlink:show="embed"/>
222<text x="140" y="111" clip-path="url(#clipPath4)" fill="black" stroke="none" xml:space="preserve">Pseudostate</text>
223<line clip-path="url(#clipPath5)" fill="none" x1="101" x2="217" y1="119" y2="119"/>
224<rect x="346" y="29" clip-path="url(#clipPath6)" fill="rgb(131,122,133)" width="118" rx="4" opacity="0.2549" ry="4" height="39" stroke="none"/>
225<rect x="347" y="30" clip-path="url(#clipPath6)" fill="rgb(131,122,133)" width="118" rx="4" opacity="0.2549" ry="4" height="39" stroke="none"/>
226<rect x="345" y="28" clip-path="url(#clipPath7)" fill="white" width="118" rx="4" ry="4" height="39" stroke="none"/>
227<rect x="345" y="28" clip-path="url(#clipPath7)" fill="none" width="117" rx="4" ry="4" height="38"/>
228<image x="379" y="33" clip-path="url(#clipPath8)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAA2UlEQVR42mP8//8/&#13;&#10;AyWABUQwMjKimAI0lJFYAxgh6lFdATSQYW6NPk5NSc0XGFFcANMEtR1MR9cuwqp5&#13;&#10;aXMcpheQNRIC/9B8h9MF//+zMjDC1P6HeZaB4c9f7IEIDzhYgK5cMA2rC/78Z0I1&#13;&#10;AD3E+0pNGLJa5uL0wrSaEyh8JnQFv/8y4Q0DdHkWdAW//jKC/Q/xDmYYgOTxGvAb&#13;&#10;qKC7bzVEE7YwIGjAPyaGquIAnF5oLNxJIAz+EQiDfwTC4A+BMCDohb/AeC7OysTp&#13;&#10;AmYmAi6YNPsAIynZGQCn3VpKGCzVQQAAAABJRU5ErkJggg==" xlink:type="simple" xlink:actuate="onLoad" height="16" preserveAspectRatio="none" xlink:show="embed"/>
229<text x="398" y="46" clip-path="url(#clipPath9)" fill="black" stroke="none" xml:space="preserve">Vertex</text>
230<line clip-path="url(#clipPath10)" fill="none" x1="346" x2="462" y1="54" y2="54"/>
231<rect x="539" y="29" clip-path="url(#clipPath11)" fill="rgb(131,122,133)" width="118" rx="4" opacity="0.2549" ry="4" height="39" stroke="none"/>
232<rect x="540" y="30" clip-path="url(#clipPath11)" fill="rgb(131,122,133)" width="118" rx="4" opacity="0.2549" ry="4" height="39" stroke="none"/>
233<rect x="538" y="28" clip-path="url(#clipPath12)" fill="white" width="118" rx="4" ry="4" height="39" stroke="none"/>
234<rect x="538" y="28" clip-path="url(#clipPath12)" fill="none" width="117" rx="4" ry="4" height="38" stroke="black"/>
235<image stroke="black" width="16" xlink:show="embed" xlink:type="simple" fill="black" clip-path="url(#clipPath13)" preserveAspectRatio="none" height="16" font-style="normal" x="569" y="33" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAtElEQVR42mNgGGjA&#13;&#10;iC4wt0b/PyFNyS0X4fpYsCmIrl2EU/PS5jgUPhO6gn//GfHaji6P4YI/fxkY/v9n&#13;&#10;hfgPpvY/1LP/IfL4DfjPxLBqwTQGXAEBksdrwO9/TAzhiak4vTCt5gT+MPj9lwlv&#13;&#10;GKDLY7jg119GvGEAksfvBaCC7r7VDLgC4Q9BA4BhUFUcgNMLjYU7CYTBPwJh8I+J&#13;&#10;UDpgJJAOCHjhLzCei7MycbqAmYmJurkRAGS/RaNk4/qhAAAAAElFTkSuQmCC" xlink:actuate="onLoad"/>
236<text x="588" y="46" clip-path="url(#clipPath14)" fill="black" font-style="normal" stroke="none" xml:space="preserve">Region</text>
237<line clip-path="url(#clipPath15)" fill="none" x1="539" x2="655" y1="54" y2="54" stroke="black"/>
238<rect x="11" y="29" clip-path="url(#clipPath16)" fill="rgb(131,122,133)" width="118" rx="4" opacity="0.2549" ry="4" height="39" stroke="none"/>
239<rect x="12" y="30" clip-path="url(#clipPath16)" fill="rgb(131,122,133)" width="118" rx="4" opacity="0.2549" ry="4" height="39" stroke="none"/>
240<rect x="10" y="28" clip-path="url(#clipPath17)" fill="white" width="118" rx="4" ry="4" height="39" stroke="none"/>
241<rect x="10" y="28" clip-path="url(#clipPath17)" fill="none" width="117" rx="4" ry="4" height="38" stroke="black"/>
242<image stroke="black" width="16" xlink:show="embed" xlink:type="simple" fill="black" clip-path="url(#clipPath18)" preserveAspectRatio="none" height="16" font-style="normal" x="34" y="33" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAtElEQVR42mNgGGjA&#13;&#10;iC4wt0b/PyFNyS0X4fpYsCmIrl2EU/PS5jgUPhO6gn//GfHaji6P4YI/fxkY/v9n&#13;&#10;hfgPpvY/1LP/IfL4DfjPxLBqwTQGXAEBksdrwO9/TAzhiak4vTCt5gT+MPj9lwlv&#13;&#10;GKDLY7jg119GvGEAksfvBaCC7r7VDLgC4Q9BA4BhUFUcgNMLjYU7CYTBPwJh8I+J&#13;&#10;UDpgJJAOCHjhLzCei7MycbqAmYmJurkRAGS/RaNk4/qhAAAAAElFTkSuQmCC" xlink:actuate="onLoad"/>
243<text x="53" y="46" clip-path="url(#clipPath19)" fill="black" font-style="normal" stroke="none" xml:space="preserve">Transition</text>
244<line clip-path="url(#clipPath20)" fill="none" x1="11" x2="127" y1="54" y2="54" stroke="black"/>
245<rect x="539" y="159" clip-path="url(#clipPath21)" fill="rgb(131,122,133)" width="118" rx="4" opacity="0.2549" ry="4" height="39" stroke="none"/>
246<rect x="540" y="160" clip-path="url(#clipPath21)" fill="rgb(131,122,133)" width="118" rx="4" opacity="0.2549" ry="4" height="39" stroke="none"/>
247<rect x="538" y="158" clip-path="url(#clipPath22)" fill="white" width="118" rx="4" ry="4" height="39" stroke="none"/>
248<rect x="538" y="158" clip-path="url(#clipPath22)" fill="none" width="117" rx="4" ry="4" height="38" stroke="black"/>
249<image stroke="black" width="16" xlink:show="embed" xlink:type="simple" fill="black" clip-path="url(#clipPath23)" preserveAspectRatio="none" height="16" font-style="normal" x="561" y="163" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAtElEQVR42mNgGGjA&#13;&#10;iC4wt0b/PyFNyS0X4fpYsCmIrl2EU/PS5jgUPhO6gn//GfHaji6P4YI/fxkY/v9n&#13;&#10;hfgPpvY/1LP/IfL4DfjPxLBqwTQGXAEBksdrwO9/TAzhiak4vTCt5gT+MPj9lwlv&#13;&#10;GKDLY7jg119GvGEAksfvBaCC7r7VDLgC4Q9BA4BhUFUcgNMLjYU7CYTBPwJh8I+J&#13;&#10;UDpgJJAOCHjhLzCei7MycbqAmYmJurkRAGS/RaNk4/qhAAAAAElFTkSuQmCC" xlink:actuate="onLoad"/>
250<text x="580" y="176" clip-path="url(#clipPath24)" fill="black" font-style="normal" stroke="none" xml:space="preserve">Statechart</text>
251<line clip-path="url(#clipPath25)" fill="none" x1="539" x2="655" y1="184" y2="184" stroke="black"/>
252<rect x="16" y="159" clip-path="url(#clipPath26)" fill="rgb(131,122,133)" width="118" rx="4" opacity="0.2549" ry="4" height="39" stroke="none"/>
253<rect x="17" y="160" clip-path="url(#clipPath26)" fill="rgb(131,122,133)" width="118" rx="4" opacity="0.2549" ry="4" height="39" stroke="none"/>
254<rect x="15" y="158" clip-path="url(#clipPath27)" fill="white" width="118" rx="4" ry="4" height="39" stroke="none"/>
255<rect x="15" y="158" clip-path="url(#clipPath27)" fill="none" width="117" rx="4" ry="4" height="38" stroke="black"/>
256<image stroke="black" width="16" xlink:show="embed" xlink:type="simple" fill="black" clip-path="url(#clipPath28)" preserveAspectRatio="none" height="16" font-style="normal" x="51" y="163" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAtElEQVR42mNgGGjA&#13;&#10;iC4wt0b/PyFNyS0X4fpYsCmIrl2EU/PS5jgUPhO6gn//GfHaji6P4YI/fxkY/v9n&#13;&#10;hfgPpvY/1LP/IfL4DfjPxLBqwTQGXAEBksdrwO9/TAzhiak4vTCt5gT+MPj9lwlv&#13;&#10;GKDLY7jg119GvGEAksfvBaCC7r7VDLgC4Q9BA4BhUFUcgNMLjYU7CYTBPwJh8I+J&#13;&#10;UDpgJJAOCHjhLzCei7MycbqAmYmJurkRAGS/RaNk4/qhAAAAAElFTkSuQmCC" xlink:actuate="onLoad"/>
257<text x="70" y="176" clip-path="url(#clipPath29)" fill="black" font-style="normal" stroke="none" xml:space="preserve">Entry</text>
258<line clip-path="url(#clipPath30)" fill="none" x1="16" x2="132" y1="184" y2="184" stroke="black"/>
259<rect x="186" y="159" clip-path="url(#clipPath31)" fill="rgb(131,122,133)" width="118" rx="4" opacity="0.2549" ry="4" height="39" stroke="none"/>
260<rect x="187" y="160" clip-path="url(#clipPath31)" fill="rgb(131,122,133)" width="118" rx="4" opacity="0.2549" ry="4" height="39" stroke="none"/>
261<rect x="185" y="158" clip-path="url(#clipPath32)" fill="white" width="118" rx="4" ry="4" height="39" stroke="none"/>
262<rect x="185" y="158" clip-path="url(#clipPath32)" fill="none" width="117" rx="4" ry="4" height="38" stroke="black"/>
263<image stroke="black" width="16" xlink:show="embed" xlink:type="simple" fill="black" clip-path="url(#clipPath33)" preserveAspectRatio="none" height="16" font-style="normal" x="193" y="163" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAtElEQVR42mNgGGjA&#13;&#10;iC4wt0b/PyFNyS0X4fpYsCmIrl2EU/PS5jgUPhO6gn//GfHaji6P4YI/fxkY/v9n&#13;&#10;hfgPpvY/1LP/IfL4DfjPxLBqwTQGXAEBksdrwO9/TAzhiak4vTCt5gT+MPj9lwlv&#13;&#10;GKDLY7jg119GvGEAksfvBaCC7r7VDLgC4Q9BA4BhUFUcgNMLjYU7CYTBPwJh8I+J&#13;&#10;UDpgJJAOCHjhLzCei7MycbqAmYmJurkRAGS/RaNk4/qhAAAAAElFTkSuQmCC" xlink:actuate="onLoad"/>
264<text x="212" y="176" clip-path="url(#clipPath34)" fill="black" font-style="normal" stroke="none" xml:space="preserve">Synchronization</text>
265<line clip-path="url(#clipPath35)" fill="none" x1="186" x2="302" y1="184" y2="184" stroke="black"/>
266<rect x="356" y="159" clip-path="url(#clipPath36)" fill="rgb(131,122,133)" width="118" rx="4" opacity="0.2549" ry="4" height="39" stroke="none"/>
267<rect x="357" y="160" clip-path="url(#clipPath36)" fill="rgb(131,122,133)" width="118" rx="4" opacity="0.2549" ry="4" height="39" stroke="none"/>
268<rect x="355" y="158" clip-path="url(#clipPath37)" fill="white" width="118" rx="4" ry="4" height="39" stroke="none"/>
269<rect x="355" y="158" clip-path="url(#clipPath37)" fill="none" width="117" rx="4" ry="4" height="38" stroke="black"/>
270<image stroke="black" width="16" xlink:show="embed" xlink:type="simple" fill="black" clip-path="url(#clipPath38)" preserveAspectRatio="none" height="16" font-style="normal" x="391" y="163" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAtElEQVR42mNgGGjA&#13;&#10;iC4wt0b/PyFNyS0X4fpYsCmIrl2EU/PS5jgUPhO6gn//GfHaji6P4YI/fxkY/v9n&#13;&#10;hfgPpvY/1LP/IfL4DfjPxLBqwTQGXAEBksdrwO9/TAzhiak4vTCt5gT+MPj9lwlv&#13;&#10;GKDLY7jg119GvGEAksfvBaCC7r7VDLgC4Q9BA4BhUFUcgNMLjYU7CYTBPwJh8I+J&#13;&#10;UDpgJJAOCHjhLzCei7MycbqAmYmJurkRAGS/RaNk4/qhAAAAAElFTkSuQmCC" xlink:actuate="onLoad"/>
271<text x="410" y="176" clip-path="url(#clipPath39)" fill="black" font-style="normal" stroke="none" xml:space="preserve">State</text>
272<line clip-path="url(#clipPath40)" fill="none" x1="356" x2="472" y1="184" y2="184" stroke="black"/>
273<rect x="356" y="94" clip-path="url(#clipPath41)" fill="rgb(131,122,133)" width="118" rx="4" opacity="0.2549" ry="4" height="39" stroke="none"/>
274<rect x="357" y="95" clip-path="url(#clipPath41)" fill="rgb(131,122,133)" width="118" rx="4" opacity="0.2549" ry="4" height="39" stroke="none"/>
275<rect x="355" y="93" clip-path="url(#clipPath42)" fill="white" width="118" rx="4" ry="4" height="39" stroke="none"/>
276<rect x="355" y="93" clip-path="url(#clipPath42)" fill="none" width="117" rx="4" ry="4" height="38"/>
277<image x="374" y="98" clip-path="url(#clipPath43)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAA2UlEQVR42mP8//8/&#13;&#10;AyWABUQwMjKimAI0lJFYAxgh6lFdATSQYW6NPk5NSc0XGFFcANMEtR1MR9cuwqp5&#13;&#10;aXMcpheQNRIC/9B8h9MF//+zMjDC1P6HeZaB4c9f7IEIDzhYgK5cMA2rC/78Z0I1&#13;&#10;AD3E+0pNGLJa5uL0wrSaEyh8JnQFv/8y4Q0DdHkWdAW//jKC/Q/xDmYYgOTxGvAb&#13;&#10;qKC7bzVEE7YwIGjAPyaGquIAnF5oLNxJIAz+EQiDfwTC4A+BMCDohb/AeC7OysTp&#13;&#10;AmYmAi6YNPsAIynZGQCn3VpKGCzVQQAAAABJRU5ErkJggg==" xlink:type="simple" xlink:actuate="onLoad" height="16" preserveAspectRatio="none" xlink:show="embed"/>
278<text x="393" y="111" clip-path="url(#clipPath44)" fill="black" stroke="none" xml:space="preserve">RegularState</text>
279<line clip-path="url(#clipPath45)" fill="none" x1="356" x2="472" y1="119" y2="119"/>
280<rect x="539" y="94" clip-path="url(#clipPath46)" fill="rgb(131,122,133)" width="118" rx="4" opacity="0.2549" ry="4" height="39" stroke="none"/>
281<rect x="540" y="95" clip-path="url(#clipPath46)" fill="rgb(131,122,133)" width="118" rx="4" opacity="0.2549" ry="4" height="39" stroke="none"/>
282<rect x="538" y="93" clip-path="url(#clipPath47)" fill="white" width="118" rx="4" ry="4" height="39" stroke="none"/>
283<rect x="538" y="93" clip-path="url(#clipPath47)" fill="none" width="117" rx="4" ry="4" height="38"/>
284<image x="544" y="98" clip-path="url(#clipPath48)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAA2UlEQVR42mP8//8/&#13;&#10;AyWABUQwMjKimAI0lJFYAxgh6lFdATSQYW6NPk5NSc0XGFFcANMEtR1MR9cuwqp5&#13;&#10;aXMcpheQNRIC/9B8h9MF//+zMjDC1P6HeZaB4c9f7IEIDzhYgK5cMA2rC/78Z0I1&#13;&#10;AD3E+0pNGLJa5uL0wrSaEyh8JnQFv/8y4Q0DdHkWdAW//jKC/Q/xDmYYgOTxGvAb&#13;&#10;qKC7bzVEE7YwIGjAPyaGquIAnF5oLNxJIAz+EQiDfwTC4A+BMCDohb/AeC7OysTp&#13;&#10;AmYmAi6YNPsAIynZGQCn3VpKGCzVQQAAAABJRU5ErkJggg==" xlink:type="simple" xlink:actuate="onLoad" height="16" preserveAspectRatio="none" xlink:show="embed"/>
285<text x="563" y="111" clip-path="url(#clipPath49)" fill="black" stroke="none" xml:space="preserve">CompositeElement</text>
286<line clip-path="url(#clipPath50)" fill="none" x1="539" x2="655" y1="119" y2="119"/>
287<line clip-path="url(#clipPath51)" fill="none" x1="538" x2="463" y1="47" y2="47" stroke="black"/>
288<text x="470" y="40" clip-path="url(#clipPath52)" fill="black" font-style="normal" stroke="none" xml:space="preserve">[0..*] vertices</text>
289<polygon fill="black" clip-path="url(#clipPath53)" points=" 538 47 532 50 526 47 532 44" stroke="none"/>
290<polygon fill="none" clip-path="url(#clipPath53)" points=" 538 47 532 50 526 47 532 44" stroke="black"/>
291<line clip-path="url(#clipPath54)" fill="none" x1="470" x2="463" y1="44" y2="47" stroke="black"/>
292<line clip-path="url(#clipPath54)" fill="none" x1="463" x2="470" y1="47" y2="50" stroke="black"/>
293<line clip-path="url(#clipPath51)" fill="none" x1="560" x2="560" y1="93" y2="67" stroke="black"/>
294<text x="564" y="85" clip-path="url(#clipPath55)" fill="black" font-style="normal" stroke="none" xml:space="preserve">[0..*] regions</text>
295<polygon fill="black" clip-path="url(#clipPath56)" points=" 560 93 557 87 560 81 563 87" stroke="none"/>
296<polygon fill="none" clip-path="url(#clipPath56)" points=" 560 93 557 87 560 81 563 87" stroke="black"/>
297<line clip-path="url(#clipPath57)" fill="none" x1="563" x2="560" y1="74" y2="67" stroke="black"/>
298<line clip-path="url(#clipPath57)" fill="none" x1="560" x2="557" y1="67" y2="74" stroke="black"/>
299<line clip-path="url(#clipPath51)" fill="none" x1="159" x2="159" y1="93" y2="85" stroke="rgb(136,136,136)"/>
300<line clip-path="url(#clipPath51)" fill="none" x1="159" x2="405" y1="85" y2="85" stroke="rgb(136,136,136)"/>
301<line clip-path="url(#clipPath51)" fill="none" x1="405" x2="405" y1="85" y2="67" stroke="rgb(136,136,136)"/>
302<polygon fill="white" clip-path="url(#clipPath58)" points=" 405 67 409 75 401 75" stroke="none"/>
303<polygon fill="none" clip-path="url(#clipPath58)" points=" 405 67 409 75 401 75" stroke="rgb(136,136,136)"/>
304<line clip-path="url(#clipPath51)" fill="none" x1="597" x2="597" y1="158" y2="148" stroke="rgb(136,136,136)"/>
305<line clip-path="url(#clipPath51)" fill="none" x1="597" x2="570" y1="148" y2="148" stroke="rgb(136,136,136)"/>
306<line clip-path="url(#clipPath51)" fill="none" x1="570" x2="570" y1="148" y2="132" stroke="rgb(136,136,136)"/>
307<polygon fill="white" clip-path="url(#clipPath59)" points=" 570 132 574 140 566 140" stroke="none"/>
308<polygon fill="none" clip-path="url(#clipPath59)" points=" 570 132 574 140 566 140" stroke="rgb(136,136,136)"/>
309<line clip-path="url(#clipPath51)" fill="none" x1="74" x2="74" y1="158" y2="150" stroke="rgb(136,136,136)"/>
310<line clip-path="url(#clipPath51)" fill="none" x1="74" x2="160" y1="150" y2="150" stroke="rgb(136,136,136)"/>
311<line clip-path="url(#clipPath51)" fill="none" x1="160" x2="160" y1="150" y2="132" stroke="rgb(136,136,136)"/>
312<polygon fill="white" clip-path="url(#clipPath60)" points=" 160 132 164 140 156 140" stroke="none"/>
313<polygon fill="none" clip-path="url(#clipPath60)" points=" 160 132 164 140 156 140" stroke="rgb(136,136,136)"/>
314<line clip-path="url(#clipPath51)" fill="none" x1="244" x2="244" y1="158" y2="150" stroke="rgb(136,136,136)"/>
315<line clip-path="url(#clipPath51)" fill="none" x1="244" x2="160" y1="150" y2="150" stroke="rgb(136,136,136)"/>
316<line clip-path="url(#clipPath51)" fill="none" x1="160" x2="160" y1="150" y2="132" stroke="rgb(136,136,136)"/>
317<polygon fill="white" clip-path="url(#clipPath60)" points=" 160 132 164 140 156 140" stroke="none"/>
318<polygon fill="none" clip-path="url(#clipPath60)" points=" 160 132 164 140 156 140" stroke="rgb(136,136,136)"/>
319<line clip-path="url(#clipPath51)" fill="none" x1="414" x2="414" y1="158" y2="148" stroke="rgb(136,136,136)"/>
320<line clip-path="url(#clipPath51)" fill="none" x1="414" x2="392" y1="148" y2="148" stroke="rgb(136,136,136)"/>
321<line clip-path="url(#clipPath51)" fill="none" x1="392" x2="392" y1="148" y2="132" stroke="rgb(136,136,136)"/>
322<polygon fill="white" clip-path="url(#clipPath61)" points=" 392 132 396 140 388 140" stroke="none"/>
323<polygon fill="none" clip-path="url(#clipPath61)" points=" 392 132 396 140 388 140" stroke="rgb(136,136,136)"/>
324<line clip-path="url(#clipPath51)" fill="none" x1="414" x2="414" y1="158" y2="148" stroke="rgb(136,136,136)"/>
325<line clip-path="url(#clipPath51)" fill="none" x1="414" x2="570" y1="148" y2="148" stroke="rgb(136,136,136)"/>
326<line clip-path="url(#clipPath51)" fill="none" x1="570" x2="570" y1="148" y2="132" stroke="rgb(136,136,136)"/>
327<polygon fill="white" clip-path="url(#clipPath59)" points=" 570 132 574 140 566 140" stroke="none"/>
328<polygon fill="none" clip-path="url(#clipPath59)" points=" 570 132 574 140 566 140" stroke="rgb(136,136,136)"/>
329<line clip-path="url(#clipPath51)" fill="none" x1="414" x2="414" y1="93" y2="85" stroke="rgb(136,136,136)"/>
330<line clip-path="url(#clipPath51)" fill="none" x1="414" x2="405" y1="85" y2="85" stroke="rgb(136,136,136)"/>
331<line clip-path="url(#clipPath51)" fill="none" x1="405" x2="405" y1="85" y2="67" stroke="rgb(136,136,136)"/>
332<polygon fill="white" clip-path="url(#clipPath58)" points=" 405 67 409 75 401 75" stroke="none"/>
333<polygon fill="none" clip-path="url(#clipPath58)" points=" 405 67 409 75 401 75" stroke="rgb(136,136,136)"/>
334<line clip-path="url(#clipPath51)" fill="none" x1="345" x2="128" y1="58" y2="58" stroke="black"/>
335<text x="285" y="75" clip-path="url(#clipPath62)" fill="black" font-style="normal" stroke="none" xml:space="preserve">[1..1] target</text>
336<text x="130" y="75" clip-path="url(#clipPath63)" fill="black" font-style="normal" stroke="none" xml:space="preserve">[0..*] incomingTransitions</text>
337<line clip-path="url(#clipPath64)" fill="none" x1="338" x2="345" y1="61" y2="58" stroke="black"/>
338<line clip-path="url(#clipPath64)" fill="none" x1="345" x2="338" y1="58" y2="55" stroke="black"/>
339<line clip-path="url(#clipPath65)" fill="none" x1="135" x2="128" y1="55" y2="58" stroke="black"/>
340<line clip-path="url(#clipPath65)" fill="none" x1="128" x2="135" y1="58" y2="61" stroke="black"/>
341<line clip-path="url(#clipPath51)" fill="none" x1="345" x2="128" y1="38" y2="38" stroke="black"/>
342<text x="283" y="35" clip-path="url(#clipPath66)" fill="black" font-style="normal" stroke="none" xml:space="preserve">[1..1] source</text>
343<text x="130" y="35" clip-path="url(#clipPath67)" fill="black" font-style="normal" stroke="none" xml:space="preserve">[0..*] outgoingTransitions</text>
344<polygon fill="black" clip-path="url(#clipPath68)" points=" 345 38 339 41 333 38 339 35" stroke="none"/>
345<polygon fill="none" clip-path="url(#clipPath68)" points=" 345 38 339 41 333 38 339 35" stroke="black"/>
346<line clip-path="url(#clipPath69)" fill="none" x1="135" x2="128" y1="35" y2="38" stroke="black"/>
347<line clip-path="url(#clipPath69)" fill="none" x1="128" x2="135" y1="38" y2="41" stroke="black"/>
348</g>
349</g>
350</svg>
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/plugin.properties b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/plugin.properties
new file mode 100644
index 00000000..5984cf1c
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/plugin.properties
@@ -0,0 +1,4 @@
1#
2
3pluginName = Yakindu_simplified Model
4providerName = www.example.org
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/plugin.xml b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/plugin.xml
new file mode 100644
index 00000000..1ec8a6ec
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/plugin.xml
@@ -0,0 +1,37 @@
1<?xml version="1.0" encoding="UTF-8"?><plugin>
2 <extension id="hu.bme.mit.inf.dslreasoner.partialsnapshot_mavo.yakindu.Patterns" point="org.eclipse.viatra.query.runtime.queryspecification">
3 <group group="org.eclipse.viatra.query.runtime.extensibility.SingletonExtensionFactory:hu.bme.mit.inf.dslreasoner.partialsnapshot_mavo.yakindu.Patterns" id="hu.bme.mit.inf.dslreasoner.partialsnapshot_mavo.yakindu.Patterns">
4 <query-specification fqn="hu.bme.mit.inf.dslreasoner.partialsnapshot_mavo.yakindu.entryInRegion"/>
5 <query-specification fqn="hu.bme.mit.inf.dslreasoner.partialsnapshot_mavo.yakindu.noEntryInRegion"/>
6 <query-specification fqn="hu.bme.mit.inf.dslreasoner.partialsnapshot_mavo.yakindu.multipleEntryInRegion"/>
7 <query-specification fqn="hu.bme.mit.inf.dslreasoner.partialsnapshot_mavo.yakindu.transition"/>
8 <query-specification fqn="hu.bme.mit.inf.dslreasoner.partialsnapshot_mavo.yakindu.incomingToEntry"/>
9 <query-specification fqn="hu.bme.mit.inf.dslreasoner.partialsnapshot_mavo.yakindu.noOutgoingTransitionFromEntry"/>
10 <query-specification fqn="hu.bme.mit.inf.dslreasoner.partialsnapshot_mavo.yakindu.multipleTransitionFromEntry"/>
11 <query-specification fqn="hu.bme.mit.inf.dslreasoner.partialsnapshot_mavo.yakindu.hasNoOutgoing"/>
12 <query-specification fqn="hu.bme.mit.inf.dslreasoner.partialsnapshot_mavo.yakindu.hasNoIncoming"/>
13 <query-specification fqn="hu.bme.mit.inf.dslreasoner.partialsnapshot_mavo.yakindu.StateInRegion"/>
14 <query-specification fqn="hu.bme.mit.inf.dslreasoner.partialsnapshot_mavo.yakindu.SynchronizedIncomingInSameRegion"/>
15 <query-specification fqn="hu.bme.mit.inf.dslreasoner.partialsnapshot_mavo.yakindu.noStateInRegion"/>
16 <query-specification fqn="hu.bme.mit.inf.dslreasoner.partialsnapshot_mavo.yakindu.notSynchronizingStates"/>
17 <query-specification fqn="hu.bme.mit.inf.dslreasoner.partialsnapshot_mavo.yakindu.hasMultipleOutgoingTrainsition"/>
18 <query-specification fqn="hu.bme.mit.inf.dslreasoner.partialsnapshot_mavo.yakindu.hasMultipleIncomingTrainsition"/>
19 <query-specification fqn="hu.bme.mit.inf.dslreasoner.partialsnapshot_mavo.yakindu.SynchronizedRegionsAreNotSiblings"/>
20 <query-specification fqn="hu.bme.mit.inf.dslreasoner.partialsnapshot_mavo.yakindu.child"/>
21 <query-specification fqn="hu.bme.mit.inf.dslreasoner.partialsnapshot_mavo.yakindu.SynchronizedRegionDoesNotHaveMultipleRegions"/>
22 <query-specification fqn="hu.bme.mit.inf.dslreasoner.partialsnapshot_mavo.yakindu.hasMultipleRegions"/>
23 <query-specification fqn="hu.bme.mit.inf.dslreasoner.partialsnapshot_mavo.yakindu.synchThree"/>
24 <query-specification fqn="hu.bme.mit.inf.dslreasoner.partialsnapshot_mavo.yakindu.twoSynch"/>
25 <query-specification fqn="hu.bme.mit.inf.dslreasoner.partialsnapshot_mavo.yakindu.synch"/>
26 <query-specification fqn="hu.bme.mit.inf.dslreasoner.partialsnapshot_mavo.yakindu.noSynch"/>
27 <query-specification fqn="hu.bme.mit.inf.dslreasoner.partialsnapshot_mavo.yakindu.noSynch1"/>
28 <query-specification fqn="hu.bme.mit.inf.dslreasoner.partialsnapshot_mavo.yakindu.noSynch2"/>
29 <query-specification fqn="hu.bme.mit.inf.dslreasoner.partialsnapshot_mavo.yakindu.noSynch3"/>
30 <query-specification fqn="hu.bme.mit.inf.dslreasoner.partialsnapshot_mavo.yakindu.noSynch4"/>
31 </group>
32 </extension>
33 <extension point="org.eclipse.emf.ecore.generated_package">
34 <!-- @generated yakindu_simplified -->
35 <package class="hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph.yakindumm.YakindummPackage" genModel="model/yakindu_simplified.genmodel" uri="hu.bme.mit.inf.yakindumm"/>
36 </extension>
37</plugin>
diff --git a/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/queries/hu/bme/mit/inf/dslreasoner/partialsnapshot_mavo/yakindu/patterns.vql b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/queries/hu/bme/mit/inf/dslreasoner/partialsnapshot_mavo/yakindu/patterns.vql
new file mode 100644
index 00000000..a4c3125d
--- /dev/null
+++ b/Domains/hu.bme.mit.inf.dslreasoner.domains.yakindu.sgraph/queries/hu/bme/mit/inf/dslreasoner/partialsnapshot_mavo/yakindu/patterns.vql
@@ -0,0 +1,196 @@
1package hu.bme.mit.inf.dslreasoner.partialsnapshot_mavo.yakindu
2
3import epackage "hu.bme.mit.inf.yakindumm"
4
5pattern entryInRegion(r1 : Region, e1 : Entry) {
6 Region.vertices(r1, e1);
7}
8
9@Constraint(severity="error", message="error", key = {r1})
10pattern noEntryInRegion(r1 : Region) {
11 neg find entryInRegion(r1, _);
12}
13
14@Constraint(severity="error", message="error", key = {r})
15pattern multipleEntryInRegion(r : Region) {
16 find entryInRegion(r, e1);
17 find entryInRegion(r, e2);
18 e1 != e2;
19}
20
21pattern transition(t : Transition, src : Vertex, trg : Vertex) {
22 Transition.source(t, src);
23 Transition.target(t, trg);
24}
25
26@Constraint(severity="error", message="error", key = {e})
27pattern incomingToEntry(t : Transition, e : Entry) {
28 find transition(t, _, e);
29}
30
31@Constraint(severity="error", message="error", key = {e})
32pattern noOutgoingTransitionFromEntry(e : Entry) {
33 neg find transition(_, e, _);
34}
35
36@Constraint(severity="error", message="error", key = {e})
37pattern multipleTransitionFromEntry(e : Entry, t1 : Transition, t2: Transition) {
38 Entry.outgoingTransitions(e,t1);
39 Entry.outgoingTransitions(e,t2);
40 t1!=t2;
41}
42
43@Constraint(severity="error", message="error", key = {s})
44pattern hasNoOutgoing(s : Synchronization) {
45 neg find transition(_, s, _);
46}
47
48@Constraint(severity="error", message="error", key = {s})
49pattern hasNoIncoming(s : Synchronization) {
50 neg find transition(_, _, s);
51}
52
53pattern StateInRegion(region: Region, state: State) {
54 Region.vertices(region,state);
55}
56
57@Constraint(severity="error", message="error", key = {s})
58pattern SynchronizedIncomingInSameRegion(s : Synchronization, v1 : Vertex, v2 : Vertex) {
59 find transition(t1, v1, s);
60 find transition(t2, v2, s);
61 t1!=t2;
62 Region.vertices(r, v1);
63 Region.vertices(r, v2);
64} or {
65 find transition(t1, s, v1);
66 find transition(t2, s, v2);
67 t1!=t2;
68 Region.vertices(r, v1);
69 Region.vertices(r, v2);
70}
71
72@Constraint(severity="error", message="error", key = {region})
73pattern noStateInRegion(region: Region) {
74 neg find StateInRegion(region,_);
75}
76
77@Constraint(severity="error", message="error", key = {s})
78pattern notSynchronizingStates(s : Synchronization) {
79 neg find hasMultipleOutgoingTrainsition(s);
80 neg find hasMultipleIncomingTrainsition(s);
81}
82
83pattern hasMultipleOutgoingTrainsition(v : Synchronization) {
84 find transition(_, v, trg1);
85 find transition(_, v, trg2);
86 trg1 != trg2;
87}
88
89pattern hasMultipleIncomingTrainsition(v : Synchronization) {
90 find transition(_, src1, v);
91 find transition(_, src2, v);
92 src1 != src2;
93}
94
95@Constraint(severity="error", message="error", key = {s})
96pattern SynchronizedRegionsAreNotSiblings(s : Synchronization, v1 : Vertex, v2 : Vertex) {
97 find transition(_, v1, s);
98 find transition(_, v2, s);
99 CompositeElement.regions.vertices(r1, v1);
100 CompositeElement.regions.vertices(r2, v2);
101 r1 != r2;
102} or {
103 find transition(_, s, v1);
104 find transition(_, s, v2);
105 CompositeElement.regions.vertices(r1, v1);
106 CompositeElement.regions.vertices(r2, v2);
107 r1 != r2;
108}
109
110///////////////////////////////
111// Extra
112//
113//@Constraint(severity="error", message="error", key = {s})
114//pattern SynchronizedRegionDoesNotHaveParent(s : Synchronization, v : Vertex) {
115// find transition(_, v, s);
116// neg find child(_,v);
117//} or {
118// find transition(_, s, v);
119// neg find child(_,v);
120//}
121
122pattern child(parent: CompositeElement, child: Vertex) {
123 CompositeElement.regions.vertices(parent, child);
124}
125
126@Constraint(severity="error", message="error", key = {s})
127pattern SynchronizedRegionDoesNotHaveMultipleRegions(s : Synchronization, v : Vertex) {
128 find transition(_, v, s);
129 find child(c,v);
130 neg find hasMultipleRegions(c);
131} or {
132 find transition(_, s, v);
133 find child(c,v);
134 neg find hasMultipleRegions(c);
135}
136
137
138pattern hasMultipleRegions(composite: CompositeElement) {
139 CompositeElement.regions(composite,region1);
140 CompositeElement.regions(composite,region2);
141 region1 != region2;
142}
143
144// multiplicity constraints
145@Constraint(severity="error", message="error", key = {s})
146pattern synchThree(s: Synchronization) {
147 Transition.target(t1,s);
148 Transition.target(t2,s);
149 Transition.target(t3,s);
150 t1!=t2;
151 t2!=t3;
152 t1!=t3;
153} or {
154 Transition.source(t1,s);
155 Transition.source(t2,s);
156 Transition.source(t3,s);
157 t1!=t2;
158 t2!=t3;
159 t1!=t3;
160}
161
162@Constraint(severity="error", message="error", key = {s1,s2})
163pattern twoSynch(s1 : Synchronization, s2 : Synchronization) {
164 Synchronization(s1);
165 Synchronization(s2);
166 s1 != s2;
167}
168
169pattern synch(s:Synchronization) {
170 Synchronization(s);
171}
172@Constraint(severity="error", message="error", key = {s})
173pattern noSynch(s:Statechart) {
174 Statechart(s);
175 neg find synch(_);
176}
177@Constraint(severity="error", message="error", key = {s})
178pattern noSynch1(s:Statechart) {
179 Statechart(s);
180 neg find synch(_);
181}
182@Constraint(severity="error", message="error", key = {s})
183pattern noSynch2(s:Statechart) {
184 Statechart(s);
185 neg find synch(_);
186}
187@Constraint(severity="error", message="error", key = {s})
188pattern noSynch3(s:Statechart) {
189 Statechart(s);
190 neg find synch(_);
191}
192@Constraint(severity="error", message="error", key = {s})
193pattern noSynch4(s:Statechart) {
194 Statechart(s);
195 neg find synch(_);
196} \ No newline at end of file