Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory')
-rw-r--r--extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/CacheType.java300
-rw-r--r--extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/HwCache.java177
-rw-r--r--extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/HwDrive.java87
-rw-r--r--extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/HwMemory.java136
-rw-r--r--extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/HwMemoryFactory.java89
-rw-r--r--extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/HwMemoryPackage.java1857
-rw-r--r--extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/HwRAM.java201
-rw-r--r--extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/HwROM.java90
-rw-r--r--extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/ROM_Type.java354
-rw-r--r--extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/Repl_Policy.java327
-rw-r--r--extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/WritePolicy.java273
-rw-r--r--extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/impl/HwCacheImpl.java392
-rw-r--r--extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/impl/HwDriveImpl.java235
-rw-r--r--extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/impl/HwMemoryFactoryImpl.java339
-rw-r--r--extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/impl/HwMemoryImpl.java415
-rw-r--r--extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/impl/HwMemoryPackageImpl.java918
-rw-r--r--extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/impl/HwRAMImpl.java445
-rw-r--r--extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/impl/HwROMImpl.java228
-rw-r--r--extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/util/HwMemoryAdapterFactory.java262
-rw-r--r--extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/util/HwMemoryResourceFactoryImpl.java63
-rw-r--r--extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/util/HwMemoryResourceImpl.java39
-rw-r--r--extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/util/HwMemorySwitch.java290
-rw-r--r--extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/util/HwMemoryXMLProcessor.java61
23 files changed, 7578 insertions, 0 deletions
diff --git a/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/CacheType.java b/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/CacheType.java
new file mode 100644
index 00000000000..82bec9f37f4
--- /dev/null
+++ b/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/CacheType.java
@@ -0,0 +1,300 @@
+/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ *
+ * 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:
+ * Chokri MRAIDHA (CEA LIST) chokri.mraidha@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory;
+
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+
+import org.eclipse.emf.common.util.Enumerator;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the literals of the enumeration '<em><b>Cache Type</b></em>',
+ * and utility methods for working with them.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwMemoryPackage#getCacheType()
+ * @model
+ * @generated
+ */
+public enum CacheType implements Enumerator {
+ /**
+ * The '<em><b>Data</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #DATA_VALUE
+ * @generated
+ * @ordered
+ */
+ DATA(0, "data", "data"),
+
+ /**
+ * The '<em><b>Instruction</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #INSTRUCTION_VALUE
+ * @generated
+ * @ordered
+ */
+ INSTRUCTION(1, "instruction", "instruction"),
+
+ /**
+ * The '<em><b>Unified</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #UNIFIED_VALUE
+ * @generated
+ * @ordered
+ */
+ UNIFIED(2, "unified", "unified"),
+
+ /**
+ * The '<em><b>Other</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #OTHER_VALUE
+ * @generated
+ * @ordered
+ */
+ OTHER(3, "other", "other"),
+
+ /**
+ * The '<em><b>Undef</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #UNDEF_VALUE
+ * @generated
+ * @ordered
+ */
+ UNDEF(4, "undef", "undef");
+
+ /**
+ * The '<em><b>Data</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>Data</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #DATA
+ * @model name="data"
+ * @generated
+ * @ordered
+ */
+ public static final int DATA_VALUE = 0;
+
+ /**
+ * The '<em><b>Instruction</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>Instruction</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #INSTRUCTION
+ * @model name="instruction"
+ * @generated
+ * @ordered
+ */
+ public static final int INSTRUCTION_VALUE = 1;
+
+ /**
+ * The '<em><b>Unified</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>Unified</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #UNIFIED
+ * @model name="unified"
+ * @generated
+ * @ordered
+ */
+ public static final int UNIFIED_VALUE = 2;
+
+ /**
+ * The '<em><b>Other</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>Other</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #OTHER
+ * @model name="other"
+ * @generated
+ * @ordered
+ */
+ public static final int OTHER_VALUE = 3;
+
+ /**
+ * The '<em><b>Undef</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>Undef</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #UNDEF
+ * @model name="undef"
+ * @generated
+ * @ordered
+ */
+ public static final int UNDEF_VALUE = 4;
+
+ /**
+ * An array of all the '<em><b>Cache Type</b></em>' enumerators.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static final CacheType[] VALUES_ARRAY =
+ new CacheType[] {
+ DATA,
+ INSTRUCTION,
+ UNIFIED,
+ OTHER,
+ UNDEF,
+ };
+
+ /**
+ * A public read-only list of all the '<em><b>Cache Type</b></em>' enumerators.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static final List<CacheType> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
+
+ /**
+ * Returns the '<em><b>Cache Type</b></em>' literal with the specified literal value.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static CacheType get(String literal) {
+ for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+ CacheType result = VALUES_ARRAY[i];
+ if (result.toString().equals(literal)) {
+ return result;
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Returns the '<em><b>Cache Type</b></em>' literal with the specified name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static CacheType getByName(String name) {
+ for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+ CacheType result = VALUES_ARRAY[i];
+ if (result.getName().equals(name)) {
+ return result;
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Returns the '<em><b>Cache Type</b></em>' literal with the specified integer value.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static CacheType get(int value) {
+ switch (value) {
+ case DATA_VALUE: return DATA;
+ case INSTRUCTION_VALUE: return INSTRUCTION;
+ case UNIFIED_VALUE: return UNIFIED;
+ case OTHER_VALUE: return OTHER;
+ case UNDEF_VALUE: return UNDEF;
+ }
+ return null;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private final int value;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private final String name;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private final String literal;
+
+ /**
+ * Only this class can construct instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private CacheType(int value, String name, String literal) {
+ this.value = value;
+ this.name = name;
+ this.literal = literal;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public int getValue() {
+ return value;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getLiteral() {
+ return literal;
+ }
+
+ /**
+ * Returns the literal value of the enumerator, which is its string representation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ return literal;
+ }
+
+} //CacheType
diff --git a/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/HwCache.java b/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/HwCache.java
new file mode 100644
index 00000000000..de5edb00479
--- /dev/null
+++ b/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/HwCache.java
@@ -0,0 +1,177 @@
+/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ *
+ * 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:
+ * Chokri MRAIDHA (CEA LIST) chokri.mraidha@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Hw Cache</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwCache#getLevel <em>Level</em>}</li>
+ * <li>{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwCache#getType <em>Type</em>}</li>
+ * <li>{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwCache#getStructure <em>Structure</em>}</li>
+ * <li>{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwCache#getRepl_Policy <em>Repl Policy</em>}</li>
+ * <li>{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwCache#getWritePolicy <em>Write Policy</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwMemoryPackage#getHwCache()
+ * @model
+ * @generated
+ */
+public interface HwCache extends HwMemory {
+ /**
+ * Returns the value of the '<em><b>Level</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Level</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Level</em>' attribute.
+ * @see #setLevel(String)
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwMemoryPackage#getHwCache_Level()
+ * @model unique="false" dataType="org.eclipse.papyrus.MARTE_Library.BasicNFP_Types.NFP_Natural" ordered="false"
+ * @generated
+ */
+ String getLevel();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwCache#getLevel <em>Level</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Level</em>' attribute.
+ * @see #getLevel()
+ * @generated
+ */
+ void setLevel(String value);
+
+ /**
+ * Returns the value of the '<em><b>Type</b></em>' attribute.
+ * The literals are from the enumeration {@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.CacheType}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Type</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Type</em>' attribute.
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.CacheType
+ * @see #setType(CacheType)
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwMemoryPackage#getHwCache_Type()
+ * @model unique="false" ordered="false"
+ * @generated
+ */
+ CacheType getType();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwCache#getType <em>Type</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Type</em>' attribute.
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.CacheType
+ * @see #getType()
+ * @generated
+ */
+ void setType(CacheType value);
+
+ /**
+ * Returns the value of the '<em><b>Structure</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Structure</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Structure</em>' attribute.
+ * @see #setStructure(String)
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwMemoryPackage#getHwCache_Structure()
+ * @model unique="false" dataType="org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.CacheStructure" ordered="false"
+ * @generated
+ */
+ String getStructure();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwCache#getStructure <em>Structure</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Structure</em>' attribute.
+ * @see #getStructure()
+ * @generated
+ */
+ void setStructure(String value);
+
+ /**
+ * Returns the value of the '<em><b>Repl Policy</b></em>' attribute.
+ * The literals are from the enumeration {@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.Repl_Policy}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Repl Policy</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Repl Policy</em>' attribute.
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.Repl_Policy
+ * @see #setRepl_Policy(Repl_Policy)
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwMemoryPackage#getHwCache_Repl_Policy()
+ * @model unique="false" ordered="false"
+ * @generated
+ */
+ Repl_Policy getRepl_Policy();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwCache#getRepl_Policy <em>Repl Policy</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Repl Policy</em>' attribute.
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.Repl_Policy
+ * @see #getRepl_Policy()
+ * @generated
+ */
+ void setRepl_Policy(Repl_Policy value);
+
+ /**
+ * Returns the value of the '<em><b>Write Policy</b></em>' attribute.
+ * The literals are from the enumeration {@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.WritePolicy}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Write Policy</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Write Policy</em>' attribute.
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.WritePolicy
+ * @see #setWritePolicy(WritePolicy)
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwMemoryPackage#getHwCache_WritePolicy()
+ * @model unique="false" ordered="false"
+ * @generated
+ */
+ WritePolicy getWritePolicy();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwCache#getWritePolicy <em>Write Policy</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Write Policy</em>' attribute.
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.WritePolicy
+ * @see #getWritePolicy()
+ * @generated
+ */
+ void setWritePolicy(WritePolicy value);
+
+} // HwCache
diff --git a/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/HwDrive.java b/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/HwDrive.java
new file mode 100644
index 00000000000..ad57e93de3c
--- /dev/null
+++ b/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/HwDrive.java
@@ -0,0 +1,87 @@
+/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ *
+ * 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:
+ * Chokri MRAIDHA (CEA LIST) chokri.mraidha@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Hw Drive</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwDrive#getSectorSize <em>Sector Size</em>}</li>
+ * <li>{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwDrive#getBuffer <em>Buffer</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwMemoryPackage#getHwDrive()
+ * @model
+ * @generated
+ */
+public interface HwDrive extends HwMemory {
+ /**
+ * Returns the value of the '<em><b>Sector Size</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Sector Size</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Sector Size</em>' attribute.
+ * @see #setSectorSize(String)
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwMemoryPackage#getHwDrive_SectorSize()
+ * @model unique="false" dataType="org.eclipse.papyrus.MARTE_Library.BasicNFP_Types.NFP_DataSize" ordered="false"
+ * @generated
+ */
+ String getSectorSize();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwDrive#getSectorSize <em>Sector Size</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Sector Size</em>' attribute.
+ * @see #getSectorSize()
+ * @generated
+ */
+ void setSectorSize(String value);
+
+ /**
+ * Returns the value of the '<em><b>Buffer</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Buffer</em>' reference isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Buffer</em>' reference.
+ * @see #setBuffer(HwRAM)
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwMemoryPackage#getHwDrive_Buffer()
+ * @model ordered="false"
+ * @generated
+ */
+ HwRAM getBuffer();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwDrive#getBuffer <em>Buffer</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Buffer</em>' reference.
+ * @see #getBuffer()
+ * @generated
+ */
+ void setBuffer(HwRAM value);
+
+} // HwDrive
diff --git a/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/HwMemory.java b/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/HwMemory.java
new file mode 100644
index 00000000000..0060eded90d
--- /dev/null
+++ b/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/HwMemory.java
@@ -0,0 +1,136 @@
+/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ *
+ * 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:
+ * Chokri MRAIDHA (CEA LIST) chokri.mraidha@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwGeneral.HwResource;
+
+import org.eclipse.papyrus.MARTE.MARTE_Foundations.GRM.StorageResource;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Hw Memory</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwMemory#getMemorySize <em>Memory Size</em>}</li>
+ * <li>{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwMemory#getAdressSize <em>Adress Size</em>}</li>
+ * <li>{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwMemory#getTimings <em>Timings</em>}</li>
+ * <li>{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwMemory#getThroughput <em>Throughput</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwMemoryPackage#getHwMemory()
+ * @model
+ * @generated
+ */
+public interface HwMemory extends HwResource, StorageResource {
+ /**
+ * Returns the value of the '<em><b>Memory Size</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Memory Size</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Memory Size</em>' attribute.
+ * @see #setMemorySize(String)
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwMemoryPackage#getHwMemory_MemorySize()
+ * @model unique="false" dataType="org.eclipse.papyrus.MARTE_Library.BasicNFP_Types.NFP_DataSize" ordered="false"
+ * @generated
+ */
+ String getMemorySize();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwMemory#getMemorySize <em>Memory Size</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Memory Size</em>' attribute.
+ * @see #getMemorySize()
+ * @generated
+ */
+ void setMemorySize(String value);
+
+ /**
+ * Returns the value of the '<em><b>Adress Size</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Adress Size</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Adress Size</em>' attribute.
+ * @see #setAdressSize(String)
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwMemoryPackage#getHwMemory_AdressSize()
+ * @model unique="false" dataType="org.eclipse.papyrus.MARTE_Library.BasicNFP_Types.NFP_DataSize" ordered="false"
+ * @generated
+ */
+ String getAdressSize();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwMemory#getAdressSize <em>Adress Size</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Adress Size</em>' attribute.
+ * @see #getAdressSize()
+ * @generated
+ */
+ void setAdressSize(String value);
+
+ /**
+ * Returns the value of the '<em><b>Timings</b></em>' attribute list.
+ * The list contents are of type {@link java.lang.String}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Timings</em>' attribute list isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Timings</em>' attribute list.
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwMemoryPackage#getHwMemory_Timings()
+ * @model dataType="org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.Timing" ordered="false"
+ * @generated
+ */
+ EList<String> getTimings();
+
+ /**
+ * Returns the value of the '<em><b>Throughput</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Throughput</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Throughput</em>' attribute.
+ * @see #setThroughput(String)
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwMemoryPackage#getHwMemory_Throughput()
+ * @model unique="false" dataType="org.eclipse.papyrus.MARTE_Library.BasicNFP_Types.NFP_DataTxRate" ordered="false"
+ * @generated
+ */
+ String getThroughput();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwMemory#getThroughput <em>Throughput</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Throughput</em>' attribute.
+ * @see #getThroughput()
+ * @generated
+ */
+ void setThroughput(String value);
+
+} // HwMemory
diff --git a/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/HwMemoryFactory.java b/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/HwMemoryFactory.java
new file mode 100644
index 00000000000..d1c18047849
--- /dev/null
+++ b/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/HwMemoryFactory.java
@@ -0,0 +1,89 @@
+/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ *
+ * 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:
+ * Chokri MRAIDHA (CEA LIST) chokri.mraidha@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Factory</b> for the model.
+ * It provides a create method for each non-abstract class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwMemoryPackage
+ * @generated
+ */
+public interface HwMemoryFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ HwMemoryFactory eINSTANCE = org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwMemoryFactoryImpl.init();
+
+ /**
+ * Returns a new object of class '<em>Hw Memory</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Hw Memory</em>'.
+ * @generated
+ */
+ HwMemory createHwMemory();
+
+ /**
+ * Returns a new object of class '<em>Hw RAM</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Hw RAM</em>'.
+ * @generated
+ */
+ HwRAM createHwRAM();
+
+ /**
+ * Returns a new object of class '<em>Hw ROM</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Hw ROM</em>'.
+ * @generated
+ */
+ HwROM createHwROM();
+
+ /**
+ * Returns a new object of class '<em>Hw Drive</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Hw Drive</em>'.
+ * @generated
+ */
+ HwDrive createHwDrive();
+
+ /**
+ * Returns a new object of class '<em>Hw Cache</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Hw Cache</em>'.
+ * @generated
+ */
+ HwCache createHwCache();
+
+ /**
+ * Returns the package supported by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the package supported by this factory.
+ * @generated
+ */
+ HwMemoryPackage getHwMemoryPackage();
+
+} //HwMemoryFactory
diff --git a/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/HwMemoryPackage.java b/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/HwMemoryPackage.java
new file mode 100644
index 00000000000..f9913550530
--- /dev/null
+++ b/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/HwMemoryPackage.java
@@ -0,0 +1,1857 @@
+/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ *
+ * 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:
+ * Chokri MRAIDHA (CEA LIST) chokri.mraidha@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EDataType;
+import org.eclipse.emf.ecore.EEnum;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwGeneral.HwGeneralPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Package</b> for the model.
+ * It contains accessors for the meta objects to represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwMemoryFactory
+ * @model kind="package"
+ * @generated
+ */
+public interface HwMemoryPackage extends EPackage {
+ /**
+ * The package name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNAME = "HwMemory";
+
+ /**
+ * The package namespace URI.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_URI = "http://www.eclipse.org/papyrus/HwMemory/1";
+
+ /**
+ * The package namespace name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_PREFIX = "HwMemory";
+
+ /**
+ * The singleton instance of the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ HwMemoryPackage eINSTANCE = org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwMemoryPackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwMemoryImpl <em>Hw Memory</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwMemoryImpl
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwMemoryPackageImpl#getHwMemory()
+ * @generated
+ */
+ int HW_MEMORY = 0;
+
+ /**
+ * The feature id for the '<em><b>Res Mult</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_MEMORY__RES_MULT = HwGeneralPackage.HW_RESOURCE__RES_MULT;
+
+ /**
+ * The feature id for the '<em><b>Is Protected</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_MEMORY__IS_PROTECTED = HwGeneralPackage.HW_RESOURCE__IS_PROTECTED;
+
+ /**
+ * The feature id for the '<em><b>Is Active</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_MEMORY__IS_ACTIVE = HwGeneralPackage.HW_RESOURCE__IS_ACTIVE;
+
+ /**
+ * The feature id for the '<em><b>Base Property</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_MEMORY__BASE_PROPERTY = HwGeneralPackage.HW_RESOURCE__BASE_PROPERTY;
+
+ /**
+ * The feature id for the '<em><b>Base Instance Specification</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_MEMORY__BASE_INSTANCE_SPECIFICATION = HwGeneralPackage.HW_RESOURCE__BASE_INSTANCE_SPECIFICATION;
+
+ /**
+ * The feature id for the '<em><b>Base Classifier</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_MEMORY__BASE_CLASSIFIER = HwGeneralPackage.HW_RESOURCE__BASE_CLASSIFIER;
+
+ /**
+ * The feature id for the '<em><b>Base Lifeline</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_MEMORY__BASE_LIFELINE = HwGeneralPackage.HW_RESOURCE__BASE_LIFELINE;
+
+ /**
+ * The feature id for the '<em><b>Base Connectable Element</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_MEMORY__BASE_CONNECTABLE_ELEMENT = HwGeneralPackage.HW_RESOURCE__BASE_CONNECTABLE_ELEMENT;
+
+ /**
+ * The feature id for the '<em><b>Description</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_MEMORY__DESCRIPTION = HwGeneralPackage.HW_RESOURCE__DESCRIPTION;
+
+ /**
+ * The feature id for the '<em><b>PHW Services</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_MEMORY__PHW_SERVICES = HwGeneralPackage.HW_RESOURCE__PHW_SERVICES;
+
+ /**
+ * The feature id for the '<em><b>RHW Services</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_MEMORY__RHW_SERVICES = HwGeneralPackage.HW_RESOURCE__RHW_SERVICES;
+
+ /**
+ * The feature id for the '<em><b>Owned HW</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_MEMORY__OWNED_HW = HwGeneralPackage.HW_RESOURCE__OWNED_HW;
+
+ /**
+ * The feature id for the '<em><b>End Points</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_MEMORY__END_POINTS = HwGeneralPackage.HW_RESOURCE__END_POINTS;
+
+ /**
+ * The feature id for the '<em><b>Frequency</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_MEMORY__FREQUENCY = HwGeneralPackage.HW_RESOURCE__FREQUENCY;
+
+ /**
+ * The feature id for the '<em><b>Element Size</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_MEMORY__ELEMENT_SIZE = HwGeneralPackage.HW_RESOURCE_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Memory Size</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_MEMORY__MEMORY_SIZE = HwGeneralPackage.HW_RESOURCE_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Adress Size</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_MEMORY__ADRESS_SIZE = HwGeneralPackage.HW_RESOURCE_FEATURE_COUNT + 2;
+
+ /**
+ * The feature id for the '<em><b>Timings</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_MEMORY__TIMINGS = HwGeneralPackage.HW_RESOURCE_FEATURE_COUNT + 3;
+
+ /**
+ * The feature id for the '<em><b>Throughput</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_MEMORY__THROUGHPUT = HwGeneralPackage.HW_RESOURCE_FEATURE_COUNT + 4;
+
+ /**
+ * The number of structural features of the '<em>Hw Memory</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_MEMORY_FEATURE_COUNT = HwGeneralPackage.HW_RESOURCE_FEATURE_COUNT + 5;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwRAMImpl <em>Hw RAM</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwRAMImpl
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwMemoryPackageImpl#getHwRAM()
+ * @generated
+ */
+ int HW_RAM = 1;
+
+ /**
+ * The feature id for the '<em><b>Res Mult</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_RAM__RES_MULT = HW_MEMORY__RES_MULT;
+
+ /**
+ * The feature id for the '<em><b>Is Protected</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_RAM__IS_PROTECTED = HW_MEMORY__IS_PROTECTED;
+
+ /**
+ * The feature id for the '<em><b>Is Active</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_RAM__IS_ACTIVE = HW_MEMORY__IS_ACTIVE;
+
+ /**
+ * The feature id for the '<em><b>Base Property</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_RAM__BASE_PROPERTY = HW_MEMORY__BASE_PROPERTY;
+
+ /**
+ * The feature id for the '<em><b>Base Instance Specification</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_RAM__BASE_INSTANCE_SPECIFICATION = HW_MEMORY__BASE_INSTANCE_SPECIFICATION;
+
+ /**
+ * The feature id for the '<em><b>Base Classifier</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_RAM__BASE_CLASSIFIER = HW_MEMORY__BASE_CLASSIFIER;
+
+ /**
+ * The feature id for the '<em><b>Base Lifeline</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_RAM__BASE_LIFELINE = HW_MEMORY__BASE_LIFELINE;
+
+ /**
+ * The feature id for the '<em><b>Base Connectable Element</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_RAM__BASE_CONNECTABLE_ELEMENT = HW_MEMORY__BASE_CONNECTABLE_ELEMENT;
+
+ /**
+ * The feature id for the '<em><b>Description</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_RAM__DESCRIPTION = HW_MEMORY__DESCRIPTION;
+
+ /**
+ * The feature id for the '<em><b>PHW Services</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_RAM__PHW_SERVICES = HW_MEMORY__PHW_SERVICES;
+
+ /**
+ * The feature id for the '<em><b>RHW Services</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_RAM__RHW_SERVICES = HW_MEMORY__RHW_SERVICES;
+
+ /**
+ * The feature id for the '<em><b>Owned HW</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_RAM__OWNED_HW = HW_MEMORY__OWNED_HW;
+
+ /**
+ * The feature id for the '<em><b>End Points</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_RAM__END_POINTS = HW_MEMORY__END_POINTS;
+
+ /**
+ * The feature id for the '<em><b>Frequency</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_RAM__FREQUENCY = HW_MEMORY__FREQUENCY;
+
+ /**
+ * The feature id for the '<em><b>Element Size</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_RAM__ELEMENT_SIZE = HW_MEMORY__ELEMENT_SIZE;
+
+ /**
+ * The feature id for the '<em><b>Memory Size</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_RAM__MEMORY_SIZE = HW_MEMORY__MEMORY_SIZE;
+
+ /**
+ * The feature id for the '<em><b>Adress Size</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_RAM__ADRESS_SIZE = HW_MEMORY__ADRESS_SIZE;
+
+ /**
+ * The feature id for the '<em><b>Timings</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_RAM__TIMINGS = HW_MEMORY__TIMINGS;
+
+ /**
+ * The feature id for the '<em><b>Throughput</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_RAM__THROUGHPUT = HW_MEMORY__THROUGHPUT;
+
+ /**
+ * The feature id for the '<em><b>Organization</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_RAM__ORGANIZATION = HW_MEMORY_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Is Synchronous</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_RAM__IS_SYNCHRONOUS = HW_MEMORY_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Is Static</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_RAM__IS_STATIC = HW_MEMORY_FEATURE_COUNT + 2;
+
+ /**
+ * The feature id for the '<em><b>Is Non Volatile</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_RAM__IS_NON_VOLATILE = HW_MEMORY_FEATURE_COUNT + 3;
+
+ /**
+ * The feature id for the '<em><b>Repl Policy</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_RAM__REPL_POLICY = HW_MEMORY_FEATURE_COUNT + 4;
+
+ /**
+ * The feature id for the '<em><b>Write Policy</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_RAM__WRITE_POLICY = HW_MEMORY_FEATURE_COUNT + 5;
+
+ /**
+ * The number of structural features of the '<em>Hw RAM</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_RAM_FEATURE_COUNT = HW_MEMORY_FEATURE_COUNT + 6;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwROMImpl <em>Hw ROM</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwROMImpl
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwMemoryPackageImpl#getHwROM()
+ * @generated
+ */
+ int HW_ROM = 2;
+
+ /**
+ * The feature id for the '<em><b>Res Mult</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_ROM__RES_MULT = HW_MEMORY__RES_MULT;
+
+ /**
+ * The feature id for the '<em><b>Is Protected</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_ROM__IS_PROTECTED = HW_MEMORY__IS_PROTECTED;
+
+ /**
+ * The feature id for the '<em><b>Is Active</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_ROM__IS_ACTIVE = HW_MEMORY__IS_ACTIVE;
+
+ /**
+ * The feature id for the '<em><b>Base Property</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_ROM__BASE_PROPERTY = HW_MEMORY__BASE_PROPERTY;
+
+ /**
+ * The feature id for the '<em><b>Base Instance Specification</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_ROM__BASE_INSTANCE_SPECIFICATION = HW_MEMORY__BASE_INSTANCE_SPECIFICATION;
+
+ /**
+ * The feature id for the '<em><b>Base Classifier</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_ROM__BASE_CLASSIFIER = HW_MEMORY__BASE_CLASSIFIER;
+
+ /**
+ * The feature id for the '<em><b>Base Lifeline</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_ROM__BASE_LIFELINE = HW_MEMORY__BASE_LIFELINE;
+
+ /**
+ * The feature id for the '<em><b>Base Connectable Element</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_ROM__BASE_CONNECTABLE_ELEMENT = HW_MEMORY__BASE_CONNECTABLE_ELEMENT;
+
+ /**
+ * The feature id for the '<em><b>Description</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_ROM__DESCRIPTION = HW_MEMORY__DESCRIPTION;
+
+ /**
+ * The feature id for the '<em><b>PHW Services</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_ROM__PHW_SERVICES = HW_MEMORY__PHW_SERVICES;
+
+ /**
+ * The feature id for the '<em><b>RHW Services</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_ROM__RHW_SERVICES = HW_MEMORY__RHW_SERVICES;
+
+ /**
+ * The feature id for the '<em><b>Owned HW</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_ROM__OWNED_HW = HW_MEMORY__OWNED_HW;
+
+ /**
+ * The feature id for the '<em><b>End Points</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_ROM__END_POINTS = HW_MEMORY__END_POINTS;
+
+ /**
+ * The feature id for the '<em><b>Frequency</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_ROM__FREQUENCY = HW_MEMORY__FREQUENCY;
+
+ /**
+ * The feature id for the '<em><b>Element Size</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_ROM__ELEMENT_SIZE = HW_MEMORY__ELEMENT_SIZE;
+
+ /**
+ * The feature id for the '<em><b>Memory Size</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_ROM__MEMORY_SIZE = HW_MEMORY__MEMORY_SIZE;
+
+ /**
+ * The feature id for the '<em><b>Adress Size</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_ROM__ADRESS_SIZE = HW_MEMORY__ADRESS_SIZE;
+
+ /**
+ * The feature id for the '<em><b>Timings</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_ROM__TIMINGS = HW_MEMORY__TIMINGS;
+
+ /**
+ * The feature id for the '<em><b>Throughput</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_ROM__THROUGHPUT = HW_MEMORY__THROUGHPUT;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_ROM__TYPE = HW_MEMORY_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Organization</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_ROM__ORGANIZATION = HW_MEMORY_FEATURE_COUNT + 1;
+
+ /**
+ * The number of structural features of the '<em>Hw ROM</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_ROM_FEATURE_COUNT = HW_MEMORY_FEATURE_COUNT + 2;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwDriveImpl <em>Hw Drive</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwDriveImpl
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwMemoryPackageImpl#getHwDrive()
+ * @generated
+ */
+ int HW_DRIVE = 3;
+
+ /**
+ * The feature id for the '<em><b>Res Mult</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_DRIVE__RES_MULT = HW_MEMORY__RES_MULT;
+
+ /**
+ * The feature id for the '<em><b>Is Protected</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_DRIVE__IS_PROTECTED = HW_MEMORY__IS_PROTECTED;
+
+ /**
+ * The feature id for the '<em><b>Is Active</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_DRIVE__IS_ACTIVE = HW_MEMORY__IS_ACTIVE;
+
+ /**
+ * The feature id for the '<em><b>Base Property</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_DRIVE__BASE_PROPERTY = HW_MEMORY__BASE_PROPERTY;
+
+ /**
+ * The feature id for the '<em><b>Base Instance Specification</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_DRIVE__BASE_INSTANCE_SPECIFICATION = HW_MEMORY__BASE_INSTANCE_SPECIFICATION;
+
+ /**
+ * The feature id for the '<em><b>Base Classifier</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_DRIVE__BASE_CLASSIFIER = HW_MEMORY__BASE_CLASSIFIER;
+
+ /**
+ * The feature id for the '<em><b>Base Lifeline</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_DRIVE__BASE_LIFELINE = HW_MEMORY__BASE_LIFELINE;
+
+ /**
+ * The feature id for the '<em><b>Base Connectable Element</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_DRIVE__BASE_CONNECTABLE_ELEMENT = HW_MEMORY__BASE_CONNECTABLE_ELEMENT;
+
+ /**
+ * The feature id for the '<em><b>Description</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_DRIVE__DESCRIPTION = HW_MEMORY__DESCRIPTION;
+
+ /**
+ * The feature id for the '<em><b>PHW Services</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_DRIVE__PHW_SERVICES = HW_MEMORY__PHW_SERVICES;
+
+ /**
+ * The feature id for the '<em><b>RHW Services</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_DRIVE__RHW_SERVICES = HW_MEMORY__RHW_SERVICES;
+
+ /**
+ * The feature id for the '<em><b>Owned HW</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_DRIVE__OWNED_HW = HW_MEMORY__OWNED_HW;
+
+ /**
+ * The feature id for the '<em><b>End Points</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_DRIVE__END_POINTS = HW_MEMORY__END_POINTS;
+
+ /**
+ * The feature id for the '<em><b>Frequency</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_DRIVE__FREQUENCY = HW_MEMORY__FREQUENCY;
+
+ /**
+ * The feature id for the '<em><b>Element Size</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_DRIVE__ELEMENT_SIZE = HW_MEMORY__ELEMENT_SIZE;
+
+ /**
+ * The feature id for the '<em><b>Memory Size</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_DRIVE__MEMORY_SIZE = HW_MEMORY__MEMORY_SIZE;
+
+ /**
+ * The feature id for the '<em><b>Adress Size</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_DRIVE__ADRESS_SIZE = HW_MEMORY__ADRESS_SIZE;
+
+ /**
+ * The feature id for the '<em><b>Timings</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_DRIVE__TIMINGS = HW_MEMORY__TIMINGS;
+
+ /**
+ * The feature id for the '<em><b>Throughput</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_DRIVE__THROUGHPUT = HW_MEMORY__THROUGHPUT;
+
+ /**
+ * The feature id for the '<em><b>Sector Size</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_DRIVE__SECTOR_SIZE = HW_MEMORY_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Buffer</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_DRIVE__BUFFER = HW_MEMORY_FEATURE_COUNT + 1;
+
+ /**
+ * The number of structural features of the '<em>Hw Drive</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_DRIVE_FEATURE_COUNT = HW_MEMORY_FEATURE_COUNT + 2;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwCacheImpl <em>Hw Cache</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwCacheImpl
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwMemoryPackageImpl#getHwCache()
+ * @generated
+ */
+ int HW_CACHE = 4;
+
+ /**
+ * The feature id for the '<em><b>Res Mult</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_CACHE__RES_MULT = HW_MEMORY__RES_MULT;
+
+ /**
+ * The feature id for the '<em><b>Is Protected</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_CACHE__IS_PROTECTED = HW_MEMORY__IS_PROTECTED;
+
+ /**
+ * The feature id for the '<em><b>Is Active</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_CACHE__IS_ACTIVE = HW_MEMORY__IS_ACTIVE;
+
+ /**
+ * The feature id for the '<em><b>Base Property</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_CACHE__BASE_PROPERTY = HW_MEMORY__BASE_PROPERTY;
+
+ /**
+ * The feature id for the '<em><b>Base Instance Specification</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_CACHE__BASE_INSTANCE_SPECIFICATION = HW_MEMORY__BASE_INSTANCE_SPECIFICATION;
+
+ /**
+ * The feature id for the '<em><b>Base Classifier</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_CACHE__BASE_CLASSIFIER = HW_MEMORY__BASE_CLASSIFIER;
+
+ /**
+ * The feature id for the '<em><b>Base Lifeline</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_CACHE__BASE_LIFELINE = HW_MEMORY__BASE_LIFELINE;
+
+ /**
+ * The feature id for the '<em><b>Base Connectable Element</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_CACHE__BASE_CONNECTABLE_ELEMENT = HW_MEMORY__BASE_CONNECTABLE_ELEMENT;
+
+ /**
+ * The feature id for the '<em><b>Description</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_CACHE__DESCRIPTION = HW_MEMORY__DESCRIPTION;
+
+ /**
+ * The feature id for the '<em><b>PHW Services</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_CACHE__PHW_SERVICES = HW_MEMORY__PHW_SERVICES;
+
+ /**
+ * The feature id for the '<em><b>RHW Services</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_CACHE__RHW_SERVICES = HW_MEMORY__RHW_SERVICES;
+
+ /**
+ * The feature id for the '<em><b>Owned HW</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_CACHE__OWNED_HW = HW_MEMORY__OWNED_HW;
+
+ /**
+ * The feature id for the '<em><b>End Points</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_CACHE__END_POINTS = HW_MEMORY__END_POINTS;
+
+ /**
+ * The feature id for the '<em><b>Frequency</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_CACHE__FREQUENCY = HW_MEMORY__FREQUENCY;
+
+ /**
+ * The feature id for the '<em><b>Element Size</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_CACHE__ELEMENT_SIZE = HW_MEMORY__ELEMENT_SIZE;
+
+ /**
+ * The feature id for the '<em><b>Memory Size</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_CACHE__MEMORY_SIZE = HW_MEMORY__MEMORY_SIZE;
+
+ /**
+ * The feature id for the '<em><b>Adress Size</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_CACHE__ADRESS_SIZE = HW_MEMORY__ADRESS_SIZE;
+
+ /**
+ * The feature id for the '<em><b>Timings</b></em>' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_CACHE__TIMINGS = HW_MEMORY__TIMINGS;
+
+ /**
+ * The feature id for the '<em><b>Throughput</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_CACHE__THROUGHPUT = HW_MEMORY__THROUGHPUT;
+
+ /**
+ * The feature id for the '<em><b>Level</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_CACHE__LEVEL = HW_MEMORY_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_CACHE__TYPE = HW_MEMORY_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Structure</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_CACHE__STRUCTURE = HW_MEMORY_FEATURE_COUNT + 2;
+
+ /**
+ * The feature id for the '<em><b>Repl Policy</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_CACHE__REPL_POLICY = HW_MEMORY_FEATURE_COUNT + 3;
+
+ /**
+ * The feature id for the '<em><b>Write Policy</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_CACHE__WRITE_POLICY = HW_MEMORY_FEATURE_COUNT + 4;
+
+ /**
+ * The number of structural features of the '<em>Hw Cache</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int HW_CACHE_FEATURE_COUNT = HW_MEMORY_FEATURE_COUNT + 5;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.Repl_Policy <em>Repl Policy</em>}' enum.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.Repl_Policy
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwMemoryPackageImpl#getRepl_Policy()
+ * @generated
+ */
+ int REPL_POLICY = 5;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.WritePolicy <em>Write Policy</em>}' enum.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.WritePolicy
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwMemoryPackageImpl#getWritePolicy()
+ * @generated
+ */
+ int WRITE_POLICY = 6;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.CacheType <em>Cache Type</em>}' enum.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.CacheType
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwMemoryPackageImpl#getCacheType()
+ * @generated
+ */
+ int CACHE_TYPE = 7;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.ROM_Type <em>ROM Type</em>}' enum.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.ROM_Type
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwMemoryPackageImpl#getROM_Type()
+ * @generated
+ */
+ int ROM_TYPE = 8;
+
+ /**
+ * The meta object id for the '<em>Timing</em>' data type.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see java.lang.String
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwMemoryPackageImpl#getTiming()
+ * @generated
+ */
+ int TIMING = 9;
+
+ /**
+ * The meta object id for the '<em>Cache Structure</em>' data type.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see java.lang.String
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwMemoryPackageImpl#getCacheStructure()
+ * @generated
+ */
+ int CACHE_STRUCTURE = 10;
+
+ /**
+ * The meta object id for the '<em>Memory Organization</em>' data type.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see java.lang.String
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwMemoryPackageImpl#getMemoryOrganization()
+ * @generated
+ */
+ int MEMORY_ORGANIZATION = 11;
+
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwMemory <em>Hw Memory</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Hw Memory</em>'.
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwMemory
+ * @generated
+ */
+ EClass getHwMemory();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwMemory#getMemorySize <em>Memory Size</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Memory Size</em>'.
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwMemory#getMemorySize()
+ * @see #getHwMemory()
+ * @generated
+ */
+ EAttribute getHwMemory_MemorySize();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwMemory#getAdressSize <em>Adress Size</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Adress Size</em>'.
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwMemory#getAdressSize()
+ * @see #getHwMemory()
+ * @generated
+ */
+ EAttribute getHwMemory_AdressSize();
+
+ /**
+ * Returns the meta object for the attribute list '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwMemory#getTimings <em>Timings</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute list '<em>Timings</em>'.
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwMemory#getTimings()
+ * @see #getHwMemory()
+ * @generated
+ */
+ EAttribute getHwMemory_Timings();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwMemory#getThroughput <em>Throughput</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Throughput</em>'.
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwMemory#getThroughput()
+ * @see #getHwMemory()
+ * @generated
+ */
+ EAttribute getHwMemory_Throughput();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwRAM <em>Hw RAM</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Hw RAM</em>'.
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwRAM
+ * @generated
+ */
+ EClass getHwRAM();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwRAM#getOrganization <em>Organization</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Organization</em>'.
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwRAM#getOrganization()
+ * @see #getHwRAM()
+ * @generated
+ */
+ EAttribute getHwRAM_Organization();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwRAM#getIsSynchronous <em>Is Synchronous</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Is Synchronous</em>'.
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwRAM#getIsSynchronous()
+ * @see #getHwRAM()
+ * @generated
+ */
+ EAttribute getHwRAM_IsSynchronous();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwRAM#getIsStatic <em>Is Static</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Is Static</em>'.
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwRAM#getIsStatic()
+ * @see #getHwRAM()
+ * @generated
+ */
+ EAttribute getHwRAM_IsStatic();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwRAM#getIsNonVolatile <em>Is Non Volatile</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Is Non Volatile</em>'.
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwRAM#getIsNonVolatile()
+ * @see #getHwRAM()
+ * @generated
+ */
+ EAttribute getHwRAM_IsNonVolatile();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwRAM#getRepl_Policy <em>Repl Policy</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Repl Policy</em>'.
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwRAM#getRepl_Policy()
+ * @see #getHwRAM()
+ * @generated
+ */
+ EAttribute getHwRAM_Repl_Policy();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwRAM#getWritePolicy <em>Write Policy</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Write Policy</em>'.
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwRAM#getWritePolicy()
+ * @see #getHwRAM()
+ * @generated
+ */
+ EAttribute getHwRAM_WritePolicy();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwROM <em>Hw ROM</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Hw ROM</em>'.
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwROM
+ * @generated
+ */
+ EClass getHwROM();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwROM#getType <em>Type</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Type</em>'.
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwROM#getType()
+ * @see #getHwROM()
+ * @generated
+ */
+ EAttribute getHwROM_Type();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwROM#getOrganization <em>Organization</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Organization</em>'.
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwROM#getOrganization()
+ * @see #getHwROM()
+ * @generated
+ */
+ EAttribute getHwROM_Organization();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwDrive <em>Hw Drive</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Hw Drive</em>'.
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwDrive
+ * @generated
+ */
+ EClass getHwDrive();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwDrive#getSectorSize <em>Sector Size</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Sector Size</em>'.
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwDrive#getSectorSize()
+ * @see #getHwDrive()
+ * @generated
+ */
+ EAttribute getHwDrive_SectorSize();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwDrive#getBuffer <em>Buffer</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>Buffer</em>'.
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwDrive#getBuffer()
+ * @see #getHwDrive()
+ * @generated
+ */
+ EReference getHwDrive_Buffer();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwCache <em>Hw Cache</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Hw Cache</em>'.
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwCache
+ * @generated
+ */
+ EClass getHwCache();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwCache#getLevel <em>Level</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Level</em>'.
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwCache#getLevel()
+ * @see #getHwCache()
+ * @generated
+ */
+ EAttribute getHwCache_Level();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwCache#getType <em>Type</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Type</em>'.
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwCache#getType()
+ * @see #getHwCache()
+ * @generated
+ */
+ EAttribute getHwCache_Type();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwCache#getStructure <em>Structure</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Structure</em>'.
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwCache#getStructure()
+ * @see #getHwCache()
+ * @generated
+ */
+ EAttribute getHwCache_Structure();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwCache#getRepl_Policy <em>Repl Policy</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Repl Policy</em>'.
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwCache#getRepl_Policy()
+ * @see #getHwCache()
+ * @generated
+ */
+ EAttribute getHwCache_Repl_Policy();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwCache#getWritePolicy <em>Write Policy</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Write Policy</em>'.
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwCache#getWritePolicy()
+ * @see #getHwCache()
+ * @generated
+ */
+ EAttribute getHwCache_WritePolicy();
+
+ /**
+ * Returns the meta object for enum '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.Repl_Policy <em>Repl Policy</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for enum '<em>Repl Policy</em>'.
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.Repl_Policy
+ * @generated
+ */
+ EEnum getRepl_Policy();
+
+ /**
+ * Returns the meta object for enum '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.WritePolicy <em>Write Policy</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for enum '<em>Write Policy</em>'.
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.WritePolicy
+ * @generated
+ */
+ EEnum getWritePolicy();
+
+ /**
+ * Returns the meta object for enum '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.CacheType <em>Cache Type</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for enum '<em>Cache Type</em>'.
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.CacheType
+ * @generated
+ */
+ EEnum getCacheType();
+
+ /**
+ * Returns the meta object for enum '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.ROM_Type <em>ROM Type</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for enum '<em>ROM Type</em>'.
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.ROM_Type
+ * @generated
+ */
+ EEnum getROM_Type();
+
+ /**
+ * Returns the meta object for data type '{@link java.lang.String <em>Timing</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for data type '<em>Timing</em>'.
+ * @see java.lang.String
+ * @model instanceClass="java.lang.String"
+ * @generated
+ */
+ EDataType getTiming();
+
+ /**
+ * Returns the meta object for data type '{@link java.lang.String <em>Cache Structure</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for data type '<em>Cache Structure</em>'.
+ * @see java.lang.String
+ * @model instanceClass="java.lang.String"
+ * @generated
+ */
+ EDataType getCacheStructure();
+
+ /**
+ * Returns the meta object for data type '{@link java.lang.String <em>Memory Organization</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for data type '<em>Memory Organization</em>'.
+ * @see java.lang.String
+ * @model instanceClass="java.lang.String"
+ * @generated
+ */
+ EDataType getMemoryOrganization();
+
+ /**
+ * Returns the factory that creates the instances of the model.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the factory that creates the instances of the model.
+ * @generated
+ */
+ HwMemoryFactory getHwMemoryFactory();
+
+ /**
+ * <!-- begin-user-doc -->
+ * Defines literals for the meta objects that represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ interface Literals {
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwMemoryImpl <em>Hw Memory</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwMemoryImpl
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwMemoryPackageImpl#getHwMemory()
+ * @generated
+ */
+ EClass HW_MEMORY = eINSTANCE.getHwMemory();
+
+ /**
+ * The meta object literal for the '<em><b>Memory Size</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute HW_MEMORY__MEMORY_SIZE = eINSTANCE.getHwMemory_MemorySize();
+
+ /**
+ * The meta object literal for the '<em><b>Adress Size</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute HW_MEMORY__ADRESS_SIZE = eINSTANCE.getHwMemory_AdressSize();
+
+ /**
+ * The meta object literal for the '<em><b>Timings</b></em>' attribute list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute HW_MEMORY__TIMINGS = eINSTANCE.getHwMemory_Timings();
+
+ /**
+ * The meta object literal for the '<em><b>Throughput</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute HW_MEMORY__THROUGHPUT = eINSTANCE.getHwMemory_Throughput();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwRAMImpl <em>Hw RAM</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwRAMImpl
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwMemoryPackageImpl#getHwRAM()
+ * @generated
+ */
+ EClass HW_RAM = eINSTANCE.getHwRAM();
+
+ /**
+ * The meta object literal for the '<em><b>Organization</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute HW_RAM__ORGANIZATION = eINSTANCE.getHwRAM_Organization();
+
+ /**
+ * The meta object literal for the '<em><b>Is Synchronous</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute HW_RAM__IS_SYNCHRONOUS = eINSTANCE.getHwRAM_IsSynchronous();
+
+ /**
+ * The meta object literal for the '<em><b>Is Static</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute HW_RAM__IS_STATIC = eINSTANCE.getHwRAM_IsStatic();
+
+ /**
+ * The meta object literal for the '<em><b>Is Non Volatile</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute HW_RAM__IS_NON_VOLATILE = eINSTANCE.getHwRAM_IsNonVolatile();
+
+ /**
+ * The meta object literal for the '<em><b>Repl Policy</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute HW_RAM__REPL_POLICY = eINSTANCE.getHwRAM_Repl_Policy();
+
+ /**
+ * The meta object literal for the '<em><b>Write Policy</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute HW_RAM__WRITE_POLICY = eINSTANCE.getHwRAM_WritePolicy();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwROMImpl <em>Hw ROM</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwROMImpl
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwMemoryPackageImpl#getHwROM()
+ * @generated
+ */
+ EClass HW_ROM = eINSTANCE.getHwROM();
+
+ /**
+ * The meta object literal for the '<em><b>Type</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute HW_ROM__TYPE = eINSTANCE.getHwROM_Type();
+
+ /**
+ * The meta object literal for the '<em><b>Organization</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute HW_ROM__ORGANIZATION = eINSTANCE.getHwROM_Organization();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwDriveImpl <em>Hw Drive</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwDriveImpl
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwMemoryPackageImpl#getHwDrive()
+ * @generated
+ */
+ EClass HW_DRIVE = eINSTANCE.getHwDrive();
+
+ /**
+ * The meta object literal for the '<em><b>Sector Size</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute HW_DRIVE__SECTOR_SIZE = eINSTANCE.getHwDrive_SectorSize();
+
+ /**
+ * The meta object literal for the '<em><b>Buffer</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference HW_DRIVE__BUFFER = eINSTANCE.getHwDrive_Buffer();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwCacheImpl <em>Hw Cache</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwCacheImpl
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwMemoryPackageImpl#getHwCache()
+ * @generated
+ */
+ EClass HW_CACHE = eINSTANCE.getHwCache();
+
+ /**
+ * The meta object literal for the '<em><b>Level</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute HW_CACHE__LEVEL = eINSTANCE.getHwCache_Level();
+
+ /**
+ * The meta object literal for the '<em><b>Type</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute HW_CACHE__TYPE = eINSTANCE.getHwCache_Type();
+
+ /**
+ * The meta object literal for the '<em><b>Structure</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute HW_CACHE__STRUCTURE = eINSTANCE.getHwCache_Structure();
+
+ /**
+ * The meta object literal for the '<em><b>Repl Policy</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute HW_CACHE__REPL_POLICY = eINSTANCE.getHwCache_Repl_Policy();
+
+ /**
+ * The meta object literal for the '<em><b>Write Policy</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute HW_CACHE__WRITE_POLICY = eINSTANCE.getHwCache_WritePolicy();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.Repl_Policy <em>Repl Policy</em>}' enum.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.Repl_Policy
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwMemoryPackageImpl#getRepl_Policy()
+ * @generated
+ */
+ EEnum REPL_POLICY = eINSTANCE.getRepl_Policy();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.WritePolicy <em>Write Policy</em>}' enum.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.WritePolicy
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwMemoryPackageImpl#getWritePolicy()
+ * @generated
+ */
+ EEnum WRITE_POLICY = eINSTANCE.getWritePolicy();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.CacheType <em>Cache Type</em>}' enum.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.CacheType
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwMemoryPackageImpl#getCacheType()
+ * @generated
+ */
+ EEnum CACHE_TYPE = eINSTANCE.getCacheType();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.ROM_Type <em>ROM Type</em>}' enum.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.ROM_Type
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwMemoryPackageImpl#getROM_Type()
+ * @generated
+ */
+ EEnum ROM_TYPE = eINSTANCE.getROM_Type();
+
+ /**
+ * The meta object literal for the '<em>Timing</em>' data type.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see java.lang.String
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwMemoryPackageImpl#getTiming()
+ * @generated
+ */
+ EDataType TIMING = eINSTANCE.getTiming();
+
+ /**
+ * The meta object literal for the '<em>Cache Structure</em>' data type.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see java.lang.String
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwMemoryPackageImpl#getCacheStructure()
+ * @generated
+ */
+ EDataType CACHE_STRUCTURE = eINSTANCE.getCacheStructure();
+
+ /**
+ * The meta object literal for the '<em>Memory Organization</em>' data type.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see java.lang.String
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwMemoryPackageImpl#getMemoryOrganization()
+ * @generated
+ */
+ EDataType MEMORY_ORGANIZATION = eINSTANCE.getMemoryOrganization();
+
+ }
+
+} //HwMemoryPackage
diff --git a/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/HwRAM.java b/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/HwRAM.java
new file mode 100644
index 00000000000..80c456c036a
--- /dev/null
+++ b/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/HwRAM.java
@@ -0,0 +1,201 @@
+/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ *
+ * 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:
+ * Chokri MRAIDHA (CEA LIST) chokri.mraidha@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Hw RAM</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwRAM#getOrganization <em>Organization</em>}</li>
+ * <li>{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwRAM#getIsSynchronous <em>Is Synchronous</em>}</li>
+ * <li>{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwRAM#getIsStatic <em>Is Static</em>}</li>
+ * <li>{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwRAM#getIsNonVolatile <em>Is Non Volatile</em>}</li>
+ * <li>{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwRAM#getRepl_Policy <em>Repl Policy</em>}</li>
+ * <li>{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwRAM#getWritePolicy <em>Write Policy</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwMemoryPackage#getHwRAM()
+ * @model
+ * @generated
+ */
+public interface HwRAM extends HwMemory {
+ /**
+ * Returns the value of the '<em><b>Organization</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Organization</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Organization</em>' attribute.
+ * @see #setOrganization(String)
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwMemoryPackage#getHwRAM_Organization()
+ * @model unique="false" dataType="org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.MemoryOrganization" ordered="false"
+ * @generated
+ */
+ String getOrganization();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwRAM#getOrganization <em>Organization</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Organization</em>' attribute.
+ * @see #getOrganization()
+ * @generated
+ */
+ void setOrganization(String value);
+
+ /**
+ * Returns the value of the '<em><b>Is Synchronous</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Is Synchronous</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Is Synchronous</em>' attribute.
+ * @see #setIsSynchronous(String)
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwMemoryPackage#getHwRAM_IsSynchronous()
+ * @model unique="false" dataType="org.eclipse.papyrus.MARTE_Library.BasicNFP_Types.NFP_Boolean" ordered="false"
+ * @generated
+ */
+ String getIsSynchronous();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwRAM#getIsSynchronous <em>Is Synchronous</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Is Synchronous</em>' attribute.
+ * @see #getIsSynchronous()
+ * @generated
+ */
+ void setIsSynchronous(String value);
+
+ /**
+ * Returns the value of the '<em><b>Is Static</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Is Static</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Is Static</em>' attribute.
+ * @see #setIsStatic(String)
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwMemoryPackage#getHwRAM_IsStatic()
+ * @model unique="false" dataType="org.eclipse.papyrus.MARTE_Library.BasicNFP_Types.NFP_Boolean" ordered="false"
+ * @generated
+ */
+ String getIsStatic();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwRAM#getIsStatic <em>Is Static</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Is Static</em>' attribute.
+ * @see #getIsStatic()
+ * @generated
+ */
+ void setIsStatic(String value);
+
+ /**
+ * Returns the value of the '<em><b>Is Non Volatile</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Is Non Volatile</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Is Non Volatile</em>' attribute.
+ * @see #setIsNonVolatile(String)
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwMemoryPackage#getHwRAM_IsNonVolatile()
+ * @model unique="false" dataType="org.eclipse.papyrus.MARTE_Library.BasicNFP_Types.NFP_Boolean" ordered="false"
+ * @generated
+ */
+ String getIsNonVolatile();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwRAM#getIsNonVolatile <em>Is Non Volatile</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Is Non Volatile</em>' attribute.
+ * @see #getIsNonVolatile()
+ * @generated
+ */
+ void setIsNonVolatile(String value);
+
+ /**
+ * Returns the value of the '<em><b>Repl Policy</b></em>' attribute.
+ * The literals are from the enumeration {@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.Repl_Policy}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Repl Policy</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Repl Policy</em>' attribute.
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.Repl_Policy
+ * @see #setRepl_Policy(Repl_Policy)
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwMemoryPackage#getHwRAM_Repl_Policy()
+ * @model unique="false" ordered="false"
+ * @generated
+ */
+ Repl_Policy getRepl_Policy();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwRAM#getRepl_Policy <em>Repl Policy</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Repl Policy</em>' attribute.
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.Repl_Policy
+ * @see #getRepl_Policy()
+ * @generated
+ */
+ void setRepl_Policy(Repl_Policy value);
+
+ /**
+ * Returns the value of the '<em><b>Write Policy</b></em>' attribute.
+ * The literals are from the enumeration {@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.WritePolicy}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Write Policy</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Write Policy</em>' attribute.
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.WritePolicy
+ * @see #setWritePolicy(WritePolicy)
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwMemoryPackage#getHwRAM_WritePolicy()
+ * @model unique="false" ordered="false"
+ * @generated
+ */
+ WritePolicy getWritePolicy();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwRAM#getWritePolicy <em>Write Policy</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Write Policy</em>' attribute.
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.WritePolicy
+ * @see #getWritePolicy()
+ * @generated
+ */
+ void setWritePolicy(WritePolicy value);
+
+} // HwRAM
diff --git a/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/HwROM.java b/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/HwROM.java
new file mode 100644
index 00000000000..c0668bfb829
--- /dev/null
+++ b/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/HwROM.java
@@ -0,0 +1,90 @@
+/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ *
+ * 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:
+ * Chokri MRAIDHA (CEA LIST) chokri.mraidha@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Hw ROM</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwROM#getType <em>Type</em>}</li>
+ * <li>{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwROM#getOrganization <em>Organization</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwMemoryPackage#getHwROM()
+ * @model
+ * @generated
+ */
+public interface HwROM extends HwMemory {
+ /**
+ * Returns the value of the '<em><b>Type</b></em>' attribute.
+ * The literals are from the enumeration {@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.ROM_Type}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Type</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Type</em>' attribute.
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.ROM_Type
+ * @see #setType(ROM_Type)
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwMemoryPackage#getHwROM_Type()
+ * @model unique="false" ordered="false"
+ * @generated
+ */
+ ROM_Type getType();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwROM#getType <em>Type</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Type</em>' attribute.
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.ROM_Type
+ * @see #getType()
+ * @generated
+ */
+ void setType(ROM_Type value);
+
+ /**
+ * Returns the value of the '<em><b>Organization</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Organization</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @return the value of the '<em>Organization</em>' attribute.
+ * @see #setOrganization(String)
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwMemoryPackage#getHwROM_Organization()
+ * @model unique="false" dataType="org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.MemoryOrganization" ordered="false"
+ * @generated
+ */
+ String getOrganization();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwROM#getOrganization <em>Organization</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Organization</em>' attribute.
+ * @see #getOrganization()
+ * @generated
+ */
+ void setOrganization(String value);
+
+} // HwROM
diff --git a/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/ROM_Type.java b/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/ROM_Type.java
new file mode 100644
index 00000000000..db83986a1ad
--- /dev/null
+++ b/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/ROM_Type.java
@@ -0,0 +1,354 @@
+/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ *
+ * 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:
+ * Chokri MRAIDHA (CEA LIST) chokri.mraidha@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory;
+
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+
+import org.eclipse.emf.common.util.Enumerator;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the literals of the enumeration '<em><b>ROM Type</b></em>',
+ * and utility methods for working with them.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwMemoryPackage#getROM_Type()
+ * @model
+ * @generated
+ */
+public enum ROM_Type implements Enumerator {
+ /**
+ * The '<em><b>Masked ROM</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #MASKED_ROM_VALUE
+ * @generated
+ * @ordered
+ */
+ MASKED_ROM(0, "maskedROM", "maskedROM"),
+
+ /**
+ * The '<em><b>EPROM</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #EPROM_VALUE
+ * @generated
+ * @ordered
+ */
+ EPROM(1, "EPROM", "EPROM"),
+
+ /**
+ * The '<em><b>OTP EPROM</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #OTP_EPROM_VALUE
+ * @generated
+ * @ordered
+ */
+ OTP_EPROM(2, "OTP_EPROM", "OTP_EPROM"),
+
+ /**
+ * The '<em><b>EEPROM</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #EEPROM_VALUE
+ * @generated
+ * @ordered
+ */
+ EEPROM(3, "EEPROM", "EEPROM"),
+
+ /**
+ * The '<em><b>Flash</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #FLASH_VALUE
+ * @generated
+ * @ordered
+ */
+ FLASH(4, "Flash", "Flash"),
+
+ /**
+ * The '<em><b>Other</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #OTHER_VALUE
+ * @generated
+ * @ordered
+ */
+ OTHER(5, "other", "other"),
+
+ /**
+ * The '<em><b>Undef</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #UNDEF_VALUE
+ * @generated
+ * @ordered
+ */
+ UNDEF(6, "undef", "undef");
+
+ /**
+ * The '<em><b>Masked ROM</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>Masked ROM</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #MASKED_ROM
+ * @model name="maskedROM"
+ * @generated
+ * @ordered
+ */
+ public static final int MASKED_ROM_VALUE = 0;
+
+ /**
+ * The '<em><b>EPROM</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>EPROM</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #EPROM
+ * @model
+ * @generated
+ * @ordered
+ */
+ public static final int EPROM_VALUE = 1;
+
+ /**
+ * The '<em><b>OTP EPROM</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>OTP EPROM</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #OTP_EPROM
+ * @model
+ * @generated
+ * @ordered
+ */
+ public static final int OTP_EPROM_VALUE = 2;
+
+ /**
+ * The '<em><b>EEPROM</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>EEPROM</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #EEPROM
+ * @model
+ * @generated
+ * @ordered
+ */
+ public static final int EEPROM_VALUE = 3;
+
+ /**
+ * The '<em><b>Flash</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>Flash</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #FLASH
+ * @model name="Flash"
+ * @generated
+ * @ordered
+ */
+ public static final int FLASH_VALUE = 4;
+
+ /**
+ * The '<em><b>Other</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>Other</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #OTHER
+ * @model name="other"
+ * @generated
+ * @ordered
+ */
+ public static final int OTHER_VALUE = 5;
+
+ /**
+ * The '<em><b>Undef</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>Undef</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #UNDEF
+ * @model name="undef"
+ * @generated
+ * @ordered
+ */
+ public static final int UNDEF_VALUE = 6;
+
+ /**
+ * An array of all the '<em><b>ROM Type</b></em>' enumerators.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static final ROM_Type[] VALUES_ARRAY =
+ new ROM_Type[] {
+ MASKED_ROM,
+ EPROM,
+ OTP_EPROM,
+ EEPROM,
+ FLASH,
+ OTHER,
+ UNDEF,
+ };
+
+ /**
+ * A public read-only list of all the '<em><b>ROM Type</b></em>' enumerators.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static final List<ROM_Type> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
+
+ /**
+ * Returns the '<em><b>ROM Type</b></em>' literal with the specified literal value.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static ROM_Type get(String literal) {
+ for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+ ROM_Type result = VALUES_ARRAY[i];
+ if (result.toString().equals(literal)) {
+ return result;
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Returns the '<em><b>ROM Type</b></em>' literal with the specified name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static ROM_Type getByName(String name) {
+ for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+ ROM_Type result = VALUES_ARRAY[i];
+ if (result.getName().equals(name)) {
+ return result;
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Returns the '<em><b>ROM Type</b></em>' literal with the specified integer value.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static ROM_Type get(int value) {
+ switch (value) {
+ case MASKED_ROM_VALUE: return MASKED_ROM;
+ case EPROM_VALUE: return EPROM;
+ case OTP_EPROM_VALUE: return OTP_EPROM;
+ case EEPROM_VALUE: return EEPROM;
+ case FLASH_VALUE: return FLASH;
+ case OTHER_VALUE: return OTHER;
+ case UNDEF_VALUE: return UNDEF;
+ }
+ return null;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private final int value;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private final String name;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private final String literal;
+
+ /**
+ * Only this class can construct instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private ROM_Type(int value, String name, String literal) {
+ this.value = value;
+ this.name = name;
+ this.literal = literal;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public int getValue() {
+ return value;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getLiteral() {
+ return literal;
+ }
+
+ /**
+ * Returns the literal value of the enumerator, which is its string representation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ return literal;
+ }
+
+} //ROM_Type
diff --git a/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/Repl_Policy.java b/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/Repl_Policy.java
new file mode 100644
index 00000000000..e675ceedfab
--- /dev/null
+++ b/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/Repl_Policy.java
@@ -0,0 +1,327 @@
+/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ *
+ * 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:
+ * Chokri MRAIDHA (CEA LIST) chokri.mraidha@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory;
+
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+
+import org.eclipse.emf.common.util.Enumerator;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the literals of the enumeration '<em><b>Repl Policy</b></em>',
+ * and utility methods for working with them.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwMemoryPackage#getRepl_Policy()
+ * @model
+ * @generated
+ */
+public enum Repl_Policy implements Enumerator {
+ /**
+ * The '<em><b>LRU</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #LRU_VALUE
+ * @generated
+ * @ordered
+ */
+ LRU(0, "LRU", "LRU"),
+
+ /**
+ * The '<em><b>NFU</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #NFU_VALUE
+ * @generated
+ * @ordered
+ */
+ NFU(1, "NFU", "NFU"),
+
+ /**
+ * The '<em><b>FIFO</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #FIFO_VALUE
+ * @generated
+ * @ordered
+ */
+ FIFO(2, "FIFO", "FIFO"),
+
+ /**
+ * The '<em><b>Random</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #RANDOM_VALUE
+ * @generated
+ * @ordered
+ */
+ RANDOM(3, "random", "random"),
+
+ /**
+ * The '<em><b>Other</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #OTHER_VALUE
+ * @generated
+ * @ordered
+ */
+ OTHER(4, "other", "other"),
+
+ /**
+ * The '<em><b>Undef</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #UNDEF_VALUE
+ * @generated
+ * @ordered
+ */
+ UNDEF(5, "undef", "undef");
+
+ /**
+ * The '<em><b>LRU</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>LRU</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #LRU
+ * @model
+ * @generated
+ * @ordered
+ */
+ public static final int LRU_VALUE = 0;
+
+ /**
+ * The '<em><b>NFU</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>NFU</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #NFU
+ * @model
+ * @generated
+ * @ordered
+ */
+ public static final int NFU_VALUE = 1;
+
+ /**
+ * The '<em><b>FIFO</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>FIFO</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #FIFO
+ * @model
+ * @generated
+ * @ordered
+ */
+ public static final int FIFO_VALUE = 2;
+
+ /**
+ * The '<em><b>Random</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>Random</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #RANDOM
+ * @model name="random"
+ * @generated
+ * @ordered
+ */
+ public static final int RANDOM_VALUE = 3;
+
+ /**
+ * The '<em><b>Other</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>Other</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #OTHER
+ * @model name="other"
+ * @generated
+ * @ordered
+ */
+ public static final int OTHER_VALUE = 4;
+
+ /**
+ * The '<em><b>Undef</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>Undef</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #UNDEF
+ * @model name="undef"
+ * @generated
+ * @ordered
+ */
+ public static final int UNDEF_VALUE = 5;
+
+ /**
+ * An array of all the '<em><b>Repl Policy</b></em>' enumerators.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static final Repl_Policy[] VALUES_ARRAY =
+ new Repl_Policy[] {
+ LRU,
+ NFU,
+ FIFO,
+ RANDOM,
+ OTHER,
+ UNDEF,
+ };
+
+ /**
+ * A public read-only list of all the '<em><b>Repl Policy</b></em>' enumerators.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static final List<Repl_Policy> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
+
+ /**
+ * Returns the '<em><b>Repl Policy</b></em>' literal with the specified literal value.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static Repl_Policy get(String literal) {
+ for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+ Repl_Policy result = VALUES_ARRAY[i];
+ if (result.toString().equals(literal)) {
+ return result;
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Returns the '<em><b>Repl Policy</b></em>' literal with the specified name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static Repl_Policy getByName(String name) {
+ for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+ Repl_Policy result = VALUES_ARRAY[i];
+ if (result.getName().equals(name)) {
+ return result;
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Returns the '<em><b>Repl Policy</b></em>' literal with the specified integer value.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static Repl_Policy get(int value) {
+ switch (value) {
+ case LRU_VALUE: return LRU;
+ case NFU_VALUE: return NFU;
+ case FIFO_VALUE: return FIFO;
+ case RANDOM_VALUE: return RANDOM;
+ case OTHER_VALUE: return OTHER;
+ case UNDEF_VALUE: return UNDEF;
+ }
+ return null;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private final int value;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private final String name;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private final String literal;
+
+ /**
+ * Only this class can construct instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private Repl_Policy(int value, String name, String literal) {
+ this.value = value;
+ this.name = name;
+ this.literal = literal;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public int getValue() {
+ return value;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getLiteral() {
+ return literal;
+ }
+
+ /**
+ * Returns the literal value of the enumerator, which is its string representation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ return literal;
+ }
+
+} //Repl_Policy
diff --git a/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/WritePolicy.java b/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/WritePolicy.java
new file mode 100644
index 00000000000..456736f2eeb
--- /dev/null
+++ b/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/WritePolicy.java
@@ -0,0 +1,273 @@
+/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ *
+ * 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:
+ * Chokri MRAIDHA (CEA LIST) chokri.mraidha@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory;
+
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+
+import org.eclipse.emf.common.util.Enumerator;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the literals of the enumeration '<em><b>Write Policy</b></em>',
+ * and utility methods for working with them.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwMemoryPackage#getWritePolicy()
+ * @model
+ * @generated
+ */
+public enum WritePolicy implements Enumerator {
+ /**
+ * The '<em><b>Write Back</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #WRITE_BACK_VALUE
+ * @generated
+ * @ordered
+ */
+ WRITE_BACK(0, "writeBack", "writeBack"),
+
+ /**
+ * The '<em><b>Write Through</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #WRITE_THROUGH_VALUE
+ * @generated
+ * @ordered
+ */
+ WRITE_THROUGH(1, "writeThrough", "writeThrough"),
+
+ /**
+ * The '<em><b>Other</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #OTHER_VALUE
+ * @generated
+ * @ordered
+ */
+ OTHER(2, "other", "other"),
+
+ /**
+ * The '<em><b>Undef</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #UNDEF_VALUE
+ * @generated
+ * @ordered
+ */
+ UNDEF(3, "undef", "undef");
+
+ /**
+ * The '<em><b>Write Back</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>Write Back</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #WRITE_BACK
+ * @model name="writeBack"
+ * @generated
+ * @ordered
+ */
+ public static final int WRITE_BACK_VALUE = 0;
+
+ /**
+ * The '<em><b>Write Through</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>Write Through</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #WRITE_THROUGH
+ * @model name="writeThrough"
+ * @generated
+ * @ordered
+ */
+ public static final int WRITE_THROUGH_VALUE = 1;
+
+ /**
+ * The '<em><b>Other</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>Other</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #OTHER
+ * @model name="other"
+ * @generated
+ * @ordered
+ */
+ public static final int OTHER_VALUE = 2;
+
+ /**
+ * The '<em><b>Undef</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>Undef</b></em>' literal object isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * @see #UNDEF
+ * @model name="undef"
+ * @generated
+ * @ordered
+ */
+ public static final int UNDEF_VALUE = 3;
+
+ /**
+ * An array of all the '<em><b>Write Policy</b></em>' enumerators.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private static final WritePolicy[] VALUES_ARRAY =
+ new WritePolicy[] {
+ WRITE_BACK,
+ WRITE_THROUGH,
+ OTHER,
+ UNDEF,
+ };
+
+ /**
+ * A public read-only list of all the '<em><b>Write Policy</b></em>' enumerators.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static final List<WritePolicy> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
+
+ /**
+ * Returns the '<em><b>Write Policy</b></em>' literal with the specified literal value.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static WritePolicy get(String literal) {
+ for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+ WritePolicy result = VALUES_ARRAY[i];
+ if (result.toString().equals(literal)) {
+ return result;
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Returns the '<em><b>Write Policy</b></em>' literal with the specified name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static WritePolicy getByName(String name) {
+ for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+ WritePolicy result = VALUES_ARRAY[i];
+ if (result.getName().equals(name)) {
+ return result;
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Returns the '<em><b>Write Policy</b></em>' literal with the specified integer value.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static WritePolicy get(int value) {
+ switch (value) {
+ case WRITE_BACK_VALUE: return WRITE_BACK;
+ case WRITE_THROUGH_VALUE: return WRITE_THROUGH;
+ case OTHER_VALUE: return OTHER;
+ case UNDEF_VALUE: return UNDEF;
+ }
+ return null;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private final int value;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private final String name;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private final String literal;
+
+ /**
+ * Only this class can construct instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private WritePolicy(int value, String name, String literal) {
+ this.value = value;
+ this.name = name;
+ this.literal = literal;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public int getValue() {
+ return value;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getLiteral() {
+ return literal;
+ }
+
+ /**
+ * Returns the literal value of the enumerator, which is its string representation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ return literal;
+ }
+
+} //WritePolicy
diff --git a/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/impl/HwCacheImpl.java b/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/impl/HwCacheImpl.java
new file mode 100644
index 00000000000..07acbe87eb3
--- /dev/null
+++ b/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/impl/HwCacheImpl.java
@@ -0,0 +1,392 @@
+/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ *
+ * 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:
+ * Chokri MRAIDHA (CEA LIST) chokri.mraidha@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.CacheType;
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwCache;
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwMemoryPackage;
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.Repl_Policy;
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.WritePolicy;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Hw Cache</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwCacheImpl#getLevel <em>Level</em>}</li>
+ * <li>{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwCacheImpl#getType <em>Type</em>}</li>
+ * <li>{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwCacheImpl#getStructure <em>Structure</em>}</li>
+ * <li>{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwCacheImpl#getRepl_Policy <em>Repl Policy</em>}</li>
+ * <li>{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwCacheImpl#getWritePolicy <em>Write Policy</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class HwCacheImpl extends HwMemoryImpl implements HwCache {
+ /**
+ * The default value of the '{@link #getLevel() <em>Level</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getLevel()
+ * @generated
+ * @ordered
+ */
+ protected static final String LEVEL_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getLevel() <em>Level</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getLevel()
+ * @generated
+ * @ordered
+ */
+ protected String level = LEVEL_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getType() <em>Type</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getType()
+ * @generated
+ * @ordered
+ */
+ protected static final CacheType TYPE_EDEFAULT = CacheType.DATA;
+
+ /**
+ * The cached value of the '{@link #getType() <em>Type</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getType()
+ * @generated
+ * @ordered
+ */
+ protected CacheType type = TYPE_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getStructure() <em>Structure</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getStructure()
+ * @generated
+ * @ordered
+ */
+ protected static final String STRUCTURE_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getStructure() <em>Structure</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getStructure()
+ * @generated
+ * @ordered
+ */
+ protected String structure = STRUCTURE_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getRepl_Policy() <em>Repl Policy</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getRepl_Policy()
+ * @generated
+ * @ordered
+ */
+ protected static final Repl_Policy REPL_POLICY_EDEFAULT = Repl_Policy.LRU;
+
+ /**
+ * The cached value of the '{@link #getRepl_Policy() <em>Repl Policy</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getRepl_Policy()
+ * @generated
+ * @ordered
+ */
+ protected Repl_Policy repl_Policy = REPL_POLICY_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getWritePolicy() <em>Write Policy</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getWritePolicy()
+ * @generated
+ * @ordered
+ */
+ protected static final WritePolicy WRITE_POLICY_EDEFAULT = WritePolicy.WRITE_BACK;
+
+ /**
+ * The cached value of the '{@link #getWritePolicy() <em>Write Policy</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getWritePolicy()
+ * @generated
+ * @ordered
+ */
+ protected WritePolicy writePolicy = WRITE_POLICY_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected HwCacheImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return HwMemoryPackage.Literals.HW_CACHE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getLevel() {
+ return level;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setLevel(String newLevel) {
+ String oldLevel = level;
+ level = newLevel;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, HwMemoryPackage.HW_CACHE__LEVEL, oldLevel, level));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public CacheType getType() {
+ return type;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setType(CacheType newType) {
+ CacheType oldType = type;
+ type = newType == null ? TYPE_EDEFAULT : newType;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, HwMemoryPackage.HW_CACHE__TYPE, oldType, type));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getStructure() {
+ return structure;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setStructure(String newStructure) {
+ String oldStructure = structure;
+ structure = newStructure;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, HwMemoryPackage.HW_CACHE__STRUCTURE, oldStructure, structure));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Repl_Policy getRepl_Policy() {
+ return repl_Policy;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setRepl_Policy(Repl_Policy newRepl_Policy) {
+ Repl_Policy oldRepl_Policy = repl_Policy;
+ repl_Policy = newRepl_Policy == null ? REPL_POLICY_EDEFAULT : newRepl_Policy;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, HwMemoryPackage.HW_CACHE__REPL_POLICY, oldRepl_Policy, repl_Policy));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public WritePolicy getWritePolicy() {
+ return writePolicy;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setWritePolicy(WritePolicy newWritePolicy) {
+ WritePolicy oldWritePolicy = writePolicy;
+ writePolicy = newWritePolicy == null ? WRITE_POLICY_EDEFAULT : newWritePolicy;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, HwMemoryPackage.HW_CACHE__WRITE_POLICY, oldWritePolicy, writePolicy));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case HwMemoryPackage.HW_CACHE__LEVEL:
+ return getLevel();
+ case HwMemoryPackage.HW_CACHE__TYPE:
+ return getType();
+ case HwMemoryPackage.HW_CACHE__STRUCTURE:
+ return getStructure();
+ case HwMemoryPackage.HW_CACHE__REPL_POLICY:
+ return getRepl_Policy();
+ case HwMemoryPackage.HW_CACHE__WRITE_POLICY:
+ return getWritePolicy();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case HwMemoryPackage.HW_CACHE__LEVEL:
+ setLevel((String)newValue);
+ return;
+ case HwMemoryPackage.HW_CACHE__TYPE:
+ setType((CacheType)newValue);
+ return;
+ case HwMemoryPackage.HW_CACHE__STRUCTURE:
+ setStructure((String)newValue);
+ return;
+ case HwMemoryPackage.HW_CACHE__REPL_POLICY:
+ setRepl_Policy((Repl_Policy)newValue);
+ return;
+ case HwMemoryPackage.HW_CACHE__WRITE_POLICY:
+ setWritePolicy((WritePolicy)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case HwMemoryPackage.HW_CACHE__LEVEL:
+ setLevel(LEVEL_EDEFAULT);
+ return;
+ case HwMemoryPackage.HW_CACHE__TYPE:
+ setType(TYPE_EDEFAULT);
+ return;
+ case HwMemoryPackage.HW_CACHE__STRUCTURE:
+ setStructure(STRUCTURE_EDEFAULT);
+ return;
+ case HwMemoryPackage.HW_CACHE__REPL_POLICY:
+ setRepl_Policy(REPL_POLICY_EDEFAULT);
+ return;
+ case HwMemoryPackage.HW_CACHE__WRITE_POLICY:
+ setWritePolicy(WRITE_POLICY_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case HwMemoryPackage.HW_CACHE__LEVEL:
+ return LEVEL_EDEFAULT == null ? level != null : !LEVEL_EDEFAULT.equals(level);
+ case HwMemoryPackage.HW_CACHE__TYPE:
+ return type != TYPE_EDEFAULT;
+ case HwMemoryPackage.HW_CACHE__STRUCTURE:
+ return STRUCTURE_EDEFAULT == null ? structure != null : !STRUCTURE_EDEFAULT.equals(structure);
+ case HwMemoryPackage.HW_CACHE__REPL_POLICY:
+ return repl_Policy != REPL_POLICY_EDEFAULT;
+ case HwMemoryPackage.HW_CACHE__WRITE_POLICY:
+ return writePolicy != WRITE_POLICY_EDEFAULT;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (level: ");
+ result.append(level);
+ result.append(", type: ");
+ result.append(type);
+ result.append(", structure: ");
+ result.append(structure);
+ result.append(", repl_Policy: ");
+ result.append(repl_Policy);
+ result.append(", writePolicy: ");
+ result.append(writePolicy);
+ result.append(')');
+ return result.toString();
+ }
+
+} //HwCacheImpl
diff --git a/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/impl/HwDriveImpl.java b/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/impl/HwDriveImpl.java
new file mode 100644
index 00000000000..69ffc8428f2
--- /dev/null
+++ b/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/impl/HwDriveImpl.java
@@ -0,0 +1,235 @@
+/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ *
+ * 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:
+ * Chokri MRAIDHA (CEA LIST) chokri.mraidha@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl;
+
+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.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwDrive;
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwMemoryPackage;
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwRAM;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Hw Drive</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwDriveImpl#getSectorSize <em>Sector Size</em>}</li>
+ * <li>{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwDriveImpl#getBuffer <em>Buffer</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class HwDriveImpl extends HwMemoryImpl implements HwDrive {
+ /**
+ * The default value of the '{@link #getSectorSize() <em>Sector Size</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSectorSize()
+ * @generated
+ * @ordered
+ */
+ protected static final String SECTOR_SIZE_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getSectorSize() <em>Sector Size</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getSectorSize()
+ * @generated
+ * @ordered
+ */
+ protected String sectorSize = SECTOR_SIZE_EDEFAULT;
+
+ /**
+ * The cached value of the '{@link #getBuffer() <em>Buffer</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getBuffer()
+ * @generated
+ * @ordered
+ */
+ protected HwRAM buffer;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected HwDriveImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return HwMemoryPackage.Literals.HW_DRIVE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getSectorSize() {
+ return sectorSize;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setSectorSize(String newSectorSize) {
+ String oldSectorSize = sectorSize;
+ sectorSize = newSectorSize;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, HwMemoryPackage.HW_DRIVE__SECTOR_SIZE, oldSectorSize, sectorSize));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public HwRAM getBuffer() {
+ if (buffer != null && buffer.eIsProxy()) {
+ InternalEObject oldBuffer = (InternalEObject)buffer;
+ buffer = (HwRAM)eResolveProxy(oldBuffer);
+ if (buffer != oldBuffer) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, HwMemoryPackage.HW_DRIVE__BUFFER, oldBuffer, buffer));
+ }
+ }
+ return buffer;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public HwRAM basicGetBuffer() {
+ return buffer;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setBuffer(HwRAM newBuffer) {
+ HwRAM oldBuffer = buffer;
+ buffer = newBuffer;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, HwMemoryPackage.HW_DRIVE__BUFFER, oldBuffer, buffer));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case HwMemoryPackage.HW_DRIVE__SECTOR_SIZE:
+ return getSectorSize();
+ case HwMemoryPackage.HW_DRIVE__BUFFER:
+ if (resolve) return getBuffer();
+ return basicGetBuffer();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case HwMemoryPackage.HW_DRIVE__SECTOR_SIZE:
+ setSectorSize((String)newValue);
+ return;
+ case HwMemoryPackage.HW_DRIVE__BUFFER:
+ setBuffer((HwRAM)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case HwMemoryPackage.HW_DRIVE__SECTOR_SIZE:
+ setSectorSize(SECTOR_SIZE_EDEFAULT);
+ return;
+ case HwMemoryPackage.HW_DRIVE__BUFFER:
+ setBuffer((HwRAM)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case HwMemoryPackage.HW_DRIVE__SECTOR_SIZE:
+ return SECTOR_SIZE_EDEFAULT == null ? sectorSize != null : !SECTOR_SIZE_EDEFAULT.equals(sectorSize);
+ case HwMemoryPackage.HW_DRIVE__BUFFER:
+ return buffer != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (sectorSize: ");
+ result.append(sectorSize);
+ result.append(')');
+ return result.toString();
+ }
+
+} //HwDriveImpl
diff --git a/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/impl/HwMemoryFactoryImpl.java b/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/impl/HwMemoryFactoryImpl.java
new file mode 100644
index 00000000000..f816b46cdfa
--- /dev/null
+++ b/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/impl/HwMemoryFactoryImpl.java
@@ -0,0 +1,339 @@
+/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ *
+ * 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:
+ * Chokri MRAIDHA (CEA LIST) chokri.mraidha@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EDataType;
+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 org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Factory</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class HwMemoryFactoryImpl extends EFactoryImpl implements HwMemoryFactory {
+ /**
+ * Creates the default factory implementation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static HwMemoryFactory init() {
+ try {
+ HwMemoryFactory theHwMemoryFactory = (HwMemoryFactory)EPackage.Registry.INSTANCE.getEFactory("http://www.eclipse.org/papyrus/HwMemory/1");
+ if (theHwMemoryFactory != null) {
+ return theHwMemoryFactory;
+ }
+ }
+ catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new HwMemoryFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public HwMemoryFactoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EObject create(EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ case HwMemoryPackage.HW_MEMORY: return createHwMemory();
+ case HwMemoryPackage.HW_RAM: return createHwRAM();
+ case HwMemoryPackage.HW_ROM: return createHwROM();
+ case HwMemoryPackage.HW_DRIVE: return createHwDrive();
+ case HwMemoryPackage.HW_CACHE: return createHwCache();
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object createFromString(EDataType eDataType, String initialValue) {
+ switch (eDataType.getClassifierID()) {
+ case HwMemoryPackage.REPL_POLICY:
+ return createRepl_PolicyFromString(eDataType, initialValue);
+ case HwMemoryPackage.WRITE_POLICY:
+ return createWritePolicyFromString(eDataType, initialValue);
+ case HwMemoryPackage.CACHE_TYPE:
+ return createCacheTypeFromString(eDataType, initialValue);
+ case HwMemoryPackage.ROM_TYPE:
+ return createROM_TypeFromString(eDataType, initialValue);
+ case HwMemoryPackage.TIMING:
+ return createTimingFromString(eDataType, initialValue);
+ case HwMemoryPackage.CACHE_STRUCTURE:
+ return createCacheStructureFromString(eDataType, initialValue);
+ case HwMemoryPackage.MEMORY_ORGANIZATION:
+ return createMemoryOrganizationFromString(eDataType, initialValue);
+ default:
+ throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier");
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String convertToString(EDataType eDataType, Object instanceValue) {
+ switch (eDataType.getClassifierID()) {
+ case HwMemoryPackage.REPL_POLICY:
+ return convertRepl_PolicyToString(eDataType, instanceValue);
+ case HwMemoryPackage.WRITE_POLICY:
+ return convertWritePolicyToString(eDataType, instanceValue);
+ case HwMemoryPackage.CACHE_TYPE:
+ return convertCacheTypeToString(eDataType, instanceValue);
+ case HwMemoryPackage.ROM_TYPE:
+ return convertROM_TypeToString(eDataType, instanceValue);
+ case HwMemoryPackage.TIMING:
+ return convertTimingToString(eDataType, instanceValue);
+ case HwMemoryPackage.CACHE_STRUCTURE:
+ return convertCacheStructureToString(eDataType, instanceValue);
+ case HwMemoryPackage.MEMORY_ORGANIZATION:
+ return convertMemoryOrganizationToString(eDataType, instanceValue);
+ default:
+ throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier");
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public HwMemory createHwMemory() {
+ HwMemoryImpl hwMemory = new HwMemoryImpl();
+ return hwMemory;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public HwRAM createHwRAM() {
+ HwRAMImpl hwRAM = new HwRAMImpl();
+ return hwRAM;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public HwROM createHwROM() {
+ HwROMImpl hwROM = new HwROMImpl();
+ return hwROM;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public HwDrive createHwDrive() {
+ HwDriveImpl hwDrive = new HwDriveImpl();
+ return hwDrive;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public HwCache createHwCache() {
+ HwCacheImpl hwCache = new HwCacheImpl();
+ return hwCache;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Repl_Policy createRepl_PolicyFromString(EDataType eDataType, String initialValue) {
+ Repl_Policy result = Repl_Policy.get(initialValue);
+ if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'");
+ return result;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String convertRepl_PolicyToString(EDataType eDataType, Object instanceValue) {
+ return instanceValue == null ? null : instanceValue.toString();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public WritePolicy createWritePolicyFromString(EDataType eDataType, String initialValue) {
+ WritePolicy result = WritePolicy.get(initialValue);
+ if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'");
+ return result;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String convertWritePolicyToString(EDataType eDataType, Object instanceValue) {
+ return instanceValue == null ? null : instanceValue.toString();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public CacheType createCacheTypeFromString(EDataType eDataType, String initialValue) {
+ CacheType result = CacheType.get(initialValue);
+ if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'");
+ return result;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String convertCacheTypeToString(EDataType eDataType, Object instanceValue) {
+ return instanceValue == null ? null : instanceValue.toString();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ROM_Type createROM_TypeFromString(EDataType eDataType, String initialValue) {
+ ROM_Type result = ROM_Type.get(initialValue);
+ if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'");
+ return result;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String convertROM_TypeToString(EDataType eDataType, Object instanceValue) {
+ return instanceValue == null ? null : instanceValue.toString();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String createTimingFromString(EDataType eDataType, String initialValue) {
+ return (String)super.createFromString(eDataType, initialValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String convertTimingToString(EDataType eDataType, Object instanceValue) {
+ return super.convertToString(eDataType, instanceValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String createCacheStructureFromString(EDataType eDataType, String initialValue) {
+ return (String)super.createFromString(eDataType, initialValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String convertCacheStructureToString(EDataType eDataType, Object instanceValue) {
+ return super.convertToString(eDataType, instanceValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String createMemoryOrganizationFromString(EDataType eDataType, String initialValue) {
+ return (String)super.createFromString(eDataType, initialValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String convertMemoryOrganizationToString(EDataType eDataType, Object instanceValue) {
+ return super.convertToString(eDataType, instanceValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public HwMemoryPackage getHwMemoryPackage() {
+ return (HwMemoryPackage)getEPackage();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static HwMemoryPackage getPackage() {
+ return HwMemoryPackage.eINSTANCE;
+ }
+
+} //HwMemoryFactoryImpl
diff --git a/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/impl/HwMemoryImpl.java b/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/impl/HwMemoryImpl.java
new file mode 100644
index 00000000000..bc644a0be6b
--- /dev/null
+++ b/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/impl/HwMemoryImpl.java
@@ -0,0 +1,415 @@
+/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ *
+ * 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:
+ * Chokri MRAIDHA (CEA LIST) chokri.mraidha@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.emf.ecore.util.EDataTypeUniqueEList;
+
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwGeneral.impl.HwResourceImpl;
+
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwMemory;
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwMemoryPackage;
+
+import org.eclipse.papyrus.MARTE.MARTE_Foundations.GRM.GRMPackage;
+import org.eclipse.papyrus.MARTE.MARTE_Foundations.GRM.StorageResource;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Hw Memory</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwMemoryImpl#getElementSize <em>Element Size</em>}</li>
+ * <li>{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwMemoryImpl#getMemorySize <em>Memory Size</em>}</li>
+ * <li>{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwMemoryImpl#getAdressSize <em>Adress Size</em>}</li>
+ * <li>{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwMemoryImpl#getTimings <em>Timings</em>}</li>
+ * <li>{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwMemoryImpl#getThroughput <em>Throughput</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class HwMemoryImpl extends HwResourceImpl implements HwMemory {
+ /**
+ * The default value of the '{@link #getElementSize() <em>Element Size</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getElementSize()
+ * @generated
+ * @ordered
+ */
+ protected static final String ELEMENT_SIZE_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getElementSize() <em>Element Size</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getElementSize()
+ * @generated
+ * @ordered
+ */
+ protected String elementSize = ELEMENT_SIZE_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getMemorySize() <em>Memory Size</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getMemorySize()
+ * @generated
+ * @ordered
+ */
+ protected static final String MEMORY_SIZE_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getMemorySize() <em>Memory Size</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getMemorySize()
+ * @generated
+ * @ordered
+ */
+ protected String memorySize = MEMORY_SIZE_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getAdressSize() <em>Adress Size</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getAdressSize()
+ * @generated
+ * @ordered
+ */
+ protected static final String ADRESS_SIZE_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getAdressSize() <em>Adress Size</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getAdressSize()
+ * @generated
+ * @ordered
+ */
+ protected String adressSize = ADRESS_SIZE_EDEFAULT;
+
+ /**
+ * The cached value of the '{@link #getTimings() <em>Timings</em>}' attribute list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getTimings()
+ * @generated
+ * @ordered
+ */
+ protected EList<String> timings;
+
+ /**
+ * The default value of the '{@link #getThroughput() <em>Throughput</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getThroughput()
+ * @generated
+ * @ordered
+ */
+ protected static final String THROUGHPUT_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getThroughput() <em>Throughput</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getThroughput()
+ * @generated
+ * @ordered
+ */
+ protected String throughput = THROUGHPUT_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected HwMemoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return HwMemoryPackage.Literals.HW_MEMORY;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getElementSize() {
+ return elementSize;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setElementSize(String newElementSize) {
+ String oldElementSize = elementSize;
+ elementSize = newElementSize;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, HwMemoryPackage.HW_MEMORY__ELEMENT_SIZE, oldElementSize, elementSize));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getMemorySize() {
+ return memorySize;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setMemorySize(String newMemorySize) {
+ String oldMemorySize = memorySize;
+ memorySize = newMemorySize;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, HwMemoryPackage.HW_MEMORY__MEMORY_SIZE, oldMemorySize, memorySize));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getAdressSize() {
+ return adressSize;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setAdressSize(String newAdressSize) {
+ String oldAdressSize = adressSize;
+ adressSize = newAdressSize;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, HwMemoryPackage.HW_MEMORY__ADRESS_SIZE, oldAdressSize, adressSize));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<String> getTimings() {
+ if (timings == null) {
+ timings = new EDataTypeUniqueEList<String>(String.class, this, HwMemoryPackage.HW_MEMORY__TIMINGS);
+ }
+ return timings;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getThroughput() {
+ return throughput;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setThroughput(String newThroughput) {
+ String oldThroughput = throughput;
+ throughput = newThroughput;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, HwMemoryPackage.HW_MEMORY__THROUGHPUT, oldThroughput, throughput));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case HwMemoryPackage.HW_MEMORY__ELEMENT_SIZE:
+ return getElementSize();
+ case HwMemoryPackage.HW_MEMORY__MEMORY_SIZE:
+ return getMemorySize();
+ case HwMemoryPackage.HW_MEMORY__ADRESS_SIZE:
+ return getAdressSize();
+ case HwMemoryPackage.HW_MEMORY__TIMINGS:
+ return getTimings();
+ case HwMemoryPackage.HW_MEMORY__THROUGHPUT:
+ return getThroughput();
+ }
+ 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 HwMemoryPackage.HW_MEMORY__ELEMENT_SIZE:
+ setElementSize((String)newValue);
+ return;
+ case HwMemoryPackage.HW_MEMORY__MEMORY_SIZE:
+ setMemorySize((String)newValue);
+ return;
+ case HwMemoryPackage.HW_MEMORY__ADRESS_SIZE:
+ setAdressSize((String)newValue);
+ return;
+ case HwMemoryPackage.HW_MEMORY__TIMINGS:
+ getTimings().clear();
+ getTimings().addAll((Collection<? extends String>)newValue);
+ return;
+ case HwMemoryPackage.HW_MEMORY__THROUGHPUT:
+ setThroughput((String)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case HwMemoryPackage.HW_MEMORY__ELEMENT_SIZE:
+ setElementSize(ELEMENT_SIZE_EDEFAULT);
+ return;
+ case HwMemoryPackage.HW_MEMORY__MEMORY_SIZE:
+ setMemorySize(MEMORY_SIZE_EDEFAULT);
+ return;
+ case HwMemoryPackage.HW_MEMORY__ADRESS_SIZE:
+ setAdressSize(ADRESS_SIZE_EDEFAULT);
+ return;
+ case HwMemoryPackage.HW_MEMORY__TIMINGS:
+ getTimings().clear();
+ return;
+ case HwMemoryPackage.HW_MEMORY__THROUGHPUT:
+ setThroughput(THROUGHPUT_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case HwMemoryPackage.HW_MEMORY__ELEMENT_SIZE:
+ return ELEMENT_SIZE_EDEFAULT == null ? elementSize != null : !ELEMENT_SIZE_EDEFAULT.equals(elementSize);
+ case HwMemoryPackage.HW_MEMORY__MEMORY_SIZE:
+ return MEMORY_SIZE_EDEFAULT == null ? memorySize != null : !MEMORY_SIZE_EDEFAULT.equals(memorySize);
+ case HwMemoryPackage.HW_MEMORY__ADRESS_SIZE:
+ return ADRESS_SIZE_EDEFAULT == null ? adressSize != null : !ADRESS_SIZE_EDEFAULT.equals(adressSize);
+ case HwMemoryPackage.HW_MEMORY__TIMINGS:
+ return timings != null && !timings.isEmpty();
+ case HwMemoryPackage.HW_MEMORY__THROUGHPUT:
+ return THROUGHPUT_EDEFAULT == null ? throughput != null : !THROUGHPUT_EDEFAULT.equals(throughput);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
+ if (baseClass == StorageResource.class) {
+ switch (derivedFeatureID) {
+ case HwMemoryPackage.HW_MEMORY__ELEMENT_SIZE: return GRMPackage.STORAGE_RESOURCE__ELEMENT_SIZE;
+ default: return -1;
+ }
+ }
+ return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
+ if (baseClass == StorageResource.class) {
+ switch (baseFeatureID) {
+ case GRMPackage.STORAGE_RESOURCE__ELEMENT_SIZE: return HwMemoryPackage.HW_MEMORY__ELEMENT_SIZE;
+ default: return -1;
+ }
+ }
+ return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (elementSize: ");
+ result.append(elementSize);
+ result.append(", memorySize: ");
+ result.append(memorySize);
+ result.append(", adressSize: ");
+ result.append(adressSize);
+ result.append(", timings: ");
+ result.append(timings);
+ result.append(", throughput: ");
+ result.append(throughput);
+ result.append(')');
+ return result.toString();
+ }
+
+} //HwMemoryImpl
diff --git a/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/impl/HwMemoryPackageImpl.java b/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/impl/HwMemoryPackageImpl.java
new file mode 100644
index 00000000000..1465509b934
--- /dev/null
+++ b/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/impl/HwMemoryPackageImpl.java
@@ -0,0 +1,918 @@
+/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ *
+ * 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:
+ * Chokri MRAIDHA (CEA LIST) chokri.mraidha@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl;
+
+import org.eclipse.emf.common.util.URI;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EDataType;
+import org.eclipse.emf.ecore.EEnum;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+
+import org.eclipse.papyrus.MARTE.MARTEPackage;
+
+import org.eclipse.papyrus.MARTE.MARTE_AnalysisModel.GQAM.GQAMPackage;
+
+import org.eclipse.papyrus.MARTE.MARTE_AnalysisModel.GQAM.impl.GQAMPackageImpl;
+
+import org.eclipse.papyrus.MARTE.MARTE_AnalysisModel.PAM.PAMPackage;
+
+import org.eclipse.papyrus.MARTE.MARTE_AnalysisModel.PAM.impl.PAMPackageImpl;
+
+import org.eclipse.papyrus.MARTE.MARTE_AnalysisModel.SAM.SAMPackage;
+
+import org.eclipse.papyrus.MARTE.MARTE_AnalysisModel.SAM.impl.SAMPackageImpl;
+
+import org.eclipse.papyrus.MARTE.MARTE_Annexes.RSM.RSMPackage;
+
+import org.eclipse.papyrus.MARTE.MARTE_Annexes.RSM.impl.RSMPackageImpl;
+
+import org.eclipse.papyrus.MARTE.MARTE_Annexes.VSL.DataTypes.DataTypesPackage;
+
+import org.eclipse.papyrus.MARTE.MARTE_Annexes.VSL.DataTypes.impl.DataTypesPackageImpl;
+
+import org.eclipse.papyrus.MARTE.MARTE_Annexes.VSL.Operators.OperatorsPackage;
+import org.eclipse.papyrus.MARTE.MARTE_Annexes.VSL.Operators.impl.OperatorsPackageImpl;
+import org.eclipse.papyrus.MARTE.MARTE_Annexes.VSL.Variables.VariablesPackage;
+
+import org.eclipse.papyrus.MARTE.MARTE_Annexes.VSL.Variables.impl.VariablesPackageImpl;
+
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.GCM.GCMPackage;
+
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.GCM.impl.GCMPackageImpl;
+
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.HLAM.HLAMPackage;
+
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.HLAM.impl.HLAMPackageImpl;
+
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwGeneral.HwGeneralPackage;
+
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwGeneral.impl.HwGeneralPackageImpl;
+
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwCommunication.HwCommunicationPackage;
+
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwCommunication.impl.HwCommunicationPackageImpl;
+
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwComputing.HwComputingPackage;
+
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwComputing.impl.HwComputingPackageImpl;
+
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwDevice.HwDevicePackage;
+
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwDevice.impl.HwDevicePackageImpl;
+
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.CacheType;
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwCache;
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwDrive;
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwMemory;
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwMemoryFactory;
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwMemoryPackage;
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwRAM;
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwROM;
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.ROM_Type;
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.Repl_Policy;
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.WritePolicy;
+
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwStorageManager.HwStorageManagerPackage;
+
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwStorageManager.impl.HwStorageManagerPackageImpl;
+
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwTiming.HwTimingPackage;
+
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwTiming.impl.HwTimingPackageImpl;
+
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwPhysical.HwLayout.HwLayoutPackage;
+
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwPhysical.HwLayout.impl.HwLayoutPackageImpl;
+
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwPhysical.HwPower.HwPowerPackage;
+
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwPhysical.HwPower.impl.HwPowerPackageImpl;
+
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.SRM.SW_Brokering.SW_BrokeringPackage;
+
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.SRM.SW_Brokering.impl.SW_BrokeringPackageImpl;
+
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.SRM.SW_Concurrency.SW_ConcurrencyPackage;
+
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.SRM.SW_Concurrency.impl.SW_ConcurrencyPackageImpl;
+
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.SRM.SW_Interaction.SW_InteractionPackage;
+
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.SRM.SW_Interaction.impl.SW_InteractionPackageImpl;
+
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.SRM.SW_ResourceCore.SW_ResourceCorePackage;
+
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.SRM.SW_ResourceCore.impl.SW_ResourceCorePackageImpl;
+
+import org.eclipse.papyrus.MARTE.MARTE_Foundations.Alloc.AllocPackage;
+
+import org.eclipse.papyrus.MARTE.MARTE_Foundations.Alloc.impl.AllocPackageImpl;
+
+import org.eclipse.papyrus.MARTE.MARTE_Foundations.CoreElements.CoreElementsPackage;
+
+import org.eclipse.papyrus.MARTE.MARTE_Foundations.CoreElements.impl.CoreElementsPackageImpl;
+
+import org.eclipse.papyrus.MARTE.MARTE_Foundations.GRM.GRMPackage;
+
+import org.eclipse.papyrus.MARTE.MARTE_Foundations.GRM.impl.GRMPackageImpl;
+
+import org.eclipse.papyrus.MARTE.MARTE_Foundations.NFPs.NFPsPackage;
+
+import org.eclipse.papyrus.MARTE.MARTE_Foundations.NFPs.impl.NFPsPackageImpl;
+
+import org.eclipse.papyrus.MARTE.MARTE_Foundations.Time.TimePackage;
+
+import org.eclipse.papyrus.MARTE.MARTE_Foundations.Time.impl.TimePackageImpl;
+
+import org.eclipse.papyrus.MARTE.impl.MARTEPackageImpl;
+
+import org.eclipse.papyrus.MARTE_Library.BasicNFP_Types.BasicNFP_TypesPackage;
+
+import org.eclipse.papyrus.MARTE_Library.BasicNFP_Types.impl.BasicNFP_TypesPackageImpl;
+
+import org.eclipse.papyrus.MARTE_Library.GRM_BasicTypes.GRM_BasicTypesPackage;
+
+import org.eclipse.papyrus.MARTE_Library.GRM_BasicTypes.impl.GRM_BasicTypesPackageImpl;
+
+import org.eclipse.papyrus.MARTE_Library.MARTE_DataTypes.MARTE_DataTypesPackage;
+
+import org.eclipse.papyrus.MARTE_Library.MARTE_DataTypes.impl.MARTE_DataTypesPackageImpl;
+
+import org.eclipse.papyrus.MARTE_Library.MARTE_PrimitivesTypes.MARTE_PrimitivesTypesPackage;
+
+import org.eclipse.papyrus.MARTE_Library.MARTE_PrimitivesTypes.impl.MARTE_PrimitivesTypesPackageImpl;
+
+import org.eclipse.papyrus.MARTE_Library.MeasurementUnits.MeasurementUnitsPackage;
+
+import org.eclipse.papyrus.MARTE_Library.MeasurementUnits.impl.MeasurementUnitsPackageImpl;
+
+import org.eclipse.papyrus.MARTE_Library.RS_Library.RS_LibraryPackage;
+
+import org.eclipse.papyrus.MARTE_Library.RS_Library.impl.RS_LibraryPackageImpl;
+
+import org.eclipse.papyrus.MARTE_Library.TimeLibrary.TimeLibraryPackage;
+
+import org.eclipse.papyrus.MARTE_Library.TimeLibrary.impl.TimeLibraryPackageImpl;
+
+import org.eclipse.papyrus.MARTE_Library.TimeTypesLibrary.TimeTypesLibraryPackage;
+
+import org.eclipse.papyrus.MARTE_Library.TimeTypesLibrary.impl.TimeTypesLibraryPackageImpl;
+
+import org.eclipse.uml2.uml.UMLPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Package</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class HwMemoryPackageImpl extends EPackageImpl implements HwMemoryPackage {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass hwMemoryEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass hwRAMEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass hwROMEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass hwDriveEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass hwCacheEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EEnum repl_PolicyEEnum = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EEnum writePolicyEEnum = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EEnum cacheTypeEEnum = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EEnum roM_TypeEEnum = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EDataType timingEDataType = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EDataType cacheStructureEDataType = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EDataType memoryOrganizationEDataType = 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 org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwMemoryPackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private HwMemoryPackageImpl() {
+ super(eNS_URI, HwMemoryFactory.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 HwMemoryPackage#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 HwMemoryPackage init() {
+ if (isInited) return (HwMemoryPackage)EPackage.Registry.INSTANCE.getEPackage(HwMemoryPackage.eNS_URI);
+
+ // Obtain or create and register package
+ HwMemoryPackageImpl theHwMemoryPackage = (HwMemoryPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof HwMemoryPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new HwMemoryPackageImpl());
+
+ isInited = true;
+
+ // Initialize simple dependencies
+ UMLPackage.eINSTANCE.eClass();
+
+ // Obtain or create and register interdependencies
+ MARTEPackageImpl theMARTEPackage = (MARTEPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(MARTEPackage.eNS_URI) instanceof MARTEPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(MARTEPackage.eNS_URI) : MARTEPackage.eINSTANCE);
+ NFPsPackageImpl theNFPsPackage = (NFPsPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(NFPsPackage.eNS_URI) instanceof NFPsPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(NFPsPackage.eNS_URI) : NFPsPackage.eINSTANCE);
+ CoreElementsPackageImpl theCoreElementsPackage = (CoreElementsPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(CoreElementsPackage.eNS_URI) instanceof CoreElementsPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(CoreElementsPackage.eNS_URI) : CoreElementsPackage.eINSTANCE);
+ AllocPackageImpl theAllocPackage = (AllocPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(AllocPackage.eNS_URI) instanceof AllocPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(AllocPackage.eNS_URI) : AllocPackage.eINSTANCE);
+ TimePackageImpl theTimePackage = (TimePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(TimePackage.eNS_URI) instanceof TimePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(TimePackage.eNS_URI) : TimePackage.eINSTANCE);
+ GRMPackageImpl theGRMPackage = (GRMPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(GRMPackage.eNS_URI) instanceof GRMPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(GRMPackage.eNS_URI) : GRMPackage.eINSTANCE);
+ RSMPackageImpl theRSMPackage = (RSMPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(RSMPackage.eNS_URI) instanceof RSMPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(RSMPackage.eNS_URI) : RSMPackage.eINSTANCE);
+ VariablesPackageImpl theVariablesPackage = (VariablesPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(VariablesPackage.eNS_URI) instanceof VariablesPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(VariablesPackage.eNS_URI) : VariablesPackage.eINSTANCE);
+ OperatorsPackageImpl theOperatorsPackage = (OperatorsPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(OperatorsPackage.eNS_URI) instanceof OperatorsPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(OperatorsPackage.eNS_URI) : OperatorsPackage.eINSTANCE);
+ DataTypesPackageImpl theDataTypesPackage = (DataTypesPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(DataTypesPackage.eNS_URI) instanceof DataTypesPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(DataTypesPackage.eNS_URI) : DataTypesPackage.eINSTANCE);
+ HLAMPackageImpl theHLAMPackage = (HLAMPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(HLAMPackage.eNS_URI) instanceof HLAMPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(HLAMPackage.eNS_URI) : HLAMPackage.eINSTANCE);
+ HwComputingPackageImpl theHwComputingPackage = (HwComputingPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(HwComputingPackage.eNS_URI) instanceof HwComputingPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(HwComputingPackage.eNS_URI) : HwComputingPackage.eINSTANCE);
+ HwCommunicationPackageImpl theHwCommunicationPackage = (HwCommunicationPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(HwCommunicationPackage.eNS_URI) instanceof HwCommunicationPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(HwCommunicationPackage.eNS_URI) : HwCommunicationPackage.eINSTANCE);
+ HwStorageManagerPackageImpl theHwStorageManagerPackage = (HwStorageManagerPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(HwStorageManagerPackage.eNS_URI) instanceof HwStorageManagerPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(HwStorageManagerPackage.eNS_URI) : HwStorageManagerPackage.eINSTANCE);
+ HwTimingPackageImpl theHwTimingPackage = (HwTimingPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(HwTimingPackage.eNS_URI) instanceof HwTimingPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(HwTimingPackage.eNS_URI) : HwTimingPackage.eINSTANCE);
+ HwDevicePackageImpl theHwDevicePackage = (HwDevicePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(HwDevicePackage.eNS_URI) instanceof HwDevicePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(HwDevicePackage.eNS_URI) : HwDevicePackage.eINSTANCE);
+ HwGeneralPackageImpl theHwGeneralPackage = (HwGeneralPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(HwGeneralPackage.eNS_URI) instanceof HwGeneralPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(HwGeneralPackage.eNS_URI) : HwGeneralPackage.eINSTANCE);
+ HwLayoutPackageImpl theHwLayoutPackage = (HwLayoutPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(HwLayoutPackage.eNS_URI) instanceof HwLayoutPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(HwLayoutPackage.eNS_URI) : HwLayoutPackage.eINSTANCE);
+ HwPowerPackageImpl theHwPowerPackage = (HwPowerPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(HwPowerPackage.eNS_URI) instanceof HwPowerPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(HwPowerPackage.eNS_URI) : HwPowerPackage.eINSTANCE);
+ SW_ResourceCorePackageImpl theSW_ResourceCorePackage = (SW_ResourceCorePackageImpl)(EPackage.Registry.INSTANCE.getEPackage(SW_ResourceCorePackage.eNS_URI) instanceof SW_ResourceCorePackageImpl ? EPackage.Registry.INSTANCE.getEPackage(SW_ResourceCorePackage.eNS_URI) : SW_ResourceCorePackage.eINSTANCE);
+ SW_ConcurrencyPackageImpl theSW_ConcurrencyPackage = (SW_ConcurrencyPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(SW_ConcurrencyPackage.eNS_URI) instanceof SW_ConcurrencyPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(SW_ConcurrencyPackage.eNS_URI) : SW_ConcurrencyPackage.eINSTANCE);
+ SW_BrokeringPackageImpl theSW_BrokeringPackage = (SW_BrokeringPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(SW_BrokeringPackage.eNS_URI) instanceof SW_BrokeringPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(SW_BrokeringPackage.eNS_URI) : SW_BrokeringPackage.eINSTANCE);
+ SW_InteractionPackageImpl theSW_InteractionPackage = (SW_InteractionPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(SW_InteractionPackage.eNS_URI) instanceof SW_InteractionPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(SW_InteractionPackage.eNS_URI) : SW_InteractionPackage.eINSTANCE);
+ GCMPackageImpl theGCMPackage = (GCMPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(GCMPackage.eNS_URI) instanceof GCMPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(GCMPackage.eNS_URI) : GCMPackage.eINSTANCE);
+ GQAMPackageImpl theGQAMPackage = (GQAMPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(GQAMPackage.eNS_URI) instanceof GQAMPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(GQAMPackage.eNS_URI) : GQAMPackage.eINSTANCE);
+ SAMPackageImpl theSAMPackage = (SAMPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(SAMPackage.eNS_URI) instanceof SAMPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(SAMPackage.eNS_URI) : SAMPackage.eINSTANCE);
+ PAMPackageImpl thePAMPackage = (PAMPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(PAMPackage.eNS_URI) instanceof PAMPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(PAMPackage.eNS_URI) : PAMPackage.eINSTANCE);
+ MeasurementUnitsPackageImpl theMeasurementUnitsPackage = (MeasurementUnitsPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(MeasurementUnitsPackage.eNS_URI) instanceof MeasurementUnitsPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(MeasurementUnitsPackage.eNS_URI) : MeasurementUnitsPackage.eINSTANCE);
+ GRM_BasicTypesPackageImpl theGRM_BasicTypesPackage = (GRM_BasicTypesPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(GRM_BasicTypesPackage.eNS_URI) instanceof GRM_BasicTypesPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(GRM_BasicTypesPackage.eNS_URI) : GRM_BasicTypesPackage.eINSTANCE);
+ MARTE_DataTypesPackageImpl theMARTE_DataTypesPackage = (MARTE_DataTypesPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(MARTE_DataTypesPackage.eNS_URI) instanceof MARTE_DataTypesPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(MARTE_DataTypesPackage.eNS_URI) : MARTE_DataTypesPackage.eINSTANCE);
+ BasicNFP_TypesPackageImpl theBasicNFP_TypesPackage = (BasicNFP_TypesPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(BasicNFP_TypesPackage.eNS_URI) instanceof BasicNFP_TypesPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(BasicNFP_TypesPackage.eNS_URI) : BasicNFP_TypesPackage.eINSTANCE);
+ TimeTypesLibraryPackageImpl theTimeTypesLibraryPackage = (TimeTypesLibraryPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(TimeTypesLibraryPackage.eNS_URI) instanceof TimeTypesLibraryPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(TimeTypesLibraryPackage.eNS_URI) : TimeTypesLibraryPackage.eINSTANCE);
+ TimeLibraryPackageImpl theTimeLibraryPackage = (TimeLibraryPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(TimeLibraryPackage.eNS_URI) instanceof TimeLibraryPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(TimeLibraryPackage.eNS_URI) : TimeLibraryPackage.eINSTANCE);
+ RS_LibraryPackageImpl theRS_LibraryPackage = (RS_LibraryPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(RS_LibraryPackage.eNS_URI) instanceof RS_LibraryPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(RS_LibraryPackage.eNS_URI) : RS_LibraryPackage.eINSTANCE);
+ MARTE_PrimitivesTypesPackageImpl theMARTE_PrimitivesTypesPackage = (MARTE_PrimitivesTypesPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(MARTE_PrimitivesTypesPackage.eNS_URI) instanceof MARTE_PrimitivesTypesPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(MARTE_PrimitivesTypesPackage.eNS_URI) : MARTE_PrimitivesTypesPackage.eINSTANCE);
+
+ // Create package meta-data objects
+ theHwMemoryPackage.createPackageContents();
+ theMARTEPackage.createPackageContents();
+ theNFPsPackage.createPackageContents();
+ theCoreElementsPackage.createPackageContents();
+ theAllocPackage.createPackageContents();
+ theTimePackage.createPackageContents();
+ theGRMPackage.createPackageContents();
+ theRSMPackage.createPackageContents();
+ theVariablesPackage.createPackageContents();
+ theOperatorsPackage.createPackageContents();
+ theDataTypesPackage.createPackageContents();
+ theHLAMPackage.createPackageContents();
+ theHwComputingPackage.createPackageContents();
+ theHwCommunicationPackage.createPackageContents();
+ theHwStorageManagerPackage.createPackageContents();
+ theHwTimingPackage.createPackageContents();
+ theHwDevicePackage.createPackageContents();
+ theHwGeneralPackage.createPackageContents();
+ theHwLayoutPackage.createPackageContents();
+ theHwPowerPackage.createPackageContents();
+ theSW_ResourceCorePackage.createPackageContents();
+ theSW_ConcurrencyPackage.createPackageContents();
+ theSW_BrokeringPackage.createPackageContents();
+ theSW_InteractionPackage.createPackageContents();
+ theGCMPackage.createPackageContents();
+ theGQAMPackage.createPackageContents();
+ theSAMPackage.createPackageContents();
+ thePAMPackage.createPackageContents();
+ theMeasurementUnitsPackage.createPackageContents();
+ theGRM_BasicTypesPackage.createPackageContents();
+ theMARTE_DataTypesPackage.createPackageContents();
+ theBasicNFP_TypesPackage.createPackageContents();
+ theTimeTypesLibraryPackage.createPackageContents();
+ theTimeLibraryPackage.createPackageContents();
+ theRS_LibraryPackage.createPackageContents();
+ theMARTE_PrimitivesTypesPackage.createPackageContents();
+
+ // Initialize created meta-data
+ theHwMemoryPackage.initializePackageContents();
+ theMARTEPackage.initializePackageContents();
+ theNFPsPackage.initializePackageContents();
+ theCoreElementsPackage.initializePackageContents();
+ theAllocPackage.initializePackageContents();
+ theTimePackage.initializePackageContents();
+ theGRMPackage.initializePackageContents();
+ theRSMPackage.initializePackageContents();
+ theVariablesPackage.initializePackageContents();
+ theOperatorsPackage.initializePackageContents();
+ theDataTypesPackage.initializePackageContents();
+ theHLAMPackage.initializePackageContents();
+ theHwComputingPackage.initializePackageContents();
+ theHwCommunicationPackage.initializePackageContents();
+ theHwStorageManagerPackage.initializePackageContents();
+ theHwTimingPackage.initializePackageContents();
+ theHwDevicePackage.initializePackageContents();
+ theHwGeneralPackage.initializePackageContents();
+ theHwLayoutPackage.initializePackageContents();
+ theHwPowerPackage.initializePackageContents();
+ theSW_ResourceCorePackage.initializePackageContents();
+ theSW_ConcurrencyPackage.initializePackageContents();
+ theSW_BrokeringPackage.initializePackageContents();
+ theSW_InteractionPackage.initializePackageContents();
+ theGCMPackage.initializePackageContents();
+ theGQAMPackage.initializePackageContents();
+ theSAMPackage.initializePackageContents();
+ thePAMPackage.initializePackageContents();
+ theMeasurementUnitsPackage.initializePackageContents();
+ theGRM_BasicTypesPackage.initializePackageContents();
+ theMARTE_DataTypesPackage.initializePackageContents();
+ theBasicNFP_TypesPackage.initializePackageContents();
+ theTimeTypesLibraryPackage.initializePackageContents();
+ theTimeLibraryPackage.initializePackageContents();
+ theRS_LibraryPackage.initializePackageContents();
+ theMARTE_PrimitivesTypesPackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ theHwMemoryPackage.freeze();
+
+
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(HwMemoryPackage.eNS_URI, theHwMemoryPackage);
+ return theHwMemoryPackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getHwMemory() {
+ return hwMemoryEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getHwMemory_MemorySize() {
+ return (EAttribute)hwMemoryEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getHwMemory_AdressSize() {
+ return (EAttribute)hwMemoryEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getHwMemory_Timings() {
+ return (EAttribute)hwMemoryEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getHwMemory_Throughput() {
+ return (EAttribute)hwMemoryEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getHwRAM() {
+ return hwRAMEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getHwRAM_Organization() {
+ return (EAttribute)hwRAMEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getHwRAM_IsSynchronous() {
+ return (EAttribute)hwRAMEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getHwRAM_IsStatic() {
+ return (EAttribute)hwRAMEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getHwRAM_IsNonVolatile() {
+ return (EAttribute)hwRAMEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getHwRAM_Repl_Policy() {
+ return (EAttribute)hwRAMEClass.getEStructuralFeatures().get(4);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getHwRAM_WritePolicy() {
+ return (EAttribute)hwRAMEClass.getEStructuralFeatures().get(5);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getHwROM() {
+ return hwROMEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getHwROM_Type() {
+ return (EAttribute)hwROMEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getHwROM_Organization() {
+ return (EAttribute)hwROMEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getHwDrive() {
+ return hwDriveEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getHwDrive_SectorSize() {
+ return (EAttribute)hwDriveEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getHwDrive_Buffer() {
+ return (EReference)hwDriveEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getHwCache() {
+ return hwCacheEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getHwCache_Level() {
+ return (EAttribute)hwCacheEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getHwCache_Type() {
+ return (EAttribute)hwCacheEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getHwCache_Structure() {
+ return (EAttribute)hwCacheEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getHwCache_Repl_Policy() {
+ return (EAttribute)hwCacheEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute getHwCache_WritePolicy() {
+ return (EAttribute)hwCacheEClass.getEStructuralFeatures().get(4);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EEnum getRepl_Policy() {
+ return repl_PolicyEEnum;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EEnum getWritePolicy() {
+ return writePolicyEEnum;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EEnum getCacheType() {
+ return cacheTypeEEnum;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EEnum getROM_Type() {
+ return roM_TypeEEnum;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EDataType getTiming() {
+ return timingEDataType;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EDataType getCacheStructure() {
+ return cacheStructureEDataType;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EDataType getMemoryOrganization() {
+ return memoryOrganizationEDataType;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public HwMemoryFactory getHwMemoryFactory() {
+ return (HwMemoryFactory)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
+ hwMemoryEClass = createEClass(HW_MEMORY);
+ createEAttribute(hwMemoryEClass, HW_MEMORY__MEMORY_SIZE);
+ createEAttribute(hwMemoryEClass, HW_MEMORY__ADRESS_SIZE);
+ createEAttribute(hwMemoryEClass, HW_MEMORY__TIMINGS);
+ createEAttribute(hwMemoryEClass, HW_MEMORY__THROUGHPUT);
+
+ hwRAMEClass = createEClass(HW_RAM);
+ createEAttribute(hwRAMEClass, HW_RAM__ORGANIZATION);
+ createEAttribute(hwRAMEClass, HW_RAM__IS_SYNCHRONOUS);
+ createEAttribute(hwRAMEClass, HW_RAM__IS_STATIC);
+ createEAttribute(hwRAMEClass, HW_RAM__IS_NON_VOLATILE);
+ createEAttribute(hwRAMEClass, HW_RAM__REPL_POLICY);
+ createEAttribute(hwRAMEClass, HW_RAM__WRITE_POLICY);
+
+ hwROMEClass = createEClass(HW_ROM);
+ createEAttribute(hwROMEClass, HW_ROM__TYPE);
+ createEAttribute(hwROMEClass, HW_ROM__ORGANIZATION);
+
+ hwDriveEClass = createEClass(HW_DRIVE);
+ createEAttribute(hwDriveEClass, HW_DRIVE__SECTOR_SIZE);
+ createEReference(hwDriveEClass, HW_DRIVE__BUFFER);
+
+ hwCacheEClass = createEClass(HW_CACHE);
+ createEAttribute(hwCacheEClass, HW_CACHE__LEVEL);
+ createEAttribute(hwCacheEClass, HW_CACHE__TYPE);
+ createEAttribute(hwCacheEClass, HW_CACHE__STRUCTURE);
+ createEAttribute(hwCacheEClass, HW_CACHE__REPL_POLICY);
+ createEAttribute(hwCacheEClass, HW_CACHE__WRITE_POLICY);
+
+ // Create enums
+ repl_PolicyEEnum = createEEnum(REPL_POLICY);
+ writePolicyEEnum = createEEnum(WRITE_POLICY);
+ cacheTypeEEnum = createEEnum(CACHE_TYPE);
+ roM_TypeEEnum = createEEnum(ROM_TYPE);
+
+ // Create data types
+ timingEDataType = createEDataType(TIMING);
+ cacheStructureEDataType = createEDataType(CACHE_STRUCTURE);
+ memoryOrganizationEDataType = createEDataType(MEMORY_ORGANIZATION);
+ }
+
+ /**
+ * <!-- 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
+ HwGeneralPackage theHwGeneralPackage = (HwGeneralPackage)EPackage.Registry.INSTANCE.getEPackage(HwGeneralPackage.eNS_URI);
+ GRMPackage theGRMPackage = (GRMPackage)EPackage.Registry.INSTANCE.getEPackage(GRMPackage.eNS_URI);
+ BasicNFP_TypesPackage theBasicNFP_TypesPackage = (BasicNFP_TypesPackage)EPackage.Registry.INSTANCE.getEPackage(BasicNFP_TypesPackage.eNS_URI);
+
+ // Create type parameters
+
+ // Set bounds for type parameters
+
+ // Add supertypes to classes
+ hwMemoryEClass.getESuperTypes().add(theHwGeneralPackage.getHwResource());
+ hwMemoryEClass.getESuperTypes().add(theGRMPackage.getStorageResource());
+ hwRAMEClass.getESuperTypes().add(this.getHwMemory());
+ hwROMEClass.getESuperTypes().add(this.getHwMemory());
+ hwDriveEClass.getESuperTypes().add(this.getHwMemory());
+ hwCacheEClass.getESuperTypes().add(this.getHwMemory());
+
+ // Initialize classes and features; add operations and parameters
+ initEClass(hwMemoryEClass, HwMemory.class, "HwMemory", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getHwMemory_MemorySize(), theBasicNFP_TypesPackage.getNFP_DataSize(), "memorySize", null, 0, 1, HwMemory.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEAttribute(getHwMemory_AdressSize(), theBasicNFP_TypesPackage.getNFP_DataSize(), "adressSize", null, 0, 1, HwMemory.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEAttribute(getHwMemory_Timings(), this.getTiming(), "timings", null, 0, -1, HwMemory.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEAttribute(getHwMemory_Throughput(), theBasicNFP_TypesPackage.getNFP_DataTxRate(), "throughput", null, 0, 1, HwMemory.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+
+ initEClass(hwRAMEClass, HwRAM.class, "HwRAM", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getHwRAM_Organization(), this.getMemoryOrganization(), "organization", null, 0, 1, HwRAM.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEAttribute(getHwRAM_IsSynchronous(), theBasicNFP_TypesPackage.getNFP_Boolean(), "isSynchronous", null, 0, 1, HwRAM.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEAttribute(getHwRAM_IsStatic(), theBasicNFP_TypesPackage.getNFP_Boolean(), "isStatic", null, 0, 1, HwRAM.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEAttribute(getHwRAM_IsNonVolatile(), theBasicNFP_TypesPackage.getNFP_Boolean(), "isNonVolatile", null, 0, 1, HwRAM.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEAttribute(getHwRAM_Repl_Policy(), this.getRepl_Policy(), "repl_Policy", null, 0, 1, HwRAM.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEAttribute(getHwRAM_WritePolicy(), this.getWritePolicy(), "writePolicy", null, 0, 1, HwRAM.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+
+ initEClass(hwROMEClass, HwROM.class, "HwROM", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getHwROM_Type(), this.getROM_Type(), "type", null, 0, 1, HwROM.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEAttribute(getHwROM_Organization(), this.getMemoryOrganization(), "organization", null, 0, 1, HwROM.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+
+ initEClass(hwDriveEClass, HwDrive.class, "HwDrive", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getHwDrive_SectorSize(), theBasicNFP_TypesPackage.getNFP_DataSize(), "sectorSize", null, 0, 1, HwDrive.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEReference(getHwDrive_Buffer(), this.getHwRAM(), null, "buffer", null, 0, 1, HwDrive.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+
+ initEClass(hwCacheEClass, HwCache.class, "HwCache", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getHwCache_Level(), theBasicNFP_TypesPackage.getNFP_Natural(), "level", null, 0, 1, HwCache.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEAttribute(getHwCache_Type(), this.getCacheType(), "type", null, 0, 1, HwCache.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEAttribute(getHwCache_Structure(), this.getCacheStructure(), "structure", null, 0, 1, HwCache.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEAttribute(getHwCache_Repl_Policy(), this.getRepl_Policy(), "repl_Policy", null, 0, 1, HwCache.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEAttribute(getHwCache_WritePolicy(), this.getWritePolicy(), "writePolicy", null, 0, 1, HwCache.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+
+ // Initialize enums and add enum literals
+ initEEnum(repl_PolicyEEnum, Repl_Policy.class, "Repl_Policy");
+ addEEnumLiteral(repl_PolicyEEnum, Repl_Policy.LRU);
+ addEEnumLiteral(repl_PolicyEEnum, Repl_Policy.NFU);
+ addEEnumLiteral(repl_PolicyEEnum, Repl_Policy.FIFO);
+ addEEnumLiteral(repl_PolicyEEnum, Repl_Policy.RANDOM);
+ addEEnumLiteral(repl_PolicyEEnum, Repl_Policy.OTHER);
+ addEEnumLiteral(repl_PolicyEEnum, Repl_Policy.UNDEF);
+
+ initEEnum(writePolicyEEnum, WritePolicy.class, "WritePolicy");
+ addEEnumLiteral(writePolicyEEnum, WritePolicy.WRITE_BACK);
+ addEEnumLiteral(writePolicyEEnum, WritePolicy.WRITE_THROUGH);
+ addEEnumLiteral(writePolicyEEnum, WritePolicy.OTHER);
+ addEEnumLiteral(writePolicyEEnum, WritePolicy.UNDEF);
+
+ initEEnum(cacheTypeEEnum, CacheType.class, "CacheType");
+ addEEnumLiteral(cacheTypeEEnum, CacheType.DATA);
+ addEEnumLiteral(cacheTypeEEnum, CacheType.INSTRUCTION);
+ addEEnumLiteral(cacheTypeEEnum, CacheType.UNIFIED);
+ addEEnumLiteral(cacheTypeEEnum, CacheType.OTHER);
+ addEEnumLiteral(cacheTypeEEnum, CacheType.UNDEF);
+
+ initEEnum(roM_TypeEEnum, ROM_Type.class, "ROM_Type");
+ addEEnumLiteral(roM_TypeEEnum, ROM_Type.MASKED_ROM);
+ addEEnumLiteral(roM_TypeEEnum, ROM_Type.EPROM);
+ addEEnumLiteral(roM_TypeEEnum, ROM_Type.OTP_EPROM);
+ addEEnumLiteral(roM_TypeEEnum, ROM_Type.EEPROM);
+ addEEnumLiteral(roM_TypeEEnum, ROM_Type.FLASH);
+ addEEnumLiteral(roM_TypeEEnum, ROM_Type.OTHER);
+ addEEnumLiteral(roM_TypeEEnum, ROM_Type.UNDEF);
+
+ // Initialize data types
+ initEDataType(timingEDataType, String.class, "Timing", IS_SERIALIZABLE, !IS_GENERATED_INSTANCE_CLASS);
+ initEDataType(cacheStructureEDataType, String.class, "CacheStructure", IS_SERIALIZABLE, !IS_GENERATED_INSTANCE_CLASS);
+ initEDataType(memoryOrganizationEDataType, String.class, "MemoryOrganization", IS_SERIALIZABLE, !IS_GENERATED_INSTANCE_CLASS);
+
+ // Create annotations
+ // subsets
+ createSubsetsAnnotations();
+ }
+
+ /**
+ * Initializes the annotations for <b>subsets</b>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void createSubsetsAnnotations() {
+ String source = "subsets";
+ addAnnotation
+ (getHwDrive_Buffer(),
+ source,
+ new String[] {
+ },
+ new URI[] {
+ URI.createURI(MARTEPackage.eNS_URI).appendFragment("//MARTE_DesignModel/HRM/HwGeneral/HwResource/ownedHW")
+ });
+ }
+
+} //HwMemoryPackageImpl
diff --git a/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/impl/HwRAMImpl.java b/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/impl/HwRAMImpl.java
new file mode 100644
index 00000000000..ef5836c761e
--- /dev/null
+++ b/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/impl/HwRAMImpl.java
@@ -0,0 +1,445 @@
+/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ *
+ * 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:
+ * Chokri MRAIDHA (CEA LIST) chokri.mraidha@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwMemoryPackage;
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwRAM;
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.Repl_Policy;
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.WritePolicy;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Hw RAM</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwRAMImpl#getOrganization <em>Organization</em>}</li>
+ * <li>{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwRAMImpl#getIsSynchronous <em>Is Synchronous</em>}</li>
+ * <li>{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwRAMImpl#getIsStatic <em>Is Static</em>}</li>
+ * <li>{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwRAMImpl#getIsNonVolatile <em>Is Non Volatile</em>}</li>
+ * <li>{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwRAMImpl#getRepl_Policy <em>Repl Policy</em>}</li>
+ * <li>{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwRAMImpl#getWritePolicy <em>Write Policy</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class HwRAMImpl extends HwMemoryImpl implements HwRAM {
+ /**
+ * The default value of the '{@link #getOrganization() <em>Organization</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getOrganization()
+ * @generated
+ * @ordered
+ */
+ protected static final String ORGANIZATION_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getOrganization() <em>Organization</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getOrganization()
+ * @generated
+ * @ordered
+ */
+ protected String organization = ORGANIZATION_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getIsSynchronous() <em>Is Synchronous</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getIsSynchronous()
+ * @generated
+ * @ordered
+ */
+ protected static final String IS_SYNCHRONOUS_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getIsSynchronous() <em>Is Synchronous</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getIsSynchronous()
+ * @generated
+ * @ordered
+ */
+ protected String isSynchronous = IS_SYNCHRONOUS_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getIsStatic() <em>Is Static</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getIsStatic()
+ * @generated
+ * @ordered
+ */
+ protected static final String IS_STATIC_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getIsStatic() <em>Is Static</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getIsStatic()
+ * @generated
+ * @ordered
+ */
+ protected String isStatic = IS_STATIC_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getIsNonVolatile() <em>Is Non Volatile</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getIsNonVolatile()
+ * @generated
+ * @ordered
+ */
+ protected static final String IS_NON_VOLATILE_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getIsNonVolatile() <em>Is Non Volatile</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getIsNonVolatile()
+ * @generated
+ * @ordered
+ */
+ protected String isNonVolatile = IS_NON_VOLATILE_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getRepl_Policy() <em>Repl Policy</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getRepl_Policy()
+ * @generated
+ * @ordered
+ */
+ protected static final Repl_Policy REPL_POLICY_EDEFAULT = Repl_Policy.LRU;
+
+ /**
+ * The cached value of the '{@link #getRepl_Policy() <em>Repl Policy</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getRepl_Policy()
+ * @generated
+ * @ordered
+ */
+ protected Repl_Policy repl_Policy = REPL_POLICY_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getWritePolicy() <em>Write Policy</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getWritePolicy()
+ * @generated
+ * @ordered
+ */
+ protected static final WritePolicy WRITE_POLICY_EDEFAULT = WritePolicy.WRITE_BACK;
+
+ /**
+ * The cached value of the '{@link #getWritePolicy() <em>Write Policy</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getWritePolicy()
+ * @generated
+ * @ordered
+ */
+ protected WritePolicy writePolicy = WRITE_POLICY_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected HwRAMImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return HwMemoryPackage.Literals.HW_RAM;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getOrganization() {
+ return organization;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setOrganization(String newOrganization) {
+ String oldOrganization = organization;
+ organization = newOrganization;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, HwMemoryPackage.HW_RAM__ORGANIZATION, oldOrganization, organization));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getIsSynchronous() {
+ return isSynchronous;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setIsSynchronous(String newIsSynchronous) {
+ String oldIsSynchronous = isSynchronous;
+ isSynchronous = newIsSynchronous;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, HwMemoryPackage.HW_RAM__IS_SYNCHRONOUS, oldIsSynchronous, isSynchronous));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getIsStatic() {
+ return isStatic;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setIsStatic(String newIsStatic) {
+ String oldIsStatic = isStatic;
+ isStatic = newIsStatic;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, HwMemoryPackage.HW_RAM__IS_STATIC, oldIsStatic, isStatic));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getIsNonVolatile() {
+ return isNonVolatile;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setIsNonVolatile(String newIsNonVolatile) {
+ String oldIsNonVolatile = isNonVolatile;
+ isNonVolatile = newIsNonVolatile;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, HwMemoryPackage.HW_RAM__IS_NON_VOLATILE, oldIsNonVolatile, isNonVolatile));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Repl_Policy getRepl_Policy() {
+ return repl_Policy;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setRepl_Policy(Repl_Policy newRepl_Policy) {
+ Repl_Policy oldRepl_Policy = repl_Policy;
+ repl_Policy = newRepl_Policy == null ? REPL_POLICY_EDEFAULT : newRepl_Policy;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, HwMemoryPackage.HW_RAM__REPL_POLICY, oldRepl_Policy, repl_Policy));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public WritePolicy getWritePolicy() {
+ return writePolicy;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setWritePolicy(WritePolicy newWritePolicy) {
+ WritePolicy oldWritePolicy = writePolicy;
+ writePolicy = newWritePolicy == null ? WRITE_POLICY_EDEFAULT : newWritePolicy;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, HwMemoryPackage.HW_RAM__WRITE_POLICY, oldWritePolicy, writePolicy));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case HwMemoryPackage.HW_RAM__ORGANIZATION:
+ return getOrganization();
+ case HwMemoryPackage.HW_RAM__IS_SYNCHRONOUS:
+ return getIsSynchronous();
+ case HwMemoryPackage.HW_RAM__IS_STATIC:
+ return getIsStatic();
+ case HwMemoryPackage.HW_RAM__IS_NON_VOLATILE:
+ return getIsNonVolatile();
+ case HwMemoryPackage.HW_RAM__REPL_POLICY:
+ return getRepl_Policy();
+ case HwMemoryPackage.HW_RAM__WRITE_POLICY:
+ return getWritePolicy();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case HwMemoryPackage.HW_RAM__ORGANIZATION:
+ setOrganization((String)newValue);
+ return;
+ case HwMemoryPackage.HW_RAM__IS_SYNCHRONOUS:
+ setIsSynchronous((String)newValue);
+ return;
+ case HwMemoryPackage.HW_RAM__IS_STATIC:
+ setIsStatic((String)newValue);
+ return;
+ case HwMemoryPackage.HW_RAM__IS_NON_VOLATILE:
+ setIsNonVolatile((String)newValue);
+ return;
+ case HwMemoryPackage.HW_RAM__REPL_POLICY:
+ setRepl_Policy((Repl_Policy)newValue);
+ return;
+ case HwMemoryPackage.HW_RAM__WRITE_POLICY:
+ setWritePolicy((WritePolicy)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case HwMemoryPackage.HW_RAM__ORGANIZATION:
+ setOrganization(ORGANIZATION_EDEFAULT);
+ return;
+ case HwMemoryPackage.HW_RAM__IS_SYNCHRONOUS:
+ setIsSynchronous(IS_SYNCHRONOUS_EDEFAULT);
+ return;
+ case HwMemoryPackage.HW_RAM__IS_STATIC:
+ setIsStatic(IS_STATIC_EDEFAULT);
+ return;
+ case HwMemoryPackage.HW_RAM__IS_NON_VOLATILE:
+ setIsNonVolatile(IS_NON_VOLATILE_EDEFAULT);
+ return;
+ case HwMemoryPackage.HW_RAM__REPL_POLICY:
+ setRepl_Policy(REPL_POLICY_EDEFAULT);
+ return;
+ case HwMemoryPackage.HW_RAM__WRITE_POLICY:
+ setWritePolicy(WRITE_POLICY_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case HwMemoryPackage.HW_RAM__ORGANIZATION:
+ return ORGANIZATION_EDEFAULT == null ? organization != null : !ORGANIZATION_EDEFAULT.equals(organization);
+ case HwMemoryPackage.HW_RAM__IS_SYNCHRONOUS:
+ return IS_SYNCHRONOUS_EDEFAULT == null ? isSynchronous != null : !IS_SYNCHRONOUS_EDEFAULT.equals(isSynchronous);
+ case HwMemoryPackage.HW_RAM__IS_STATIC:
+ return IS_STATIC_EDEFAULT == null ? isStatic != null : !IS_STATIC_EDEFAULT.equals(isStatic);
+ case HwMemoryPackage.HW_RAM__IS_NON_VOLATILE:
+ return IS_NON_VOLATILE_EDEFAULT == null ? isNonVolatile != null : !IS_NON_VOLATILE_EDEFAULT.equals(isNonVolatile);
+ case HwMemoryPackage.HW_RAM__REPL_POLICY:
+ return repl_Policy != REPL_POLICY_EDEFAULT;
+ case HwMemoryPackage.HW_RAM__WRITE_POLICY:
+ return writePolicy != WRITE_POLICY_EDEFAULT;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (organization: ");
+ result.append(organization);
+ result.append(", isSynchronous: ");
+ result.append(isSynchronous);
+ result.append(", isStatic: ");
+ result.append(isStatic);
+ result.append(", isNonVolatile: ");
+ result.append(isNonVolatile);
+ result.append(", repl_Policy: ");
+ result.append(repl_Policy);
+ result.append(", writePolicy: ");
+ result.append(writePolicy);
+ result.append(')');
+ return result.toString();
+ }
+
+} //HwRAMImpl
diff --git a/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/impl/HwROMImpl.java b/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/impl/HwROMImpl.java
new file mode 100644
index 00000000000..2efa6a4466d
--- /dev/null
+++ b/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/impl/HwROMImpl.java
@@ -0,0 +1,228 @@
+/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ *
+ * 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:
+ * Chokri MRAIDHA (CEA LIST) chokri.mraidha@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwMemoryPackage;
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwROM;
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.ROM_Type;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Hw ROM</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwROMImpl#getType <em>Type</em>}</li>
+ * <li>{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.impl.HwROMImpl#getOrganization <em>Organization</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class HwROMImpl extends HwMemoryImpl implements HwROM {
+ /**
+ * The default value of the '{@link #getType() <em>Type</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getType()
+ * @generated
+ * @ordered
+ */
+ protected static final ROM_Type TYPE_EDEFAULT = ROM_Type.MASKED_ROM;
+
+ /**
+ * The cached value of the '{@link #getType() <em>Type</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getType()
+ * @generated
+ * @ordered
+ */
+ protected ROM_Type type = TYPE_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getOrganization() <em>Organization</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getOrganization()
+ * @generated
+ * @ordered
+ */
+ protected static final String ORGANIZATION_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getOrganization() <em>Organization</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getOrganization()
+ * @generated
+ * @ordered
+ */
+ protected String organization = ORGANIZATION_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected HwROMImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return HwMemoryPackage.Literals.HW_ROM;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public ROM_Type getType() {
+ return type;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setType(ROM_Type newType) {
+ ROM_Type oldType = type;
+ type = newType == null ? TYPE_EDEFAULT : newType;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, HwMemoryPackage.HW_ROM__TYPE, oldType, type));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public String getOrganization() {
+ return organization;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public void setOrganization(String newOrganization) {
+ String oldOrganization = organization;
+ organization = newOrganization;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, HwMemoryPackage.HW_ROM__ORGANIZATION, oldOrganization, organization));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case HwMemoryPackage.HW_ROM__TYPE:
+ return getType();
+ case HwMemoryPackage.HW_ROM__ORGANIZATION:
+ return getOrganization();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case HwMemoryPackage.HW_ROM__TYPE:
+ setType((ROM_Type)newValue);
+ return;
+ case HwMemoryPackage.HW_ROM__ORGANIZATION:
+ setOrganization((String)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case HwMemoryPackage.HW_ROM__TYPE:
+ setType(TYPE_EDEFAULT);
+ return;
+ case HwMemoryPackage.HW_ROM__ORGANIZATION:
+ setOrganization(ORGANIZATION_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case HwMemoryPackage.HW_ROM__TYPE:
+ return type != TYPE_EDEFAULT;
+ case HwMemoryPackage.HW_ROM__ORGANIZATION:
+ return ORGANIZATION_EDEFAULT == null ? organization != null : !ORGANIZATION_EDEFAULT.equals(organization);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (type: ");
+ result.append(type);
+ result.append(", organization: ");
+ result.append(organization);
+ result.append(')');
+ return result.toString();
+ }
+
+} //HwROMImpl
diff --git a/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/util/HwMemoryAdapterFactory.java b/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/util/HwMemoryAdapterFactory.java
new file mode 100644
index 00000000000..edcfaac7f36
--- /dev/null
+++ b/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/util/HwMemoryAdapterFactory.java
@@ -0,0 +1,262 @@
+/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ *
+ * 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:
+ * Chokri MRAIDHA (CEA LIST) chokri.mraidha@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.util;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notifier;
+
+import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwGeneral.HwResource;
+
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.*;
+
+import org.eclipse.papyrus.MARTE.MARTE_Foundations.GRM.Resource;
+import org.eclipse.papyrus.MARTE.MARTE_Foundations.GRM.StorageResource;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Adapter Factory</b> for the model.
+ * It provides an adapter <code>createXXX</code> method for each class of the model.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwMemoryPackage
+ * @generated
+ */
+public class HwMemoryAdapterFactory extends AdapterFactoryImpl {
+ /**
+ * The cached model package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static HwMemoryPackage modelPackage;
+
+ /**
+ * Creates an instance of the adapter factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public HwMemoryAdapterFactory() {
+ if (modelPackage == null) {
+ modelPackage = HwMemoryPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Returns whether this factory is applicable for the type of the object.
+ * <!-- begin-user-doc -->
+ * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
+ * <!-- end-user-doc -->
+ * @return whether this factory is applicable for the type of the object.
+ * @generated
+ */
+ @Override
+ public boolean isFactoryForType(Object object) {
+ if (object == modelPackage) {
+ return true;
+ }
+ if (object instanceof EObject) {
+ return ((EObject)object).eClass().getEPackage() == modelPackage;
+ }
+ return false;
+ }
+
+ /**
+ * The switch that delegates to the <code>createXXX</code> methods.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected HwMemorySwitch<Adapter> modelSwitch =
+ new HwMemorySwitch<Adapter>() {
+ @Override
+ public Adapter caseHwMemory(HwMemory object) {
+ return createHwMemoryAdapter();
+ }
+ @Override
+ public Adapter caseHwRAM(HwRAM object) {
+ return createHwRAMAdapter();
+ }
+ @Override
+ public Adapter caseHwROM(HwROM object) {
+ return createHwROMAdapter();
+ }
+ @Override
+ public Adapter caseHwDrive(HwDrive object) {
+ return createHwDriveAdapter();
+ }
+ @Override
+ public Adapter caseHwCache(HwCache object) {
+ return createHwCacheAdapter();
+ }
+ @Override
+ public Adapter caseResource(Resource object) {
+ return createResourceAdapter();
+ }
+ @Override
+ public Adapter caseHwResource(HwResource object) {
+ return createHwResourceAdapter();
+ }
+ @Override
+ public Adapter caseStorageResource(StorageResource object) {
+ return createStorageResourceAdapter();
+ }
+ @Override
+ public Adapter defaultCase(EObject object) {
+ return createEObjectAdapter();
+ }
+ };
+
+ /**
+ * Creates an adapter for the <code>target</code>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param target the object to adapt.
+ * @return the adapter for the <code>target</code>.
+ * @generated
+ */
+ @Override
+ public Adapter createAdapter(Notifier target) {
+ return modelSwitch.doSwitch((EObject)target);
+ }
+
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwMemory <em>Hw Memory</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwMemory
+ * @generated
+ */
+ public Adapter createHwMemoryAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwRAM <em>Hw RAM</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwRAM
+ * @generated
+ */
+ public Adapter createHwRAMAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwROM <em>Hw ROM</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwROM
+ * @generated
+ */
+ public Adapter createHwROMAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwDrive <em>Hw Drive</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwDrive
+ * @generated
+ */
+ public Adapter createHwDriveAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwCache <em>Hw Cache</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwCache
+ * @generated
+ */
+ public Adapter createHwCacheAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.MARTE.MARTE_Foundations.GRM.Resource <em>Resource</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.MARTE.MARTE_Foundations.GRM.Resource
+ * @generated
+ */
+ public Adapter createResourceAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwGeneral.HwResource <em>Hw Resource</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwGeneral.HwResource
+ * @generated
+ */
+ public Adapter createHwResourceAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.MARTE.MARTE_Foundations.GRM.StorageResource <em>Storage Resource</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.MARTE.MARTE_Foundations.GRM.StorageResource
+ * @generated
+ */
+ public Adapter createStorageResourceAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for the default case.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @generated
+ */
+ public Adapter createEObjectAdapter() {
+ return null;
+ }
+
+} //HwMemoryAdapterFactory
diff --git a/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/util/HwMemoryResourceFactoryImpl.java b/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/util/HwMemoryResourceFactoryImpl.java
new file mode 100644
index 00000000000..24f6ec7442d
--- /dev/null
+++ b/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/util/HwMemoryResourceFactoryImpl.java
@@ -0,0 +1,63 @@
+/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ *
+ * 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:
+ * Chokri MRAIDHA (CEA LIST) chokri.mraidha@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.util;
+
+import org.eclipse.emf.common.util.URI;
+
+import org.eclipse.emf.ecore.resource.Resource;
+
+import org.eclipse.emf.ecore.resource.impl.ResourceFactoryImpl;
+
+import org.eclipse.emf.ecore.xmi.XMLResource;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Resource Factory</b> associated with the package.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.util.HwMemoryResourceImpl
+ * @generated
+ */
+public class HwMemoryResourceFactoryImpl extends ResourceFactoryImpl {
+ /**
+ * Creates an instance of the resource factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public HwMemoryResourceFactoryImpl() {
+ super();
+ }
+
+ /**
+ * Creates an instance of the resource.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Resource createResource(URI uri) {
+ XMLResource result = new HwMemoryResourceImpl(uri);
+ result.getDefaultSaveOptions().put(XMLResource.OPTION_EXTENDED_META_DATA, Boolean.TRUE);
+ result.getDefaultLoadOptions().put(XMLResource.OPTION_EXTENDED_META_DATA, Boolean.TRUE);
+
+ result.getDefaultSaveOptions().put(XMLResource.OPTION_SCHEMA_LOCATION, Boolean.TRUE);
+
+ result.getDefaultLoadOptions().put(XMLResource.OPTION_USE_ENCODED_ATTRIBUTE_STYLE, Boolean.TRUE);
+ result.getDefaultSaveOptions().put(XMLResource.OPTION_USE_ENCODED_ATTRIBUTE_STYLE, Boolean.TRUE);
+
+ result.getDefaultLoadOptions().put(XMLResource.OPTION_USE_LEXICAL_HANDLER, Boolean.TRUE);
+ return result;
+ }
+
+} //HwMemoryResourceFactoryImpl
diff --git a/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/util/HwMemoryResourceImpl.java b/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/util/HwMemoryResourceImpl.java
new file mode 100644
index 00000000000..80d6facdfef
--- /dev/null
+++ b/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/util/HwMemoryResourceImpl.java
@@ -0,0 +1,39 @@
+/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ *
+ * 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:
+ * Chokri MRAIDHA (CEA LIST) chokri.mraidha@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.util;
+
+import org.eclipse.emf.common.util.URI;
+
+import org.eclipse.emf.ecore.xmi.impl.XMLResourceImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Resource </b> associated with the package.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.util.HwMemoryResourceFactoryImpl
+ * @generated
+ */
+public class HwMemoryResourceImpl extends XMLResourceImpl {
+ /**
+ * Creates an instance of the resource.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param uri the URI of the new resource.
+ * @generated
+ */
+ public HwMemoryResourceImpl(URI uri) {
+ super(uri);
+ }
+
+} //HwMemoryResourceImpl
diff --git a/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/util/HwMemorySwitch.java b/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/util/HwMemorySwitch.java
new file mode 100644
index 00000000000..40f0824b8db
--- /dev/null
+++ b/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/util/HwMemorySwitch.java
@@ -0,0 +1,290 @@
+/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ *
+ * 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:
+ * Chokri MRAIDHA (CEA LIST) chokri.mraidha@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.util;
+
+import java.util.List;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwGeneral.HwResource;
+
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.*;
+
+import org.eclipse.papyrus.MARTE.MARTE_Foundations.GRM.Resource;
+import org.eclipse.papyrus.MARTE.MARTE_Foundations.GRM.StorageResource;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Switch</b> for the model's inheritance hierarchy.
+ * It supports the call {@link #doSwitch(EObject) doSwitch(object)}
+ * to invoke the <code>caseXXX</code> method for each class of the model,
+ * starting with the actual class of the object
+ * and proceeding up the inheritance hierarchy
+ * until a non-null result is returned,
+ * which is the result of the switch.
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwMemoryPackage
+ * @generated
+ */
+public class HwMemorySwitch<T> {
+ /**
+ * The cached model package
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static HwMemoryPackage modelPackage;
+
+ /**
+ * Creates an instance of the switch.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public HwMemorySwitch() {
+ if (modelPackage == null) {
+ modelPackage = HwMemoryPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ public T doSwitch(EObject theEObject) {
+ return doSwitch(theEObject.eClass(), theEObject);
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ protected T doSwitch(EClass theEClass, EObject theEObject) {
+ if (theEClass.eContainer() == modelPackage) {
+ return doSwitch(theEClass.getClassifierID(), theEObject);
+ }
+ else {
+ List<EClass> eSuperTypes = theEClass.getESuperTypes();
+ return
+ eSuperTypes.isEmpty() ?
+ defaultCase(theEObject) :
+ doSwitch(eSuperTypes.get(0), theEObject);
+ }
+ }
+
+ /**
+ * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the first non-null result returned by a <code>caseXXX</code> call.
+ * @generated
+ */
+ protected T doSwitch(int classifierID, EObject theEObject) {
+ switch (classifierID) {
+ case HwMemoryPackage.HW_MEMORY: {
+ HwMemory hwMemory = (HwMemory)theEObject;
+ T result = caseHwMemory(hwMemory);
+ if (result == null) result = caseHwResource(hwMemory);
+ if (result == null) result = caseStorageResource(hwMemory);
+ if (result == null) result = caseResource(hwMemory);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case HwMemoryPackage.HW_RAM: {
+ HwRAM hwRAM = (HwRAM)theEObject;
+ T result = caseHwRAM(hwRAM);
+ if (result == null) result = caseHwMemory(hwRAM);
+ if (result == null) result = caseHwResource(hwRAM);
+ if (result == null) result = caseStorageResource(hwRAM);
+ if (result == null) result = caseResource(hwRAM);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case HwMemoryPackage.HW_ROM: {
+ HwROM hwROM = (HwROM)theEObject;
+ T result = caseHwROM(hwROM);
+ if (result == null) result = caseHwMemory(hwROM);
+ if (result == null) result = caseHwResource(hwROM);
+ if (result == null) result = caseStorageResource(hwROM);
+ if (result == null) result = caseResource(hwROM);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case HwMemoryPackage.HW_DRIVE: {
+ HwDrive hwDrive = (HwDrive)theEObject;
+ T result = caseHwDrive(hwDrive);
+ if (result == null) result = caseHwMemory(hwDrive);
+ if (result == null) result = caseHwResource(hwDrive);
+ if (result == null) result = caseStorageResource(hwDrive);
+ if (result == null) result = caseResource(hwDrive);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ case HwMemoryPackage.HW_CACHE: {
+ HwCache hwCache = (HwCache)theEObject;
+ T result = caseHwCache(hwCache);
+ if (result == null) result = caseHwMemory(hwCache);
+ if (result == null) result = caseHwResource(hwCache);
+ if (result == null) result = caseStorageResource(hwCache);
+ if (result == null) result = caseResource(hwCache);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ default: return defaultCase(theEObject);
+ }
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Hw Memory</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Hw Memory</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseHwMemory(HwMemory object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Hw RAM</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Hw RAM</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseHwRAM(HwRAM object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Hw ROM</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Hw ROM</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseHwROM(HwROM object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Hw Drive</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Hw Drive</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseHwDrive(HwDrive object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Hw Cache</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Hw Cache</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseHwCache(HwCache object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Resource</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Resource</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseResource(Resource object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Hw Resource</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Hw Resource</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseHwResource(HwResource object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Storage Resource</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Storage Resource</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseStorageResource(StorageResource object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch, but this is the last case anyway.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject)
+ * @generated
+ */
+ public T defaultCase(EObject object) {
+ return null;
+ }
+
+} //HwMemorySwitch
diff --git a/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/util/HwMemoryXMLProcessor.java b/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/util/HwMemoryXMLProcessor.java
new file mode 100644
index 00000000000..c5e74fb2e5c
--- /dev/null
+++ b/extraplugins/marte/org.eclipse.papyrus.marte.static.profile/src/org/eclipse/papyrus/MARTE/MARTE_DesignModel/HRM/HwLogical/HwStorage/HwMemory/util/HwMemoryXMLProcessor.java
@@ -0,0 +1,61 @@
+/*****************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ *
+ *
+ * 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:
+ * Chokri MRAIDHA (CEA LIST) chokri.mraidha@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.util;
+
+import java.util.Map;
+
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.resource.Resource;
+
+import org.eclipse.emf.ecore.xmi.util.XMLProcessor;
+
+import org.eclipse.papyrus.MARTE.MARTE_DesignModel.HRM.HwLogical.HwStorage.HwMemory.HwMemoryPackage;
+
+/**
+ * This class contains helper methods to serialize and deserialize XML documents
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class HwMemoryXMLProcessor extends XMLProcessor {
+
+ /**
+ * Public constructor to instantiate the helper.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public HwMemoryXMLProcessor() {
+ super((EPackage.Registry.INSTANCE));
+ HwMemoryPackage.eINSTANCE.eClass();
+ }
+
+ /**
+ * Register for "*" and "xml" file extensions the HwMemoryResourceFactoryImpl factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected Map<String, Resource.Factory> getRegistrations() {
+ if (registrations == null) {
+ super.getRegistrations();
+ registrations.put(XML_EXTENSION, new HwMemoryResourceFactoryImpl());
+ registrations.put(STAR_EXTENSION, new HwMemoryResourceFactoryImpl());
+ }
+ return registrations;
+ }
+
+} //HwMemoryXMLProcessor

Back to the top