diff options
author | Juergen Haug | 2015-08-20 13:39:48 +0000 |
---|---|---|
committer | Juergen Haug | 2015-08-20 14:31:27 +0000 |
commit | f31fca9efb3572f8273ff1846f10c6db56350df7 (patch) | |
tree | bee6737212ed500e4aa9e8147e6082385fd95940 /plugins/org.eclipse.etrice.core.genmodel.fsm | |
parent | c508c545126a47272c50d9b3834f16efbfe68cc1 (diff) | |
download | org.eclipse.etrice-f31fca9efb3572f8273ff1846f10c6db56350df7.tar.gz org.eclipse.etrice-f31fca9efb3572f8273ff1846f10c6db56350df7.tar.xz org.eclipse.etrice-f31fca9efb3572f8273ff1846f10c6db56350df7.zip |
[behavior.ui] added transition event data to detail expressions
Change-Id: I2a8e956b8fc8b738d7da289246875b82c001ff32
Diffstat (limited to 'plugins/org.eclipse.etrice.core.genmodel.fsm')
4 files changed, 27 insertions, 0 deletions
diff --git a/plugins/org.eclipse.etrice.core.genmodel.fsm/model/fsmgen.ecore b/plugins/org.eclipse.etrice.core.genmodel.fsm/model/fsmgen.ecore index 0b385bbe1..3f8349ccd 100644 --- a/plugins/org.eclipse.etrice.core.genmodel.fsm/model/fsmgen.ecore +++ b/plugins/org.eclipse.etrice.core.genmodel.fsm/model/fsmgen.ecore @@ -65,6 +65,9 @@ <eOperations name="getOrig" eType="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//EObject"> <eParameters name="copy" eType="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//EObject"/> </eOperations> + <eOperations name="getCopy" eType="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//EObject"> + <eParameters name="orig" eType="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//EObject"/> + </eOperations> <eOperations name="getModelComponentName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> <eOperations name="getData" eType="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//EObject"> <eParameters name="trans" eType="ecore:EClass ../../org.eclipse.etrice.core.fsm/model/generated/FSM.ecore#//Transition"/> diff --git a/plugins/org.eclipse.etrice.core.genmodel.fsm/src/org/eclipse/etrice/core/genmodel/fsm/fsmgen/ExpandedModelComponent.java b/plugins/org.eclipse.etrice.core.genmodel.fsm/src/org/eclipse/etrice/core/genmodel/fsm/fsmgen/ExpandedModelComponent.java index edab762a1..08d707c34 100644 --- a/plugins/org.eclipse.etrice.core.genmodel.fsm/src/org/eclipse/etrice/core/genmodel/fsm/fsmgen/ExpandedModelComponent.java +++ b/plugins/org.eclipse.etrice.core.genmodel.fsm/src/org/eclipse/etrice/core/genmodel/fsm/fsmgen/ExpandedModelComponent.java @@ -286,6 +286,14 @@ public interface ExpandedModelComponent extends EObject { /** * <!-- begin-user-doc --> * <!-- end-user-doc --> + * @model + * @generated + */ + EObject getCopy(EObject orig); + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> * @model kind="operation" * @generated */ diff --git a/plugins/org.eclipse.etrice.core.genmodel.fsm/src/org/eclipse/etrice/core/genmodel/fsm/fsmgen/impl/ExpandedModelComponentImpl.java b/plugins/org.eclipse.etrice.core.genmodel.fsm/src/org/eclipse/etrice/core/genmodel/fsm/fsmgen/impl/ExpandedModelComponentImpl.java index ba576fe6c..1bf543e17 100644 --- a/plugins/org.eclipse.etrice.core.genmodel.fsm/src/org/eclipse/etrice/core/genmodel/fsm/fsmgen/impl/ExpandedModelComponentImpl.java +++ b/plugins/org.eclipse.etrice.core.genmodel.fsm/src/org/eclipse/etrice/core/genmodel/fsm/fsmgen/impl/ExpandedModelComponentImpl.java @@ -212,6 +212,7 @@ public class ExpandedModelComponentImpl extends MinimalEObjectImpl.Container imp private LinkedList<TransitionChain> trchains = null; private TransitionToChainBundleMap trans2chainBundle = null; private HashMap<EObject, EObject> copy2orig = null; + private HashMap<EObject, EObject> orig2copy = null; private FSMHelpers fsmHelpers = new FSMHelpers(); protected FSMNameProvider fsmNameProvider = new FSMNameProvider(); @@ -401,6 +402,7 @@ public class ExpandedModelComponentImpl extends MinimalEObjectImpl.Container imp for (EObject o : copier.keySet()) { EObject c = copier.get(o); copy2orig.put(c, o); + orig2copy.put(o, c); } if (getModelComponent().getStateMachine()!=null) { @@ -434,6 +436,7 @@ public class ExpandedModelComponentImpl extends MinimalEObjectImpl.Container imp ExpandedRefinedState state = FsmGenFactory.eINSTANCE.createExpandedRefinedState(); state.init(rs); copy2orig.put(state, getOrig(rs)); + orig2copy.put(getOrig(rs), state); if (isOwnObject(rs)) addOwnObject(state); } @@ -838,6 +841,7 @@ public class ExpandedModelComponentImpl extends MinimalEObjectImpl.Container imp trchains = new LinkedList<TransitionChain>(); trans2chainBundle = new TransitionToChainBundleMap(); copy2orig = new HashMap<EObject, EObject>(); + orig2copy = new HashMap<EObject, EObject>(); buildStateGraph(); computeInterfaceItemLocalIds(getModelComponent(), 0); @@ -1277,6 +1281,15 @@ public class ExpandedModelComponentImpl extends MinimalEObjectImpl.Container imp * <!-- end-user-doc --> * @generated NOT */ + public EObject getCopy(EObject orig) { + return orig2copy.get(orig); + } + + /** + * <!-- begin-user-doc --> + * <!-- end-user-doc --> + * @generated NOT + */ public String getModelComponentName() { return getModelComponent().getComponentName(); } diff --git a/plugins/org.eclipse.etrice.core.genmodel.fsm/src/org/eclipse/etrice/core/genmodel/fsm/fsmgen/impl/FsmGenPackageImpl.java b/plugins/org.eclipse.etrice.core.genmodel.fsm/src/org/eclipse/etrice/core/genmodel/fsm/fsmgen/impl/FsmGenPackageImpl.java index 0f795b6d2..aea4fb0bd 100644 --- a/plugins/org.eclipse.etrice.core.genmodel.fsm/src/org/eclipse/etrice/core/genmodel/fsm/fsmgen/impl/FsmGenPackageImpl.java +++ b/plugins/org.eclipse.etrice.core.genmodel.fsm/src/org/eclipse/etrice/core/genmodel/fsm/fsmgen/impl/FsmGenPackageImpl.java @@ -459,6 +459,9 @@ public class FsmGenPackageImpl extends EPackageImpl implements FsmGenPackage { op = addEOperation(expandedModelComponentEClass, ecorePackage.getEObject(), "getOrig", 0, 1, IS_UNIQUE, IS_ORDERED); addEParameter(op, ecorePackage.getEObject(), "copy", 0, 1, IS_UNIQUE, IS_ORDERED); + op = addEOperation(expandedModelComponentEClass, ecorePackage.getEObject(), "getCopy", 0, 1, IS_UNIQUE, IS_ORDERED); + addEParameter(op, ecorePackage.getEObject(), "orig", 0, 1, IS_UNIQUE, IS_ORDERED); + addEOperation(expandedModelComponentEClass, ecorePackage.getEString(), "getModelComponentName", 0, 1, IS_UNIQUE, IS_ORDERED); op = addEOperation(expandedModelComponentEClass, ecorePackage.getEObject(), "getData", 0, 1, IS_UNIQUE, IS_ORDERED); |