Commit 0dea03c0 authored by Dominique Marcadet's avatar Dominique Marcadet

Merge branch '17-smvsettings-is-missing-inside-services' into 'master'

Resolve "SMVSettings is missing inside Services"

Closes #17

See merge request RiseClipseGroup/RiseClipseMetamodel_SCL2003!15
parents 695e7361 eae0865d
...@@ -1015,3 +1015,5 @@ _UI_ExtRef_desc_feature = Desc ...@@ -1015,3 +1015,5 @@ _UI_ExtRef_desc_feature = Desc
_UI_IEDName_value_feature = Value _UI_IEDName_value_feature = Value
_UI_Line_Voltage_feature = Voltage _UI_Line_Voltage_feature = Voltage
_UI_Voltage_Line_feature = Line _UI_Voltage_Line_feature = Line
_UI_SMVSettings_Services_feature = Services
_UI_Services_SMVSettings_feature = SMV Settings
...@@ -133,6 +133,7 @@ public class ServicesItemProvider ...@@ -133,6 +133,7 @@ public class ServicesItemProvider
childrenFeatures.add(SclPackage.eINSTANCE.getServices_SettingGroups()); childrenFeatures.add(SclPackage.eINSTANCE.getServices_SettingGroups());
childrenFeatures.add(SclPackage.eINSTANCE.getServices_TimeSyncProt()); childrenFeatures.add(SclPackage.eINSTANCE.getServices_TimeSyncProt());
childrenFeatures.add(SclPackage.eINSTANCE.getServices_TimerActivatedControl()); childrenFeatures.add(SclPackage.eINSTANCE.getServices_TimerActivatedControl());
childrenFeatures.add(SclPackage.eINSTANCE.getServices_SMVSettings());
} }
return childrenFeatures; return childrenFeatures;
} }
...@@ -224,6 +225,7 @@ public class ServicesItemProvider ...@@ -224,6 +225,7 @@ public class ServicesItemProvider
case SclPackage.SERVICES__SETTING_GROUPS: case SclPackage.SERVICES__SETTING_GROUPS:
case SclPackage.SERVICES__TIME_SYNC_PROT: case SclPackage.SERVICES__TIME_SYNC_PROT:
case SclPackage.SERVICES__TIMER_ACTIVATED_CONTROL: case SclPackage.SERVICES__TIMER_ACTIVATED_CONTROL:
case SclPackage.SERVICES__SMV_SETTINGS:
fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false)); fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
return; return;
} }
...@@ -400,6 +402,11 @@ public class ServicesItemProvider ...@@ -400,6 +402,11 @@ public class ServicesItemProvider
(createChildParameter (createChildParameter
(SclPackage.eINSTANCE.getServices_TimerActivatedControl(), (SclPackage.eINSTANCE.getServices_TimerActivatedControl(),
SclFactory.eINSTANCE.createTimerActivatedControl())); SclFactory.eINSTANCE.createTimerActivatedControl()));
newChildDescriptors.add
(createChildParameter
(SclPackage.eINSTANCE.getServices_SMVSettings(),
SclFactory.eINSTANCE.createSMVSettings()));
} }
} }
...@@ -1352,6 +1352,9 @@ ...@@ -1352,6 +1352,9 @@
upperBound="-1" eType="#//SamplesPerSec" unsettable="true" containment="true"/> upperBound="-1" eType="#//SamplesPerSec" unsettable="true" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="SecPerSamples" ordered="false" <eStructuralFeatures xsi:type="ecore:EReference" name="SecPerSamples" ordered="false"
upperBound="-1" eType="#//SecPerSamples" unsettable="true" containment="true"/> 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>
<eClassifiers xsi:type="ecore:EClass" name="SMVsc" eSuperTypes="#//ServiceWithMax"> <eClassifiers xsi:type="ecore:EClass" name="SMVsc" eSuperTypes="#//ServiceWithMax">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="delivery" eType="#//SMVDeliveryEnum" <eStructuralFeatures xsi:type="ecore:EAttribute" name="delivery" eType="#//SMVDeliveryEnum"
...@@ -1520,6 +1523,9 @@ ...@@ -1520,6 +1523,9 @@
<eStructuralFeatures xsi:type="ecore:EReference" name="TimerActivatedControl" <eStructuralFeatures xsi:type="ecore:EReference" name="TimerActivatedControl"
ordered="false" eType="#//TimerActivatedControl" unsettable="true" containment="true" ordered="false" eType="#//TimerActivatedControl" unsettable="true" containment="true"
resolveProxies="false" eOpposite="#//TimerActivatedControl/Services"/> 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>
<eClassifiers xsi:type="ecore:EClass" name="SetDataSetValue" eSuperTypes="#//ServiceYesNo"> <eClassifiers xsi:type="ecore:EClass" name="SetDataSetValue" eSuperTypes="#//ServiceYesNo">
<eStructuralFeatures xsi:type="ecore:EReference" name="Services" ordered="false" <eStructuralFeatures xsi:type="ecore:EReference" name="Services" ordered="false"
......
...@@ -736,6 +736,7 @@ ...@@ -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/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/SamplesPerSec"/>
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SCL.ecore#//SMVSettings/SecPerSamples"/> <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>
<genClasses ecoreClass="SCL.ecore#//SMVsc"> <genClasses ecoreClass="SCL.ecore#//SMVsc">
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute SCL.ecore#//SMVsc/delivery"/> <genFeatures createChild="false" ecoreFeature="ecore:EAttribute SCL.ecore#//SMVsc/delivery"/>
...@@ -807,6 +808,7 @@ ...@@ -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/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/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/TimerActivatedControl"/>
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference SCL.ecore#//Services/SMVSettings"/>
</genClasses> </genClasses>
<genClasses ecoreClass="SCL.ecore#//SetDataSetValue"> <genClasses ecoreClass="SCL.ecore#//SetDataSetValue">
<genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference SCL.ecore#//SetDataSetValue/Services"/> <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; ...@@ -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#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#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#getSecPerSamples <em>Sec Per Samples</em>}</li>
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.SMVSettings#getServices <em>Services</em>}</li>
* </ul> * </ul>
* *
* @see fr.centralesupelec.edf.riseclipse.iec61850.scl.SclPackage#getSMVSettings() * @see fr.centralesupelec.edf.riseclipse.iec61850.scl.SclPackage#getSMVSettings()
...@@ -437,4 +438,32 @@ public interface SMVSettings extends ServiceSettings { ...@@ -437,4 +438,32 @@ public interface SMVSettings extends ServiceSettings {
* @generated * @generated
*/ */
boolean isSetSecPerSamples(); 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 } // SMVSettings
...@@ -12522,6 +12522,15 @@ public interface SclPackage extends EPackage { ...@@ -12522,6 +12522,15 @@ public interface SclPackage extends EPackage {
*/ */
int SMV_SETTINGS__SEC_PER_SAMPLES = SERVICE_SETTINGS_FEATURE_COUNT + 7; 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. * The number of structural features of the '<em>SMV Settings</em>' class.
* <!-- begin-user-doc --> * <!-- begin-user-doc -->
...@@ -12529,7 +12538,7 @@ public interface SclPackage extends EPackage { ...@@ -12529,7 +12538,7 @@ public interface SclPackage extends EPackage {
* @generated * @generated
* @ordered * @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. * The number of operations of the '<em>SMV Settings</em>' class.
...@@ -13350,6 +13359,15 @@ public interface SclPackage extends EPackage { ...@@ -13350,6 +13359,15 @@ public interface SclPackage extends EPackage {
*/ */
int SERVICES__TIMER_ACTIVATED_CONTROL = SCL_OBJECT_FEATURE_COUNT + 34; 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. * The number of structural features of the '<em>Services</em>' class.
* <!-- begin-user-doc --> * <!-- begin-user-doc -->
...@@ -13357,7 +13375,7 @@ public interface SclPackage extends EPackage { ...@@ -13357,7 +13375,7 @@ public interface SclPackage extends EPackage {
* @generated * @generated
* @ordered * @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. * The number of operations of the '<em>Services</em>' class.
...@@ -23789,6 +23807,17 @@ public interface SclPackage extends EPackage { ...@@ -23789,6 +23807,17 @@ public interface SclPackage extends EPackage {
*/ */
EReference getSMVSettings_SecPerSamples(); 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>}'. * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.SMVsc <em>SM Vsc</em>}'.
* <!-- begin-user-doc --> * <!-- begin-user-doc -->
...@@ -24486,6 +24515,17 @@ public interface SclPackage extends EPackage { ...@@ -24486,6 +24515,17 @@ public interface SclPackage extends EPackage {
*/ */
EReference getServices_TimerActivatedControl(); 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>}'. * Returns the meta object for class '{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.SetDataSetValue <em>Set Data Set Value</em>}'.
* <!-- begin-user-doc --> * <!-- begin-user-doc -->
......
...@@ -62,6 +62,7 @@ package fr.centralesupelec.edf.riseclipse.iec61850.scl; ...@@ -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#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#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#getTimerActivatedControl <em>Timer Activated Control</em>}</li>
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.Services#getSMVSettings <em>SMV Settings</em>}</li>
* </ul> * </ul>
* *
* @see fr.centralesupelec.edf.riseclipse.iec61850.scl.SclPackage#getServices() * @see fr.centralesupelec.edf.riseclipse.iec61850.scl.SclPackage#getServices()
...@@ -1938,4 +1939,59 @@ public interface Services extends SclObject { ...@@ -1938,4 +1939,59 @@ public interface Services extends SclObject {
*/ */
boolean isSetTimerActivatedControl(); 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 } // Services
...@@ -26,6 +26,7 @@ import org.eclipse.emf.ecore.EClass; ...@@ -26,6 +26,7 @@ import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.InternalEObject; import org.eclipse.emf.ecore.InternalEObject;
import org.eclipse.emf.ecore.impl.ENotificationImpl; import org.eclipse.emf.ecore.impl.ENotificationImpl;
import org.eclipse.emf.ecore.util.EObjectContainmentEList; import org.eclipse.emf.ecore.util.EObjectContainmentEList;
import org.eclipse.emf.ecore.util.EcoreUtil;
import org.eclipse.emf.ecore.util.InternalEList; import org.eclipse.emf.ecore.util.InternalEList;
import fr.centralesupelec.edf.riseclipse.iec61850.scl.SMVSettings; import fr.centralesupelec.edf.riseclipse.iec61850.scl.SMVSettings;
...@@ -33,6 +34,7 @@ import fr.centralesupelec.edf.riseclipse.iec61850.scl.SamplesPerSec; ...@@ -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.SclPackage;
import fr.centralesupelec.edf.riseclipse.iec61850.scl.SecPerSamples; import fr.centralesupelec.edf.riseclipse.iec61850.scl.SecPerSamples;
import fr.centralesupelec.edf.riseclipse.iec61850.scl.ServiceSettingsEnum; import fr.centralesupelec.edf.riseclipse.iec61850.scl.ServiceSettingsEnum;
import fr.centralesupelec.edf.riseclipse.iec61850.scl.Services;
import fr.centralesupelec.edf.riseclipse.iec61850.scl.SmpRate; import fr.centralesupelec.edf.riseclipse.iec61850.scl.SmpRate;
/** /**
...@@ -51,6 +53,7 @@ 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#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#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#getSecPerSamples <em>Sec Per Samples</em>}</li>
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.impl.SMVSettingsImpl#getServices <em>Services</em>}</li>
* </ul> * </ul>
* *
* @generated * @generated
...@@ -568,6 +571,63 @@ public class SMVSettingsImpl extends ServiceSettingsImpl implements SMVSettings ...@@ -568,6 +571,63 @@ public class SMVSettingsImpl extends ServiceSettingsImpl implements SMVSettings
return secPerSamples != null && ((InternalEList.Unsettable<?>)secPerSamples).isSet(); 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 --> * <!-- begin-user-doc -->
* <!-- end-user-doc --> * <!-- end-user-doc -->
...@@ -582,10 +642,26 @@ public class SMVSettingsImpl extends ServiceSettingsImpl implements SMVSettings ...@@ -582,10 +642,26 @@ public class SMVSettingsImpl extends ServiceSettingsImpl implements SMVSettings
return ((InternalEList<?>)getSamplesPerSec()).basicRemove(otherEnd, msgs); return ((InternalEList<?>)getSamplesPerSec()).basicRemove(otherEnd, msgs);
case SclPackage.SMV_SETTINGS__SEC_PER_SAMPLES: case SclPackage.SMV_SETTINGS__SEC_PER_SAMPLES:
return ((InternalEList<?>)getSecPerSamples()).basicRemove(otherEnd, msgs); return ((InternalEList<?>)getSecPerSamples()).basicRemove(otherEnd, msgs);
case SclPackage.SMV_SETTINGS__SERVICES:
return basicSetServices(null, msgs);
} }
return super.eInverseRemove(otherEnd, featureID, 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 --> * <!-- begin-user-doc -->
* <!-- end-user-doc --> * <!-- end-user-doc -->
...@@ -610,6 +686,8 @@ public class SMVSettingsImpl extends ServiceSettingsImpl implements SMVSettings ...@@ -610,6 +686,8 @@ public class SMVSettingsImpl extends ServiceSettingsImpl implements SMVSettings
return getSamplesPerSec(); return getSamplesPerSec();
case SclPackage.SMV_SETTINGS__SEC_PER_SAMPLES: case SclPackage.SMV_SETTINGS__SEC_PER_SAMPLES:
return getSecPerSamples(); return getSecPerSamples();
case SclPackage.SMV_SETTINGS__SERVICES:
return getServices();
} }
return super.eGet(featureID, resolve, coreType); return super.eGet(featureID, resolve, coreType);
} }
...@@ -650,6 +728,9 @@ public class SMVSettingsImpl extends ServiceSettingsImpl implements SMVSettings ...@@ -650,6 +728,9 @@ public class SMVSettingsImpl extends ServiceSettingsImpl implements SMVSettings
getSecPerSamples().clear(); getSecPerSamples().clear();
getSecPerSamples().addAll((Collection<? extends SecPerSamples>)newValue); getSecPerSamples().addAll((Collection<? extends SecPerSamples>)newValue);
return; return;
case SclPackage.SMV_SETTINGS__SERVICES:
setServices((Services)newValue);
return;
} }
super.eSet(featureID, newValue); super.eSet(featureID, newValue);
} }
...@@ -686,6 +767,9 @@ public class SMVSettingsImpl extends ServiceSettingsImpl implements SMVSettings ...@@ -686,6 +767,9 @@ public class SMVSettingsImpl extends ServiceSettingsImpl implements SMVSettings
case SclPackage.SMV_SETTINGS__SEC_PER_SAMPLES: case SclPackage.SMV_SETTINGS__SEC_PER_SAMPLES:
unsetSecPerSamples(); unsetSecPerSamples();
return; return;
case SclPackage.SMV_SETTINGS__SERVICES:
setServices((Services)null);
return;
} }
super.eUnset(featureID); super.eUnset(featureID);
} }
...@@ -714,6 +798,8 @@ public class SMVSettingsImpl extends ServiceSettingsImpl implements SMVSettings ...@@ -714,6 +798,8 @@ public class SMVSettingsImpl extends ServiceSettingsImpl implements SMVSettings
return isSetSamplesPerSec(); return isSetSamplesPerSec();
case SclPackage.SMV_SETTINGS__SEC_PER_SAMPLES: case SclPackage.SMV_SETTINGS__SEC_PER_SAMPLES:
return isSetSecPerSamples(); return isSetSecPerSamples();
case SclPackage.SMV_SETTINGS__SERVICES:
return getServices() != null;
} }
return super.eIsSet(featureID); return super.eIsSet(featureID);
} }
......
...@@ -6562,6 +6562,15 @@ public class SclPackageImpl extends EPackageImpl implements SclPackage { ...@@ -6562,6 +6562,15 @@ public class SclPackageImpl extends EPackageImpl implements SclPackage {
return (EReference)getSMVSettings().getEStructuralFeatures().get(7); 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 --> * <!-- begin-user-doc -->
* <!-- end-user-doc --> * <!-- end-user-doc -->
...@@ -7159,6 +7168,15 @@ public class SclPackageImpl extends EPackageImpl implements SclPackage { ...@@ -7159,6 +7168,15 @@ public class SclPackageImpl extends EPackageImpl implements SclPackage {
return (EReference)getServices().getEStructuralFeatures().get(34); 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 --> * <!-- begin-user-doc -->
* <!-- end-user-doc --> * <!-- end-user-doc -->
......
...@@ -52,6 +52,7 @@ import fr.centralesupelec.edf.riseclipse.iec61850.scl.LogSettings; ...@@ -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.ReadWrite;
import fr.centralesupelec.edf.riseclipse.iec61850.scl.RedProt; import fr.centralesupelec.edf.riseclipse.iec61850.scl.RedProt;
import fr.centralesupelec.edf.riseclipse.iec61850.scl.ReportSettings; 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.SMVsc;
import fr.centralesupelec.edf.riseclipse.iec61850.scl.SclPackage; import fr.centralesupelec.edf.riseclipse.iec61850.scl.SclPackage;
import fr.centralesupelec.edf.riseclipse.iec61850.scl.Services; import fr.centralesupelec.edf.riseclipse.iec61850.scl.Services;
...@@ -105,6 +106,7 @@ import fr.centralesupelec.edf.riseclipse.iec61850.scl.ValueHandling; ...@@ -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#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#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#getTimerActivatedControl <em>Timer Activated Control</em>}</li>
* <li>{@link fr.centralesupelec.edf.riseclipse.iec61850.scl.impl.ServicesImpl#getSMVSettings <em>SMV Settings</em>}</li>
* </ul> * </ul>
* *
* @generated * @generated
...@@ -747,6 +749,25 @@ public class ServicesImpl extends SclObjectImpl implements Services { ...@@ -747,6 +749,25 @@ public class ServicesImpl extends SclObjectImpl implements Services {
*/ */
protected boolean timerActivatedControlESet; 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 --> * <!-- begin-user-doc -->
* <!-- end-user-doc --> * <!-- end-user-doc -->
...@@ -3937,6 +3958,101 @@ public class ServicesImpl extends SclObjectImpl implements Services { ...@@ -3937,6 +3958,101 @@ public class ServicesImpl extends SclObjectImpl implements Services {
return timerActivatedControlESet; return timerActivatedControlESet;
} }
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/