Package org.palladiosimulator.pcm.seff
Interface BranchAction
-
- All Superinterfaces:
AbstractAction
,AbstractInternalControlFlowAction
,org.eclipse.emf.cdo.CDOObject
,org.eclipse.emf.cdo.common.id.CDOWithID
,Entity
,EObject
,de.uka.ipd.sdq.identifier.Identifier
,NamedElement
,Notifier
- All Known Implementing Classes:
BranchActionImpl
public interface BranchAction extends AbstractInternalControlFlowAction
A representation of the model object 'Branch Action'. The BranchAction splits the RDSEFF control flow with an XOR-semantic, meaning that the control flow continues on exactly one of its attached AbstractBranchTransitions. The RDSEFF supports two different kinds of branch transitions, GuardedBranchTransitions, and ProbabilisticBranchTransitions. RDSEFFs do not allow to use both kinds of transitions on a single BranchAction. Analysis or simulation tools must select exactly one transition based on the included guard or probability, before continuing at a BranchAction.The following features are supported:
- See Also:
SeffPackage.getBranchAction()
- Generated class or method.
- EMF model class or method.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description boolean
AllProbabilisticBranchProbabilitiesMustSumUpTo1(DiagnosticChain diagnostics, Map<Object,Object> context)
boolean
EitherGuardedBranchesOrProbabilisiticBranchTransitions(DiagnosticChain diagnostics, Map<Object,Object> context)
EList<AbstractBranchTransition>
getBranches_Branch()
Returns the value of the 'Branches Branch' containment reference list.-
Methods inherited from interface org.palladiosimulator.pcm.seff.AbstractAction
getPredecessor_AbstractAction, getResourceDemandingBehaviour_AbstractAction, getSuccessor_AbstractAction, setPredecessor_AbstractAction, setResourceDemandingBehaviour_AbstractAction, setSuccessor_AbstractAction
-
Methods inherited from interface org.palladiosimulator.pcm.seff.AbstractInternalControlFlowAction
getInfrastructureCall__Action, getResourceCall__Action, getResourceDemand_Action
-
Methods inherited from interface org.eclipse.emf.cdo.CDOObject
cdoConflict, cdoDirectResource, cdoHistory, cdoID, cdoInvalid, cdoLockState, cdoPermission, cdoPrefetch, cdoReadLock, cdoReload, cdoResource, cdoRevision, cdoRevision, cdoState, cdoView, cdoWriteLock, cdoWriteOption
-
Methods inherited from interface org.eclipse.emf.ecore.EObject
eAllContents, eClass, eContainer, eContainingFeature, eContainmentFeature, eContents, eCrossReferences, eGet, eGet, eInvoke, eIsProxy, eIsSet, eResource, eSet, eUnset
-
Methods inherited from interface org.palladiosimulator.pcm.core.entity.NamedElement
getEntityName, setEntityName
-
Methods inherited from interface org.eclipse.emf.common.notify.Notifier
eAdapters, eDeliver, eNotify, eSetDeliver
-
-
-
-
Field Detail
-
copyright
static final String copyright
- See Also:
- Constant Field Values
- Generated class or method.
-
-
Method Detail
-
getBranches_Branch
EList<AbstractBranchTransition> getBranches_Branch()
Returns the value of the 'Branches Branch' containment reference list. The list contents are of typeAbstractBranchTransition
. It is bidirectional and its opposite is 'Branch Action Abstract Branch Transition
'.If the meaning of the 'Branches Branch' containment reference list isn't clear, there really should be more of a description here...
- Returns:
- the value of the 'Branches Branch' containment reference list.
- See Also:
SeffPackage.getBranchAction_Branches_Branch()
,AbstractBranchTransition.getBranchAction_AbstractBranchTransition()
- Generated class or method.
- EMF model class or method.
- opposite="branchAction_AbstractBranchTransition" containment="true" ordered="false"
-
EitherGuardedBranchesOrProbabilisiticBranchTransitions
boolean EitherGuardedBranchesOrProbabilisiticBranchTransitions(DiagnosticChain diagnostics, Map<Object,Object> context)
- Parameters:
diagnostics
- The chain of diagnostics to which problems are to be appended.context
- The cache of context-specific information.- Generated class or method.
- EMF model class or method.
- annotation= "http://www.eclipse.org/uml2/1.1.0/GenModel body='self.branches_Branch->forAll(bt|bt.oclIsTypeOf(ProbabilisticBranchTransition)) \r\nor self.branches_Branch->forAll(bt|bt.oclIsTypeOf(GuardedBranchTransition))'"
-
AllProbabilisticBranchProbabilitiesMustSumUpTo1
boolean AllProbabilisticBranchProbabilitiesMustSumUpTo1(DiagnosticChain diagnostics, Map<Object,Object> context)
- Parameters:
diagnostics
- The chain of diagnostics to which problems are to be appended.context
- The cache of context-specific information.- Generated class or method.
- EMF model class or method.
- annotation= "http://www.eclipse.org/uml2/1.1.0/GenModel body='if self.branches_Branch->forAll(oclIsTypeOf(ProbabilisticBranchTransition)) then \r\n\tself.branches_Branch->select(pbt|pbt.oclIsTypeOf(ProbabilisticBranchTransition))->collect(pbt|pbt.oclAsType(ProbabilisticBranchTransition).branchProbability)->sum() > 0.9999 \r\n\tand self.branches_Branch->select(pbt|pbt.oclIsTypeOf(ProbabilisticBranchTransition))->collect(pbt|pbt.oclAsType(ProbabilisticBranchTransition).branchProbability)->sum() < 1.0001 \r\n\telse true \r\nendif'"
-
-