<!-- begin-user-doc -->
<!-- end-user-doc -->
@generated
178486
@Override
	public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass)
	{
		if (baseClass == JvmConstraintOwner.class)
		{
			switch (baseFeatureID)
			{
				case TypesPackage.JVM_CONSTRAINT_OWNER__CONSTRAINTS: return TypesPackage.JVM_WILDCARD_TYPE_REFERENCE__CONSTRAINTS;
				default: return -1;
			}
		}
		return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
	}
348287
public EClass getObjectByteOffset() {
		if (objectByteOffsetEClass == null) {
			objectByteOffsetEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(AfplibPackage.eNS_URI).getEClassifiers().get(510);
		}
		return objectByteOffsetEClass;
	}
1121553
@SuppressWarnings("unchecked")
	@Override
	public EList<IfcExternalReferenceRelationship> getExternalReferenceForResources() {
		return (EList<IfcExternalReferenceRelationship>) eGet(
				Ifc4Package.Literals.IFC_EXTERNAL_REFERENCE__EXTERNAL_REFERENCE_FOR_RESOURCES, true);
	}
822149
@SuppressWarnings("unchecked")
	@Override
	public EList<IfcRelDefinesByProperties> getDefinesOccurrence() {
		return (EList<IfcRelDefinesByProperties>) eGet(
				Ifc4Package.Literals.IFC_PROPERTY_SET_DEFINITION__DEFINES_OCCURRENCE, true);
	}
1020989
public EClass getIfcClassificationReference() {
		if (ifcClassificationReferenceEClass == null) {
			ifcClassificationReferenceEClass = (EClass) EPackage.Registry.INSTANCE.getEPackage(Ifc2x3tc1Package.eNS_URI)
					.getEClassifiers().get(84);
		}
		return ifcClassificationReferenceEClass;
	}
765472
public EClass getIfcRelAssociatesLibrary() {
		if (ifcRelAssociatesLibraryEClass == null) {
			ifcRelAssociatesLibraryEClass = (EClass) EPackage.Registry.INSTANCE.getEPackage(Ifc2x3tc1Package.eNS_URI)
					.getEClassifiers().get(453);
		}
		return ifcRelAssociatesLibraryEClass;
	}
899080
public EClass getIfcActor() {
		if (ifcActorEClass == null) {
			ifcActorEClass = (EClass) EPackage.Registry.INSTANCE.getEPackage(Ifc2x3tc1Package.eNS_URI).getEClassifiers()
					.get(3);
		}
		return ifcActorEClass;
	}
545432
public EClass getIfcCompositeCurve() {
		if (ifcCompositeCurveEClass == null) {
			ifcCompositeCurveEClass = (EClass) EPackage.Registry.INSTANCE.getEPackage(Ifc2x3tc1Package.eNS_URI)
					.getEClassifiers().get(92);
		}
		return ifcCompositeCurveEClass;
	}
463304
public EClass getObjectFunctionSetSpecification() {
		if (objectFunctionSetSpecificationEClass == null) {
			objectFunctionSetSpecificationEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(AfplibPackage.eNS_URI).getEClassifiers().get(367);
		}
		return objectFunctionSetSpecificationEClass;
	}
923662
public EClass getIfcTimeMeasure() {
		if (ifcTimeMeasureEClass == null) {
			ifcTimeMeasureEClass = (EClass) EPackage.Registry.INSTANCE.getEPackage(Ifc2x3tc1Package.eNS_URI)
					.getEClassifiers().get(755);
		}
		return ifcTimeMeasureEClass;
	}
118612
public EClass getIOB() {
		if (iobEClass == null) {
			iobEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(AfplibPackage.eNS_URI).getEClassifiers().get(277);
		}
		return iobEClass;
	}
610015
public EClass getIfcRelAssignsToResource() {
		if (ifcRelAssignsToResourceEClass == null) {
			ifcRelAssignsToResourceEClass = (EClass) EPackage.Registry.INSTANCE.getEPackage(Ifc2x3tc1Package.eNS_URI)
					.getEClassifiers().get(446);
		}
		return ifcRelAssignsToResourceEClass;
	}
699631
@SuppressWarnings("unchecked")
	@Override
	public EList<IfcRelAssignsToProduct> getReferencedBy() {
		return (EList<IfcRelAssignsToProduct>) eGet(Ifc4Package.Literals.IFC_TYPE_PRODUCT__REFERENCED_BY, true);
	}
1078878
public EClass getCheckoutRelated() {
		if (checkoutRelatedEClass == null) {
			checkoutRelatedEClass = (EClass) EPackage.Registry.INSTANCE.getEPackage(LogPackage.eNS_URI)
					.getEClassifiers().get(4);
		}
		return checkoutRelatedEClass;
	}
986051
public EClass getAMB() {
		if (ambEClass == null) {
			ambEClass = (EClass)EPackage.Registry.INSTANCE.getEPackage(AfplibPackage.eNS_URI).getEClassifiers().get(322);
		}
		return ambEClass;
	}
516209
@SuppressWarnings("unchecked")
	@Override
	public void eSet(int featureID, Object newValue)
	{
		switch (featureID)
		{
			case XtypePackage.XFUNCTION_TYPE_REF__PARAM_TYPES:
				getParamTypes().clear();
				getParamTypes().addAll((Collection<? extends JvmTypeReference>)newValue);
				return;
			case XtypePackage.XFUNCTION_TYPE_REF__RETURN_TYPE:
				setReturnType((JvmTypeReference)newValue);
				return;
			case XtypePackage.XFUNCTION_TYPE_REF__TYPE:
				setType((JvmType)newValue);
				return;
			case XtypePackage.XFUNCTION_TYPE_REF__INSTANCE_CONTEXT:
				setInstanceContext((Boolean)newValue);
				return;
		}
		super.eSet(featureID, newValue);
	}
217617
public EClass getIfcActionRequest() {
		if (ifcActionRequestEClass == null) {
			ifcActionRequestEClass = (EClass) EPackage.Registry.INSTANCE.getEPackage(Ifc2x3tc1Package.eNS_URI)
					.getEClassifiers().get(2);
		}
		return ifcActionRequestEClass;
	}