| package org.eclipse.stem.diseasemodels.experimental.impl; |
| |
| /******************************************************************************* |
| * Copyright (c) 2011 IBM Corporation and others. |
| * All rights reserved. This program and the accompanying materials |
| * are made available under the terms of the Eclipse Public License v1.0 |
| * which accompanies this distribution, and is available at |
| * http://www.eclipse.org/legal/epl-v10.html |
| * |
| * Contributors: |
| * IBM Corporation - initial API and implementation |
| *******************************************************************************/ |
| |
| import org.eclipse.emf.common.notify.Notification; |
| import org.eclipse.emf.ecore.EClass; |
| import org.eclipse.emf.ecore.InternalEObject; |
| import org.eclipse.emf.ecore.impl.ENotificationImpl; |
| import org.eclipse.stem.core.graph.LabelValue; |
| import org.eclipse.stem.diseasemodels.experimental.ExperimentalFactory; |
| import org.eclipse.stem.diseasemodels.experimental.ExperimentalPackage; |
| import org.eclipse.stem.diseasemodels.experimental.TBDiseaseModelLabel; |
| import org.eclipse.stem.diseasemodels.experimental.TBDiseaseModelLabelValue; |
| import org.eclipse.stem.diseasemodels.standard.impl.StandardDiseaseModelLabelImpl; |
| |
| /** |
| * <!-- begin-user-doc --> |
| * An implementation of the model object '<em><b>TB Disease Model Label</b></em>'. |
| * <!-- end-user-doc --> |
| * <p> |
| * The following features are implemented: |
| * <ul> |
| * <li>{@link org.eclipse.stem.diseasemodels.experimental.impl.TBDiseaseModelLabelImpl#getProbeValue <em>Probe Value</em>}</li> |
| * <li>{@link org.eclipse.stem.diseasemodels.experimental.impl.TBDiseaseModelLabelImpl#getDeltaValue <em>Delta Value</em>}</li> |
| * <li>{@link org.eclipse.stem.diseasemodels.experimental.impl.TBDiseaseModelLabelImpl#getTempValue <em>Temp Value</em>}</li> |
| * <li>{@link org.eclipse.stem.diseasemodels.experimental.impl.TBDiseaseModelLabelImpl#getErrorScale <em>Error Scale</em>}</li> |
| * </ul> |
| * </p> |
| * |
| * @generated |
| */ |
| public class TBDiseaseModelLabelImpl extends StandardDiseaseModelLabelImpl implements TBDiseaseModelLabel { |
| /** |
| * The cached value of the '{@link #getProbeValue() <em>Probe Value</em>}' reference. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @see #getProbeValue() |
| * @generated |
| * @ordered |
| */ |
| protected TBDiseaseModelLabelValue probeValue; |
| /** |
| * The cached value of the '{@link #getDeltaValue() <em>Delta Value</em>}' reference. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @see #getDeltaValue() |
| * @generated |
| * @ordered |
| */ |
| protected TBDiseaseModelLabelValue deltaValue; |
| /** |
| * The cached value of the '{@link #getTempValue() <em>Temp Value</em>}' reference. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @see #getTempValue() |
| * @generated |
| * @ordered |
| */ |
| protected TBDiseaseModelLabelValue tempValue; |
| |
| /** |
| * The cached value of the '{@link #getErrorScale() <em>Error Scale</em>}' reference. |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @see #getErrorScale() |
| * @generated |
| * @ordered |
| */ |
| protected TBDiseaseModelLabelValue errorScale; |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated NOT |
| */ |
| protected TBDiseaseModelLabelImpl() { |
| super(); |
| setCurrentValue(ExperimentalFactory.eINSTANCE.createTBDiseaseModelLabelValue()); |
| setNextValue(ExperimentalFactory.eINSTANCE.createTBDiseaseModelLabelValue()); |
| setTempValue(ExperimentalFactory.eINSTANCE.createTBDiseaseModelLabelValue()); |
| setProbeValue(ExperimentalFactory.eINSTANCE.createTBDiseaseModelLabelValue()); |
| setErrorScale(ExperimentalFactory.eINSTANCE.createTBDiseaseModelLabelValue()); |
| setDeltaValue(ExperimentalFactory.eINSTANCE.createTBDiseaseModelLabelValue()); |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| @Override |
| protected EClass eStaticClass() { |
| return ExperimentalPackage.Literals.TB_DISEASE_MODEL_LABEL; |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| public TBDiseaseModelLabelValue getProbeValue() { |
| if (probeValue != null && probeValue.eIsProxy()) { |
| InternalEObject oldProbeValue = (InternalEObject)probeValue; |
| probeValue = (TBDiseaseModelLabelValue)eResolveProxy(oldProbeValue); |
| if (probeValue != oldProbeValue) { |
| if (eNotificationRequired()) |
| eNotify(new ENotificationImpl(this, Notification.RESOLVE, ExperimentalPackage.TB_DISEASE_MODEL_LABEL__PROBE_VALUE, oldProbeValue, probeValue)); |
| } |
| } |
| return probeValue; |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| public TBDiseaseModelLabelValue basicGetProbeValue() { |
| return probeValue; |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| public void setProbeValue(TBDiseaseModelLabelValue newProbeValue) { |
| TBDiseaseModelLabelValue oldProbeValue = probeValue; |
| probeValue = newProbeValue; |
| if (eNotificationRequired()) |
| eNotify(new ENotificationImpl(this, Notification.SET, ExperimentalPackage.TB_DISEASE_MODEL_LABEL__PROBE_VALUE, oldProbeValue, probeValue)); |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| public TBDiseaseModelLabelValue getDeltaValue() { |
| if (deltaValue != null && deltaValue.eIsProxy()) { |
| InternalEObject oldDeltaValue = (InternalEObject)deltaValue; |
| deltaValue = (TBDiseaseModelLabelValue)eResolveProxy(oldDeltaValue); |
| if (deltaValue != oldDeltaValue) { |
| if (eNotificationRequired()) |
| eNotify(new ENotificationImpl(this, Notification.RESOLVE, ExperimentalPackage.TB_DISEASE_MODEL_LABEL__DELTA_VALUE, oldDeltaValue, deltaValue)); |
| } |
| } |
| return deltaValue; |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| public TBDiseaseModelLabelValue basicGetDeltaValue() { |
| return deltaValue; |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| public void setDeltaValue(TBDiseaseModelLabelValue newDeltaValue) { |
| TBDiseaseModelLabelValue oldDeltaValue = deltaValue; |
| deltaValue = newDeltaValue; |
| if (eNotificationRequired()) |
| eNotify(new ENotificationImpl(this, Notification.SET, ExperimentalPackage.TB_DISEASE_MODEL_LABEL__DELTA_VALUE, oldDeltaValue, deltaValue)); |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| public TBDiseaseModelLabelValue getTempValue() { |
| if (tempValue != null && tempValue.eIsProxy()) { |
| InternalEObject oldTempValue = (InternalEObject)tempValue; |
| tempValue = (TBDiseaseModelLabelValue)eResolveProxy(oldTempValue); |
| if (tempValue != oldTempValue) { |
| if (eNotificationRequired()) |
| eNotify(new ENotificationImpl(this, Notification.RESOLVE, ExperimentalPackage.TB_DISEASE_MODEL_LABEL__TEMP_VALUE, oldTempValue, tempValue)); |
| } |
| } |
| return tempValue; |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| public TBDiseaseModelLabelValue basicGetTempValue() { |
| return tempValue; |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| public void setTempValue(TBDiseaseModelLabelValue newTempValue) { |
| TBDiseaseModelLabelValue oldTempValue = tempValue; |
| tempValue = newTempValue; |
| if (eNotificationRequired()) |
| eNotify(new ENotificationImpl(this, Notification.SET, ExperimentalPackage.TB_DISEASE_MODEL_LABEL__TEMP_VALUE, oldTempValue, tempValue)); |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| public TBDiseaseModelLabelValue getErrorScale() { |
| if (errorScale != null && errorScale.eIsProxy()) { |
| InternalEObject oldErrorScale = (InternalEObject)errorScale; |
| errorScale = (TBDiseaseModelLabelValue)eResolveProxy(oldErrorScale); |
| if (errorScale != oldErrorScale) { |
| if (eNotificationRequired()) |
| eNotify(new ENotificationImpl(this, Notification.RESOLVE, ExperimentalPackage.TB_DISEASE_MODEL_LABEL__ERROR_SCALE, oldErrorScale, errorScale)); |
| } |
| } |
| return errorScale; |
| } |
| |
| public void setDeltaValue(LabelValue lv) { |
| this.deltaValue = (TBDiseaseModelLabelValue)lv; |
| |
| } |
| |
| public void setTempValue(LabelValue lv) { |
| this.tempValue = (TBDiseaseModelLabelValue)lv; |
| |
| } |
| |
| public void setProbeValue(LabelValue lv) { |
| this.probeValue = (TBDiseaseModelLabelValue)lv; |
| |
| } |
| |
| public void setErrorScale(LabelValue lv) { |
| this.errorScale = (TBDiseaseModelLabelValue)lv; |
| |
| } |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| public TBDiseaseModelLabelValue basicGetErrorScale() { |
| return errorScale; |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| public void setErrorScale(TBDiseaseModelLabelValue newErrorScale) { |
| TBDiseaseModelLabelValue oldErrorScale = errorScale; |
| errorScale = newErrorScale; |
| if (eNotificationRequired()) |
| eNotify(new ENotificationImpl(this, Notification.SET, ExperimentalPackage.TB_DISEASE_MODEL_LABEL__ERROR_SCALE, oldErrorScale, errorScale)); |
| } |
| |
| @Override |
| public String toTooltipString() { |
| StringBuffer result = new StringBuffer(); |
| |
| TBDiseaseModelLabelValue tbVal = (TBDiseaseModelLabelValue)getCurrentDiseaseModelLabelValue(); |
| double populationCount = tbVal.getPopulationCount(); |
| |
| if(populationCount == 0) populationCount = 1; // Avoid divide by 0, all zeros will be displayed for the compartments |
| result.append(getPopulationModelLabel() + ": "); |
| result.append("S:"); //$NON-NLS-1$ |
| result.append(getPercentFormat().format( (getS()) / populationCount) ); |
| |
| result.append(", IA:"); //$NON-NLS-1$ |
| result.append(getPercentFormat().format((tbVal.getIa()) / populationCount) ); |
| |
| result.append(", IL:"); //$NON-NLS-1$ |
| result.append(getPercentFormat().format( (tbVal.getIl()) / populationCount) ); |
| |
| result.append(", DD:"); //$NON-NLS-1$ |
| result.append(getPercentFormat().format( (tbVal.getDiseaseDeaths()) / populationCount) ); |
| return result.toString(); |
| } // toTooltipString |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| @Override |
| public Object eGet(int featureID, boolean resolve, boolean coreType) { |
| switch (featureID) { |
| case ExperimentalPackage.TB_DISEASE_MODEL_LABEL__PROBE_VALUE: |
| if (resolve) return getProbeValue(); |
| return basicGetProbeValue(); |
| case ExperimentalPackage.TB_DISEASE_MODEL_LABEL__DELTA_VALUE: |
| if (resolve) return getDeltaValue(); |
| return basicGetDeltaValue(); |
| case ExperimentalPackage.TB_DISEASE_MODEL_LABEL__TEMP_VALUE: |
| if (resolve) return getTempValue(); |
| return basicGetTempValue(); |
| case ExperimentalPackage.TB_DISEASE_MODEL_LABEL__ERROR_SCALE: |
| if (resolve) return getErrorScale(); |
| return basicGetErrorScale(); |
| } |
| return super.eGet(featureID, resolve, coreType); |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| @Override |
| public void eSet(int featureID, Object newValue) { |
| switch (featureID) { |
| case ExperimentalPackage.TB_DISEASE_MODEL_LABEL__PROBE_VALUE: |
| setProbeValue((TBDiseaseModelLabelValue)newValue); |
| return; |
| case ExperimentalPackage.TB_DISEASE_MODEL_LABEL__DELTA_VALUE: |
| setDeltaValue((TBDiseaseModelLabelValue)newValue); |
| return; |
| case ExperimentalPackage.TB_DISEASE_MODEL_LABEL__TEMP_VALUE: |
| setTempValue((TBDiseaseModelLabelValue)newValue); |
| return; |
| case ExperimentalPackage.TB_DISEASE_MODEL_LABEL__ERROR_SCALE: |
| setErrorScale((TBDiseaseModelLabelValue)newValue); |
| return; |
| } |
| super.eSet(featureID, newValue); |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| @Override |
| public void eUnset(int featureID) { |
| switch (featureID) { |
| case ExperimentalPackage.TB_DISEASE_MODEL_LABEL__PROBE_VALUE: |
| setProbeValue((TBDiseaseModelLabelValue)null); |
| return; |
| case ExperimentalPackage.TB_DISEASE_MODEL_LABEL__DELTA_VALUE: |
| setDeltaValue((TBDiseaseModelLabelValue)null); |
| return; |
| case ExperimentalPackage.TB_DISEASE_MODEL_LABEL__TEMP_VALUE: |
| setTempValue((TBDiseaseModelLabelValue)null); |
| return; |
| case ExperimentalPackage.TB_DISEASE_MODEL_LABEL__ERROR_SCALE: |
| setErrorScale((TBDiseaseModelLabelValue)null); |
| return; |
| } |
| super.eUnset(featureID); |
| } |
| |
| /** |
| * <!-- begin-user-doc --> |
| * <!-- end-user-doc --> |
| * @generated |
| */ |
| @Override |
| public boolean eIsSet(int featureID) { |
| switch (featureID) { |
| case ExperimentalPackage.TB_DISEASE_MODEL_LABEL__PROBE_VALUE: |
| return probeValue != null; |
| case ExperimentalPackage.TB_DISEASE_MODEL_LABEL__DELTA_VALUE: |
| return deltaValue != null; |
| case ExperimentalPackage.TB_DISEASE_MODEL_LABEL__TEMP_VALUE: |
| return tempValue != null; |
| case ExperimentalPackage.TB_DISEASE_MODEL_LABEL__ERROR_SCALE: |
| return errorScale != null; |
| } |
| return super.eIsSet(featureID); |
| } |
| |
| } //TBDiseaseModelLabelImpl |