/** * Copyright (c) 2014 protos software gmbh (http://www.protos.de). * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * CONTRIBUTORS: * Henrik Rentz-Reichert (initial contribution) * */ package org.eclipse.etrice.core.genmodel.fsm.fsmgen; import org.eclipse.emf.common.util.EList; import org.eclipse.emf.ecore.EObject; import org.eclipse.etrice.core.fsm.fSM.AbstractInterfaceItem; import org.eclipse.etrice.core.fsm.fSM.AbstractMessage; import org.eclipse.etrice.core.fsm.fSM.ContinuationTransition; import org.eclipse.etrice.core.fsm.fSM.MessageFromIf; import org.eclipse.etrice.core.fsm.fSM.ModelComponent; import org.eclipse.etrice.core.fsm.fSM.State; import org.eclipse.etrice.core.fsm.fSM.StateGraph; import org.eclipse.etrice.core.fsm.fSM.StateGraphItem; import org.eclipse.etrice.core.fsm.fSM.StateGraphNode; import org.eclipse.etrice.core.fsm.fSM.Transition; import org.eclipse.etrice.core.fsm.fSM.Trigger; /** * * A representation of the model object 'Expanded Model Component'. * * *

* The following features are supported: *

*

* * @see org.eclipse.etrice.core.genmodel.fsm.fsmgen.FsmGenPackage#getExpandedModelComponent() * @model abstract="true" * @generated */ public interface ExpandedModelComponent extends EObject { /** * Returns the value of the 'Model Component' reference. * *

* If the meaning of the 'Model Component' reference isn't clear, * there really should be more of a description here... *

* * @return the value of the 'Model Component' reference. * @see #setModelComponent(ModelComponent) * @see org.eclipse.etrice.core.genmodel.fsm.fsmgen.FsmGenPackage#getExpandedModelComponent_ModelComponent() * @model * @generated */ ModelComponent getModelComponent(); /** * Sets the value of the '{@link org.eclipse.etrice.core.genmodel.fsm.fsmgen.ExpandedModelComponent#getModelComponent Model Component}' reference. * * * @param value the new value of the 'Model Component' reference. * @see #getModelComponent() * @generated */ void setModelComponent(ModelComponent value); /** * Returns the value of the 'State Machine' containment reference. * *

* If the meaning of the 'State Machine' containment reference isn't clear, * there really should be more of a description here... *

* * @return the value of the 'State Machine' containment reference. * @see #setStateMachine(StateGraph) * @see org.eclipse.etrice.core.genmodel.fsm.fsmgen.FsmGenPackage#getExpandedModelComponent_StateMachine() * @model containment="true" * @generated */ StateGraph getStateMachine(); /** * Sets the value of the '{@link org.eclipse.etrice.core.genmodel.fsm.fsmgen.ExpandedModelComponent#getStateMachine State Machine}' containment reference. * * * @param value the new value of the 'State Machine' containment reference. * @see #getStateMachine() * @generated */ void setStateMachine(StateGraph value); /** * * * @model validatorType="org.eclipse.etrice.core.genmodel.fsm.fsmgen.IDiagnostician" * @generated */ void prepare(IDiagnostician validator); /** * * * @model * @generated */ void release(); /** * * * @model * @generated */ void addOwnObject(StateGraphItem obj); /** * * * @model * @generated */ boolean isOwnObject(StateGraphItem obj); /** * * * @model * @generated */ boolean hasStateMachine(); /** * * * @model * @generated */ String getTriggerCodeName(MessageFromIf mif); /** * * * @model * @generated */ String getTriggerCodeName(ActiveTrigger at); /** * * * @model * @generated */ EList getOutgoingTransitions(StateGraphNode node); /** * * * @model * @generated */ EList getIncomingTransitions(StateGraphNode node); /** * * * @model * @generated */ EList getActiveTriggers(State state); /** * * * @model kind="operation" * @generated */ EList getTriggers(); /** * * * @model kind="operation" * @generated */ EList getOwnTriggers(); /** * * * @model * @generated */ String getMessageID(MessageFromIf mif); /** * * * @model * @generated */ TransitionChain getChain(Transition trans); /** * Returns the value of the 'Transition Chains' containment reference list. * The list contents are of type {@link org.eclipse.etrice.core.genmodel.fsm.fsmgen.TransitionChain}. * * * @return the value of the 'Transition Chains' containment reference list. * @see org.eclipse.etrice.core.genmodel.fsm.fsmgen.FsmGenPackage#getExpandedModelComponent_TransitionChains() * @model containment="true" * @generated */ EList getTransitionChains(); /** * * * @model kind="operation" * @generated */ EList getOwnTransitionChains(); /** * * * @model * @generated */ EList getOwnInterfaceItems(ModelComponent mc); /** * * * @model kind="operation" * @generated */ EList getAllInterfaceItems(); /** * * * @model * @generated */ boolean isMatching(Trigger trig, String trigstr); /** * * * @model outMany="true" * @generated */ ContinuationTransition getDefaultBranch(EList out); /** * * * @model * @generated */ EObject getOrig(EObject copy); /** * * * @model kind="operation" * @generated */ String getModelComponentName(); /** * * * @model * @generated */ EObject getData(Transition trans); /** * * * @model * @generated */ EList getIncomingMessages(AbstractInterfaceItem ifitem); /** * * * @model * @generated */ TransitionChain addTransitionChain(Transition trans); /** * * * @model * @generated */ int getInterfaceItemLocalId(AbstractInterfaceItem ifitem); /** * * * @model chainsMany="true" * @generated */ EObject computeCommonChainData(EList chains); } // ExpandedModelComponent