Commit 17bd2bcb authored by Kai-Holger Brassel's avatar Kai-Holger Brassel
Browse files

Add life cycle info data type and minor changes in models

parent b9833df4
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-15"/>
<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
<classpathentry kind="src" path="src"/>
<classpathentry kind="src" path="src/"/>
<classpathentry kind="output" path="target/classes"/>
</classpath>
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-15"/>
<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
<classpathentry kind="src" path="src/"/>
<classpathentry kind="output" path="target/classes"/>
......
......@@ -47,3 +47,11 @@ _UI_Material_conductivity_feature = Conductivity
_UI_Unknown_feature = Unspecified
_UI_Catalog_xxx_feature = Xxx
_UI_LifeCycle_type = Life Cycle
_UI_WindowType_lifeCycle_feature = Life Cycle
_UI_LifeCycle_embodiedEnergy_feature = Embodied Energy
_UI_LifeCycle_embodiedCarbon_feature = Embodied Carbon
_UI_LifeCycle_constructionDescription_feature = Construction Description
_UI_LifeCycle_disposalEnergy_feature = Disposal Energy
_UI_LifeCycle_disposalCarbon_feature = Disposal Carbon
_UI_LifeCycle_disposalDescription_feature = Disposal Description
......@@ -210,6 +210,29 @@ public class BuildingPhysicsItemProviderAdapterFactory extends BuildingPhysicsAd
return materialItemProvider;
}
/**
* This keeps track of the one adapter used for all {@link de.hftstuttgart.buildingphysics.LifeCycle} instances.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected LifeCycleItemProvider lifeCycleItemProvider;
/**
* This creates an adapter for a {@link de.hftstuttgart.buildingphysics.LifeCycle}.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public Adapter createLifeCycleAdapter() {
if (lifeCycleItemProvider == null) {
lifeCycleItemProvider = new LifeCycleItemProvider(this);
}
return lifeCycleItemProvider;
}
/**
* This returns the root adapter factory that contains this factory.
* <!-- begin-user-doc -->
......@@ -327,6 +350,8 @@ public class BuildingPhysicsItemProviderAdapterFactory extends BuildingPhysicsAd
materialCategoryItemProvider.dispose();
if (materialItemProvider != null)
materialItemProvider.dispose();
if (lifeCycleItemProvider != null)
lifeCycleItemProvider.dispose();
}
}
/**
*/
package de.hftstuttgart.buildingphysics.provider;
import de.hftstuttgart.buildingphysics.BuildingPhysicsPackage;
import de.hftstuttgart.buildingphysics.LifeCycle;
import de.hftstuttgart.cityunits.model.NullableQuantity;
import java.util.Collection;
import java.util.List;
import org.eclipse.emf.common.notify.AdapterFactory;
import org.eclipse.emf.common.notify.Notification;
import org.eclipse.emf.common.util.ResourceLocator;
import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
import org.eclipse.emf.edit.provider.IItemLabelProvider;
import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
import org.eclipse.emf.edit.provider.IItemPropertySource;
import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
import org.eclipse.emf.edit.provider.ItemProviderAdapter;
import org.eclipse.emf.edit.provider.ViewerNotification;
/**
* This is the item provider adapter for a {@link de.hftstuttgart.buildingphysics.LifeCycle} object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public class LifeCycleItemProvider extends ItemProviderAdapter implements IEditingDomainItemProvider,
IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource {
/**
* This constructs an instance from a factory and a notifier.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
public LifeCycleItemProvider(AdapterFactory adapterFactory) {
super(adapterFactory);
}
/**
* This returns the property descriptors for the adapted class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
if (itemPropertyDescriptors == null) {
super.getPropertyDescriptors(object);
addEmbodiedEnergyPropertyDescriptor(object);
addEmbodiedCarbonPropertyDescriptor(object);
addConstructionDescriptionPropertyDescriptor(object);
addDisposalEnergyPropertyDescriptor(object);
addDisposalCarbonPropertyDescriptor(object);
addDisposalDescriptionPropertyDescriptor(object);
}
return itemPropertyDescriptors;
}
/**
* This adds a property descriptor for the Embodied Energy feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected void addEmbodiedEnergyPropertyDescriptor(Object object) {
itemPropertyDescriptors
.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(),
getResourceLocator(), getString("_UI_LifeCycle_embodiedEnergy_feature"),
getString("_UI_PropertyDescriptor_description", "_UI_LifeCycle_embodiedEnergy_feature",
"_UI_LifeCycle_type"),
BuildingPhysicsPackage.Literals.LIFE_CYCLE__EMBODIED_ENERGY, true, false, false,
ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
}
/**
* This adds a property descriptor for the Embodied Carbon feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected void addEmbodiedCarbonPropertyDescriptor(Object object) {
itemPropertyDescriptors
.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(),
getResourceLocator(), getString("_UI_LifeCycle_embodiedCarbon_feature"),
getString("_UI_PropertyDescriptor_description", "_UI_LifeCycle_embodiedCarbon_feature",
"_UI_LifeCycle_type"),
BuildingPhysicsPackage.Literals.LIFE_CYCLE__EMBODIED_CARBON, true, false, false,
ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
}
/**
* This adds a property descriptor for the Construction Description feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected void addConstructionDescriptionPropertyDescriptor(Object object) {
itemPropertyDescriptors.add(createItemPropertyDescriptor(
((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(), getResourceLocator(),
getString("_UI_LifeCycle_constructionDescription_feature"),
getString("_UI_PropertyDescriptor_description", "_UI_LifeCycle_constructionDescription_feature",
"_UI_LifeCycle_type"),
BuildingPhysicsPackage.Literals.LIFE_CYCLE__CONSTRUCTION_DESCRIPTION, true, false, false,
ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
}
/**
* This adds a property descriptor for the Disposal Energy feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected void addDisposalEnergyPropertyDescriptor(Object object) {
itemPropertyDescriptors
.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(),
getResourceLocator(), getString("_UI_LifeCycle_disposalEnergy_feature"),
getString("_UI_PropertyDescriptor_description", "_UI_LifeCycle_disposalEnergy_feature",
"_UI_LifeCycle_type"),
BuildingPhysicsPackage.Literals.LIFE_CYCLE__DISPOSAL_ENERGY, true, false, false,
ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
}
/**
* This adds a property descriptor for the Disposal Carbon feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected void addDisposalCarbonPropertyDescriptor(Object object) {
itemPropertyDescriptors
.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(),
getResourceLocator(), getString("_UI_LifeCycle_disposalCarbon_feature"),
getString("_UI_PropertyDescriptor_description", "_UI_LifeCycle_disposalCarbon_feature",
"_UI_LifeCycle_type"),
BuildingPhysicsPackage.Literals.LIFE_CYCLE__DISPOSAL_CARBON, true, false, false,
ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
}
/**
* This adds a property descriptor for the Disposal Description feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
protected void addDisposalDescriptionPropertyDescriptor(Object object) {
itemPropertyDescriptors
.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory).getRootAdapterFactory(),
getResourceLocator(), getString("_UI_LifeCycle_disposalDescription_feature"),
getString("_UI_PropertyDescriptor_description", "_UI_LifeCycle_disposalDescription_feature",
"_UI_LifeCycle_type"),
BuildingPhysicsPackage.Literals.LIFE_CYCLE__DISPOSAL_DESCRIPTION, true, false, false,
ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
}
/**
* This returns LifeCycle.gif.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public Object getImage(Object object) {
return overlayImage(object, getResourceLocator().getImage("full/obj16/LifeCycle"));
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
protected boolean shouldComposeCreationImage() {
return true;
}
/**
* This returns the label text for the adapted class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public String getText(Object object) {
NullableQuantity labelValue = ((LifeCycle) object).getEmbodiedEnergy();
String label = labelValue == null ? null : labelValue.toString();
return label == null || label.length() == 0 ? getString("_UI_LifeCycle_type")
: getString("_UI_LifeCycle_type") + " " + label;
}
/**
* This handles model notifications by calling {@link #updateChildren} to update any cached
* children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public void notifyChanged(Notification notification) {
updateChildren(notification);
switch (notification.getFeatureID(LifeCycle.class)) {
case BuildingPhysicsPackage.LIFE_CYCLE__EMBODIED_ENERGY:
case BuildingPhysicsPackage.LIFE_CYCLE__EMBODIED_CARBON:
case BuildingPhysicsPackage.LIFE_CYCLE__CONSTRUCTION_DESCRIPTION:
case BuildingPhysicsPackage.LIFE_CYCLE__DISPOSAL_ENERGY:
case BuildingPhysicsPackage.LIFE_CYCLE__DISPOSAL_CARBON:
case BuildingPhysicsPackage.LIFE_CYCLE__DISPOSAL_DESCRIPTION:
fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
return;
}
super.notifyChanged(notification);
}
/**
* This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
* that can be created under this object.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
super.collectNewChildDescriptors(newChildDescriptors, object);
}
/**
* Return the resource locator for this item provider's resources.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public ResourceLocator getResourceLocator() {
return BuildingPhysicsEditPlugin.INSTANCE;
}
}
......@@ -2,6 +2,7 @@
*/
package de.hftstuttgart.buildingphysics.provider;
import de.hftstuttgart.buildingphysics.BuildingPhysicsFactory;
import de.hftstuttgart.buildingphysics.BuildingPhysicsPackage;
import de.hftstuttgart.buildingphysics.WindowType;
......@@ -13,6 +14,7 @@ import org.eclipse.emf.common.notify.Notification;
import org.eclipse.emf.common.util.ResourceLocator;
import org.eclipse.emf.ecore.EStructuralFeature;
import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
import org.eclipse.emf.edit.provider.IItemLabelProvider;
......@@ -159,6 +161,36 @@ public class WindowTypeItemProvider extends ItemProviderAdapter implements IEdit
ItemPropertyDescriptor.INTEGRAL_VALUE_IMAGE, null, null));
}
/**
* This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
* {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
* {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
if (childrenFeatures == null) {
super.getChildrenFeatures(object);
childrenFeatures.add(BuildingPhysicsPackage.Literals.WINDOW_TYPE__LIFE_CYCLE);
}
return childrenFeatures;
}
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
@Override
protected EStructuralFeature getChildFeature(Object object, Object child) {
// Check the type of the specified child object and return the proper feature to use for
// adding (see {@link AddCommand}) it as a child.
return super.getChildFeature(object, child);
}
/**
* This returns WindowType.gif.
* <!-- begin-user-doc -->
......@@ -213,6 +245,9 @@ public class WindowTypeItemProvider extends ItemProviderAdapter implements IEdit
case BuildingPhysicsPackage.WINDOW_TYPE__FRAME_RATIO:
fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
return;
case BuildingPhysicsPackage.WINDOW_TYPE__LIFE_CYCLE:
fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
return;
}
super.notifyChanged(notification);
}
......@@ -227,6 +262,9 @@ public class WindowTypeItemProvider extends ItemProviderAdapter implements IEdit
@Override
protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
super.collectNewChildDescriptors(newChildDescriptors, object);
newChildDescriptors.add(createChildParameter(BuildingPhysicsPackage.Literals.WINDOW_TYPE__LIFE_CYCLE,
BuildingPhysicsFactory.eINSTANCE.createLifeCycle()));
}
/**
......
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-15"/>
<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
<classpathentry kind="output" path="target/classes"/>
</classpath>
......@@ -2,7 +2,11 @@
<?eclipse version="3.4"?>
<plugin>
<extension point="org.eclipse.emf.ecp.view.model.provider.xmi.file">
<file filePath="viewmodels/MaterialCategory.view"/>
<file filePath="viewmodels/BuildingPhysicsCatalog.view"/>
</extension>
</plugin>
</plugin>
\ No newline at end of file
......@@ -2,9 +2,11 @@
<org.eclipse.emf.ecp.view.model:View xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:org.eclipse.emf.ecp.view.model="http://org/eclipse/emf/ecp/view/model/1180" xmlns:org.eclipse.emf.ecp.view.table.model="http://org/eclipse/emf/ecp/view/table/model/150" xmi:id="_ZY8TECUNEeux0PTSTJn6xg" name="MaterialCategory">
<rootEClass href="http://www.hftstuttgart.de/buildingphysics#//MaterialCategory"/>
<children xsi:type="org.eclipse.emf.ecp.view.table.model:TableControl" xmi:id="_cQS6sCUNEeux0PTSTJn6xg" detailEditing="WithPanel">
<domainModelReference xsi:type="org.eclipse.emf.ecp.view.table.model:TableDomainModelReference" xmi:id="_gQbIQCUNEeux0PTSTJn6xg">
<domainModelReference xsi:type="org.eclipse.emf.ecp.view.model:FeaturePathDomainModelReference" xmi:id="_gQbIQSUNEeux0PTSTJn6xg">
<domainModelEFeature xsi:type="ecore:EReference" href="http://www.hftstuttgart.de/buildingphysics#//MaterialCategory/material"/>
<domainModelReference xsi:type="org.eclipse.emf.ecp.view.table.model:TableDomainModelReference" xmi:id="_6djXAKg0EeuFa-L9J4DlVg">
<domainModelReference xsi:type="org.eclipse.emf.ecp.view.table.model:TableDomainModelReference" xmi:id="_6djXAag0EeuFa-L9J4DlVg">
<domainModelReference xsi:type="org.eclipse.emf.ecp.view.model:FeaturePathDomainModelReference" xmi:id="_6djXAqg0EeuFa-L9J4DlVg">
<domainModelEFeature xsi:type="ecore:EReference" href="http://www.hftstuttgart.de/buildingphysics#//MaterialCategory/material"/>
</domainModelReference>
</domainModelReference>
</domainModelReference>
</children>
......
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-15"/>
<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
<classpathentry kind="src" path="src/"/>
<classpathentry kind="output" path="target/classes"/>
......
......@@ -27,6 +27,8 @@
<details key="documentation" value="In % (between 0 and 100)"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="lifeCycle" eType="#//LifeCycle"
containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Catalog" abstract="true">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
......@@ -58,4 +60,22 @@
<eStructuralFeatures xsi:type="ecore:EAttribute" name="conductivity" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDouble"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="LifeCycle">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="embodiedEnergy" lowerBound="1"
eType="ecore:EDataType ../../de.hftstuttgart.cityunits.model/model/Quantities.ecore#//QuantityDouble"
defaultValueLiteral="kWh"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="embodiedCarbon" lowerBound="1"
eType="ecore:EDataType ../../de.hftstuttgart.cityunits.model/model/Quantities.ecore#//QuantityDouble"
defaultValueLiteral="kg"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="constructionDescription"
lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="disposalEnergy" lowerBound="1"
eType="ecore:EDataType ../../de.hftstuttgart.cityunits.model/model/Quantities.ecore#//QuantityDouble"
defaultValueLiteral="kWh"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="disposalCarbon" lowerBound="1"
eType="ecore:EDataType ../../de.hftstuttgart.cityunits.model/model/Quantities.ecore#//QuantityDouble"
defaultValueLiteral="kg"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="disposalDescription" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
</eClassifiers>
</ecore:EPackage>
......@@ -75,6 +75,15 @@ public interface BuildingPhysicsFactory extends EFactory {
*/
Material createMaterial();
/**
* Returns a new object of class '<em>Life Cycle</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @return a new object of class '<em>Life Cycle</em>'.
* @generated
*/
LifeCycle createLifeCycle();
/**
* Returns the package supported by this factory.
* <!-- begin-user-doc -->
......
......@@ -175,6 +175,15 @@ public interface BuildingPhysicsPackage extends EPackage {
*/
int WINDOW_TYPE__FRAME_RATIO = 5;
/**
* The feature id for the '<em><b>Life Cycle</b></em>' containment reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int WINDOW_TYPE__LIFE_CYCLE = 6;
/**
* The number of structural features of the '<em>Window Type</em>' class.
* <!-- begin-user-doc -->
......@@ -182,7 +191,7 @@ public interface BuildingPhysicsPackage extends EPackage {
* @generated
* @ordered
*/
int WINDOW_TYPE_FEATURE_COUNT = 6;
int WINDOW_TYPE_FEATURE_COUNT = 7;
/**
* The number of operations of the '<em>Window Type</em>' class.
......@@ -495,6 +504,88 @@ public interface BuildingPhysicsPackage extends EPackage {
*/
int MATERIAL_OPERATION_COUNT = 0;
/**
* The meta object id for the '{@link de.hftstuttgart.buildingphysics.impl.LifeCycleImpl <em>Life Cycle</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @see de.hftstuttgart.buildingphysics.impl.LifeCycleImpl
* @see de.hftstuttgart.buildingphysics.impl.BuildingPhysicsPackageImpl#getLifeCycle()
* @generated
*/
int LIFE_CYCLE = 7;
/**
* The feature id for the '<em><b>Embodied Energy</b></em>' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int LIFE_CYCLE__EMBODIED_ENERGY = 0;
/**
* The feature id for the '<em><b>Embodied Carbon</b></em>' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int LIFE_CYCLE__EMBODIED_CARBON = 1;
/**
* The feature id for the '<em><b>Construction Description</b></em>' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
* @ordered
*/
int LIFE_CYCLE__CONSTRUCTION_DESCRIPTION = 2;
/**
* The feature id for the '<em><b>Disposal Energy</b></em>' attribute.