Commit eae0865d authored by Dominique Marcadet's avatar Dominique Marcadet

SMVSettings added in Services

parent 695e7361
......@@ -1015,3 +1015,5 @@ _UI_ExtRef_desc_feature = Desc
_UI_IEDName_value_feature = Value
_UI_Line_Voltage_feature = Voltage
_UI_Voltage_Line_feature = Line
_UI_SMVSettings_Services_feature = Services
_UI_Services_SMVSettings_feature = SMV Settings
......@@ -133,6 +133,7 @@ public class ServicesItemProvider
childrenFeatures.add(SclPackage.eINSTANCE.getServices_SettingGroups());
childrenFeatures.add(SclPackage.eINSTANCE.getServices_TimeSyncProt());
childrenFeatures.add(SclPackage.eINSTANCE.getServices_TimerActivatedControl());
childrenFeatures.add(SclPackage.eINSTANCE.getServices_SMVSettings());
}
return childrenFeatures;
}
......@@ -224,6 +225,7 @@ public class ServicesItemProvider
case SclPackage.SERVICES__SETTING_GROUPS:
case SclPackage.SERVICES__TIME_SYNC_PROT:
case SclPackage.SERVICES__TIMER_ACTIVATED_CONTROL:
case SclPackage.SERVICES__SMV_SETTINGS:
fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
return;
}
......@@ -400,6 +402,11 @@ public class ServicesItemProvider
(createChildParameter
(SclPackage.eINSTANCE.getServices_TimerActivatedControl(),
SclFactory.eINSTANCE.createTimerActivatedControl()));
newChildDescriptors.add
(createChildParameter
(SclPackage.eINSTANCE.getServices_SMVSettings(),
SclFactory.eINSTANCE.createSMVSettings()));
}
}
......@@ -1352,6 +1352,9 @@
upperBound="-1" eType="#//SamplesPerSec" unsettable="true" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="SecPerSamples" ordered="false"
upperBound="-1" eType="#//SecPerSamples" unsettable="true" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="Services" ordered="false"
eType="#//Services" transient="true" unsettable="true" resolveProxies="false"
eOpposite="#//Services/SMVSettings"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="SMVsc" eSuperTypes="#//ServiceWithMax">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="delivery" eType="#//SMVDeliveryEnum"
......@@ -1520,6 +1523,9 @@
<eStructuralFeatures xsi:type="ecore:EReference" name="TimerActivatedControl"
ordered="false" eType="#//TimerActivatedControl" unsettable="true" containment="true"
resolveProxies="false" eOpposite="#//TimerActivatedControl/Services"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="SMVSettings" ordered="false"
eType="#//SMVSettings" unsettable="true" containment="true" resolveProxies="false"
eOpposite="#//SMVSettings/Services"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="SetDataSetValue" eSuperTypes="#//ServiceYesNo">
<eStructuralFeatures xsi:type="ecore:EReference" name="Services" ordered="false"
......
......@@ -736,6 +736,7 @@
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SCL.ecore#//SMVSettings/SmpRate"/>
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SCL.ecore#//SMVSettings/SamplesPerSec"/>
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SCL.ecore#//SMVSettings/SecPerSamples"/>
<genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference SCL.ecore#//SMVSettings/Services"/>
</genClasses>
<genClasses ecoreClass="SCL.ecore#//SMVsc">
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute SCL.ecore#//SMVsc/delivery"/>
......@@ -807,6 +808,7 @@
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SCL.ecore#//Services/SettingGroups"/>
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SCL.ecore#//Services/TimeSyncProt"/>
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SCL.ecore#//Services/TimerActivatedControl"/>
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SCL.ecore#//Services/SMVSettings"/>
</genClasses>
<genClasses ecoreClass="SCL.ecore#//SetDataSetValue">
<genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference SCL.ecore#//SetDataSetValue/Services"/>
......
......@@ -37,6 +37,7 @@ import org.eclipse.emf.common.util.EList;
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.SMVSettings#getSmpRate <em>Smp Rate</em>}</li>
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.SMVSettings#getSamplesPerSec <em>Samples Per Sec</em>}</li>
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.SMVSettings#getSecPerSamples <em>Sec Per Samples</em>}</li>
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.SMVSettings#getServices <em>Services</em>}</li>
* </ul>
*
* @see fr.centralesupelec.edf.riseclipse.iec61850.scl.SclPackage#getSMVSettings()
......@@ -437,4 +438,32 @@ public interface SMVSettings extends ServiceSettings {
* @generated
*/
boolean isSetSecPerSamples();
/**
* Returns the value of the '<em><b>Services</b></em>' container reference.
* It is bidirectional and its opposite is '{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.Services#getSMVSettings <em>SMV Settings</em>}'.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Services</em>' container reference isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>Services</em>' container reference.
* @see #setServices(Services)
* @see fr.centralesupelec.edf.riseclipse.iec61850.scl.SclPackage#getSMVSettings_Services()
* @see fr.centralesupelec.edf.riseclipse.iec61850.scl.Services#getSMVSettings
* @model opposite="SMVSettings" resolveProxies="false" unsettable="true" ordered="false"
* @generated
*/
Services getServices();
/**
* Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.SMVSettings#getServices <em>Services</em>}' container reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>Services</em>' container reference.
* @see #getServices()
* @generated
*/
void setServices(Services value);
} // SMVSettings
......@@ -12522,6 +12522,15 @@ public interface SclPackage extends EPackage {
*/
int SMV_SETTINGS__SEC_PER_SAMPLES = SERVICE_SETTINGS_FEATURE_COUNT + 7;
/**
* The feature id for the '<em><b>Services</b></em>' container reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int SMV_SETTINGS__SERVICES = SERVICE_SETTINGS_FEATURE_COUNT + 8;
/**
* The number of structural features of the '<em>SMV Settings</em>' class.
* <!-- begin-user-doc -->
......@@ -12529,7 +12538,7 @@ public interface SclPackage extends EPackage {
* @generated
* @ordered
*/
int SMV_SETTINGS_FEATURE_COUNT = SERVICE_SETTINGS_FEATURE_COUNT + 8;
int SMV_SETTINGS_FEATURE_COUNT = SERVICE_SETTINGS_FEATURE_COUNT + 9;
/**
* The number of operations of the '<em>SMV Settings</em>' class.
......@@ -13350,6 +13359,15 @@ public interface SclPackage extends EPackage {
*/
int SERVICES__TIMER_ACTIVATED_CONTROL = SCL_OBJECT_FEATURE_COUNT + 34;
/**
* The feature id for the '<em><b>SMV Settings</b></em>' containment reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int SERVICES__SMV_SETTINGS = SCL_OBJECT_FEATURE_COUNT + 35;
/**
* The number of structural features of the '<em>Services</em>' class.
* <!-- begin-user-doc -->
......@@ -13357,7 +13375,7 @@ public interface SclPackage extends EPackage {
* @generated
* @ordered
*/
int SERVICES_FEATURE_COUNT = SCL_OBJECT_FEATURE_COUNT + 35;
int SERVICES_FEATURE_COUNT = SCL_OBJECT_FEATURE_COUNT + 36;
/**
* The number of operations of the '<em>Services</em>' class.
......@@ -23789,6 +23807,17 @@ public interface SclPackage extends EPackage {
*/
EReference getSMVSettings_SecPerSamples();
/**
* Returns the meta object for the container reference '{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.SMVSettings#getServices <em>Services</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for the container reference '<em>Services</em>'.
* @see fr.centralesupelec.edf.riseclipse.iec61850.scl.SMVSettings#getServices()
* @see #getSMVSettings()
* @generated
*/
EReference getSMVSettings_Services();
/**
* Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.SMVsc <em>SM Vsc</em>}'.
* <!-- begin-user-doc -->
......@@ -24486,6 +24515,17 @@ public interface SclPackage extends EPackage {
*/
EReference getServices_TimerActivatedControl();
/**
* Returns the meta object for the containment reference '{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.Services#getSMVSettings <em>SMV Settings</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return the meta object for the containment reference '<em>SMV Settings</em>'.
* @see fr.centralesupelec.edf.riseclipse.iec61850.scl.Services#getSMVSettings()
* @see #getServices()
* @generated
*/
EReference getServices_SMVSettings();
/**
* Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.SetDataSetValue <em>Set Data Set Value</em>}'.
* <!-- begin-user-doc -->
......
......@@ -62,6 +62,7 @@ package fr.centralesupelec.edf.riseclipse.iec61850.scl;
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.Services#getSettingGroups <em>Setting Groups</em>}</li>
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.Services#getTimeSyncProt <em>Time Sync Prot</em>}</li>
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.Services#getTimerActivatedControl <em>Timer Activated Control</em>}</li>
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.Services#getSMVSettings <em>SMV Settings</em>}</li>
* </ul>
*
* @see fr.centralesupelec.edf.riseclipse.iec61850.scl.SclPackage#getServices()
......@@ -1938,4 +1939,59 @@ public interface Services extends SclObject {
*/
boolean isSetTimerActivatedControl();
/**
* Returns the value of the '<em><b>SMV Settings</b></em>' containment reference.
* It is bidirectional and its opposite is '{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.SMVSettings#getServices <em>Services</em>}'.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>SMV Settings</em>' containment reference isn't clear,
* there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
* @return the value of the '<em>SMV Settings</em>' containment reference.
* @see #isSetSMVSettings()
* @see #unsetSMVSettings()
* @see #setSMVSettings(SMVSettings)
* @see fr.centralesupelec.edf.riseclipse.iec61850.scl.SclPackage#getServices_SMVSettings()
* @see fr.centralesupelec.edf.riseclipse.iec61850.scl.SMVSettings#getServices
* @model opposite="Services" containment="true" unsettable="true" ordered="false"
* @generated
*/
SMVSettings getSMVSettings();
/**
* Sets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.Services#getSMVSettings <em>SMV Settings</em>}' containment reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @param value the new value of the '<em>SMV Settings</em>' containment reference.
* @see #isSetSMVSettings()
* @see #unsetSMVSettings()
* @see #getSMVSettings()
* @generated
*/
void setSMVSettings(SMVSettings value);
/**
* Unsets the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.Services#getSMVSettings <em>SMV Settings</em>}' containment reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #isSetSMVSettings()
* @see #getSMVSettings()
* @see #setSMVSettings(SMVSettings)
* @generated
*/
void unsetSMVSettings();
/**
* Returns whether the value of the '{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.Services#getSMVSettings <em>SMV Settings</em>}' containment reference is set.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return whether the value of the '<em>SMV Settings</em>' containment reference is set.
* @see #unsetSMVSettings()
* @see #getSMVSettings()
* @see #setSMVSettings(SMVSettings)
* @generated
*/
boolean isSetSMVSettings();
} // Services
......@@ -26,6 +26,7 @@ import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.InternalEObject;
import org.eclipse.emf.ecore.impl.ENotificationImpl;
import org.eclipse.emf.ecore.util.EObjectContainmentEList;
import org.eclipse.emf.ecore.util.EcoreUtil;
import org.eclipse.emf.ecore.util.InternalEList;
import fr.centralesupelec.edf.riseclipse.iec61850.scl.SMVSettings;
......@@ -33,6 +34,7 @@ import fr.centralesupelec.edf.riseclipse.iec61850.scl.SamplesPerSec;
import fr.centralesupelec.edf.riseclipse.iec61850.scl.SclPackage;
import fr.centralesupelec.edf.riseclipse.iec61850.scl.SecPerSamples;
import fr.centralesupelec.edf.riseclipse.iec61850.scl.ServiceSettingsEnum;
import fr.centralesupelec.edf.riseclipse.iec61850.scl.Services;
import fr.centralesupelec.edf.riseclipse.iec61850.scl.SmpRate;
/**
......@@ -51,6 +53,7 @@ import fr.centralesupelec.edf.riseclipse.iec61850.scl.SmpRate;
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.impl.SMVSettingsImpl#getSmpRate <em>Smp Rate</em>}</li>
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.impl.SMVSettingsImpl#getSamplesPerSec <em>Samples Per Sec</em>}</li>
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.impl.SMVSettingsImpl#getSecPerSamples <em>Sec Per Samples</em>}</li>
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.impl.SMVSettingsImpl#getServices <em>Services</em>}</li>
* </ul>
*
* @generated
......@@ -568,6 +571,63 @@ public class SMVSettingsImpl extends ServiceSettingsImpl implements SMVSettings
return secPerSamples != null && ((InternalEList.Unsettable<?>)secPerSamples).isSet();
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public Services getServices() {
if (eContainerFeatureID() != SclPackage.SMV_SETTINGS__SERVICES) return null;
return (Services)eInternalContainer();
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public NotificationChain basicSetServices(Services newServices, NotificationChain msgs) {
msgs = eBasicSetContainer((InternalEObject)newServices, SclPackage.SMV_SETTINGS__SERVICES, msgs);
return msgs;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public void setServices(Services newServices) {
if (newServices != eInternalContainer() || (eContainerFeatureID() != SclPackage.SMV_SETTINGS__SERVICES && newServices != null)) {
if (EcoreUtil.isAncestor(this, newServices))
throw new IllegalArgumentException("Recursive containment not allowed for " + toString());
NotificationChain msgs = null;
if (eInternalContainer() != null)
msgs = eBasicRemoveFromContainer(msgs);
if (newServices != null)
msgs = ((InternalEObject)newServices).eInverseAdd(this, SclPackage.SERVICES__SMV_SETTINGS, Services.class, msgs);
msgs = basicSetServices(newServices, msgs);
if (msgs != null) msgs.dispatch();
}
else if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, SclPackage.SMV_SETTINGS__SERVICES, newServices, newServices));
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
switch (featureID) {
case SclPackage.SMV_SETTINGS__SERVICES:
if (eInternalContainer() != null)
msgs = eBasicRemoveFromContainer(msgs);
return basicSetServices((Services)otherEnd, msgs);
}
return super.eInverseAdd(otherEnd, featureID, msgs);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
......@@ -582,10 +642,26 @@ public class SMVSettingsImpl extends ServiceSettingsImpl implements SMVSettings
return ((InternalEList<?>)getSamplesPerSec()).basicRemove(otherEnd, msgs);
case SclPackage.SMV_SETTINGS__SEC_PER_SAMPLES:
return ((InternalEList<?>)getSecPerSamples()).basicRemove(otherEnd, msgs);
case SclPackage.SMV_SETTINGS__SERVICES:
return basicSetServices(null, msgs);
}
return super.eInverseRemove(otherEnd, featureID, msgs);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) {
switch (eContainerFeatureID()) {
case SclPackage.SMV_SETTINGS__SERVICES:
return eInternalContainer().eInverseRemove(this, SclPackage.SERVICES__SMV_SETTINGS, Services.class, msgs);
}
return super.eBasicRemoveFromContainerFeature(msgs);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
......@@ -610,6 +686,8 @@ public class SMVSettingsImpl extends ServiceSettingsImpl implements SMVSettings
return getSamplesPerSec();
case SclPackage.SMV_SETTINGS__SEC_PER_SAMPLES:
return getSecPerSamples();
case SclPackage.SMV_SETTINGS__SERVICES:
return getServices();
}
return super.eGet(featureID, resolve, coreType);
}
......@@ -650,6 +728,9 @@ public class SMVSettingsImpl extends ServiceSettingsImpl implements SMVSettings
getSecPerSamples().clear();
getSecPerSamples().addAll((Collection<? extends SecPerSamples>)newValue);
return;
case SclPackage.SMV_SETTINGS__SERVICES:
setServices((Services)newValue);
return;
}
super.eSet(featureID, newValue);
}
......@@ -686,6 +767,9 @@ public class SMVSettingsImpl extends ServiceSettingsImpl implements SMVSettings
case SclPackage.SMV_SETTINGS__SEC_PER_SAMPLES:
unsetSecPerSamples();
return;
case SclPackage.SMV_SETTINGS__SERVICES:
setServices((Services)null);
return;
}
super.eUnset(featureID);
}
......@@ -714,6 +798,8 @@ public class SMVSettingsImpl extends ServiceSettingsImpl implements SMVSettings
return isSetSamplesPerSec();
case SclPackage.SMV_SETTINGS__SEC_PER_SAMPLES:
return isSetSecPerSamples();
case SclPackage.SMV_SETTINGS__SERVICES:
return getServices() != null;
}
return super.eIsSet(featureID);
}
......
......@@ -6562,6 +6562,15 @@ public class SclPackageImpl extends EPackageImpl implements SclPackage {
return (EReference)getSMVSettings().getEStructuralFeatures().get(7);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EReference getSMVSettings_Services() {
return (EReference)getSMVSettings().getEStructuralFeatures().get(8);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
......@@ -7159,6 +7168,15 @@ public class SclPackageImpl extends EPackageImpl implements SclPackage {
return (EReference)getServices().getEStructuralFeatures().get(34);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public EReference getServices_SMVSettings() {
return (EReference)getServices().getEStructuralFeatures().get(35);
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
......
......@@ -52,6 +52,7 @@ import fr.centralesupelec.edf.riseclipse.iec61850.scl.LogSettings;
import fr.centralesupelec.edf.riseclipse.iec61850.scl.ReadWrite;
import fr.centralesupelec.edf.riseclipse.iec61850.scl.RedProt;
import fr.centralesupelec.edf.riseclipse.iec61850.scl.ReportSettings;
import fr.centralesupelec.edf.riseclipse.iec61850.scl.SMVSettings;
import fr.centralesupelec.edf.riseclipse.iec61850.scl.SMVsc;
import fr.centralesupelec.edf.riseclipse.iec61850.scl.SclPackage;
import fr.centralesupelec.edf.riseclipse.iec61850.scl.Services;
......@@ -105,6 +106,7 @@ import fr.centralesupelec.edf.riseclipse.iec61850.scl.ValueHandling;
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.impl.ServicesImpl#getSettingGroups <em>Setting Groups</em>}</li>
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.impl.ServicesImpl#getTimeSyncProt <em>Time Sync Prot</em>}</li>
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.impl.ServicesImpl#getTimerActivatedControl <em>Timer Activated Control</em>}</li>
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.impl.ServicesImpl#getSMVSettings <em>SMV Settings</em>}</li>
* </ul>
*
* @generated
......@@ -747,6 +749,25 @@ public class ServicesImpl extends SclObjectImpl implements Services {
*/
protected boolean timerActivatedControlESet;
/**
* The cached value of the '{@link #getSMVSettings() <em>SMV Settings</em>}' containment reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see #getSMVSettings()
* @generated
* @ordered
*/
protected SMVSettings smvSettings;
/**
* This is true if the SMV Settings containment reference has been set.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
protected boolean smvSettingsESet;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
......@@ -3937,6 +3958,101 @@ public class ServicesImpl extends SclObjectImpl implements Services {
return timerActivatedControlESet;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public SMVSettings getSMVSettings() {
return smvSettings;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public NotificationChain basicSetSMVSettings(SMVSettings newSMVSettings, NotificationChain msgs) {
SMVSettings oldSMVSettings = smvSettings;
smvSettings = newSMVSettings;
boolean oldSMVSettingsESet = smvSettingsESet;
smvSettingsESet = true;
if (eNotificationRequired()) {
ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, SclPackage.SERVICES__SMV_SETTINGS, oldSMVSettings, newSMVSettings, !oldSMVSettingsESet);
if (msgs == null) msgs = notification; else msgs.add(notification);
}
return msgs;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public void setSMVSettings(SMVSettings newSMVSettings) {
if (newSMVSettings != smvSettings) {
NotificationChain msgs = null;
if (smvSettings != null)
msgs = ((InternalEObject)smvSettings).eInverseRemove(this, SclPackage.SMV_SETTINGS__SERVICES, SMVSettings.class, msgs);
if (newSMVSettings != null)
msgs = ((InternalEObject)newSMVSettings).eInverseAdd(this, SclPackage.SMV_SETTINGS__SERVICES, SMVSettings.class, msgs);
msgs = basicSetSMVSettings(newSMVSettings, msgs);
if (msgs != null) msgs.dispatch();
}
else {
boolean oldSMVSettingsESet = smvSettingsESet;
smvSettingsESet = true;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.SET, SclPackage.SERVICES__SMV_SETTINGS, newSMVSettings, newSMVSettings, !oldSMVSettingsESet));
}
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public NotificationChain basicUnsetSMVSettings(NotificationChain msgs) {
SMVSettings oldSMVSettings = smvSettings;
smvSettings = null;
boolean oldSMVSettingsESet = smvSettingsESet;
smvSettingsESet = false;
if (eNotificationRequired()) {
ENotificationImpl notification = new ENotificationImpl(this, Notification.UNSET, SclPackage.SERVICES__SMV_SETTINGS, oldSMVSettings, null, oldSMVSettingsESet);
if (msgs == null) msgs = notification; else msgs.add(notification);
}
return msgs;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public void unsetSMVSettings() {
if (smvSettings != null) {
NotificationChain msgs = null;
msgs = ((InternalEObject)smvSettings).eInverseRemove(this, SclPackage.SMV_SETTINGS__SERVICES, SMVSettings.class, msgs);
msgs = basicUnsetSMVSettings(msgs);
if (msgs != null) msgs.dispatch();
}
else {
boolean oldSMVSettingsESet = smvSettingsESet;
smvSettingsESet = false;
if (eNotificationRequired())
eNotify(new ENotificationImpl(this, Notification.UNSET, SclPackage.SERVICES__SMV_SETTINGS, null, null, oldSMVSettingsESet));
}
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public boolean isSetSMVSettings() {
return smvSettingsESet;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
......@@ -4081,6 +4197,10 @@ public class ServicesImpl extends SclObjectImpl implements Services {
if (timerActivatedControl != null)
msgs = ((InternalEObject)timerActivatedControl).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SclPackage.SERVICES__TIMER_ACTIVATED_CONTROL, null, msgs);
return basicSetTimerActivatedControl((TimerActivatedControl)otherEnd, msgs);
case SclPackage.SERVICES__SMV_SETTINGS:
if (smvSettings != null)
msgs = ((InternalEObject)smvSettings).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - SclPackage.SERVICES__SMV_SETTINGS, null, msgs);
return basicSetSMVSettings((SMVSettings)otherEnd, msgs);
}
return super.eInverseAdd(otherEnd, featureID, msgs);
}
......@@ -4161,6 +4281,8 @@ public class ServicesImpl extends SclObjectImpl implements Services {
return basicUnsetTimeSyncProt(msgs);
case SclPackage.SERVICES__TIMER_ACTIVATED_CONTROL:
return basicUnsetTimerActivatedControl(msgs);
case SclPackage.SERVICES__SMV_SETTINGS:
return basicUnsetSMVSettings(msgs);
}
return super.eInverseRemove(otherEnd, featureID, msgs);
}
......@@ -4259,6 +4381,8 @@ public class ServicesImpl extends SclObjectImpl implements Services {
return getTimeSyncProt();
case SclPackage.SERVICES__TIMER_ACTIVATED_CONTROL:
return getTimerActivatedControl();
case SclPackage.SERVICES__SMV_SETTINGS:
return getSMVSettings();
}
return super.eGet(featureID, resolve, coreType);
}
......@@ -4376,6 +4500,9 @@ public class ServicesImpl extends SclObjectImpl implements Services {
case SclPackage.SERVICES__TIMER_ACTIVATED_CONTROL:
setTimerActivatedControl((TimerActivatedControl)newValue);
return;
case SclPackage.SERVICES__SMV_SETTINGS:
setSMVSettings((SMVSettings)newValue);
return;
}
super.eSet(featureID, newValue);
}
......@@ -4493,6 +4620,9 @@ public class ServicesImpl extends SclObjectImpl implements Services {
case SclPackage.SERVICES__TIMER_ACTIVATED_CONTROL:
unsetTimerActivatedControl();
return;
case SclPackage.SERVICES__SMV_SETTINGS:
unsetSMVSettings();
return;
}
super.eUnset(featureID);
}
......@@ -4575,6 +4705,8 @@ public class ServicesImpl extends SclObjectImpl implements Services {
return isSetTimeSyncProt();
case SclPackage.SERVICES__TIMER_ACTIVATED_CONTROL:
return isSetTimerActivatedControl();
case SclPackage.SERVICES__SMV_SETTINGS:
return isSetSMVSettings();
}
return super.eIsSet(featureID);
}
......
......@@ -1352,6 +1352,9 @@
upperBound="-1" eType="#//SamplesPerSec" unsettable="true" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="SecPerSamples" ordered="false"
upperBound="-1" eType="#//SecPerSamples" unsettable="true" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="Services" ordered="false"