| <?xml version="1.0" encoding="UTF-8"?> |
| <genmodel:GenModel xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" |
| xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" modelDirectory="/org.eclipse.etrice.core.genmodel.fsm/src-gen" |
| editDirectory="/org.eclipse.etrice.core.genmodel.fsm.edit/src" editorDirectory="/org.eclipse.etrice.core.genmodel.fsm.editor/src" |
| modelPluginID="org.eclipse.etrice.core.genmodel.fsm" modelName="Fsmgen" rootExtendsClass="org.eclipse.emf.ecore.impl.MinimalEObjectImpl$Container" |
| importerID="org.eclipse.emf.importer.ecore" complianceLevel="8.0" copyrightFields="false" |
| editPluginID="org.eclipse.etrice.core.genmodel.fsm.edit" editorPluginID="org.eclipse.etrice.core.genmodel.fsm.editor" |
| usedGenPackages="../../org.eclipse.etrice.core.common/model/generated/Base.genmodel#//base ../../org.eclipse.etrice.core.fsm/model/generated/FSM.genmodel#//fSM" |
| operationReflection="true" importOrganizing="true"> |
| <foreignModel>fsmgen.ecore</foreignModel> |
| <genPackages prefix="FsmGen" basePackage="org.eclipse.etrice.core.genmodel.fsm" |
| disposableProviderFactory="true" fileExtensions="fsmgen2" ecorePackage="fsmgen.ecore#/"> |
| <genClasses ecoreClass="fsmgen.ecore#//GraphContainer"> |
| <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference fsmgen.ecore#//GraphContainer/graph"/> |
| <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference fsmgen.ecore#//GraphContainer/component"/> |
| <genFeatures createChild="false" ecoreFeature="ecore:EAttribute fsmgen.ecore#//GraphContainer/initializedTriggersInStates"/> |
| <genFeatures createChild="false" ecoreFeature="ecore:EAttribute fsmgen.ecore#//GraphContainer/initializedChainHeads"/> |
| <genFeatures createChild="false" ecoreFeature="ecore:EAttribute fsmgen.ecore#//GraphContainer/initializedCommonData"/> |
| </genClasses> |
| <genClasses ecoreClass="fsmgen.ecore#//Graph"> |
| <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference fsmgen.ecore#//Graph/nodes"/> |
| <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference fsmgen.ecore#//Graph/links"/> |
| <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference fsmgen.ecore#//Graph/stateGraph"/> |
| <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference fsmgen.ecore#//Graph/node"/> |
| <genOperations ecoreOperation="fsmgen.ecore#//Graph/toString" body="StringBuilder result = new StringBuilder();
result.append("StateGraph {\n");
for (Node n : getNodes()) {
	result.append(" " + n.toString() + "\n");
}
for (Link l : getLinks()) {
	result.append(" " + l.toString() + "\n");
}
result.append("}");
return result.toString();"/> |
| </genClasses> |
| <genClasses ecoreClass="fsmgen.ecore#//GraphItem"> |
| <genFeatures createChild="false" ecoreFeature="ecore:EAttribute fsmgen.ecore#//GraphItem/inherited"/> |
| </genClasses> |
| <genClasses ecoreClass="fsmgen.ecore#//Node"> |
| <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference fsmgen.ecore#//Node/graph"/> |
| <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference fsmgen.ecore#//Node/subgraph"/> |
| <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference fsmgen.ecore#//Node/outgoing"/> |
| <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference fsmgen.ecore#//Node/incoming"/> |
| <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference fsmgen.ecore#//Node/stateGraphNode"/> |
| <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference fsmgen.ecore#//Node/caughtTriggers"/> |
| <genFeatures createChild="false" ecoreFeature="ecore:EAttribute fsmgen.ecore#//Node/inheritanceLevel"/> |
| <genOperations ecoreOperation="fsmgen.ecore#//Node/toString" body="String type = "?";
if (getStateGraphNode() instanceof <%org.eclipse.etrice.core.fsm.fSM.RefinedState%>) {
	type = "RefinedState";
}
else if (getStateGraphNode() instanceof <%org.eclipse.etrice.core.fsm.fSM.SimpleState%>) {
	type = "SimpleState";
}
else if (getStateGraphNode() instanceof <%org.eclipse.etrice.core.fsm.fSM.TrPoint%>) {
	type = "TrPoint";
}
else if (getStateGraphNode() instanceof <%org.eclipse.etrice.core.fsm.fSM.ChoicePoint%>) {
	type = "ChoicePoint";
}
return "Node " + getStateGraphNode().getName() + " (" + type + ")";"/> |
| </genClasses> |
| <genClasses ecoreClass="fsmgen.ecore#//Link"> |
| <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference fsmgen.ecore#//Link/graph"/> |
| <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference fsmgen.ecore#//Link/source"/> |
| <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference fsmgen.ecore#//Link/target"/> |
| <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference fsmgen.ecore#//Link/chainHeads"/> |
| <genFeatures createChild="false" ecoreFeature="ecore:EAttribute fsmgen.ecore#//Link/ifitemTriggered"/> |
| <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference fsmgen.ecore#//Link/commonData"/> |
| <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference fsmgen.ecore#//Link/transition"/> |
| <genOperations ecoreOperation="fsmgen.ecore#//Link/toString" body="if (getTransition() instanceof <%org.eclipse.etrice.core.fsm.fSM.InitialTransition%>) {
	return "Link initial -> " + getTarget().toString() + " (InitialTransition)";
}
else if (getTransition() instanceof <%org.eclipse.etrice.core.fsm.fSM.NonInitialTransition%>) {
	return "Link " + getSource().toString() + " -> " + getTarget().toString() + " (InitialTransition)";
}
else if (getTransition() instanceof <%org.eclipse.etrice.core.fsm.fSM.RefinedTransition%>) {
	return "RefinedTransition";
}
return "?";"/> |
| </genClasses> |
| <genClasses ecoreClass="fsmgen.ecore#//CommonTrigger"> |
| <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference fsmgen.ecore#//CommonTrigger/msg"/> |
| <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference fsmgen.ecore#//CommonTrigger/ifitem"/> |
| <genFeatures createChild="false" ecoreFeature="ecore:EAttribute fsmgen.ecore#//CommonTrigger/hasGuard"/> |
| <genFeatures createChild="false" ecoreFeature="ecore:EAttribute fsmgen.ecore#//CommonTrigger/trigger"/> |
| <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference fsmgen.ecore#//CommonTrigger/links"/> |
| </genClasses> |
| <genClasses ecoreClass="fsmgen.ecore#//FSMGenElement"/> |
| </genPackages> |
| </genmodel:GenModel> |