summaryrefslogtreecommitdiffstats
path: root/rba.model.sound/src/rba/sound/impl
diff options
context:
space:
mode:
authorKenji Hosokawa <khosokawa@jp.adit-jv.com>2021-08-03 18:42:39 +0900
committerKenji Hosokawa <khosokawa@jp.adit-jv.com>2021-08-06 19:32:38 +0900
commitbe4f78978faba3d3ceb88df02a7f93a2e09ff1e0 (patch)
tree1f3f1a96251ac4f655c8a96fc33d5d4ee779cd06 /rba.model.sound/src/rba/sound/impl
parent71ca7c6cab863767ef30c8bd05b2bbfda8731cb5 (diff)
Initial commit
Bug-AGL: SPEC-4033 Signed-off-by: Kenji Hosokawa <khosokawa@jp.adit-jv.com>
Diffstat (limited to 'rba.model.sound/src/rba/sound/impl')
-rw-r--r--rba.model.sound/src/rba/sound/impl/AllInstanceOfSoundContentImpl.java73
-rw-r--r--rba.model.sound/src/rba/sound/impl/AllInstanceOfZoneImpl.java72
-rw-r--r--rba.model.sound/src/rba/sound/impl/IsAttenuatedImpl.java70
-rw-r--r--rba.model.sound/src/rba/sound/impl/IsChangedOutputImpl.java186
-rw-r--r--rba.model.sound/src/rba/sound/impl/IsMutedImpl.java70
-rw-r--r--rba.model.sound/src/rba/sound/impl/IsOutputtedImpl.java70
-rw-r--r--rba.model.sound/src/rba/sound/impl/IsOutputtedOnImpl.java193
-rw-r--r--rba.model.sound/src/rba/sound/impl/IsSoundingImpl.java58
-rw-r--r--rba.model.sound/src/rba/sound/impl/IsTranslatedSoundToImpl.java205
-rw-r--r--rba.model.sound/src/rba/sound/impl/MuteLowerPriorityImpl.java192
-rw-r--r--rba.model.sound/src/rba/sound/impl/OutputtingSoundImpl.java70
-rw-r--r--rba.model.sound/src/rba/sound/impl/RBASoundFactoryImpl.java253
-rw-r--r--rba.model.sound/src/rba/sound/impl/RBASoundPackageImpl.java925
-rw-r--r--rba.model.sound/src/rba/sound/impl/SoundContentImpl.java60
-rw-r--r--rba.model.sound/src/rba/sound/impl/SoundContentOperatorImpl.java62
-rw-r--r--rba.model.sound/src/rba/sound/impl/SoundContentSetImpl.java62
-rw-r--r--rba.model.sound/src/rba/sound/impl/SoundContentStateImpl.java62
-rw-r--r--rba.model.sound/src/rba/sound/impl/ZoneImpl.java196
-rw-r--r--rba.model.sound/src/rba/sound/impl/ZoneOperatorImpl.java64
-rw-r--r--rba.model.sound/src/rba/sound/impl/ZoneSetImpl.java59
20 files changed, 3002 insertions, 0 deletions
diff --git a/rba.model.sound/src/rba/sound/impl/AllInstanceOfSoundContentImpl.java b/rba.model.sound/src/rba/sound/impl/AllInstanceOfSoundContentImpl.java
new file mode 100644
index 0000000..8bd0e80
--- /dev/null
+++ b/rba.model.sound/src/rba/sound/impl/AllInstanceOfSoundContentImpl.java
@@ -0,0 +1,73 @@
+/**
+ */
+package rba.sound.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.ExpressionType;
+
+import rba.core.impl.SetExpressionImpl;
+
+import rba.sound.AllInstanceOfSoundContent;
+import rba.sound.RBASoundPackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>All Instance Of Sound Content</b></em>'. <!--
+ * end-user-doc -->
+ *
+ * @generated
+ */
+public class AllInstanceOfSoundContentImpl extends SetExpressionImpl implements AllInstanceOfSoundContent {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected AllInstanceOfSoundContentImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBASoundPackage.Literals.ALL_INSTANCE_OF_SOUND_CONTENT;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getExpressionText() {
+ return "ALL_SOUNDCONTENTS";
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getUnderlyingType() {
+ return ExpressionType.SET_OF_SOUND;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBASoundPackage.ALL_INSTANCE_OF_SOUND_CONTENT___GET_EXPRESSION_TEXT:
+ return getExpressionText();
+ case RBASoundPackage.ALL_INSTANCE_OF_SOUND_CONTENT___GET_UNDERLYING_TYPE:
+ return getUnderlyingType();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // AllInstanceOfSoundContentImpl
diff --git a/rba.model.sound/src/rba/sound/impl/AllInstanceOfZoneImpl.java b/rba.model.sound/src/rba/sound/impl/AllInstanceOfZoneImpl.java
new file mode 100644
index 0000000..ee87353
--- /dev/null
+++ b/rba.model.sound/src/rba/sound/impl/AllInstanceOfZoneImpl.java
@@ -0,0 +1,72 @@
+/**
+ */
+package rba.sound.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.ExpressionType;
+
+import rba.core.impl.SetExpressionImpl;
+
+import rba.sound.AllInstanceOfZone;
+import rba.sound.RBASoundPackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>All Instance Of Zone</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class AllInstanceOfZoneImpl extends SetExpressionImpl implements AllInstanceOfZone {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected AllInstanceOfZoneImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBASoundPackage.Literals.ALL_INSTANCE_OF_ZONE;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getExpressionText() {
+ return "ALL_ZONES";
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getUnderlyingType() {
+ return ExpressionType.SET_OF_ZONE;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBASoundPackage.ALL_INSTANCE_OF_ZONE___GET_EXPRESSION_TEXT:
+ return getExpressionText();
+ case RBASoundPackage.ALL_INSTANCE_OF_ZONE___GET_UNDERLYING_TYPE:
+ return getUnderlyingType();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // AllInstanceOfZoneImpl
diff --git a/rba.model.sound/src/rba/sound/impl/IsAttenuatedImpl.java b/rba.model.sound/src/rba/sound/impl/IsAttenuatedImpl.java
new file mode 100644
index 0000000..31b670b
--- /dev/null
+++ b/rba.model.sound/src/rba/sound/impl/IsAttenuatedImpl.java
@@ -0,0 +1,70 @@
+/**
+ */
+package rba.sound.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.ExpressionType;
+
+import rba.sound.IsAttenuated;
+import rba.sound.RBASoundPackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Is Attenuated</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class IsAttenuatedImpl extends ZoneOperatorImpl implements IsAttenuated {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected IsAttenuatedImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBASoundPackage.Literals.IS_ATTENUATED;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSymbol() {
+ return ".isAttenauted()";
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getUnderlyingType() {
+ return ExpressionType.BOOLEAN;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBASoundPackage.IS_ATTENUATED___GET_SYMBOL:
+ return getSymbol();
+ case RBASoundPackage.IS_ATTENUATED___GET_UNDERLYING_TYPE:
+ return getUnderlyingType();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // IsAttenuatedImpl
diff --git a/rba.model.sound/src/rba/sound/impl/IsChangedOutputImpl.java b/rba.model.sound/src/rba/sound/impl/IsChangedOutputImpl.java
new file mode 100644
index 0000000..72e29f0
--- /dev/null
+++ b/rba.model.sound/src/rba/sound/impl/IsChangedOutputImpl.java
@@ -0,0 +1,186 @@
+/**
+ */
+package rba.sound.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.AndOperator;
+import rba.core.Expression;
+import rba.core.ExpressionType;
+import rba.core.NotOperator;
+import rba.core.ObjectCompare;
+import rba.core.ObjectReference;
+import rba.core.Operator;
+import rba.core.OrOperator;
+import rba.core.PreviousModifier;
+import rba.core.RBACoreFactory;
+import rba.core.RBACorePackage;
+import rba.core.SugarExpression;
+import rba.core.SugarExpressionBase;
+import rba.sound.IsChangedOutput;
+import rba.sound.IsOutputted;
+import rba.sound.OutputtingSound;
+import rba.sound.RBASoundFactory;
+import rba.sound.RBASoundPackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Is Changed Output</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class IsChangedOutputImpl extends ZoneOperatorImpl implements IsChangedOutput {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected IsChangedOutputImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBASoundPackage.Literals.IS_CHANGED_OUTPUT;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSymbol() {
+ return ".isChangedOutput()";
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getUnderlyingType() {
+ return ExpressionType.BOOLEAN;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean canExpand() {
+ return true;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated NOT
+ */
+ public Expression getExpanded() {
+ OrOperator or = RBACoreFactory.eINSTANCE.createOrOperator();
+ NotOperator not = RBACoreFactory.eINSTANCE.createNotOperator();
+ ObjectCompare equal = RBACoreFactory.eINSTANCE.createObjectCompare();
+ OutputtingSound outSound = RBASoundFactory.eINSTANCE.createOutputtingSound();
+ PreviousModifier pre = RBACoreFactory.eINSTANCE.createPreviousModifier();
+ OrOperator leftOr = RBACoreFactory.eINSTANCE.createOrOperator();
+ NotOperator leftnot = RBACoreFactory.eINSTANCE.createNotOperator();
+ AndOperator and = RBACoreFactory.eINSTANCE.createAndOperator();
+ IsOutputted outputted = RBASoundFactory.eINSTANCE.createIsOutputted();
+
+ pre.setObjReference((ObjectReference) org.eclipse.emf.ecore.util.EcoreUtil.copy(getOperand().get(0)));
+ outSound.getOperand().add(org.eclipse.emf.ecore.util.EcoreUtil.copy(pre));
+ equal.getOperand().add(outSound);
+ outSound = RBASoundFactory.eINSTANCE.createOutputtingSound();
+ outSound.getOperand().add(org.eclipse.emf.ecore.util.EcoreUtil.copy(getOperand().get(0)));
+ equal.getOperand().add(outSound);
+ not.getOperand().add(equal);
+
+ outputted.getOperand().add(org.eclipse.emf.ecore.util.EcoreUtil.copy(pre));
+ and.getOperand().add(outputted);
+ outputted = RBASoundFactory.eINSTANCE.createIsOutputted();
+ outputted.getOperand().add(org.eclipse.emf.ecore.util.EcoreUtil.copy(getOperand().get(0)));
+ leftnot.getOperand().add(outputted);
+ and.getOperand().add(leftnot);
+ leftOr.getOperand().add(and);
+
+ leftnot = RBACoreFactory.eINSTANCE.createNotOperator();
+ outputted = RBASoundFactory.eINSTANCE.createIsOutputted();
+ outputted.getOperand().add(org.eclipse.emf.ecore.util.EcoreUtil.copy(pre));
+ leftnot.getOperand().add(outputted);
+ outputted = RBASoundFactory.eINSTANCE.createIsOutputted();
+ outputted.getOperand().add(org.eclipse.emf.ecore.util.EcoreUtil.copy(getOperand().get(0)));
+ and = RBACoreFactory.eINSTANCE.createAndOperator();
+ and.getOperand().add(leftnot);
+ and.getOperand().add(outputted);
+ leftOr.getOperand().add(and);
+
+ or.getOperand().add(not);
+ or.getOperand().add(leftOr);
+
+ return or;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public int eDerivedOperationID(int baseOperationID, Class<?> baseClass) {
+ if (baseClass == Expression.class) {
+ switch (baseOperationID) {
+ case RBACorePackage.EXPRESSION___GET_UNDERLYING_TYPE:
+ return RBASoundPackage.IS_CHANGED_OUTPUT___GET_UNDERLYING_TYPE;
+ default:
+ return super.eDerivedOperationID(baseOperationID, baseClass);
+ }
+ }
+ if (baseClass == Operator.class) {
+ switch (baseOperationID) {
+ case RBACorePackage.OPERATOR___GET_SYMBOL:
+ return RBASoundPackage.IS_CHANGED_OUTPUT___GET_SYMBOL;
+ default:
+ return super.eDerivedOperationID(baseOperationID, baseClass);
+ }
+ }
+ if (baseClass == SugarExpression.class) {
+ switch (baseOperationID) {
+ case RBACorePackage.SUGAR_EXPRESSION___CAN_EXPAND:
+ return RBASoundPackage.IS_CHANGED_OUTPUT___CAN_EXPAND;
+ case RBACorePackage.SUGAR_EXPRESSION___GET_EXPANDED:
+ return RBASoundPackage.IS_CHANGED_OUTPUT___GET_EXPANDED;
+ default:
+ return -1;
+ }
+ }
+ if (baseClass == SugarExpressionBase.class) {
+ switch (baseOperationID) {
+ case RBACorePackage.SUGAR_EXPRESSION_BASE___CAN_EXPAND:
+ return RBASoundPackage.IS_CHANGED_OUTPUT___CAN_EXPAND;
+ default:
+ return -1;
+ }
+ }
+ return super.eDerivedOperationID(baseOperationID, baseClass);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBASoundPackage.IS_CHANGED_OUTPUT___GET_SYMBOL:
+ return getSymbol();
+ case RBASoundPackage.IS_CHANGED_OUTPUT___GET_UNDERLYING_TYPE:
+ return getUnderlyingType();
+ case RBASoundPackage.IS_CHANGED_OUTPUT___CAN_EXPAND:
+ return canExpand();
+ case RBASoundPackage.IS_CHANGED_OUTPUT___GET_EXPANDED:
+ return getExpanded();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // IsChangedOutputImpl
diff --git a/rba.model.sound/src/rba/sound/impl/IsMutedImpl.java b/rba.model.sound/src/rba/sound/impl/IsMutedImpl.java
new file mode 100644
index 0000000..4233619
--- /dev/null
+++ b/rba.model.sound/src/rba/sound/impl/IsMutedImpl.java
@@ -0,0 +1,70 @@
+/**
+ */
+package rba.sound.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.ExpressionType;
+
+import rba.sound.IsMuted;
+import rba.sound.RBASoundPackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Is Muted</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class IsMutedImpl extends ZoneOperatorImpl implements IsMuted {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected IsMutedImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBASoundPackage.Literals.IS_MUTED;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSymbol() {
+ return ".isMuted()";
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getUnderlyingType() {
+ return ExpressionType.BOOLEAN;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBASoundPackage.IS_MUTED___GET_SYMBOL:
+ return getSymbol();
+ case RBASoundPackage.IS_MUTED___GET_UNDERLYING_TYPE:
+ return getUnderlyingType();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // IsMutedImpl
diff --git a/rba.model.sound/src/rba/sound/impl/IsOutputtedImpl.java b/rba.model.sound/src/rba/sound/impl/IsOutputtedImpl.java
new file mode 100644
index 0000000..6662b1b
--- /dev/null
+++ b/rba.model.sound/src/rba/sound/impl/IsOutputtedImpl.java
@@ -0,0 +1,70 @@
+/**
+ */
+package rba.sound.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.ExpressionType;
+
+import rba.sound.IsOutputted;
+import rba.sound.RBASoundPackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Is Outputted</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class IsOutputtedImpl extends ZoneOperatorImpl implements IsOutputted {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected IsOutputtedImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBASoundPackage.Literals.IS_OUTPUTTED;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSymbol() {
+ return ".isOutputted()";
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getUnderlyingType() {
+ return ExpressionType.BOOLEAN;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBASoundPackage.IS_OUTPUTTED___GET_SYMBOL:
+ return getSymbol();
+ case RBASoundPackage.IS_OUTPUTTED___GET_UNDERLYING_TYPE:
+ return getUnderlyingType();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // IsOutputtedImpl
diff --git a/rba.model.sound/src/rba/sound/impl/IsOutputtedOnImpl.java b/rba.model.sound/src/rba/sound/impl/IsOutputtedOnImpl.java
new file mode 100644
index 0000000..3fd64c0
--- /dev/null
+++ b/rba.model.sound/src/rba/sound/impl/IsOutputtedOnImpl.java
@@ -0,0 +1,193 @@
+/**
+ */
+package rba.sound.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.AndOperator;
+import rba.core.ContentOperator;
+import rba.core.Expression;
+import rba.core.ExpressionType;
+import rba.core.ObjectCompare;
+import rba.core.Operator;
+import rba.core.RBACoreFactory;
+import rba.core.RBACorePackage;
+import rba.core.SugarExpression;
+import rba.core.SugarExpressionBase;
+import rba.sound.IsOutputted;
+import rba.sound.IsOutputtedOn;
+import rba.sound.OutputtingSound;
+import rba.sound.RBASoundFactory;
+import rba.sound.RBASoundPackage;
+import rba.sound.SoundContentOperator;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Is Outputted On</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class IsOutputtedOnImpl extends SoundContentOperatorImpl implements IsOutputtedOn {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected IsOutputtedOnImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBASoundPackage.Literals.IS_OUTPUTTED_ON;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSymbol() {
+ return ".isOutputtedOn";
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getUnderlyingType() {
+ return ExpressionType.BOOLEAN;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getExpressionText() {
+ StringBuilder expressionText = new StringBuilder();
+ EList<rba.core.Expression> expressions = getOperand();
+ expressionText.append(expressions.size() > 0 ? expressions.get(0).getExpressionText() : "[Invalid_Expression]");
+ expressionText.append(getSymbol());
+ expressionText.append("(");
+ expressionText.append(expressions.size() > 1 ? expressions.get(1).getExpressionText() : "[Invalid_Expression]");
+ expressionText.append(")");
+ return expressionText.toString();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean canExpand() {
+ return true;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated NOT
+ */
+ public Expression getExpanded() {
+ AndOperator AND = RBACoreFactory.eINSTANCE.createAndOperator();
+ IsOutputted isOutputted = RBASoundFactory.eINSTANCE.createIsOutputted();
+ ObjectCompare equal = RBACoreFactory.eINSTANCE.createObjectCompare();
+ OutputtingSound outputtingSound = RBASoundFactory.eINSTANCE.createOutputtingSound();
+
+ isOutputted.getOperand().add(org.eclipse.emf.ecore.util.EcoreUtil.copy(getOperand().get(1)));
+ AND.getOperand().add(isOutputted);
+
+ outputtingSound.getOperand().add(org.eclipse.emf.ecore.util.EcoreUtil.copy(getOperand().get(1)));
+ equal.getOperand().add(outputtingSound);
+ equal.getOperand().add(org.eclipse.emf.ecore.util.EcoreUtil.copy(getOperand().get(0)));
+ AND.getOperand().add(equal);
+
+ return AND;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public int eDerivedOperationID(int baseOperationID, Class<?> baseClass) {
+ if (baseClass == Expression.class) {
+ switch (baseOperationID) {
+ case RBACorePackage.EXPRESSION___GET_UNDERLYING_TYPE:
+ return RBASoundPackage.IS_OUTPUTTED_ON___GET_UNDERLYING_TYPE;
+ case RBACorePackage.EXPRESSION___GET_EXPRESSION_TEXT:
+ return RBASoundPackage.IS_OUTPUTTED_ON___GET_EXPRESSION_TEXT;
+ default:
+ return super.eDerivedOperationID(baseOperationID, baseClass);
+ }
+ }
+ if (baseClass == Operator.class) {
+ switch (baseOperationID) {
+ case RBACorePackage.OPERATOR___GET_SYMBOL:
+ return RBASoundPackage.IS_OUTPUTTED_ON___GET_SYMBOL;
+ default:
+ return super.eDerivedOperationID(baseOperationID, baseClass);
+ }
+ }
+ if (baseClass == ContentOperator.class) {
+ switch (baseOperationID) {
+ case RBACorePackage.CONTENT_OPERATOR___GET_EXPRESSION_TEXT:
+ return RBASoundPackage.IS_OUTPUTTED_ON___GET_EXPRESSION_TEXT;
+ default:
+ return super.eDerivedOperationID(baseOperationID, baseClass);
+ }
+ }
+ if (baseClass == SoundContentOperator.class) {
+ switch (baseOperationID) {
+ case RBASoundPackage.SOUND_CONTENT_OPERATOR___GET_UNDERLYING_TYPE:
+ return RBASoundPackage.IS_OUTPUTTED_ON___GET_UNDERLYING_TYPE;
+ default:
+ return super.eDerivedOperationID(baseOperationID, baseClass);
+ }
+ }
+ if (baseClass == SugarExpression.class) {
+ switch (baseOperationID) {
+ case RBACorePackage.SUGAR_EXPRESSION___CAN_EXPAND:
+ return RBASoundPackage.IS_OUTPUTTED_ON___CAN_EXPAND;
+ case RBACorePackage.SUGAR_EXPRESSION___GET_EXPANDED:
+ return RBASoundPackage.IS_OUTPUTTED_ON___GET_EXPANDED;
+ default:
+ return -1;
+ }
+ }
+ if (baseClass == SugarExpressionBase.class) {
+ switch (baseOperationID) {
+ case RBACorePackage.SUGAR_EXPRESSION_BASE___CAN_EXPAND:
+ return RBASoundPackage.IS_OUTPUTTED_ON___CAN_EXPAND;
+ default:
+ return -1;
+ }
+ }
+ return super.eDerivedOperationID(baseOperationID, baseClass);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBASoundPackage.IS_OUTPUTTED_ON___GET_SYMBOL:
+ return getSymbol();
+ case RBASoundPackage.IS_OUTPUTTED_ON___GET_UNDERLYING_TYPE:
+ return getUnderlyingType();
+ case RBASoundPackage.IS_OUTPUTTED_ON___GET_EXPRESSION_TEXT:
+ return getExpressionText();
+ case RBASoundPackage.IS_OUTPUTTED_ON___CAN_EXPAND:
+ return canExpand();
+ case RBASoundPackage.IS_OUTPUTTED_ON___GET_EXPANDED:
+ return getExpanded();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // IsOutputtedOnImpl
diff --git a/rba.model.sound/src/rba/sound/impl/IsSoundingImpl.java b/rba.model.sound/src/rba/sound/impl/IsSoundingImpl.java
new file mode 100644
index 0000000..af0cf9d
--- /dev/null
+++ b/rba.model.sound/src/rba/sound/impl/IsSoundingImpl.java
@@ -0,0 +1,58 @@
+/**
+ */
+package rba.sound.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.sound.IsSounding;
+import rba.sound.RBASoundPackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Is Sounding</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class IsSoundingImpl extends SoundContentOperatorImpl implements IsSounding {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected IsSoundingImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBASoundPackage.Literals.IS_SOUNDING;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSymbol() {
+ return ".isSounding()";
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBASoundPackage.IS_SOUNDING___GET_SYMBOL:
+ return getSymbol();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // IsSoundingImpl
diff --git a/rba.model.sound/src/rba/sound/impl/IsTranslatedSoundToImpl.java b/rba.model.sound/src/rba/sound/impl/IsTranslatedSoundToImpl.java
new file mode 100644
index 0000000..6a01be5
--- /dev/null
+++ b/rba.model.sound/src/rba/sound/impl/IsTranslatedSoundToImpl.java
@@ -0,0 +1,205 @@
+/**
+ */
+package rba.sound.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.AndOperator;
+import rba.core.Expression;
+import rba.core.ExpressionType;
+import rba.core.NotOperator;
+import rba.core.ObjectCompare;
+import rba.core.ObjectReference;
+import rba.core.Operator;
+import rba.core.OrOperator;
+import rba.core.PreviousModifier;
+import rba.core.RBACoreFactory;
+import rba.core.RBACorePackage;
+import rba.core.SugarExpression;
+import rba.core.SugarExpressionBase;
+import rba.sound.IsOutputted;
+import rba.sound.IsTranslatedSoundTo;
+import rba.sound.OutputtingSound;
+import rba.sound.RBASoundFactory;
+import rba.sound.RBASoundPackage;
+import rba.sound.ZoneOperator;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Is Translated Sound To</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class IsTranslatedSoundToImpl extends ZoneOperatorImpl implements IsTranslatedSoundTo {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected IsTranslatedSoundToImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBASoundPackage.Literals.IS_TRANSLATED_SOUND_TO;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSymbol() {
+ return ".isTranslatedSoundTo";
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getUnderlyingType() {
+ return ExpressionType.BOOLEAN;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getExpressionText() {
+ StringBuilder expressionText = new StringBuilder();
+ EList<rba.core.Expression> expressions = getOperand();
+ expressionText.append(expressions.size() > 0 ? expressions.get(0).getExpressionText() : "[Invalid_Expression]");
+ expressionText.append(getSymbol());
+ expressionText.append("(");
+ expressionText.append(expressions.size() > 1 ? expressions.get(1).getExpressionText() : "[Invalid_Expression]");
+ expressionText.append(")");
+ return expressionText.toString();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean canExpand() {
+ return true;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated NOT
+ */
+ public Expression getExpanded() {
+ AndOperator AND = RBACoreFactory.eINSTANCE.createAndOperator();
+ IsOutputted isOutputted = RBASoundFactory.eINSTANCE.createIsOutputted();
+ ObjectCompare equal = RBACoreFactory.eINSTANCE.createObjectCompare();
+ OutputtingSound outSound = RBASoundFactory.eINSTANCE.createOutputtingSound();
+ PreviousModifier pre = RBACoreFactory.eINSTANCE.createPreviousModifier();
+ OrOperator or = RBACoreFactory.eINSTANCE.createOrOperator();
+ NotOperator not = RBACoreFactory.eINSTANCE.createNotOperator();
+
+ isOutputted.getOperand().add(org.eclipse.emf.ecore.util.EcoreUtil.copy(getOperand().get(0)));
+ AND.getOperand().add(isOutputted);
+
+ outSound.getOperand().add(org.eclipse.emf.ecore.util.EcoreUtil.copy(getOperand().get(0)));
+ equal.getOperand().add(outSound);
+ equal.getOperand().add(org.eclipse.emf.ecore.util.EcoreUtil.copy(getOperand().get(1)));
+ AND.getOperand().add(equal);
+
+ pre.setObjReference((ObjectReference) org.eclipse.emf.ecore.util.EcoreUtil.copy(getOperand().get(0)));
+ outSound = RBASoundFactory.eINSTANCE.createOutputtingSound();
+ outSound.getOperand().add(org.eclipse.emf.ecore.util.EcoreUtil.copy(pre));
+ equal = RBACoreFactory.eINSTANCE.createObjectCompare();
+ equal.getOperand().add(outSound);
+ equal.getOperand().add(org.eclipse.emf.ecore.util.EcoreUtil.copy(getOperand().get(1)));
+ not.getOperand().add(equal);
+ or.getOperand().add(not);
+
+ isOutputted = RBASoundFactory.eINSTANCE.createIsOutputted();
+ isOutputted.getOperand().add(pre);
+ not = RBACoreFactory.eINSTANCE.createNotOperator();
+ not.getOperand().add(isOutputted);
+ or.getOperand().add(not);
+ AND.getOperand().add(or);
+ return AND;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public int eDerivedOperationID(int baseOperationID, Class<?> baseClass) {
+ if (baseClass == Expression.class) {
+ switch (baseOperationID) {
+ case RBACorePackage.EXPRESSION___GET_UNDERLYING_TYPE:
+ return RBASoundPackage.IS_TRANSLATED_SOUND_TO___GET_UNDERLYING_TYPE;
+ case RBACorePackage.EXPRESSION___GET_EXPRESSION_TEXT:
+ return RBASoundPackage.IS_TRANSLATED_SOUND_TO___GET_EXPRESSION_TEXT;
+ default:
+ return super.eDerivedOperationID(baseOperationID, baseClass);
+ }
+ }
+ if (baseClass == Operator.class) {
+ switch (baseOperationID) {
+ case RBACorePackage.OPERATOR___GET_SYMBOL:
+ return RBASoundPackage.IS_TRANSLATED_SOUND_TO___GET_SYMBOL;
+ default:
+ return super.eDerivedOperationID(baseOperationID, baseClass);
+ }
+ }
+ if (baseClass == ZoneOperator.class) {
+ switch (baseOperationID) {
+ case RBASoundPackage.ZONE_OPERATOR___GET_EXPRESSION_TEXT:
+ return RBASoundPackage.IS_TRANSLATED_SOUND_TO___GET_EXPRESSION_TEXT;
+ default:
+ return super.eDerivedOperationID(baseOperationID, baseClass);
+ }
+ }
+ if (baseClass == SugarExpression.class) {
+ switch (baseOperationID) {
+ case RBACorePackage.SUGAR_EXPRESSION___CAN_EXPAND:
+ return RBASoundPackage.IS_TRANSLATED_SOUND_TO___CAN_EXPAND;
+ case RBACorePackage.SUGAR_EXPRESSION___GET_EXPANDED:
+ return RBASoundPackage.IS_TRANSLATED_SOUND_TO___GET_EXPANDED;
+ default:
+ return -1;
+ }
+ }
+ if (baseClass == SugarExpressionBase.class) {
+ switch (baseOperationID) {
+ case RBACorePackage.SUGAR_EXPRESSION_BASE___CAN_EXPAND:
+ return RBASoundPackage.IS_TRANSLATED_SOUND_TO___CAN_EXPAND;
+ default:
+ return -1;
+ }
+ }
+ return super.eDerivedOperationID(baseOperationID, baseClass);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBASoundPackage.IS_TRANSLATED_SOUND_TO___GET_SYMBOL:
+ return getSymbol();
+ case RBASoundPackage.IS_TRANSLATED_SOUND_TO___GET_UNDERLYING_TYPE:
+ return getUnderlyingType();
+ case RBASoundPackage.IS_TRANSLATED_SOUND_TO___GET_EXPRESSION_TEXT:
+ return getExpressionText();
+ case RBASoundPackage.IS_TRANSLATED_SOUND_TO___CAN_EXPAND:
+ return canExpand();
+ case RBASoundPackage.IS_TRANSLATED_SOUND_TO___GET_EXPANDED:
+ return getExpanded();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // IsTranslatedSoundToImpl
diff --git a/rba.model.sound/src/rba/sound/impl/MuteLowerPriorityImpl.java b/rba.model.sound/src/rba/sound/impl/MuteLowerPriorityImpl.java
new file mode 100644
index 0000000..6c7079c
--- /dev/null
+++ b/rba.model.sound/src/rba/sound/impl/MuteLowerPriorityImpl.java
@@ -0,0 +1,192 @@
+/**
+ */
+package rba.sound.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.AndOperator;
+import rba.core.ContentValue;
+import rba.core.Expression;
+import rba.core.ExpressionType;
+import rba.core.ImpliesOperator;
+import rba.core.IsGreaterThanOperator;
+import rba.core.IsLowerThanOperator;
+import rba.core.Operator;
+import rba.core.RBACoreFactory;
+import rba.core.RBACorePackage;
+import rba.core.SugarExpression;
+import rba.core.SugarExpressionBase;
+import rba.core.impl.OperatorImpl;
+import rba.sound.IsMuted;
+import rba.sound.MuteLowerPriority;
+import rba.sound.RBASoundFactory;
+import rba.sound.RBASoundPackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Mute Lower Priority</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class MuteLowerPriorityImpl extends OperatorImpl implements MuteLowerPriority {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected MuteLowerPriorityImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBASoundPackage.Literals.MUTE_LOWER_PRIORITY;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSymbol() {
+ return "MuteLowerPriority";
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getUnderlyingType() {
+ return ExpressionType.BOOLEAN;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getExpressionText() {
+ StringBuilder expressionText = new StringBuilder();
+ EList<rba.core.Expression> expressions = getOperand();
+ expressionText.append(getSymbol());
+ expressionText.append("(");
+ expressionText.append(expressions.size() > 0 ? expressions.get(0).getExpressionText() : "[Invalid_Expression]");
+ expressionText.append(",");
+ expressionText.append(expressions.size() > 1 ? expressions.get(1).getExpressionText() : "[Invalid_Expression]");
+ expressionText.append(")");
+ return expressionText.toString();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public boolean canExpand() {
+ return true;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated NOT
+ */
+ public Expression getExpanded() {
+ AndOperator AND = RBACoreFactory.eINSTANCE.createAndOperator();
+ ImpliesOperator implies = RBACoreFactory.eINSTANCE.createImpliesOperator();
+ IsLowerThanOperator lowerThan = RBACoreFactory.eINSTANCE.createIsLowerThanOperator();
+ ContentValue contentValue1 = RBACoreFactory.eINSTANCE.createContentValue();
+ ContentValue contentValue2 = RBACoreFactory.eINSTANCE.createContentValue();
+ IsMuted muted = RBASoundFactory.eINSTANCE.createIsMuted();
+ IsGreaterThanOperator greaterThan = RBACoreFactory.eINSTANCE.createIsGreaterThanOperator();
+
+ contentValue1.getOperand().add(org.eclipse.emf.ecore.util.EcoreUtil.copy(getOperand().get(0)));
+ contentValue2.getOperand().add(org.eclipse.emf.ecore.util.EcoreUtil.copy(getOperand().get(1)));
+ lowerThan.getOperand().add(org.eclipse.emf.ecore.util.EcoreUtil.copy(contentValue1));
+ lowerThan.getOperand().add(org.eclipse.emf.ecore.util.EcoreUtil.copy(contentValue2));
+ implies.getOperand().add(lowerThan);
+ muted.getOperand().add(org.eclipse.emf.ecore.util.EcoreUtil.copy(getOperand().get(0)));
+ implies.getOperand().add(muted);
+ AND.getOperand().add(implies);
+
+ implies = RBACoreFactory.eINSTANCE.createImpliesOperator();
+ greaterThan.getOperand().add(contentValue1);
+ greaterThan.getOperand().add(contentValue2);
+ implies.getOperand().add(greaterThan);
+
+ muted = RBASoundFactory.eINSTANCE.createIsMuted();
+ muted.getOperand().add(org.eclipse.emf.ecore.util.EcoreUtil.copy(getOperand().get(1)));
+ implies.getOperand().add(muted);
+ AND.getOperand().add(implies);
+
+ return AND;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public int eDerivedOperationID(int baseOperationID, Class<?> baseClass) {
+ if (baseClass == Expression.class) {
+ switch (baseOperationID) {
+ case RBACorePackage.EXPRESSION___GET_UNDERLYING_TYPE:
+ return RBASoundPackage.MUTE_LOWER_PRIORITY___GET_UNDERLYING_TYPE;
+ case RBACorePackage.EXPRESSION___GET_EXPRESSION_TEXT:
+ return RBASoundPackage.MUTE_LOWER_PRIORITY___GET_EXPRESSION_TEXT;
+ default:
+ return super.eDerivedOperationID(baseOperationID, baseClass);
+ }
+ }
+ if (baseClass == Operator.class) {
+ switch (baseOperationID) {
+ case RBACorePackage.OPERATOR___GET_SYMBOL:
+ return RBASoundPackage.MUTE_LOWER_PRIORITY___GET_SYMBOL;
+ default:
+ return super.eDerivedOperationID(baseOperationID, baseClass);
+ }
+ }
+ if (baseClass == SugarExpression.class) {
+ switch (baseOperationID) {
+ case RBACorePackage.SUGAR_EXPRESSION___CAN_EXPAND:
+ return RBASoundPackage.MUTE_LOWER_PRIORITY___CAN_EXPAND;
+ case RBACorePackage.SUGAR_EXPRESSION___GET_EXPANDED:
+ return RBASoundPackage.MUTE_LOWER_PRIORITY___GET_EXPANDED;
+ default:
+ return -1;
+ }
+ }
+ if (baseClass == SugarExpressionBase.class) {
+ switch (baseOperationID) {
+ case RBACorePackage.SUGAR_EXPRESSION_BASE___CAN_EXPAND:
+ return RBASoundPackage.MUTE_LOWER_PRIORITY___CAN_EXPAND;
+ default:
+ return -1;
+ }
+ }
+ return super.eDerivedOperationID(baseOperationID, baseClass);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBASoundPackage.MUTE_LOWER_PRIORITY___GET_SYMBOL:
+ return getSymbol();
+ case RBASoundPackage.MUTE_LOWER_PRIORITY___GET_UNDERLYING_TYPE:
+ return getUnderlyingType();
+ case RBASoundPackage.MUTE_LOWER_PRIORITY___GET_EXPRESSION_TEXT:
+ return getExpressionText();
+ case RBASoundPackage.MUTE_LOWER_PRIORITY___CAN_EXPAND:
+ return canExpand();
+ case RBASoundPackage.MUTE_LOWER_PRIORITY___GET_EXPANDED:
+ return getExpanded();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // MuteLowerPriorityImpl
diff --git a/rba.model.sound/src/rba/sound/impl/OutputtingSoundImpl.java b/rba.model.sound/src/rba/sound/impl/OutputtingSoundImpl.java
new file mode 100644
index 0000000..f26c66c
--- /dev/null
+++ b/rba.model.sound/src/rba/sound/impl/OutputtingSoundImpl.java
@@ -0,0 +1,70 @@
+/**
+ */
+package rba.sound.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.ExpressionType;
+
+import rba.sound.OutputtingSound;
+import rba.sound.RBASoundPackage;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Outputting Sound</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class OutputtingSoundImpl extends ZoneOperatorImpl implements OutputtingSound {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected OutputtingSoundImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBASoundPackage.Literals.OUTPUTTING_SOUND;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSymbol() {
+ return ".outputtingSound()";
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getUnderlyingType() {
+ return ExpressionType.SOUND;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBASoundPackage.OUTPUTTING_SOUND___GET_SYMBOL:
+ return getSymbol();
+ case RBASoundPackage.OUTPUTTING_SOUND___GET_UNDERLYING_TYPE:
+ return getUnderlyingType();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // OutputtingSoundImpl
diff --git a/rba.model.sound/src/rba/sound/impl/RBASoundFactoryImpl.java b/rba.model.sound/src/rba/sound/impl/RBASoundFactoryImpl.java
new file mode 100644
index 0000000..b92d85d
--- /dev/null
+++ b/rba.model.sound/src/rba/sound/impl/RBASoundFactoryImpl.java
@@ -0,0 +1,253 @@
+/**
+ */
+package rba.sound.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.impl.EFactoryImpl;
+
+import org.eclipse.emf.ecore.plugin.EcorePlugin;
+
+import rba.sound.*;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model <b>Factory</b>. <!-- end-user-doc -->
+ * @generated
+ */
+public class RBASoundFactoryImpl extends EFactoryImpl implements RBASoundFactory {
+ /**
+ * Creates the default factory implementation.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public static RBASoundFactory init() {
+ try {
+ RBASoundFactory theRBASoundFactory = (RBASoundFactory) EPackage.Registry.INSTANCE
+ .getEFactory(RBASoundPackage.eNS_URI);
+ if (theRBASoundFactory != null) {
+ return theRBASoundFactory;
+ }
+ } catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new RBASoundFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public RBASoundFactoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EObject create(EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ case RBASoundPackage.SOUND_CONTENT:
+ return createSoundContent();
+ case RBASoundPackage.SOUND_CONTENT_SET:
+ return createSoundContentSet();
+ case RBASoundPackage.SOUND_CONTENT_STATE:
+ return createSoundContentState();
+ case RBASoundPackage.ZONE:
+ return createZone();
+ case RBASoundPackage.ZONE_SET:
+ return createZoneSet();
+ case RBASoundPackage.IS_SOUNDING:
+ return createIsSounding();
+ case RBASoundPackage.IS_OUTPUTTED:
+ return createIsOutputted();
+ case RBASoundPackage.IS_MUTED:
+ return createIsMuted();
+ case RBASoundPackage.IS_ATTENUATED:
+ return createIsAttenuated();
+ case RBASoundPackage.OUTPUTTING_SOUND:
+ return createOutputtingSound();
+ case RBASoundPackage.ALL_INSTANCE_OF_ZONE:
+ return createAllInstanceOfZone();
+ case RBASoundPackage.ALL_INSTANCE_OF_SOUND_CONTENT:
+ return createAllInstanceOfSoundContent();
+ case RBASoundPackage.IS_OUTPUTTED_ON:
+ return createIsOutputtedOn();
+ case RBASoundPackage.IS_CHANGED_OUTPUT:
+ return createIsChangedOutput();
+ case RBASoundPackage.IS_TRANSLATED_SOUND_TO:
+ return createIsTranslatedSoundTo();
+ case RBASoundPackage.MUTE_LOWER_PRIORITY:
+ return createMuteLowerPriority();
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public SoundContent createSoundContent() {
+ SoundContentImpl soundContent = new SoundContentImpl();
+ return soundContent;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public SoundContentSet createSoundContentSet() {
+ SoundContentSetImpl soundContentSet = new SoundContentSetImpl();
+ return soundContentSet;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public SoundContentState createSoundContentState() {
+ SoundContentStateImpl soundContentState = new SoundContentStateImpl();
+ return soundContentState;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public Zone createZone() {
+ ZoneImpl zone = new ZoneImpl();
+ return zone;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ZoneSet createZoneSet() {
+ ZoneSetImpl zoneSet = new ZoneSetImpl();
+ return zoneSet;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public IsSounding createIsSounding() {
+ IsSoundingImpl isSounding = new IsSoundingImpl();
+ return isSounding;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public IsOutputted createIsOutputted() {
+ IsOutputtedImpl isOutputted = new IsOutputtedImpl();
+ return isOutputted;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public IsMuted createIsMuted() {
+ IsMutedImpl isMuted = new IsMutedImpl();
+ return isMuted;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public IsAttenuated createIsAttenuated() {
+ IsAttenuatedImpl isAttenuated = new IsAttenuatedImpl();
+ return isAttenuated;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public OutputtingSound createOutputtingSound() {
+ OutputtingSoundImpl outputtingSound = new OutputtingSoundImpl();
+ return outputtingSound;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public AllInstanceOfZone createAllInstanceOfZone() {
+ AllInstanceOfZoneImpl allInstanceOfZone = new AllInstanceOfZoneImpl();
+ return allInstanceOfZone;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public AllInstanceOfSoundContent createAllInstanceOfSoundContent() {
+ AllInstanceOfSoundContentImpl allInstanceOfSoundContent = new AllInstanceOfSoundContentImpl();
+ return allInstanceOfSoundContent;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public IsOutputtedOn createIsOutputtedOn() {
+ IsOutputtedOnImpl isOutputtedOn = new IsOutputtedOnImpl();
+ return isOutputtedOn;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public IsChangedOutput createIsChangedOutput() {
+ IsChangedOutputImpl isChangedOutput = new IsChangedOutputImpl();
+ return isChangedOutput;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public IsTranslatedSoundTo createIsTranslatedSoundTo() {
+ IsTranslatedSoundToImpl isTranslatedSoundTo = new IsTranslatedSoundToImpl();
+ return isTranslatedSoundTo;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public MuteLowerPriority createMuteLowerPriority() {
+ MuteLowerPriorityImpl muteLowerPriority = new MuteLowerPriorityImpl();
+ return muteLowerPriority;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public RBASoundPackage getRBASoundPackage() {
+ return (RBASoundPackage) getEPackage();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static RBASoundPackage getPackage() {
+ return RBASoundPackage.eINSTANCE;
+ }
+
+} // RBASoundFactoryImpl
diff --git a/rba.model.sound/src/rba/sound/impl/RBASoundPackageImpl.java b/rba.model.sound/src/rba/sound/impl/RBASoundPackageImpl.java
new file mode 100644
index 0000000..b33cb64
--- /dev/null
+++ b/rba.model.sound/src/rba/sound/impl/RBASoundPackageImpl.java
@@ -0,0 +1,925 @@
+/**
+ */
+package rba.sound.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EOperation;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+
+import rba.core.RBACorePackage;
+import rba.sound.AllInstanceOfSoundContent;
+import rba.sound.AllInstanceOfZone;
+import rba.sound.IsAttenuated;
+import rba.sound.IsChangedOutput;
+import rba.sound.IsMuted;
+import rba.sound.IsOutputted;
+import rba.sound.IsOutputtedOn;
+import rba.sound.IsSounding;
+import rba.sound.IsTranslatedSoundTo;
+import rba.sound.MuteLowerPriority;
+import rba.sound.OutputtingSound;
+import rba.sound.RBASoundFactory;
+import rba.sound.RBASoundPackage;
+import rba.sound.SoundContent;
+import rba.sound.SoundContentOperator;
+import rba.sound.SoundContentSet;
+import rba.sound.SoundContentState;
+import rba.sound.Zone;
+import rba.sound.ZoneOperator;
+import rba.sound.ZoneSet;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model <b>Package</b>. <!-- end-user-doc -->
+ * @generated
+ */
+public class RBASoundPackageImpl extends EPackageImpl implements RBASoundPackage {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass soundContentEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass soundContentSetEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass soundContentStateEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass zoneEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass zoneSetEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass soundContentOperatorEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass isSoundingEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass zoneOperatorEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass isOutputtedEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass isMutedEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass isAttenuatedEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass outputtingSoundEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass allInstanceOfZoneEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass allInstanceOfSoundContentEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass isOutputtedOnEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass isChangedOutputEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass isTranslatedSoundToEClass = null;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass muteLowerPriorityEClass = null;
+
+ /**
+ * Creates an instance of the model <b>Package</b>, registered with
+ * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package
+ * package URI value.
+ * <p>Note: the correct way to create the package is via the static
+ * factory method {@link #init init()}, which also performs
+ * initialization of the package, or returns the registered package,
+ * if one already exists.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * @see org.eclipse.emf.ecore.EPackage.Registry
+ * @see rba.sound.RBASoundPackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private RBASoundPackageImpl() {
+ super(eNS_URI, RBASoundFactory.eINSTANCE);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private static boolean isInited = false;
+
+ /**
+ * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends.
+ *
+ * <p>This method is used to initialize {@link RBASoundPackage#eINSTANCE} when that field is accessed.
+ * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * @see #eNS_URI
+ * @see #createPackageContents()
+ * @see #initializePackageContents()
+ * @generated
+ */
+ public static RBASoundPackage init() {
+ if (isInited)
+ return (RBASoundPackage) EPackage.Registry.INSTANCE.getEPackage(RBASoundPackage.eNS_URI);
+
+ // Obtain or create and register package
+ RBASoundPackageImpl theRBASoundPackage = (RBASoundPackageImpl) (EPackage.Registry.INSTANCE
+ .get(eNS_URI) instanceof RBASoundPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI)
+ : new RBASoundPackageImpl());
+
+ isInited = true;
+
+ // Initialize simple dependencies
+ RBACorePackage.eINSTANCE.eClass();
+
+ // Create package meta-data objects
+ theRBASoundPackage.createPackageContents();
+
+ // Initialize created meta-data
+ theRBASoundPackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ theRBASoundPackage.freeze();
+
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(RBASoundPackage.eNS_URI, theRBASoundPackage);
+ return theRBASoundPackage;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getSoundContent() {
+ return soundContentEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getSoundContent__GetExpressionType() {
+ return soundContentEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getSoundContentSet() {
+ return soundContentSetEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getSoundContentSet__GetExpressionType() {
+ return soundContentSetEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getSoundContentState() {
+ return soundContentStateEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getSoundContentState__GetExpressionType() {
+ return soundContentStateEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getZone() {
+ return zoneEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getZone_Attenuate() {
+ return (EReference) zoneEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getZone__GetExpressionType() {
+ return zoneEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getZoneSet() {
+ return zoneSetEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getZoneSet__GetExpressionType() {
+ return zoneSetEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getSoundContentOperator() {
+ return soundContentOperatorEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getSoundContentOperator__GetUnderlyingType() {
+ return soundContentOperatorEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getIsSounding() {
+ return isSoundingEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getIsSounding__GetSymbol() {
+ return isSoundingEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getZoneOperator() {
+ return zoneOperatorEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getZoneOperator__GetExpressionText() {
+ return zoneOperatorEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getIsOutputted() {
+ return isOutputtedEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getIsOutputted__GetSymbol() {
+ return isOutputtedEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getIsOutputted__GetUnderlyingType() {
+ return isOutputtedEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getIsMuted() {
+ return isMutedEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getIsMuted__GetSymbol() {
+ return isMutedEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getIsMuted__GetUnderlyingType() {
+ return isMutedEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getIsAttenuated() {
+ return isAttenuatedEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getIsAttenuated__GetSymbol() {
+ return isAttenuatedEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getIsAttenuated__GetUnderlyingType() {
+ return isAttenuatedEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getOutputtingSound() {
+ return outputtingSoundEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getOutputtingSound__GetSymbol() {
+ return outputtingSoundEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getOutputtingSound__GetUnderlyingType() {
+ return outputtingSoundEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getAllInstanceOfZone() {
+ return allInstanceOfZoneEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getAllInstanceOfZone__GetExpressionText() {
+ return allInstanceOfZoneEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getAllInstanceOfZone__GetUnderlyingType() {
+ return allInstanceOfZoneEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getAllInstanceOfSoundContent() {
+ return allInstanceOfSoundContentEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getAllInstanceOfSoundContent__GetExpressionText() {
+ return allInstanceOfSoundContentEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getAllInstanceOfSoundContent__GetUnderlyingType() {
+ return allInstanceOfSoundContentEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getIsOutputtedOn() {
+ return isOutputtedOnEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getIsOutputtedOn__GetSymbol() {
+ return isOutputtedOnEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getIsOutputtedOn__GetUnderlyingType() {
+ return isOutputtedOnEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getIsOutputtedOn__GetExpressionText() {
+ return isOutputtedOnEClass.getEOperations().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getIsChangedOutput() {
+ return isChangedOutputEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getIsChangedOutput__GetSymbol() {
+ return isChangedOutputEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getIsChangedOutput__GetUnderlyingType() {
+ return isChangedOutputEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getIsTranslatedSoundTo() {
+ return isTranslatedSoundToEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getIsTranslatedSoundTo__GetSymbol() {
+ return isTranslatedSoundToEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getIsTranslatedSoundTo__GetUnderlyingType() {
+ return isTranslatedSoundToEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getIsTranslatedSoundTo__GetExpressionText() {
+ return isTranslatedSoundToEClass.getEOperations().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getMuteLowerPriority() {
+ return muteLowerPriorityEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getMuteLowerPriority__GetSymbol() {
+ return muteLowerPriorityEClass.getEOperations().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getMuteLowerPriority__GetUnderlyingType() {
+ return muteLowerPriorityEClass.getEOperations().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public EOperation getMuteLowerPriority__GetExpressionText() {
+ return muteLowerPriorityEClass.getEOperations().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public RBASoundFactory getRBASoundFactory() {
+ return (RBASoundFactory) getEFactoryInstance();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isCreated = false;
+
+ /**
+ * Creates the meta-model objects for the package. This method is
+ * guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public void createPackageContents() {
+ if (isCreated)
+ return;
+ isCreated = true;
+
+ // Create classes and their features
+ soundContentEClass = createEClass(SOUND_CONTENT);
+ createEOperation(soundContentEClass, SOUND_CONTENT___GET_EXPRESSION_TYPE);
+
+ soundContentSetEClass = createEClass(SOUND_CONTENT_SET);
+ createEOperation(soundContentSetEClass, SOUND_CONTENT_SET___GET_EXPRESSION_TYPE);
+
+ soundContentStateEClass = createEClass(SOUND_CONTENT_STATE);
+ createEOperation(soundContentStateEClass, SOUND_CONTENT_STATE___GET_EXPRESSION_TYPE);
+
+ zoneEClass = createEClass(ZONE);
+ createEReference(zoneEClass, ZONE__ATTENUATE);
+ createEOperation(zoneEClass, ZONE___GET_EXPRESSION_TYPE);
+
+ zoneSetEClass = createEClass(ZONE_SET);
+ createEOperation(zoneSetEClass, ZONE_SET___GET_EXPRESSION_TYPE);
+
+ soundContentOperatorEClass = createEClass(SOUND_CONTENT_OPERATOR);
+ createEOperation(soundContentOperatorEClass, SOUND_CONTENT_OPERATOR___GET_UNDERLYING_TYPE);
+
+ isSoundingEClass = createEClass(IS_SOUNDING);
+ createEOperation(isSoundingEClass, IS_SOUNDING___GET_SYMBOL);
+
+ zoneOperatorEClass = createEClass(ZONE_OPERATOR);
+ createEOperation(zoneOperatorEClass, ZONE_OPERATOR___GET_EXPRESSION_TEXT);
+
+ isOutputtedEClass = createEClass(IS_OUTPUTTED);
+ createEOperation(isOutputtedEClass, IS_OUTPUTTED___GET_SYMBOL);
+ createEOperation(isOutputtedEClass, IS_OUTPUTTED___GET_UNDERLYING_TYPE);
+
+ isMutedEClass = createEClass(IS_MUTED);
+ createEOperation(isMutedEClass, IS_MUTED___GET_SYMBOL);
+ createEOperation(isMutedEClass, IS_MUTED___GET_UNDERLYING_TYPE);
+
+ isAttenuatedEClass = createEClass(IS_ATTENUATED);
+ createEOperation(isAttenuatedEClass, IS_ATTENUATED___GET_SYMBOL);
+ createEOperation(isAttenuatedEClass, IS_ATTENUATED___GET_UNDERLYING_TYPE);
+
+ outputtingSoundEClass = createEClass(OUTPUTTING_SOUND);
+ createEOperation(outputtingSoundEClass, OUTPUTTING_SOUND___GET_SYMBOL);
+ createEOperation(outputtingSoundEClass, OUTPUTTING_SOUND___GET_UNDERLYING_TYPE);
+
+ allInstanceOfZoneEClass = createEClass(ALL_INSTANCE_OF_ZONE);
+ createEOperation(allInstanceOfZoneEClass, ALL_INSTANCE_OF_ZONE___GET_EXPRESSION_TEXT);
+ createEOperation(allInstanceOfZoneEClass, ALL_INSTANCE_OF_ZONE___GET_UNDERLYING_TYPE);
+
+ allInstanceOfSoundContentEClass = createEClass(ALL_INSTANCE_OF_SOUND_CONTENT);
+ createEOperation(allInstanceOfSoundContentEClass, ALL_INSTANCE_OF_SOUND_CONTENT___GET_EXPRESSION_TEXT);
+ createEOperation(allInstanceOfSoundContentEClass, ALL_INSTANCE_OF_SOUND_CONTENT___GET_UNDERLYING_TYPE);
+
+ isOutputtedOnEClass = createEClass(IS_OUTPUTTED_ON);
+ createEOperation(isOutputtedOnEClass, IS_OUTPUTTED_ON___GET_SYMBOL);
+ createEOperation(isOutputtedOnEClass, IS_OUTPUTTED_ON___GET_UNDERLYING_TYPE);
+ createEOperation(isOutputtedOnEClass, IS_OUTPUTTED_ON___GET_EXPRESSION_TEXT);
+
+ isChangedOutputEClass = createEClass(IS_CHANGED_OUTPUT);
+ createEOperation(isChangedOutputEClass, IS_CHANGED_OUTPUT___GET_SYMBOL);
+ createEOperation(isChangedOutputEClass, IS_CHANGED_OUTPUT___GET_UNDERLYING_TYPE);
+
+ isTranslatedSoundToEClass = createEClass(IS_TRANSLATED_SOUND_TO);
+ createEOperation(isTranslatedSoundToEClass, IS_TRANSLATED_SOUND_TO___GET_SYMBOL);
+ createEOperation(isTranslatedSoundToEClass, IS_TRANSLATED_SOUND_TO___GET_UNDERLYING_TYPE);
+ createEOperation(isTranslatedSoundToEClass, IS_TRANSLATED_SOUND_TO___GET_EXPRESSION_TEXT);
+
+ muteLowerPriorityEClass = createEClass(MUTE_LOWER_PRIORITY);
+ createEOperation(muteLowerPriorityEClass, MUTE_LOWER_PRIORITY___GET_SYMBOL);
+ createEOperation(muteLowerPriorityEClass, MUTE_LOWER_PRIORITY___GET_UNDERLYING_TYPE);
+ createEOperation(muteLowerPriorityEClass, MUTE_LOWER_PRIORITY___GET_EXPRESSION_TEXT);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ private boolean isInitialized = false;
+
+ /**
+ * Complete the initialization of the package and its meta-model. This
+ * method is guarded to have no affect on any invocation but its first.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public void initializePackageContents() {
+ if (isInitialized)
+ return;
+ isInitialized = true;
+
+ // Initialize package
+ setName(eNAME);
+ setNsPrefix(eNS_PREFIX);
+ setNsURI(eNS_URI);
+
+ // Obtain other dependent packages
+ RBACorePackage theRBACorePackage = (RBACorePackage) EPackage.Registry.INSTANCE
+ .getEPackage(RBACorePackage.eNS_URI);
+
+ // Create type parameters
+
+ // Set bounds for type parameters
+
+ // Add supertypes to classes
+ soundContentEClass.getESuperTypes().add(theRBACorePackage.getContent());
+ soundContentSetEClass.getESuperTypes().add(theRBACorePackage.getContentSet());
+ soundContentStateEClass.getESuperTypes().add(theRBACorePackage.getContentState());
+ zoneEClass.getESuperTypes().add(theRBACorePackage.getAllocatable());
+ zoneSetEClass.getESuperTypes().add(theRBACorePackage.getAllocatableSet());
+ soundContentOperatorEClass.getESuperTypes().add(theRBACorePackage.getContentOperator());
+ isSoundingEClass.getESuperTypes().add(this.getSoundContentOperator());
+ zoneOperatorEClass.getESuperTypes().add(theRBACorePackage.getOperator());
+ isOutputtedEClass.getESuperTypes().add(this.getZoneOperator());
+ isMutedEClass.getESuperTypes().add(this.getZoneOperator());
+ isAttenuatedEClass.getESuperTypes().add(this.getZoneOperator());
+ outputtingSoundEClass.getESuperTypes().add(this.getZoneOperator());
+ allInstanceOfZoneEClass.getESuperTypes().add(theRBACorePackage.getSetExpression());
+ allInstanceOfSoundContentEClass.getESuperTypes().add(theRBACorePackage.getSetExpression());
+ isOutputtedOnEClass.getESuperTypes().add(this.getSoundContentOperator());
+ isOutputtedOnEClass.getESuperTypes().add(theRBACorePackage.getSugarExpressionBase());
+ isChangedOutputEClass.getESuperTypes().add(this.getZoneOperator());
+ isChangedOutputEClass.getESuperTypes().add(theRBACorePackage.getSugarExpressionBase());
+ isTranslatedSoundToEClass.getESuperTypes().add(this.getZoneOperator());
+ isTranslatedSoundToEClass.getESuperTypes().add(theRBACorePackage.getSugarExpressionBase());
+ muteLowerPriorityEClass.getESuperTypes().add(theRBACorePackage.getOperator());
+ muteLowerPriorityEClass.getESuperTypes().add(theRBACorePackage.getSugarExpressionBase());
+
+ // Initialize classes, features, and operations; add parameters
+ initEClass(soundContentEClass, SoundContent.class, "SoundContent", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getSoundContent__GetExpressionType(), theRBACorePackage.getExpressionType(), "getExpressionType",
+ 0, 1, IS_UNIQUE, IS_ORDERED);
+
+ initEClass(soundContentSetEClass, SoundContentSet.class, "SoundContentSet", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getSoundContentSet__GetExpressionType(), theRBACorePackage.getExpressionType(),
+ "getExpressionType", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+ initEClass(soundContentStateEClass, SoundContentState.class, "SoundContentState", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getSoundContentState__GetExpressionType(), theRBACorePackage.getExpressionType(),
+ "getExpressionType", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+ initEClass(zoneEClass, Zone.class, "Zone", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getZone_Attenuate(), theRBACorePackage.getExpression(), null, "attenuate", null, 0, 1,
+ Zone.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
+ !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEOperation(getZone__GetExpressionType(), theRBACorePackage.getExpressionType(), "getExpressionType", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEClass(zoneSetEClass, ZoneSet.class, "ZoneSet", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getZoneSet__GetExpressionType(), theRBACorePackage.getExpressionType(), "getExpressionType", 0,
+ 1, IS_UNIQUE, IS_ORDERED);
+
+ initEClass(soundContentOperatorEClass, SoundContentOperator.class, "SoundContentOperator", IS_ABSTRACT,
+ !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getSoundContentOperator__GetUnderlyingType(), theRBACorePackage.getExpressionType(),
+ "getUnderlyingType", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+ initEClass(isSoundingEClass, IsSounding.class, "IsSounding", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getIsSounding__GetSymbol(), ecorePackage.getEString(), "getSymbol", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+ initEClass(zoneOperatorEClass, ZoneOperator.class, "ZoneOperator", IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getZoneOperator__GetExpressionText(), ecorePackage.getEString(), "getExpressionText", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEClass(isOutputtedEClass, IsOutputted.class, "IsOutputted", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getIsOutputted__GetSymbol(), ecorePackage.getEString(), "getSymbol", 0, 1, IS_UNIQUE,
+ IS_ORDERED);
+
+ initEOperation(getIsOutputted__GetUnderlyingType(), theRBACorePackage.getExpressionType(), "getUnderlyingType",
+ 0, 1, IS_UNIQUE, IS_ORDERED);
+
+ initEClass(isMutedEClass, IsMuted.class, "IsMuted", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getIsMuted__GetSymbol(), ecorePackage.getEString(), "getSymbol", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+ initEOperation(getIsMuted__GetUnderlyingType(), theRBACorePackage.getExpressionType(), "getUnderlyingType", 0,
+ 1, IS_UNIQUE, IS_ORDERED);
+
+ initEClass(isAttenuatedEClass, IsAttenuated.class, "IsAttenuated", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getIsAttenuated__GetSymbol(), ecorePackage.getEString(), "getSymbol", 0, 1, IS_UNIQUE,
+ IS_ORDERED);
+
+ initEOperation(getIsAttenuated__GetUnderlyingType(), theRBACorePackage.getExpressionType(), "getUnderlyingType",
+ 0, 1, IS_UNIQUE, IS_ORDERED);
+
+ initEClass(outputtingSoundEClass, OutputtingSound.class, "OutputtingSound", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getOutputtingSound__GetSymbol(), ecorePackage.getEString(), "getSymbol", 0, 1, IS_UNIQUE,
+ IS_ORDERED);
+
+ initEOperation(getOutputtingSound__GetUnderlyingType(), theRBACorePackage.getExpressionType(),
+ "getUnderlyingType", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+ initEClass(allInstanceOfZoneEClass, AllInstanceOfZone.class, "AllInstanceOfZone", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getAllInstanceOfZone__GetExpressionText(), ecorePackage.getEString(), "getExpressionText", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEOperation(getAllInstanceOfZone__GetUnderlyingType(), theRBACorePackage.getExpressionType(),
+ "getUnderlyingType", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+ initEClass(allInstanceOfSoundContentEClass, AllInstanceOfSoundContent.class, "AllInstanceOfSoundContent",
+ !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getAllInstanceOfSoundContent__GetExpressionText(), ecorePackage.getEString(),
+ "getExpressionText", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+ initEOperation(getAllInstanceOfSoundContent__GetUnderlyingType(), theRBACorePackage.getExpressionType(),
+ "getUnderlyingType", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+ initEClass(isOutputtedOnEClass, IsOutputtedOn.class, "IsOutputtedOn", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getIsOutputtedOn__GetSymbol(), ecorePackage.getEString(), "getSymbol", 0, 1, IS_UNIQUE,
+ IS_ORDERED);
+
+ initEOperation(getIsOutputtedOn__GetUnderlyingType(), theRBACorePackage.getExpressionType(),
+ "getUnderlyingType", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+ initEOperation(getIsOutputtedOn__GetExpressionText(), ecorePackage.getEString(), "getExpressionText", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ initEClass(isChangedOutputEClass, IsChangedOutput.class, "IsChangedOutput", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getIsChangedOutput__GetSymbol(), ecorePackage.getEString(), "getSymbol", 0, 1, IS_UNIQUE,
+ IS_ORDERED);
+
+ initEOperation(getIsChangedOutput__GetUnderlyingType(), theRBACorePackage.getExpressionType(),
+ "getUnderlyingType", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+ initEClass(isTranslatedSoundToEClass, IsTranslatedSoundTo.class, "IsTranslatedSoundTo", !IS_ABSTRACT,
+ !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getIsTranslatedSoundTo__GetSymbol(), ecorePackage.getEString(), "getSymbol", 0, 1, IS_UNIQUE,
+ IS_ORDERED);
+
+ initEOperation(getIsTranslatedSoundTo__GetUnderlyingType(), theRBACorePackage.getExpressionType(),
+ "getUnderlyingType", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+ initEOperation(getIsTranslatedSoundTo__GetExpressionText(), ecorePackage.getEString(), "getExpressionText", 0,
+ 1, IS_UNIQUE, IS_ORDERED);
+
+ initEClass(muteLowerPriorityEClass, MuteLowerPriority.class, "MuteLowerPriority", !IS_ABSTRACT, !IS_INTERFACE,
+ IS_GENERATED_INSTANCE_CLASS);
+
+ initEOperation(getMuteLowerPriority__GetSymbol(), ecorePackage.getEString(), "getSymbol", 0, 1, IS_UNIQUE,
+ IS_ORDERED);
+
+ initEOperation(getMuteLowerPriority__GetUnderlyingType(), theRBACorePackage.getExpressionType(),
+ "getUnderlyingType", 0, 1, IS_UNIQUE, IS_ORDERED);
+
+ initEOperation(getMuteLowerPriority__GetExpressionText(), ecorePackage.getEString(), "getExpressionText", 0, 1,
+ IS_UNIQUE, IS_ORDERED);
+
+ // Create resource
+ createResource(eNS_URI);
+
+ // Create annotations
+ // http://www.eclipse.org/OCL/Import
+ createImportAnnotations();
+ }
+
+ /**
+ * Initializes the annotations for <b>http://www.eclipse.org/OCL/Import</b>.
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected void createImportAnnotations() {
+ String source = "http://www.eclipse.org/OCL/Import";
+ addAnnotation(this, source, new String[] { "RbaCore", "../../rba.model.core/model/rbacore.ecore#/" });
+ }
+
+} // RBASoundPackageImpl
diff --git a/rba.model.sound/src/rba/sound/impl/SoundContentImpl.java b/rba.model.sound/src/rba/sound/impl/SoundContentImpl.java
new file mode 100644
index 0000000..4c8a4bb
--- /dev/null
+++ b/rba.model.sound/src/rba/sound/impl/SoundContentImpl.java
@@ -0,0 +1,60 @@
+/**
+ */
+package rba.sound.impl;
+
+import java.lang.reflect.InvocationTargetException;
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import rba.core.ExpressionType;
+
+import rba.core.impl.ContentImpl;
+
+import rba.sound.RBASoundPackage;
+import rba.sound.SoundContent;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Sound Content</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class SoundContentImpl extends ContentImpl implements SoundContent {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected SoundContentImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBASoundPackage.Literals.SOUND_CONTENT;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getExpressionType() {
+ return ExpressionType.SOUND;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBASoundPackage.SOUND_CONTENT___GET_EXPRESSION_TYPE:
+ return getExpressionType();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // SoundContentImpl
diff --git a/rba.model.sound/src/rba/sound/impl/SoundContentOperatorImpl.java b/rba.model.sound/src/rba/sound/impl/SoundContentOperatorImpl.java
new file mode 100644
index 0000000..77b78d3
--- /dev/null
+++ b/rba.model.sound/src/rba/sound/impl/SoundContentOperatorImpl.java
@@ -0,0 +1,62 @@
+/**
+ */
+package rba.sound.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.ExpressionType;
+
+import rba.core.impl.ContentOperatorImpl;
+
+import rba.sound.RBASoundPackage;
+import rba.sound.SoundContentOperator;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Sound Content Operator</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public abstract class SoundContentOperatorImpl extends ContentOperatorImpl implements SoundContentOperator {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected SoundContentOperatorImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBASoundPackage.Literals.SOUND_CONTENT_OPERATOR;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getUnderlyingType() {
+ return ExpressionType.BOOLEAN;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBASoundPackage.SOUND_CONTENT_OPERATOR___GET_UNDERLYING_TYPE:
+ return getUnderlyingType();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // SoundContentOperatorImpl
diff --git a/rba.model.sound/src/rba/sound/impl/SoundContentSetImpl.java b/rba.model.sound/src/rba/sound/impl/SoundContentSetImpl.java
new file mode 100644
index 0000000..a366e54
--- /dev/null
+++ b/rba.model.sound/src/rba/sound/impl/SoundContentSetImpl.java
@@ -0,0 +1,62 @@
+/**
+ */
+package rba.sound.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.ExpressionType;
+
+import rba.core.impl.ContentSetImpl;
+
+import rba.sound.RBASoundPackage;
+import rba.sound.SoundContentSet;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Sound Content Set</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class SoundContentSetImpl extends ContentSetImpl implements SoundContentSet {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected SoundContentSetImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBASoundPackage.Literals.SOUND_CONTENT_SET;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getExpressionType() {
+ return ExpressionType.SET_OF_SOUND;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBASoundPackage.SOUND_CONTENT_SET___GET_EXPRESSION_TYPE:
+ return getExpressionType();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // SoundContentSetImpl
diff --git a/rba.model.sound/src/rba/sound/impl/SoundContentStateImpl.java b/rba.model.sound/src/rba/sound/impl/SoundContentStateImpl.java
new file mode 100644
index 0000000..44d5ea4
--- /dev/null
+++ b/rba.model.sound/src/rba/sound/impl/SoundContentStateImpl.java
@@ -0,0 +1,62 @@
+/**
+ */
+package rba.sound.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.ExpressionType;
+
+import rba.core.impl.ContentStateImpl;
+
+import rba.sound.RBASoundPackage;
+import rba.sound.SoundContentState;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Sound Content State</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class SoundContentStateImpl extends ContentStateImpl implements SoundContentState {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected SoundContentStateImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBASoundPackage.Literals.SOUND_CONTENT_STATE;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getExpressionType() {
+ return ExpressionType.CONTENT_STATE;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBASoundPackage.SOUND_CONTENT_STATE___GET_EXPRESSION_TYPE:
+ return getExpressionType();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // SoundContentStateImpl
diff --git a/rba.model.sound/src/rba/sound/impl/ZoneImpl.java b/rba.model.sound/src/rba/sound/impl/ZoneImpl.java
new file mode 100644
index 0000000..b86ec92
--- /dev/null
+++ b/rba.model.sound/src/rba/sound/impl/ZoneImpl.java
@@ -0,0 +1,196 @@
+/**
+ */
+package rba.sound.impl;
+
+import java.lang.reflect.InvocationTargetException;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import rba.core.Expression;
+import rba.core.ExpressionType;
+import rba.core.impl.AllocatableImpl;
+import rba.sound.RBASoundPackage;
+import rba.sound.Zone;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Zone</b></em>'. <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link rba.sound.impl.ZoneImpl#getAttenuate <em>Attenuate</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class ZoneImpl extends AllocatableImpl implements Zone {
+ /**
+ * The cached value of the '{@link #getAttenuate() <em>Attenuate</em>}' containment reference.
+ * <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * @see #getAttenuate()
+ * @generated
+ * @ordered
+ */
+ protected Expression attenuate;
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected ZoneImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBASoundPackage.Literals.ZONE;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public Expression getAttenuate() {
+ return attenuate;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public NotificationChain basicSetAttenuate(Expression newAttenuate, NotificationChain msgs) {
+ Expression oldAttenuate = attenuate;
+ attenuate = newAttenuate;
+ if (eNotificationRequired()) {
+ ENotificationImpl notification = new ENotificationImpl(this, Notification.SET,
+ RBASoundPackage.ZONE__ATTENUATE, oldAttenuate, newAttenuate);
+ if (msgs == null)
+ msgs = notification;
+ else
+ msgs.add(notification);
+ }
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public void setAttenuate(Expression newAttenuate) {
+ if (newAttenuate != attenuate) {
+ NotificationChain msgs = null;
+ if (attenuate != null)
+ msgs = ((InternalEObject) attenuate).eInverseRemove(this,
+ EOPPOSITE_FEATURE_BASE - RBASoundPackage.ZONE__ATTENUATE, null, msgs);
+ if (newAttenuate != null)
+ msgs = ((InternalEObject) newAttenuate).eInverseAdd(this,
+ EOPPOSITE_FEATURE_BASE - RBASoundPackage.ZONE__ATTENUATE, null, msgs);
+ msgs = basicSetAttenuate(newAttenuate, msgs);
+ if (msgs != null)
+ msgs.dispatch();
+ } else if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, RBASoundPackage.ZONE__ATTENUATE, newAttenuate,
+ newAttenuate));
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getExpressionType() {
+ return ExpressionType.ZONE;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case RBASoundPackage.ZONE__ATTENUATE:
+ return basicSetAttenuate(null, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case RBASoundPackage.ZONE__ATTENUATE:
+ return getAttenuate();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case RBASoundPackage.ZONE__ATTENUATE:
+ setAttenuate((Expression) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case RBASoundPackage.ZONE__ATTENUATE:
+ setAttenuate((Expression) null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case RBASoundPackage.ZONE__ATTENUATE:
+ return attenuate != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBASoundPackage.ZONE___GET_EXPRESSION_TYPE:
+ return getExpressionType();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // ZoneImpl
diff --git a/rba.model.sound/src/rba/sound/impl/ZoneOperatorImpl.java b/rba.model.sound/src/rba/sound/impl/ZoneOperatorImpl.java
new file mode 100644
index 0000000..4afd759
--- /dev/null
+++ b/rba.model.sound/src/rba/sound/impl/ZoneOperatorImpl.java
@@ -0,0 +1,64 @@
+/**
+ */
+package rba.sound.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import rba.core.impl.OperatorImpl;
+
+import rba.sound.RBASoundPackage;
+import rba.sound.ZoneOperator;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Zone Operator</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public abstract class ZoneOperatorImpl extends OperatorImpl implements ZoneOperator {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected ZoneOperatorImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBASoundPackage.Literals.ZONE_OPERATOR;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public String getExpressionText() {
+ StringBuffer expressionText = new StringBuffer();
+ EList<rba.core.Expression> expressions = getOperand();
+ expressionText.append(expressions.size() > 0 ? expressions.get(0).getExpressionText() : "[Invalid_Expression]");
+ expressionText.append(getSymbol());
+ return expressionText.toString();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBASoundPackage.ZONE_OPERATOR___GET_EXPRESSION_TEXT:
+ return getExpressionText();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // ZoneOperatorImpl
diff --git a/rba.model.sound/src/rba/sound/impl/ZoneSetImpl.java b/rba.model.sound/src/rba/sound/impl/ZoneSetImpl.java
new file mode 100644
index 0000000..35180ed
--- /dev/null
+++ b/rba.model.sound/src/rba/sound/impl/ZoneSetImpl.java
@@ -0,0 +1,59 @@
+/**
+ */
+package rba.sound.impl;
+
+import java.lang.reflect.InvocationTargetException;
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import rba.core.ExpressionType;
+
+import rba.core.impl.AllocatableSetImpl;
+import rba.sound.RBASoundPackage;
+import rba.sound.ZoneSet;
+
+/**
+ * <!-- begin-user-doc --> An implementation of the model object '<em><b>Zone Set</b></em>'. <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class ZoneSetImpl extends AllocatableSetImpl implements ZoneSet {
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ protected ZoneSetImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RBASoundPackage.Literals.ZONE_SET;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ public ExpressionType getExpressionType() {
+ return ExpressionType.SET_OF_ZONE;
+ }
+
+ /**
+ * <!-- begin-user-doc --> <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case RBASoundPackage.ZONE_SET___GET_EXPRESSION_TYPE:
+ return getExpressionType();
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+} // ZoneSetImpl